:root{--bg:#0b0f14;--panel:#121820;--panel-2:#161d27;--line:#232c38;--text:#dfe6ee;--muted:#7c8798;--accent-red:#e0432b;--accent-red-dim:#3a1712;--accent-black:#9aa5b3;--accent-black-dim:#1b222b;--accent-blue:#4a90e2;--accent-blue-dim:#132234;--accent-purple:#a463f2;--accent-purple-dim:#241a38;--accent-green:#3fb87f;--accent-green-dim:#12271d;--accent-white:#e8edf5;--accent-white-dim:#252b34;--gold:#d9a441;--mono:"JetBrains Mono","Courier New",monospace;--sans:"Space Grotesk",-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(circle at 15% 0%,rgba(224,67,43,.07),transparent 45%),radial-gradient(circle at 85% 10%,rgba(120,150,255,.05),transparent 40%),var(--bg);color:var(--text);font-family:var(--sans);min-height:100vh;padding-bottom:80px}a{color:inherit}button,input{font-family:inherit}.grid-overlay{pointer-events:none;z-index:0;background-image:linear-gradient(rgba(255,255,255,.024) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.024) 1px,transparent 1px);background-size:34px 34px;position:fixed;top:0;bottom:0;left:0;right:0;-webkit-mask-image:radial-gradient(circle at 50% 0,#000,transparent 75%);mask-image:radial-gradient(circle at 50% 0,#000,transparent 75%)}header{z-index:1;text-align:center;max-width:980px;margin:0 auto;padding:38px 20px 24px;position:relative}.eyebrow{font-family:var(--mono);letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;font-size:11px}h1{letter-spacing:-.01em;margin:0 0 6px;font-size:max(24px,min(4vw,36px));font-weight:700}.subtitle{color:var(--muted);max-width:600px;margin:0 auto;font-size:14.5px;line-height:1.5}.header-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.logout-link{font-family:var(--mono);color:var(--muted);background:var(--panel);border:1px solid var(--line);cursor:pointer;touch-action:manipulation;border-radius:8px;min-height:44px;padding:8px 14px;font-size:12px}.logout-link:hover{color:var(--text);border-color:var(--gold)}.stats-row{z-index:1;flex-wrap:wrap;justify-content:center;gap:14px;max-width:980px;margin:26px auto 0;padding:0 20px;display:flex;position:relative}.stat-card{background:var(--panel);border:1px solid var(--line);text-align:left;border-radius:12px;min-width:140px;padding:14px 20px}.stat-card .num{font-family:var(--mono);font-size:26px;font-weight:700;line-height:1}.stat-card .lbl{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:6px;font-size:11.5px}.stat-card.vermelho .num{color:var(--accent-red)}.stat-card.preto .num{color:var(--accent-black)}.stat-card.azul .num{color:var(--accent-blue)}.stat-card.roxo .num{color:var(--accent-purple)}.stat-card.verde .num{color:var(--accent-green)}.stat-card.branco .num{color:var(--accent-white)}.stat-card.gold .num{color:var(--gold)}.toolbar{z-index:1;flex-wrap:wrap;align-items:center;gap:10px;max-width:980px;margin:26px auto 0;padding:0 20px;display:flex;position:relative}.toolbar input[type=text],.toolbar input[type=file],.toolbar input[type=number]{background:var(--panel);border:1px solid var(--line);min-width:200px;color:var(--text);font-family:var(--sans);border-radius:9px;outline:none;flex:1;padding:11px 14px;font-size:16px}.toolbar input:focus{border-color:var(--gold)}.page-search-input{max-width:140px}.seg{background:var(--panel);border:1px solid var(--line);border-radius:9px;display:flex;overflow:hidden}.seg button{color:var(--muted);font-family:var(--sans);cursor:pointer;touch-action:manipulation;background:0 0;border:none;min-height:44px;padding:10px 16px;font-size:13px;transition:all .15s}.seg button.active{background:var(--panel-2);color:var(--text)}.seg.pricey button.active{color:var(--accent-green);background:rgba(63,184,127,.18)}.seg button:hover{color:var(--text)}.btn{background:var(--panel);border:1px solid var(--line);color:var(--text);font-family:var(--sans);cursor:pointer;touch-action:manipulation;border-radius:9px;min-height:44px;padding:10px 16px;font-size:13px}.btn:hover{border-color:var(--gold)}.btn.primary{background:var(--gold);color:#14100a;border-color:var(--gold);font-weight:700}.btn.primary:hover{opacity:.9}.btn.danger{color:var(--accent-red)}.btn.danger:hover{border-color:var(--accent-red)}.btn:disabled{opacity:.5;cursor:not-allowed}main{z-index:1;max-width:980px;margin:30px auto 0;padding:0 20px;position:relative}.toolbar-filters+main{margin-top:16px}.binder{border:1px solid var(--line);background:var(--panel);border-radius:16px;margin-bottom:44px;overflow:hidden}.binder-head{border-bottom:1px solid var(--line);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.binder.collapsed .binder-head{border-bottom:none}.binder.vermelho .binder-head{background:linear-gradient(90deg,var(--accent-red-dim),transparent)}.binder.preto .binder-head{background:linear-gradient(90deg,var(--accent-black-dim),transparent)}.binder.azul .binder-head{background:linear-gradient(90deg,var(--accent-blue-dim),transparent)}.binder.roxo .binder-head{background:linear-gradient(90deg,var(--accent-purple-dim),transparent)}.binder.verde .binder-head{background:linear-gradient(90deg,var(--accent-green-dim),transparent)}.binder.branco .binder-head{background:linear-gradient(90deg,var(--accent-white-dim),transparent)}.binder-title{align-items:center;gap:10px;font-size:17px;font-weight:700;display:flex}.dot{border-radius:50%;flex:none;width:11px;height:11px}.binder.vermelho .dot{background:var(--accent-red);box-shadow:0 0 10px var(--accent-red)}.binder.preto .dot{background:var(--accent-black);box-shadow:0 0 10px var(--accent-black)}.binder.azul .dot{background:var(--accent-blue);box-shadow:0 0 10px var(--accent-blue)}.binder.roxo .dot{background:var(--accent-purple);box-shadow:0 0 10px var(--accent-purple)}.binder.verde .dot{background:var(--accent-green);box-shadow:0 0 10px var(--accent-green)}.binder.branco .dot{background:var(--accent-white);box-shadow:0 0 10px var(--accent-white)}.binder-chevron{border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);flex:none;width:11px;height:11px;margin-left:4px;transition:all .2s;transform:rotate(45deg)}.binder.collapsed .binder-chevron{transform:rotate(-45deg)}.binder-body{transition:all .15s}.binder.collapsed .binder-body{display:none}.progress-wrap{flex-wrap:wrap;align-items:center;gap:10px;min-width:180px;display:flex}.progress-bar{background:var(--panel-2);border-radius:4px;flex:1;min-width:110px;height:8px;overflow:hidden}.progress-fill{border-radius:4px;height:100%;transition:width .3s}.binder.vermelho .progress-fill{background:var(--accent-red)}.binder.preto .progress-fill{background:var(--accent-black)}.binder.azul .progress-fill{background:var(--accent-blue)}.binder.roxo .progress-fill{background:var(--accent-purple)}.binder.verde .progress-fill{background:var(--accent-green)}.binder.branco .progress-fill{background:var(--accent-white)}.progress-num{font-family:var(--mono);color:var(--muted);white-space:nowrap;font-size:12.5px}.block{border-bottom:1px solid var(--line)}.block:last-child{border-bottom:none}.block-head{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:13px 22px;display:flex}.block-head:hover{background:var(--panel-2)}.block-title{font-family:var(--mono);color:var(--text);letter-spacing:.02em;font-size:13.5px;font-weight:700}.block-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.block-count{font-family:var(--mono);color:var(--muted);font-size:11.5px}.chevron{border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:9px;height:9px;transition:all .2s;transform:rotate(45deg)}.block.collapsed .chevron{transform:rotate(-45deg)}.card-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:6px;padding:6px 22px 18px;display:grid}.block.collapsed .card-list{display:none}.card-row{background:var(--panel-2);border:1px solid transparent;border-radius:8px;align-items:flex-start;gap:10px;padding:8px 10px;transition:all .12s;display:flex}.card-row:hover{border-color:var(--line)}.card-row.checked{border-color:var(--gold);background:linear-gradient(90deg,rgba(217,164,65,.1),var(--panel-2))}.card-row.checked .card-name{color:var(--gold)}.card-row-main{cursor:pointer;touch-action:manipulation;flex:1;align-items:flex-start;gap:10px;min-width:0;display:flex}.card-row input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1.5px solid var(--muted);cursor:pointer;background:0 0;border-radius:5px;flex:none;width:17px;height:17px;margin-top:1px;transition:all .12s;position:relative}.card-row input[type=checkbox]:checked{background:var(--gold);border-color:var(--gold)}.card-row input[type=checkbox]:checked:after{content:"";border:2px solid #14100a;border-width:0 2px 2px 0;width:4px;height:9px;position:absolute;top:1px;left:5px;transform:rotate(45deg)}.card-info{flex-direction:column;flex:1;gap:1px;min-width:0;line-height:1.3;display:flex}.card-code{font-family:var(--mono);color:var(--gold);font-size:11.5px}.card-name{font-size:13.5px}.card-row.checked .card-name{text-decoration:line-through;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted)}.card-page{font-family:var(--mono);color:var(--muted);white-space:nowrap;margin-top:3px;font-size:10px}.card-page.overflow{color:#e0432b;font-weight:700}.tag{background:var(--line);color:var(--muted);border-radius:4px;margin-left:5px;padding:1px 6px;font-size:10px}.tag.pricey-tag{color:var(--accent-green);background:rgba(63,184,127,.15);font-weight:700}.card-actions{flex:none;gap:4px;display:flex}.card-actions button{color:var(--muted);cursor:pointer;touch-action:manipulation;background:0 0;border:none;border-radius:6px;min-width:32px;min-height:32px;padding:8px;font-size:14px}.card-actions button:hover{color:var(--gold);background:var(--line)}.hidden{display:none!important}.modal-backdrop{z-index:10;background:rgba(0,0,0,.6);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal{background:var(--panel);border:1px solid var(--line);border-radius:14px;width:100%;max-width:420px;padding:24px}.modal h2{margin:0 0 16px;font-size:16px}.modal form{flex-direction:column;gap:12px;display:flex}.modal label{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.modal input,.modal select{background:var(--panel-2);border:1px solid var(--line);color:var(--text);border-radius:8px;min-height:44px;padding:11px 12px;font-size:16px}.modal .modal-actions{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.error-text{color:var(--accent-red);font-size:12.5px}.login-wrap{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;width:100%;max-width:360px;padding:32px}.login-card h1{text-align:center;font-size:20px}.login-card form{flex-direction:column;gap:14px;margin-top:20px;display:flex}.login-card label{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.login-card input{background:var(--panel-2);border:1px solid var(--line);color:var(--text);border-radius:9px;outline:none;min-height:44px;padding:12px 14px;font-size:16px}.login-card input:focus{border-color:var(--gold)}footer{text-align:center;max-width:980px;color:var(--muted);z-index:1;margin:20px auto 0;padding:20px;font-size:12px;position:relative}@media (max-width:640px){header{padding:28px 16px 20px}.stats-row,.toolbar,main,footer{padding-left:14px;padding-right:14px}.toolbar{flex-direction:column;align-items:stretch}.toolbar input[type=text],.toolbar input[type=number]{width:100%;min-width:0}.page-search-input{max-width:none}.seg{width:100%}.seg button{flex:1}.toolbar .btn{text-align:center;width:100%}.binder-head{flex-direction:column;align-items:stretch}.progress-wrap{width:100%}.progress-bar{min-width:0}.card-list{grid-template-columns:1fr}.modal-backdrop{padding:12px}.modal{padding:18px}}@media print{.toolbar,.grid-overlay{display:none}body{color:#111;background:#fff}.binder,.card-row{break-inside:avoid}}
