:root{color-scheme:dark;--bg:#091426;--panel:#11233d;--line:#2b4668;--text:#eff7ff;--muted:#bed0e7;--primary:#4bbce0;--deep:#071827;--danger:#ffc1c3;--ok:#aaf0cf}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}a{color:#91e3ff}h1{font-size:1.7rem;letter-spacing:-.02em}p{color:var(--muted)}button,.btn,.quick a{background:#257bac;color:#fff;border:1px solid #5bcbee;border-radius:12px;padding:.76rem 1rem;display:inline-block;cursor:pointer;text-decoration:none;font-weight:700}button:hover,.btn:hover,.quick a:hover{background:#13618b}button.secondary{background:#223957;color:#fff;border-color:#657f9e}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #80eaff;outline-offset:3px}input{width:100%;display:block;border:1px solid #849bbc;border-radius:10px;padding:.78rem;background:#0a1a30;color:var(--text);font:inherit}input::placeholder{color:#aebfd6;opacity:1}label{display:block;font-weight:600;color:#e6f3ff}form label{margin-bottom:1rem}header input{width:auto}small{letter-spacing:.12em;color:var(--muted)}.brand{display:flex;align-items:center;gap:.65rem;color:white;font-size:1.35rem;font-weight:800}.mark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#66e4e3,#2057c7);color:white}.auth{min-height:100vh;display:grid;place-items:center;padding:1rem}.auth-box{width:min(460px,100%);background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:2rem;box-shadow:0 12px 48px #0004}.auth-box button{width:100%}.app{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}aside{border-right:1px solid var(--line);background:#0b192d;padding:1.4rem;display:flex;flex-direction:column;gap:.5rem}nav{display:grid;gap:.2rem;margin-top:1rem}nav a{text-decoration:none;color:var(--text);padding:.68rem .8rem;border-radius:10px}nav a:hover,nav a.active{background:#23476d;color:#fff}.sidebar-foot{margin-top:auto;color:var(--muted);font-size:.76rem}.workspace{min-width:0}header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid var(--line)}header form{margin:0}.content{max-width:1200px;margin:auto;padding:1.5rem 2rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:1.25rem;margin-top:1rem;overflow-x:auto}.entry-form{max-width:680px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem 1rem}.entry-form label:nth-child(5),.entry-form button{grid-column:span 2}.quick{display:flex;flex-wrap:wrap;gap:.7rem;margin:1rem 0}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;color:#d7e8ff;background:#1c3859}td,th{padding:.75rem;border-bottom:1px solid #37516f}tr:hover td{background:#19334e}.number{text-align:right;font-variant-numeric:tabular-nums}.alert,.ok{border-radius:12px;padding:.8rem 1rem;color:var(--danger);background:#492738;border:1px solid #925166}.ok{color:var(--ok);background:#153c36;border-color:#357c65}@media(max-width:800px){.app{display:block}aside{position:static}nav{display:flex;overflow-x:auto;flex-wrap:wrap}.sidebar-foot{display:none}header{flex-wrap:wrap}.content{padding:1rem}.entry-form{grid-template-columns:1fr}.entry-form label:nth-child(5),.entry-form button{grid-column:span 1}}@media print{aside,header,.quick,button{display:none!important}body,.panel{background:white;color:black}p,td,th{color:black}.app{display:block}.content{max-width:none;padding:0}table{white-space:normal}}
.drop-zone{margin:1rem 0;padding:2rem;border:2px dashed #75bfe6;border-radius:12px;text-align:center;background:#1b3859;cursor:pointer;color:#fff}.drop-zone.hover,.drop-zone:focus-visible{background:#25597e;outline:3px solid #9eeaff}

select{width:100%;display:block;border:1px solid #849bbc;border-radius:10px;padding:.78rem;background:#0a1a30;color:#eff7ff;font:inherit}select:focus-visible{outline:3px solid #80eaff;outline-offset:3px}.vat-hint{grid-column:1/-1;font-size:.9rem;color:#dceafd}.entry-form button{grid-column:1/-1}
.print-company{display:none}@media print{.print-company{display:block}form{display:none!important}.alert{border:1px solid #333;color:#111;background:white}}
.period-switch{display:flex;gap:.6rem;align-items:end}.period-switch label{margin:0;font-size:.8rem}.period-switch select{max-width:320px;padding:.5rem}header{flex-wrap:wrap}
.auth-box{position:relative;width:min(100%,540px);border-radius:28px;padding:40px}.auth-box label{margin-top:18px}.auth-box input{min-height:54px}.auth-box form>button,.passkey-login>button{width:100%;min-height:50px}.auth-box .brand{font-size:32px}.auth-theme{position:absolute;right:24px;top:24px}.password-field{position:relative;display:flex;align-items:center}.password-field input{width:100%;padding-right:56px}.password-eye{position:absolute;right:6px;padding:8px;min-width:40px}.passkey-login{margin-top:26px;text-align:center;border-top:1px solid var(--border);padding-top:16px}.passkey-feedback{font-size:.92rem}.account-menu{position:relative}.account-menu>summary{cursor:pointer;padding:12px}.account-popover{position:absolute;right:0;top:100%;width:min(360px,calc(100vw - 32px));z-index:80;background:var(--panel,#182638);border:1px solid var(--border,#40516c);border-radius:18px;padding:20px;box-shadow:0 18px 48px #0004}.account-popover>a{display:block;padding:16px 0}.theme-options{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.theme-options button{padding:8px;font-size:.9rem}.theme-options button[aria-pressed=true]{outline:2px solid #5d78ff}.connection-status{border-bottom:1px solid #8290a444;padding-bottom:12px}.passkey-row{padding:14px 0;border-top:1px solid #8290a444}.passkey-row button{margin-left:12px}[data-theme=light] .account-popover{background:#fff;color:#172235}@media(max-width:600px){.auth{padding:20px 12px}.auth-box{padding:30px 22px}.auth-theme{right:14px;top:12px}.account-menu{position:static}.account-popover{right:12px;top:65px}header{position:relative}}
.auth-box .auth-theme{width:40px;min-height:40px;height:40px;padding:6px;border-radius:50%}.auth-box .password-eye{width:40px;min-height:40px;height:40px;padding:6px;border:0;background:transparent}.auth-box{font-size:16px}.auth-box button{font-size:16px}.auth-box h1{font-size:32px}.auth-box>p:not(.alert):not(.ok){color:var(--muted)}.auth-box .passkey-login{border:1px solid #8290a433;border-radius:16px;padding:14px;margin-top:24px}.auth-box .passkey-login>p:first-child{margin:0 0 12px}
