@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:300;src:url(../media/plus-jakarta-sans-latin-300-normal.3-ya34rs4md2j.woff2)format("woff2"),url(../media/plus-jakarta-sans-latin-300-normal.350q3xzjr0aql.woff)format("woff")}
@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(../media/plus-jakarta-sans-latin-700-normal.1dulefe5e4s81.woff2)format("woff2"),url(../media/plus-jakarta-sans-latin-700-normal.11xgn1hzdiyec.woff)format("woff")}
:root{--bg:#f5f7fa;--surface:#fff;--text:#0f172a;--muted:#64748b;--border:#e2e8f0;--primary:#0f766e;--primary-hover:#115e59;--primary-text:#fff;--brand-ink:#0f172a;--brand-flow:#0d9488;--brand-gold:#d97706;--brand-tile:#0f172a;--danger:#b91c1c;--danger-bg:#fef2f2;--success:#166534;--success-bg:#f0fdf4;--warn-bg:#fffbeb;--warn:#92400e;--info:#1d4ed8;--info-bg:#eff6ff;--radius:10px;--shadow:0 1px 2px #1018280f, 0 8px 24px #1018280f}:root[data-theme=dark]{--bg:#0b1220;--surface:#121a2b;--text:#f1f5f9;--muted:#94a3b8;--border:#243049;--primary:#2dd4bf;--primary-hover:#5eead4;--primary-text:#0b1220;--brand-ink:#f1f5f9;--brand-flow:#2dd4bf;--brand-gold:#f59e0b;--brand-tile:#1e293b;--danger:#fca5a5;--danger-bg:#2a1517;--success:#86efac;--success-bg:#11241a;--warn-bg:#2b2410;--warn:#fcd34d;--info:#93c5fd;--info-bg:#172033;--shadow:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b1220;--surface:#121a2b;--text:#f1f5f9;--muted:#94a3b8;--border:#243049;--primary:#2dd4bf;--primary-hover:#5eead4;--primary-text:#0b1220;--brand-ink:#f1f5f9;--brand-flow:#2dd4bf;--brand-gold:#f59e0b;--brand-tile:#1e293b;--danger:#fca5a5;--danger-bg:#2a1517;--success:#86efac;--success-bg:#11241a;--warn-bg:#2b2410;--warn:#fcd34d;--info:#93c5fd;--info-bg:#172033;--shadow:none}}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--bg);color:var(--text);margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--primary)}h1{margin:0 0 .25rem;font-size:1.4rem}h2{margin:1.5rem 0 .5rem;font-size:1.1rem}p{margin:.5rem 0}.muted{color:var(--muted);font-size:.92rem}.brand{text-decoration:none;display:inline-flex}.logo{align-items:center;gap:9px;line-height:1;display:inline-flex}.logo-mark{flex:none;display:block}.logo-tile{fill:var(--brand-tile)}.logo-word{letter-spacing:-.02em;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:1.28rem}.logo-kooris{color:var(--brand-ink);font-weight:700}.logo-flow{color:var(--brand-flow);font-weight:300}.logo-lg{gap:12px}.logo-lg .logo-word{font-size:1.75rem}.auth-wrap{place-items:center;min-height:100vh;padding:24px 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:28px}.auth-card .brand{margin-bottom:20px;display:block}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:16px;font-size:.92rem;display:flex}.field{gap:6px;margin:14px 0;display:grid}.field label{font-size:.92rem;font-weight:600}.field .hint{color:var(--muted);font-size:.84rem}input,select,textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);font:inherit;border-radius:8px;padding:10px 12px}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 45%, transparent);outline-offset:1px}.btn{background:var(--primary);color:var(--primary-text);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{background:var(--primary-hover)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn.block{width:100%;margin-top:8px}.btn.secondary{color:var(--text);border-color:var(--border);background:0 0}.btn.secondary:hover{background:var(--bg)}.btn.danger{color:var(--danger);border-color:var(--border);background:0 0}.btn.small{padding:6px 10px;font-size:.88rem}.alert{border-radius:8px;margin:12px 0;padding:10px 12px;font-size:.94rem}.alert.error{background:var(--danger-bg);color:var(--danger)}.alert.success{background:var(--success-bg);color:var(--success)}.alert.warn{background:var(--warn-bg);color:var(--warn)}.topbar{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:20px;padding:12px 24px;display:flex}.topbar .top-nav{flex:1;gap:16px;display:flex}.topbar .top-nav a{color:var(--text);font-weight:500;text-decoration:none}.topbar .user{color:var(--muted);align-items:center;gap:12px;font-size:.9rem;display:flex}.page{max-width:960px;margin:0 auto;padding:28px 24px 64px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.row.between{justify-content:space-between}.badge{background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:600;display:inline-block}.badge.ok{color:var(--success);background:var(--success-bg);border-color:#0000}.badge.warn{color:var(--warn);background:var(--warn-bg);border-color:#0000}.badge.ko{color:var(--danger);background:var(--danger-bg);border-color:#0000}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 8px;font-size:.94rem}th{color:var(--muted);font-size:.84rem;font-weight:600}.table-wrap{overflow-x:auto}.codes{background:var(--bg);border-radius:8px;grid-template-columns:repeat(2,1fr);gap:8px;margin:12px 0;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;display:grid}.qr{background:#fff;border-radius:8px;place-items:center;width:fit-content;padding:12px;display:grid}.qr svg{width:220px;height:220px;display:block}.secret{word-break:break-all;font-family:ui-monospace,monospace;font-size:.9rem}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:560px){.topbar{padding:12px 16px}.page{padding:20px 16px 48px}.codes{grid-template-columns:1fr}}.page:has(.shell){max-width:none;padding:0}.shell{grid-template-columns:248px minmax(0,1fr);min-height:calc(100vh - 57px);display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;align-self:start;gap:14px;height:calc(100vh - 57px);padding:18px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.org-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);gap:6px;padding:10px 12px;display:grid}.org-name{word-break:break-word;line-height:1.25}.org-switch summary{cursor:pointer;color:var(--primary);font-size:.85rem}.org-switch ul{margin:6px 0 0;padding-left:18px;font-size:.9rem}.side-nav{gap:2px;display:grid}.side-nav a{color:var(--text);border-radius:8px;align-items:center;gap:10px;padding:9px 10px;font-weight:500;text-decoration:none;display:flex}.side-nav a:hover{background:var(--bg)}.side-nav a.active{background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--primary);font-weight:600}.nav-icon{text-align:center;opacity:.85;width:1.2rem}.kbd-hint{margin-top:auto;font-size:.8rem}kbd{border:1px solid var(--border);font:inherit;background:var(--surface);border-bottom-width:2px;border-radius:4px;padding:0 5px;font-size:.8em}.content{min-width:0;max-width:1280px;padding:28px 32px 72px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.page-header p{margin:2px 0 0}.section{margin-top:18px}.section h2{margin-top:0}.row.tight{gap:6px}.notices{margin-top:16px}.badge.info{color:var(--info);background:var(--info-bg);border-color:#0000}a.badge{text-decoration:none}.kpis{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:6px 0 4px;display:grid}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);gap:2px;padding:16px 18px;display:grid}.kpi strong{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:1.55rem}.kpi.alert-kpi{border-color:var(--danger)}.kpi.alert-kpi strong{color:var(--danger)}.todo{margin:0;padding:0;list-style:none;display:grid}.todo li{border-bottom:1px solid var(--border);padding:11px 0}.todo li:last-child{border-bottom:0}.steps{text-align:left;margin:8px 0 0;line-height:2;display:inline-block}.empty{text-align:center;border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface);margin:12px 0;padding:36px 16px}.empty-title{margin:0;font-size:1.05rem;font-weight:600}.skeleton{gap:12px;margin-top:16px;display:grid}.sk-line{background:linear-gradient(90deg, var(--border), var(--bg), var(--border));background-size:200% 100%;border-radius:6px;height:18px;animation:1.4s infinite sk}@keyframes sk{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.sk-line{animation:none}}.chart{margin:0}.chart svg{width:100%;height:auto;max-height:260px}.bar{fill:var(--primary)}.bar-label,.bar-value{fill:var(--muted);font-size:11px}.bar-value{fill:var(--text);font-weight:600}.axis{stroke:var(--border)}.month-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.month-title{text-transform:capitalize;text-align:center;min-width:9ch;margin:0 6px;font-size:1.25rem}.total-pill{background:var(--surface);border:1px solid var(--border);border-radius:999px;margin-left:auto;padding:6px 14px}.save-state{color:var(--muted);min-height:1.4em;font-size:.88rem}.save-state.saved{color:var(--success)}.save-state.error{color:var(--danger)}.tgrid-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);-webkit-user-select:none;user-select:none;overflow-x:auto}.tgrid{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%}.tgrid th,.tgrid td{border-bottom:1px solid var(--border);text-align:center;padding:0;font-size:.82rem}.tgrid .proj-col{z-index:2;background:var(--surface);text-align:left;border-right:1px solid var(--border);min-width:210px;max-width:260px;padding:8px 12px;position:sticky;left:0}.proj-name{font-size:.92rem;font-weight:600;display:block}.proj-client{font-size:.8rem;font-weight:400;display:block}.row-actions{color:var(--muted);margin-top:4px;font-size:.76rem;font-weight:400;display:block}.link{color:var(--primary);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.tgrid th.day{background:var(--surface);min-width:34px;padding:4px 0}.tgrid th.day .dn{font-weight:600;display:block}.tgrid th.day .wd{color:var(--muted);font-size:.68rem;font-weight:400;display:block}.tgrid .we,.tgrid th.we{background:color-mix(in srgb, var(--muted) 12%, var(--surface))}.tgrid .ho,.tgrid th.ho{background:color-mix(in srgb, #f59e0b 20%, var(--surface))}.tgrid td.abs{background:color-mix(in srgb, #8b5cf6 18%, var(--surface))}.sum-col{background:var(--surface);border-left:1px solid var(--border);min-width:56px;position:sticky;right:0;padding:0 10px!important}.tgrid tfoot th,.tgrid tfoot td{background:var(--bg);padding:8px 0;font-weight:600}.cell{cursor:pointer;width:34px;height:36px;font:inherit;color:var(--text);touch-action:manipulation;background:0 0;border:0;font-weight:700}.cell:hover:not(:disabled){background:color-mix(in srgb, var(--primary) 10%, transparent)}.cell.full{background:var(--primary);color:var(--primary-text)}.cell.half{background:color-mix(in srgb, var(--primary) 38%, var(--surface))}.cell.locked{opacity:.55;cursor:not-allowed;background-image:repeating-linear-gradient(45deg,#0000 0 4px,#00000014 4px 6px)}.cell:disabled{cursor:default}.cell:focus-visible{outline:3px solid var(--text);outline-offset:-3px;z-index:1;position:relative}.legend{flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:.84rem;display:flex}.lg{border:1px solid var(--border);vertical-align:-2px;border-radius:3px;width:14px;height:14px;display:inline-block}.lg.full{background:var(--primary)}.lg.half{background:color-mix(in srgb, var(--primary) 38%, var(--surface))}.lg.ho{background:color-mix(in srgb, #f59e0b 35%, var(--surface))}.lg.we{background:color-mix(in srgb, var(--muted) 25%, var(--surface))}.lg.abs{background:color-mix(in srgb, #8b5cf6 30%, var(--surface))}dialog.modal{border:1px solid var(--border);background:var(--surface);width:min(520px,100vw - 32px);color:var(--text);border-radius:14px;padding:0;box-shadow:0 24px 64px #00000047}dialog.modal.wide{width:min(860px,100vw - 32px)}dialog.modal::backdrop{background:#0f11178c}.modal-body{max-height:calc(100vh - 80px);padding:22px;overflow-y:auto}.modal-title{margin:0;font-size:1.15rem}dialog.palette{width:min(560px,100vw - 32px);margin-top:12vh}.palette-input{border:0;border-bottom:1px solid var(--border);border-radius:14px 14px 0 0;padding:16px 18px;font-size:1.05rem}.palette-list{margin:0;padding:6px;list-style:none}.palette-item{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;padding:10px 12px;display:flex}.palette-item.active{background:color-mix(in srgb, var(--primary) 14%, transparent)}.palette-empty{padding:14px}.toasts{z-index:50;gap:8px;max-width:min(380px,100vw - 32px);display:grid;position:fixed;bottom:16px;right:16px}.toast{background:var(--text);color:var(--bg);box-shadow:var(--shadow);border-radius:10px;padding:12px 14px;font-size:.94rem}.toast.error{background:var(--danger);color:#fff}.toast.success{color:#fff;background:#166534}.data-table tbody tr:hover{background:color-mix(in srgb, var(--primary) 5%, transparent)}.data-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.data-table a.row-link{color:var(--text);font-weight:600;text-decoration:none}.data-table a.row-link:hover{color:var(--primary);text-decoration:underline}.chips{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.chip{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:999px;padding:5px 14px;font-size:.9rem}.chip[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--primary-text);font-weight:600}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 16px;display:grid}.lines{width:100%}.lines input,.lines select{padding:7px 8px}.lines td{vertical-align:top;border-bottom:0;padding:4px}.lines .desc{min-width:260px}.lines .qty,.lines .price,.lines .vat,.lines .disc{width:96px}.totals{gap:4px;width:min(340px,100%);margin-top:12px;margin-left:auto;display:grid}.totals div{font-variant-numeric:tabular-nums;justify-content:space-between;display:flex}.totals .grand{border-top:1px solid var(--border);padding-top:6px;font-size:1.1rem;font-weight:700}.detail-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.pair{gap:4px;display:grid}.pair dt{color:var(--muted);font-size:.84rem}.pair dd{margin:0 0 10px}.tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:16px;display:flex}.tabs button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:10px 14px;font-weight:600}.tabs button[aria-selected=true]{color:var(--primary);border-bottom-color:var(--primary)}.recap th,.recap td{white-space:nowrap}.recap tfoot td{background:var(--bg);font-weight:700}.pos{color:var(--success)}.neg{color:var(--danger)}.salary-input{text-align:right;width:92px;padding:5px 7px}.filters{margin-bottom:14px}.search{max-width:340px}.actions-bar{margin:4px 0 14px}.legal,.seal{font-size:.82rem}code{font-family:ui-monospace,monospace}.mobile-only{display:none}.quick-fill{margin:10px 0;padding:0;list-style:none}.quick-fill li{padding:6px 0}@media (max-width:860px){.desktop-only{display:none!important}.mobile-only{display:block}.tgrid .proj-col{min-width:104px;max-width:104px;padding:6px 8px}.proj-name{font-size:.82rem;line-height:1.2}.proj-client{display:none}.cell{width:38px;height:42px}.page-header{margin-bottom:12px}.total-pill{margin-left:0}}.bars{gap:6px;margin:0 0 16px;padding:0;list-style:none;display:grid}.bars li{grid-template-columns:90px 1fr 110px;align-items:center;gap:10px;display:grid}.bars meter{width:100%;height:14px}.two-cols{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.check{align-items:center;gap:8px;margin:8px 0;display:flex}@media (max-width:560px){.bars li{grid-template-columns:70px 1fr 90px}}.theme-toggle{border:1px solid var(--border);background:var(--bg);border-radius:999px;gap:2px;padding:2px;display:inline-flex}.theme-toggle button{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;display:grid}.theme-toggle button:hover{color:var(--text)}.theme-toggle button[aria-pressed=true]{background:var(--surface);color:var(--primary);box-shadow:0 1px 2px #0000001f}.auth-footer{justify-content:center;margin-top:16px;display:flex}.auth-wrap{grid-template-rows:auto auto;align-content:center}.icon-btn{border:1px solid var(--border);background:var(--surface);width:42px;height:42px;color:var(--text);cursor:pointer;border-radius:10px;place-items:center;display:inline-grid}.top-menu,.tab-bar,.org-strip{display:none}dialog.drawer{background:var(--surface);width:min(340px,88vw);height:100dvh;max-height:100dvh;color:var(--text);border:0;margin:0;padding:0;box-shadow:0 0 48px #0000004d}dialog.drawer-right{border-left:1px solid var(--border);margin-left:auto}dialog.drawer-left{border-right:1px solid var(--border);margin-right:auto}dialog.drawer::backdrop{background:#0f172a8c}.drawer-panel{padding:16px 16px calc(16px + env(safe-area-inset-bottom));align-content:start;gap:14px;min-height:100%;display:grid}.drawer-head{border-bottom:1px solid var(--border);padding-bottom:8px}.drawer-user{margin:0}.drawer-nav{gap:2px;display:grid}.drawer-nav a{color:var(--text);border-radius:8px;padding:12px 10px;font-weight:500;text-decoration:none}.drawer-nav a:hover{background:var(--bg)}.drawer-foot{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.drawer-role{margin:-6px 0 0}.drawer .side-nav{gap:2px;display:grid}.drawer .side-nav a{padding:11px 10px}.drawer-switch{border-bottom:1px solid var(--border);padding-bottom:8px}@media (prefers-reduced-motion:no-preference){dialog.drawer[open]{animation:.18s ease-out drawer-in}dialog.drawer-left[open]{animation-name:drawer-in-left}}@keyframes drawer-in{0%{opacity:0;transform:translate(24px)}}@keyframes drawer-in-left{0%{opacity:0;transform:translate(-24px)}}@media (min-width:861px) and (max-width:1180px){.shell{grid-template-columns:212px minmax(0,1fr)}.sidebar{padding:14px 10px}.side-nav a{padding:8px;font-size:.94rem}.content{padding:24px 22px 64px}.topbar{gap:14px}.topbar .user-name{display:none}}@media (max-width:860px){.topbar{z-index:20;padding:10px 16px;padding-top:calc(10px + env(safe-area-inset-top));flex-wrap:nowrap;justify-content:space-between;position:sticky;top:0}.topbar .top-nav,.topbar .user{display:none}.top-menu{display:inline-grid}.sidebar{display:none}.shell{min-height:0;display:block}.content{padding:16px 16px calc(88px + env(safe-area-inset-bottom))}.org-strip{justify-content:space-between;align-items:center;gap:8px;margin:-4px 0 12px;font-size:.92rem;display:flex}.org-strip strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tab-bar{z-index:30;background:var(--surface);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tab-bar a,.tab-bar .tab-more{min-height:58px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;justify-items:center;gap:2px;padding:8px 2px 7px;font-size:.72rem;font-weight:600;text-decoration:none;display:grid}.tab-bar a.active{color:var(--primary)}.toasts{bottom:calc(76px + env(safe-area-inset-bottom));max-width:none;left:16px;right:16px}.page{padding:18px 16px 48px}}@media (pointer:coarse){.btn{min-height:44px}.btn.small{min-height:40px;padding:8px 12px}.chip{min-height:38px}.theme-toggle button{width:38px;height:38px}.link{padding:6px 0}input,select,textarea{min-height:44px;font-size:16px}}@media (max-width:640px){h1{font-size:1.25rem}.card{padding:14px}.page-header>:last-child:not(:first-child){flex-wrap:wrap;gap:8px;width:100%;display:flex}.page-header>:last-child:not(:first-child)>.btn{flex:auto}.chips{scrollbar-width:none;flex-wrap:nowrap;margin-right:-16px;padding-bottom:4px;padding-right:16px;overflow-x:auto}.chip{flex:none}.form-grid{grid-template-columns:1fr}.totals{width:100%}.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi{padding:12px}.kpi strong{font-size:1.2rem}.two-cols{grid-template-columns:1fr}table.cards thead{display:none}table.cards,table.cards tbody,table.cards tr,table.cards td{width:100%;display:block}table.cards tr{border-bottom:1px solid var(--border);padding:10px 2px}table.cards tbody tr:hover{background:0 0}table.cards td{text-align:right;border:0;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:4px 0;display:flex}table.cards td:before{content:attr(data-label);color:var(--muted);text-align:left;flex:none;max-width:45%;font-size:.8rem;font-weight:600}table.cards td[data-label=""]:before{content:none}table.cards td:first-child{text-align:left;font-size:1rem;font-weight:600}table.cards td:first-child:before{content:none}table.cards td.num{text-align:right}table.cards td.row{flex-wrap:wrap;justify-content:flex-start}.card.table-wrap:has(table.cards){padding:4px 14px}.lines.cards tr{grid-template-columns:1fr 1fr;gap:8px 10px;padding:12px 0;display:grid}.lines.cards td{text-align:left;justify-content:stretch;gap:4px;padding:0;display:grid}.lines.cards td:before{max-width:none}.lines.cards td.desc{grid-column:1/-1}.lines.cards td.desc:before{content:attr(data-label)}.lines.cards td.num{grid-column:1/2;align-self:end;font-weight:700}.lines.cards td:last-child{align-self:end;justify-items:end}.lines .desc,.lines .qty,.lines .price,.lines .vat,.lines .disc{width:100%;min-width:0}dialog.modal,dialog.modal.wide{border-bottom:0;border-radius:16px 16px 0 0;width:100vw;max-width:100vw;margin:auto 0 0}.modal-body{max-height:92dvh;padding:18px 16px calc(18px + env(safe-area-inset-bottom))}dialog.palette{border-radius:14px;width:calc(100vw - 16px);margin-top:8px}.detail-head{flex-direction:column}.bars li{grid-template-columns:64px 1fr 92px;gap:8px;font-size:.88rem}.bar-label,.bar-value{font-size:21px}.chart svg{max-height:none}.auth-card{padding:22px 18px}.logo-lg .logo-word{font-size:1.5rem}}.lang-switch{border:1px solid var(--border);background:var(--bg);border-radius:999px;gap:2px;padding:2px;display:inline-flex}.lang-switch button{min-width:34px;height:30px;color:var(--muted);font:inherit;letter-spacing:.03em;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 8px;font-size:.78rem;font-weight:700}.lang-switch button:hover{color:var(--text)}.lang-switch button[aria-pressed=true]{background:var(--surface);color:var(--primary);box-shadow:0 1px 2px #0000001f}.auth-footer{flex-wrap:wrap;gap:10px}@media (pointer:coarse){.lang-switch button{min-width:40px;height:38px}}.pref-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}
