:root{--bg:#f4f6f9;--surface:#fff;--text:#1b2430;--muted:#5d6b7c;--border:#dde3ea;--primary:#1e3a5f;--primary-text:#fff;--accent:#2563eb;--danger:#b42318;--ok:#067647;--radius:10px;--shadow:0 1px 3px #10182814;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.45}@media (prefers-color-scheme:dark){:root{--bg:#11161d;--surface:#1a212b;--text:#e6ebf1;--muted:#9aa7b6;--border:#2c3644;--primary:#4f7cc0;--accent:#6ea0ff;--danger:#f97066;--ok:#47cd89;--shadow:none}}*{box-sizing:border-box}body{background:var(--bg);margin:0}h1{margin:0 0 .75rem;font-size:1.5rem}h2{margin:0 0 .75rem;font-size:1.15rem}a{color:var(--accent)}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--muted)}.small{font-size:.85rem}.center{text-align:center;padding:2rem}.error{color:var(--danger)}.ok{color:var(--ok)}button,.button{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;min-height:40px;padding:.55rem 1rem;text-decoration:none;display:inline-block}button.primary,.button.primary{background:var(--primary);color:var(--primary-text);border-color:var(--primary)}button.danger{color:var(--danger);border-color:var(--danger)}button.link{color:inherit;background:0 0;border:none;padding:.3rem;text-decoration:underline}button:disabled{opacity:.6;cursor:default}label{color:var(--muted);margin-bottom:.8rem;font-size:.9rem;display:block}input,select,textarea{width:100%;font:inherit;color:var(--text);border:1px solid var(--border);background:var(--surface);border-radius:8px;min-height:40px;margin-top:.25rem;padding:.55rem .7rem;display:block}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}input[type=color]{height:40px;padding:2px}textarea{min-height:80px}label.invalid input{border-color:var(--danger)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:1rem;padding:1rem 1.2rem}.auth-wrap{place-items:center;min-height:100vh;padding:16px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:420px;box-shadow:var(--shadow);border-radius:14px;padding:2rem}.brand-lg{letter-spacing:.12em;color:var(--primary);margin-bottom:1rem;font-weight:800}.auth-card button.primary{width:100%}.qr{background:#fff;border-radius:8px;width:200px;height:200px;margin:.5rem auto 1rem;padding:8px;display:block}.secret{word-break:break-all;background:var(--bg);border-radius:6px;margin:.5rem 0;padding:.5rem;display:block}.steps{padding-left:1.2rem}.steps li{margin-bottom:.4rem}.codes{columns:2;padding:0;font-size:1.05rem;list-style:none}.codes li{margin-bottom:.4rem}.app{flex-direction:column;min-height:100vh;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);border-top:4px solid var(--primary);z-index:10;align-items:center;gap:.75rem;padding:.5rem 1rem;display:flex;position:sticky;top:0}.brand{letter-spacing:.12em;color:var(--primary);font-weight:800;text-decoration:none}.org-switch select{min-width:220px;margin:0;font-weight:600}.org-switch{margin:0}.spacer{flex:1}.user{color:var(--text);text-decoration:none}.burger{display:none}.body{flex:1;display:flex}.side{background:var(--surface);border-right:1px solid var(--border);flex-shrink:0;width:240px;padding:.75rem .5rem}.side a{color:var(--text);border-radius:8px;justify-content:space-between;align-items:center;gap:.5rem;padding:.55rem .75rem;text-decoration:none;display:flex}.side a:hover{background:var(--bg)}.side a.active{background:var(--primary);color:var(--primary-text)}.soon{color:var(--muted);white-space:nowrap;font-size:.68rem}.side a.active .soon{color:inherit}main{flex:1;width:100%;max-width:1200px;padding:1.5rem}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.search{max-width:480px;margin-bottom:1rem}.grid{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;overflow:hidden}.grid th,.grid td{text-align:left;border-bottom:1px solid var(--border);padding:.6rem .75rem}.grid th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--bg);font-size:.8rem}.clickable{cursor:pointer}.clickable:hover{background:var(--bg)}.form-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 1rem;display:grid}.org-cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;display:grid}.org-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);box-shadow:var(--shadow);border-left:6px solid;padding:1rem;text-decoration:none;display:block}.org-card.current{outline:2px solid var(--accent)}.org-name{font-size:1.05rem;font-weight:700}.kpis{gap:1rem;margin:.75rem 0;display:flex}.kpis div{flex-direction:column;display:flex}.kpis b{font-size:1.3rem}.kpis span{color:var(--muted);font-size:.75rem}.modal{z-index:50;background:#00000073;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-card{background:var(--surface);border-radius:14px;width:100%;max-width:760px;max-height:92vh;padding:1.5rem;overflow:auto}@media (width<=760px){.burger{display:inline-block}.side{z-index:20;box-shadow:var(--shadow);transition:transform .2s;position:fixed;top:58px;bottom:0;left:0;transform:translate(-100%)}.side.open{transform:none}main{padding:1rem}.org-switch select{min-width:0;max-width:46vw}.user,.hide-sm{display:none}}.r{text-align:right}.row-gap{align-items:center;gap:.5rem;display:flex}.toolbar{flex-wrap:wrap;gap:.5rem;margin:.75rem 0;display:flex}button.success{background:var(--ok);color:#fff;border-color:var(--ok)}.chips{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.chip{border-radius:999px;min-height:34px;padding:.3rem .9rem}.chip.on{background:var(--primary);color:var(--primary-text);border-color:var(--primary)}.badge{white-space:nowrap;border-radius:999px;margin-left:.35rem;padding:.1rem .5rem;font-size:.75rem;display:inline-block}.badge.gray{color:#3b4654;background:#e5e9ef}.badge.blue{color:#1e40af;background:#dbe8ff}.badge.green{color:#05603a;background:#d1fadf}.badge.amber{color:#93370d;background:#fef0c7}.badge.red{color:#912018;background:#fee4e2}.dot{background:#c0c7d0;border-radius:50%;width:10px;height:10px;display:inline-block}.dot.green{background:#12b76a}.dot.yellow{background:#f79009}.dot.red{background:#f04438}.checks{padding:0;list-style:none}.checks li{border-radius:6px;margin-bottom:.3rem;padding:.35rem .5rem}.checks li.error{color:#912018;background:#fee4e2}.checks li.warning{color:#93370d;background:#fef0c7}fieldset{border:none;min-width:0;margin:0;padding:0}.items{margin-bottom:1rem}.items-head,.items-row{grid-template-columns:minmax(180px,3fr) 90px 70px 130px 80px 90px 36px;align-items:center;gap:.4rem;display:grid}.items-head{color:var(--muted);text-transform:uppercase;margin-bottom:.2rem;font-size:.75rem}.items-row{margin-bottom:.35rem}.items-row input,.items-row select{margin:0}.totals{text-align:right;border-top:1px solid var(--border);padding:.75rem 0}.totals .grand{font-size:1.3rem;font-weight:700}label.inline{align-items:center;gap:.5rem;display:flex}label.inline input{width:auto;min-height:0;margin:0}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin:1rem 0;display:grid}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;padding:.75rem}.kpi b{font-size:1.6rem;display:block}.kpi span{color:var(--muted);font-size:.8rem}.kpi.warn b{color:#b54708}.kpi.bad b{color:var(--danger)}@media (width<=760px){.items-head{display:none}.items-row{border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr 1fr;padding-bottom:.5rem}.items-row input:first-child{grid-column:1/-1}}.kpis{flex-wrap:wrap}.kpis a{color:inherit;flex-direction:column;min-width:45%;text-decoration:none;display:flex}.kpis a.bad b{color:var(--danger)}.kpis a.warn b{color:#b54708}a.org-name{color:var(--text);text-decoration:none;display:block}.org-card.add{border-left-color:var(--border);border-style:dashed;flex-direction:column;gap:.5rem;display:flex}.dropzone{border:2px dashed var(--border);text-align:center}.dropzone.drag{border-color:var(--accent);background:#2563eb0f}.dropzone .toolbar{justify-content:center}.verify{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.viewer{position:sticky;top:70px}.viewer-area{text-align:center;background:#6b7280;border-radius:8px;max-height:calc(100vh - 190px);padding:8px;overflow:auto}.viewer-area img{transform-origin:50%;background:#fff;max-width:none;transition:transform .15s}label.weak input,label.weak select{background:#fffaeb;border-color:#f79009}.weak-legend{color:#93370d;background:#fffaeb;border-radius:4px;padding:0 .3rem}.vat-row{grid-template-columns:90px 1fr 1fr 36px;align-items:center;gap:.4rem;margin-bottom:.35rem;display:grid}.vat-row input,.vat-row select{margin:0}.warn-box{color:#93370d;background:#fef0c7;border-color:#fedf89}.bad-box{color:#912018;background:#fee4e2;border-color:#fecdca}.kbd{opacity:.8;border:1px solid;border-radius:4px;margin-left:.4rem;padding:0 .25rem;font-size:.7rem}.sticky-actions{background:var(--surface);padding:.5rem 0;position:sticky;bottom:0}@media (prefers-color-scheme:dark){label.weak input,label.weak select{background:#3a2a07}.warn-box{color:#fec84b;background:#3a2a07}.bad-box{color:#fda29b;background:#3d1210}}@media (width<=900px){.verify{grid-template-columns:1fr}.viewer{position:static}.viewer-area{max-height:55vh}}[hidden]{display:none!important}.count{color:#fff;text-align:center;background:#f79009;border-radius:999px;min-width:1.4rem;padding:0 .5rem;font-size:.75rem;font-weight:700}.alert-row{color:#93370d;background:#fef0c7;border-radius:8px;margin-top:.5rem;padding:.45rem .6rem;font-size:.9rem;text-decoration:none;display:block}.alert-row.bad{color:#912018;background:#fee4e2}@media (prefers-color-scheme:dark){.alert-row{color:#fec84b;background:#3a2a07}.alert-row.bad{color:#fda29b;background:#3d1210}}.sticky-top{z-index:5;position:sticky;top:60px}.th-btn{all:unset;cursor:pointer;font:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;white-space:nowrap}.th-btn:focus-visible{outline:2px solid var(--accent);border-radius:4px}th.sortable .arrow{opacity:.45;font-size:.75em}th[aria-sort=ascending] .arrow,th[aria-sort=descending] .arrow{opacity:1;color:var(--accent)}
