:root{--app-font:"PT Sans","Segoe UI",Arial,sans-serif}
html,body,button,input,select,textarea,table{font-family:var(--app-font)!important}
:root{--bg:#f4f7f5;--surface:#fff;--surface-2:#f8faf9;--text:#10231b;--muted:#718078;--border:#e2eae5;--primary:#087443;--primary-2:#0d9659;--green-soft:#e9f8f0;--gold:#d9a62e;--danger:#d34848;--sidebar:#063d2d;--sidebar-2:#052f24;--shadow:0 18px 45px rgba(23,60,43,.08);--radius:20px}
html[data-theme="dark"]{--bg:#0d1512;--surface:#111e19;--surface-2:#15241e;--text:#edf6f1;--muted:#91a59a;--border:#263a31;--primary:#2bc77c;--primary-2:#3ed990;--green-soft:#123224;--shadow:0 18px 45px rgba(0,0,0,.28)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--app-font);color:var(--text);background:var(--bg)}body{transition:background .25s,color .25s}a{text-decoration:none;color:inherit}button,input,select{font:inherit}
/* login */
.login-body{background:#f5f7f6}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(460px,.85fr)}.login-brand-panel{position:relative;overflow:hidden;background:radial-gradient(circle at 70% 28%,rgba(55,191,115,.28),transparent 31%),linear-gradient(145deg,#043527 0%,#075037 55%,#063527 100%);padding:7vh 7vw;color:white;display:flex;align-items:center}.login-brand-panel:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,black,transparent)}.brand-orbit{position:absolute;border:1px solid rgba(225,183,71,.16);border-radius:50%;width:600px;height:600px;right:-220px;top:-130px}.brand-orbit-two{width:800px;height:800px;right:-320px;top:-220px}.login-brand-content{position:relative;z-index:2;max-width:720px}.login-logo{width:min(500px,78%);max-height:150px;object-fit:contain;object-position:left center;filter:drop-shadow(0 12px 25px rgba(0,0,0,.2));margin-bottom:60px}.eyebrow,.login-kicker,.panel-kicker,.page-kicker{font-size:11px;letter-spacing:.17em;font-weight:800}.eyebrow{color:#e8c45b}.login-brand-content h1{font-size:clamp(38px,4vw,66px);line-height:1.04;letter-spacing:-.045em;margin:15px 0 25px;max-width:780px}.login-brand-content>p{font-size:18px;line-height:1.7;color:#c8ddd3;max-width:650px}.login-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:55px}.login-feature-grid>div{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);backdrop-filter:blur(10px);border-radius:16px;padding:18px}.login-feature-grid span{display:block;color:#e8c45b;font-size:11px;font-weight:900;letter-spacing:.12em;margin-bottom:12px}.login-feature-grid b{display:block;font-size:15px}.login-feature-grid small{display:block;color:#a9c3b7;margin-top:5px;line-height:1.4}.login-form-panel{background:linear-gradient(180deg,#fbfdfc,#f2f6f4);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px}.login-card{width:min(470px,100%)}.login-icon-wrap{width:72px;height:72px;border-radius:18px;overflow:hidden;box-shadow:0 15px 35px rgba(6,78,55,.18);margin-bottom:26px}.login-icon-wrap img{width:100%;height:100%;object-fit:cover}.login-kicker{color:#0b8750}.login-card h2{font-size:32px;letter-spacing:-.035em;margin:9px 0 8px}.login-intro{color:#718078;margin:0 0 32px}.form-label{display:block;font-size:13px;font-weight:750;margin:18px 0 8px}.input-shell{display:flex;align-items:center;border:1px solid #dce5e0;background:white;border-radius:13px;height:54px;padding:0 14px;box-shadow:0 5px 14px rgba(23,60,43,.025)}.input-shell:focus-within{border-color:#27a76a;box-shadow:0 0 0 4px rgba(39,167,106,.09)}.input-shell>span{color:#8fa39a;margin-right:10px}.input-shell input{border:0;outline:0;flex:1;min-width:0;font-size:14px;background:transparent;color:#10231b}.password-toggle{border:0;background:transparent;color:#158253;font-weight:700;font-size:12px;cursor:pointer}.login-options{display:flex;justify-content:space-between;align-items:center;margin:17px 0 25px;color:#718078;font-size:12px}.login-options label{display:flex;gap:7px;align-items:center}.btn-primary{border:0;background:linear-gradient(135deg,#087443,#0d9659);color:white;border-radius:13px;cursor:pointer;font-weight:800;box-shadow:0 14px 25px rgba(9,116,67,.18)}.btn-login{width:100%;height:55px;display:flex;align-items:center;justify-content:center;gap:12px}.btn-login span{font-size:20px}.login-security{margin-top:26px;padding-top:22px;border-top:1px solid #e1e8e4;color:#8a9991;font-size:12px;line-height:1.5}.login-security span{color:#20a667;margin-right:6px}.login-footer{font-size:11px;color:#98a69e;margin-top:34px}.mobile-brand{display:none}.alert{padding:12px 14px;border-radius:11px;font-size:13px;margin:18px 0}.alert-danger{background:#fff0f0;color:#a93535;border:1px solid #ffd2d2}
/* app */
.app-shell{display:flex;min-height:100vh}.sidebar{width:260px;position:fixed;left:0;top:0;bottom:0;background:linear-gradient(180deg,var(--sidebar),var(--sidebar-2));color:#d8e8e0;display:flex;flex-direction:column;z-index:60;box-shadow:10px 0 30px rgba(3,33,24,.08)}.sidebar-brand{height:92px;display:flex;align-items:center;padding:15px 22px;border-bottom:1px solid rgba(255,255,255,.07)}.sidebar-brand img{width:194px;max-height:62px;object-fit:contain;object-position:left}.nav-menu{padding:16px 13px;overflow-y:auto;flex:1}.nav-item{display:flex;align-items:center;gap:12px;min-height:44px;padding:9px 12px;border-radius:10px;color:#b9d0c5;font-size:13px;font-weight:650;margin:2px 0;transition:.18s}.nav-item:hover{background:rgba(255,255,255,.07);color:#fff}.nav-item.active{background:linear-gradient(90deg,rgba(54,203,125,.22),rgba(54,203,125,.08));color:#fff;box-shadow:inset 3px 0 0 #55df93}.nav-icon{width:25px;height:25px;display:grid;place-items:center;font-size:17px;color:#7dd5a5}.nav-item.active .nav-icon{color:#72efa7}.nav-label{font-size:9px;letter-spacing:.18em;font-weight:900;color:#5d8b77;padding:22px 12px 8px}.nav-pill{margin-left:auto;background:#1c6a49;color:#b7eed0;border-radius:20px;padding:2px 7px;font-size:10px}.sidebar-footer-card{margin:12px 14px 18px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045);border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px}.mini-icon{width:30px;height:30px;border-radius:9px;background:#166746;display:grid;place-items:center;color:#63e39c}.sidebar-footer-card b,.sidebar-footer-card small{display:block}.sidebar-footer-card b{font-size:11px}.sidebar-footer-card small{color:#7ba28f;font-size:9px;margin-top:2px}.app-main{margin-left:260px;min-width:0;flex:1;display:flex;flex-direction:column;min-height:100vh}.topbar{height:82px;padding:0 30px;display:grid;grid-template-columns:minmax(220px,.75fr) minmax(280px,1fr) minmax(340px,.85fr);align-items:center;gap:24px;background:color-mix(in srgb,var(--surface) 95%,transparent);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:40;backdrop-filter:blur(18px)}.topbar-left{display:flex;align-items:center;gap:13px}.topbar-left h1{font-size:18px;margin:2px 0 0;letter-spacing:-.02em}.page-kicker{color:var(--primary);font-size:8px}.menu-toggle{display:none}.global-search{height:42px;border:1px solid var(--border);background:var(--surface-2);border-radius:11px;display:flex;align-items:center;padding:0 12px;color:var(--muted)}.global-search input{flex:1;border:0;outline:0;background:transparent;color:var(--text);padding:0 10px;font-size:12px}.global-search kbd{font-size:9px;padding:4px 6px;border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--muted)}.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.icon-btn{width:38px;height:38px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}.notification-btn{position:relative}.notification-dot{position:absolute;right:8px;top:8px;width:6px;height:6px;border-radius:50%;background:#e8b83f;border:1px solid var(--surface)}.lang-switch{display:flex;border:1px solid var(--border);padding:3px;background:var(--surface-2);border-radius:9px}.lang-switch a{font-size:9px;padding:7px 8px;border-radius:6px;color:var(--muted);font-weight:800}.lang-switch a.active{background:var(--surface);color:var(--primary);box-shadow:0 2px 8px rgba(0,0,0,.05)}.user-menu{display:flex;align-items:center;gap:9px;border-left:1px solid var(--border);padding-left:12px;margin-left:4px}.avatar{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#0c7547,#2bae6c);color:white;display:grid;place-items:center;font-size:12px;font-weight:900}.user-meta b,.user-meta small{display:block;white-space:nowrap}.user-meta b{font-size:11px}.user-meta small{color:var(--muted);font-size:9px;margin-top:3px}.logout-mini{font-size:17px;color:var(--muted);padding:8px}.content-wrap{padding:28px 30px 36px;flex:1}.hero-dashboard{position:relative;overflow:hidden;min-height:172px;border-radius:22px;padding:30px 34px;color:white;display:flex;align-items:center;justify-content:space-between;background:radial-gradient(circle at 82% 15%,rgba(255,214,92,.18),transparent 26%),radial-gradient(circle at 72% 100%,rgba(44,207,126,.25),transparent 38%),linear-gradient(125deg,#064936,#076241 65%,#075137);box-shadow:0 20px 40px rgba(8,73,52,.14)}.hero-dashboard:after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-90px;top:-120px;box-shadow:0 0 0 45px rgba(255,255,255,.025),0 0 0 90px rgba(255,255,255,.018)}.hero-greeting{font-size:12px;color:#afd6c3;margin-bottom:8px}.hero-dashboard h2{font-size:30px;letter-spacing:-.035em;margin:0 0 7px}.hero-dashboard p{color:#b9d8ca;margin:0;font-size:13px}.hero-date{position:relative;z-index:2;width:98px;height:104px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);backdrop-filter:blur(8px);border-radius:17px;display:flex;flex-direction:column;align-items:center;justify-content:center}.hero-date span{font-size:8px;color:#e8c45b;font-weight:900;letter-spacing:.14em}.hero-date b{font-size:33px;line-height:1.1}.hero-date small{font-size:9px;color:#b9d8ca}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:18px}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:17px;padding:18px 19px;box-shadow:var(--shadow);position:relative;overflow:hidden}.kpi-card:after{content:"";position:absolute;width:80px;height:80px;border-radius:50%;right:-25px;top:-32px;background:currentColor;opacity:.035}.kpi-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.kpi-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-weight:900}.kpi-green .kpi-icon{background:#e7f8ef;color:#087443}.kpi-blue .kpi-icon{background:#edf4ff;color:#3f70bd}.kpi-gold .kpi-icon{background:#fff7df;color:#b98413}.kpi-red .kpi-icon{background:#fff0f0;color:#d34848}.trend-neutral{font-size:11px;color:var(--muted)}.kpi-label{display:block;color:var(--muted);font-size:10px;font-weight:750;margin-bottom:7px}.kpi-card strong{display:block;font-size:22px;letter-spacing:-.035em}.kpi-card small{display:block;margin-top:7px;color:var(--muted);font-size:9px}.dashboard-grid-main{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.75fr);gap:18px;margin-top:18px}.dashboard-grid-bottom{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:20px;box-shadow:var(--shadow)}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.panel-kicker{color:var(--primary);font-size:8px}.panel-head h3{margin:4px 0 2px;font-size:16px;letter-spacing:-.02em}.panel-head p{margin:0;color:var(--muted);font-size:10px}.panel-head select{border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:9px;padding:7px 9px;font-size:9px}.empty-chart{height:260px;margin-top:18px;position:relative;color:var(--primary);overflow:hidden}.chart-lines{position:absolute;inset:0 0 35px;display:flex;flex-direction:column;justify-content:space-between}.chart-lines i{border-top:1px dashed var(--border)}.empty-chart svg{position:absolute;left:0;right:0;bottom:38px;width:100%;height:180px;opacity:.8}.chart-caption{position:absolute;bottom:9px;left:0;right:0;display:flex;justify-content:space-between;color:var(--muted);font-size:7px}.empty-badge{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);background:color-mix(in srgb,var(--surface) 91%,transparent);border:1px solid var(--border);box-shadow:0 10px 28px rgba(0,0,0,.06);border-radius:20px;padding:7px 13px;color:var(--muted);font-size:9px;white-space:nowrap}.status-dot-ok{font-size:8px;color:#098651;background:var(--green-soft);padding:6px 9px;border-radius:20px;font-weight:900}.threshold-item{padding:20px 0;border-bottom:1px solid var(--border)}.threshold-title,.threshold-meta{display:flex;justify-content:space-between;align-items:center}.threshold-title span{font-size:11px;font-weight:700}.threshold-title b{font-size:13px}.progress{height:7px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;overflow:hidden;margin:11px 0 8px}.progress i{display:block;height:100%;background:linear-gradient(90deg,#0b7a49,#33c979)}.progress.gold i{background:linear-gradient(90deg,#bf8819,#e8bc4e)}.threshold-meta{color:var(--muted);font-size:8px}.threshold-info{display:flex;gap:10px;margin-top:18px;background:var(--surface-2);padding:12px;border-radius:11px}.threshold-info>span{width:20px;height:20px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;background:var(--green-soft);color:var(--primary);font-weight:900;font-size:10px}.threshold-info p{margin:0;color:var(--muted);font-size:9px;line-height:1.55}.link-btn{border:0;background:none;color:var(--primary);font-size:9px;font-weight:800;cursor:pointer}.empty-state{text-align:center;padding:26px 18px 14px}.empty-symbol{width:42px;height:42px;border-radius:14px;background:var(--green-soft);color:var(--primary);display:grid;place-items:center;margin:0 auto 12px;font-weight:900}.empty-state b{font-size:12px}.empty-state p{max-width:380px;margin:7px auto 0;color:var(--muted);font-size:10px;line-height:1.55}.amount-zero{font-size:13px;font-weight:900}.aging-row{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:25px}.aging-row>div{background:var(--surface-2);border:1px solid var(--border);border-radius:11px;padding:12px 8px;text-align:center}.aging-row span,.aging-row b{display:block}.aging-row span{font-size:8px;color:var(--muted);min-height:20px}.aging-row b{font-size:18px;margin-top:3px}.app-footer{min-height:48px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:0 30px;color:var(--muted);font-size:9px;background:var(--surface)}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,30px);background:#092d22;color:white;border:1px solid rgba(255,255,255,.12);padding:12px 18px;border-radius:12px;box-shadow:0 16px 45px rgba(0,0,0,.22);opacity:0;pointer-events:none;z-index:100;transition:.22s;font-size:11px}.toast.show{opacity:1;transform:translate(-50%,0)}.mobile-overlay{display:none}
@media(max-width:1200px){.topbar{grid-template-columns:210px 1fr auto;padding:0 20px}.user-meta{display:none}.kpi-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid-main{grid-template-columns:1fr}.login-brand-content h1{font-size:44px}.login-feature-grid{grid-template-columns:1fr}.login-feature-grid>div{display:grid;grid-template-columns:35px 1fr;gap:0 8px}.login-feature-grid span{grid-row:1/3}.login-feature-grid small{margin:0}.login-logo{margin-bottom:40px}}
@media(max-width:860px){.login-shell{display:block}.login-brand-panel{display:none}.login-form-panel{min-height:100vh;padding:28px}.mobile-brand{display:block;width:230px;margin-bottom:30px}.mobile-brand img{width:100%;max-height:80px;object-fit:contain}.sidebar{transform:translateX(-102%);transition:.25s}.sidebar.open{transform:translateX(0)}.mobile-overlay{position:fixed;inset:0;background:rgba(0,0,0,.42);z-index:50}.mobile-overlay.show{display:block}.app-main{margin-left:0}.menu-toggle{display:block}.topbar{grid-template-columns:1fr auto;height:72px}.topbar-center{display:none}.topbar-actions .lang-switch{display:none}.content-wrap{padding:20px}.dashboard-grid-bottom{grid-template-columns:1fr}.hero-dashboard{padding:24px}.hero-dashboard h2{font-size:25px}}
@media(max-width:560px){.login-form-panel{padding:22px}.login-card h2{font-size:27px}.kpi-grid{grid-template-columns:1fr}.topbar{padding:0 14px}.topbar-left h1{font-size:15px}.notification-btn{display:none}.user-menu{border:0;padding:0;margin:0}.content-wrap{padding:14px}.hero-dashboard{min-height:150px;padding:21px}.hero-dashboard h2{font-size:22px}.hero-dashboard p{font-size:11px;max-width:230px}.hero-date{width:74px;height:82px}.dashboard-grid-main,.dashboard-grid-bottom{gap:12px;margin-top:12px}.aging-row{grid-template-columns:repeat(2,1fr)}.app-footer{padding:0 14px}.app-footer span:last-child{display:none}}

/* v0.2.0 admin UI */
.page-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.page-toolbar h2{margin:4px 0 6px;font-size:28px;letter-spacing:-.035em}.page-toolbar p{margin:0;color:var(--muted);font-size:12px}.btn-action{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;font-size:12px}.btn-secondary{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:11px;font-weight:800}.alert-success{background:var(--green-soft);border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border));color:var(--primary)}.table-panel{padding:0;overflow:hidden}.table-head{padding:16px;border-bottom:1px solid var(--border);display:flex;justify-content:flex-end}.table-search{width:min(340px,100%);height:40px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text);padding:0 12px}.table-responsive{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:850px}.data-table th,.data-table td{padding:13px 16px;border-bottom:1px solid var(--border);text-align:left;font-size:11px;vertical-align:middle}.data-table th{color:var(--muted);font-size:9px;letter-spacing:.06em;text-transform:uppercase;background:var(--surface-2)}.person-cell{display:flex;align-items:center;gap:10px}.person-cell b,.person-cell small{display:block}.person-cell small{color:var(--muted);margin-top:3px}.avatar.sm{width:32px;height:32px;border-radius:10px;font-size:10px}.badge{display:inline-flex;align-items:center;border-radius:20px;padding:5px 8px;font-size:9px;font-weight:800}.badge.success{background:var(--green-soft);color:var(--primary)}.badge.danger{background:#fff0f0;color:#ba3e3e}.badge.neutral{background:var(--surface-2);border:1px solid var(--border);color:var(--muted)}.row-action{color:var(--primary);font-weight:800}.form-panel{padding:22px}.form-grid{display:grid;gap:16px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid label,.form-panel>label{display:flex;flex-direction:column;gap:7px}.form-grid label>span,.form-panel>label>span{font-size:11px;font-weight:800}.form-grid input,.form-grid select,.form-panel input,.form-panel select{height:44px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);padding:0 12px;outline:none}.form-grid input:focus,.form-grid select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.form-grid small{color:var(--muted);font-size:9px}.span-2{grid-column:span 2}.check-row{flex-direction:row!important;align-items:center!important;margin-top:18px}.check-row input{width:16px;height:16px}.form-actions{display:flex;justify-content:flex-end;margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}.settings-layout{display:grid;grid-template-columns:220px 1fr;gap:18px}.settings-nav{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:10px;height:max-content}.settings-nav a{display:block;padding:11px 12px;border-radius:9px;font-size:11px;color:var(--muted);font-weight:700}.settings-nav a.active{background:var(--green-soft);color:var(--primary)}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.permission-group{border:1px solid var(--border);border-radius:14px;padding:14px}.permission-group h4{font-size:10px;color:var(--primary);letter-spacing:.12em;margin:0 0 12px}.permission-group label{display:flex;flex-direction:row;align-items:flex-start;gap:9px;padding:8px 0}.permission-group input{width:15px;height:15px;margin-top:2px}.permission-group span,.permission-group small{display:block}.permission-group span{font-size:10px;font-weight:700}.permission-group small{font-size:8px;color:var(--muted);font-weight:500;margin-top:2px}.settings-stack{display:grid;gap:16px}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.section-title h3{margin:4px 0 0}.sticky-save{position:sticky;bottom:14px;display:flex;justify-content:flex-end;padding:10px;background:color-mix(in srgb,var(--surface) 86%,transparent);backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:14px}.muted{color:var(--muted)}
@media(max-width:860px){.settings-layout{grid-template-columns:1fr}.settings-nav{display:flex;overflow:auto}.settings-nav a{white-space:nowrap}.permission-grid{grid-template-columns:1fr}.form-grid.two{grid-template-columns:1fr}.span-2{grid-column:auto}.page-toolbar{align-items:flex-start;flex-direction:column}.page-toolbar .btn-action{width:100%}}

/* eDomaćin v0.3.0 – AJAX/UI architecture */
.sidebar-logo-surface{background:linear-gradient(135deg,#f8fff9,#e9f7ee);border:1px solid rgba(255,255,255,.45);border-radius:15px;padding:10px 12px;box-shadow:0 10px 28px rgba(0,0,0,.12)}
.sidebar-logo-surface img{width:100%;height:48px;object-fit:contain;display:block}.business-year-card{margin:12px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.13);padding:12px;border-radius:13px;color:#fff}.business-year-card label{display:block;font-size:10px;font-weight:800;margin-bottom:7px}.business-year-card label i{margin-right:6px;color:#efc34d}.business-year-card select{width:100%;height:34px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#07382a;color:white;padding:0 8px;font-size:11px;font-weight:800;outline:none}.business-year-card small{display:block;color:rgba(255,255,255,.6);font-size:8px;margin-top:6px}.app-footer a{color:var(--primary);font-weight:800}.toolbar-actions{display:flex;gap:8px;flex-wrap:wrap}.table-head-split{justify-content:space-between;align-items:center}.table-title{display:flex;align-items:center;gap:10px}.table-title>i{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--green-soft);color:var(--primary)}.table-title b,.table-title small{display:block}.table-title b{font-size:11px}.table-title small{font-size:8px;color:var(--muted);margin-top:2px}.table-search-wrap{position:relative}.table-search-wrap>i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted)}.table-search-wrap .table-search{padding-left:33px}.data-table td small{display:block;color:var(--muted);font-size:8px;margin-top:3px}.loading-cell{text-align:center!important;color:var(--muted)!important;padding:30px!important}.row-actions{display:flex;gap:6px}.row-icon{width:30px;height:30px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}.row-icon.edit:hover{border-color:var(--primary);color:var(--primary)}.row-icon.delete:hover{border-color:#dc5757;color:#dc5757}.table-empty{border-top:1px solid var(--border)}
.toast-container{position:fixed;right:20px;bottom:20px;z-index:3000;display:grid;gap:10px;width:min(360px,calc(100vw - 30px))}.app-toast{display:grid;grid-template-columns:24px 1fr 24px;align-items:center;gap:9px;padding:13px 14px;border-radius:13px;background:#0b3a2c;color:#fff;box-shadow:0 20px 45px rgba(0,0,0,.22);opacity:0;transform:translateY(16px);transition:.2s;border:1px solid rgba(255,255,255,.13);font-size:11px}.app-toast.show{opacity:1;transform:none}.app-toast.error{background:#6c2525}.app-toast.info{background:#23445d}.app-toast>i{font-size:18px}.app-toast button{border:0;background:none;color:#fff;opacity:.7;cursor:pointer}.toast{display:none!important}
body.modal-open{overflow:hidden}.app-modal{position:fixed;inset:0;z-index:2500;display:none;align-items:center;justify-content:center;padding:20px}.app-modal.open{display:flex}.modal-backdrop{position:absolute;inset:0;background:rgba(4,18,13,.62);backdrop-filter:blur(5px)}.modal-dialog{position:relative;width:min(760px,100%);max-height:calc(100vh - 40px);overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:0 28px 80px rgba(0,0,0,.32)}.modal-dialog.modal-sm{width:min(420px,100%)}.modal-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:18px 20px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.modal-head h3{margin:3px 0 0}.modal-body{padding:20px}.modal-body textarea,.form-grid textarea{min-height:84px;resize:vertical;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);padding:10px 12px;font:inherit}.modal-actions{display:flex;justify-content:flex-end;gap:9px;padding:15px 20px;border-top:1px solid var(--border);background:var(--surface-2)}.full-input{width:100%;height:44px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);padding:0 12px}.years-grid{grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr)}
.login-logo-plate{display:inline-flex;background:rgba(250,255,251,.94);border:1px solid rgba(255,255,255,.75);border-radius:18px;padding:12px 18px;box-shadow:0 16px 40px rgba(0,0,0,.16)}.login-brand-clean .login-logo{margin:0;max-width:360px}.login-brand-clean h1{margin-top:45px}.login-options a{color:var(--primary);font-weight:800}.simple-auth .login-form-panel{min-height:100vh;margin:auto;max-width:620px}.simple-auth{background:radial-gradient(circle at top left,#e9f8ef,#f7faf8 45%,#eef4f1)}.back-login{display:block;text-align:center;margin-top:18px;color:var(--primary);font-size:11px;font-weight:800}.debug-reset{margin:12px 0;padding:12px;border-radius:10px;background:#fff8df;border:1px solid #eed58a;color:#70560b;font-size:10px}.debug-reset a{color:#087443;font-weight:900}.debug-reset small{display:block;margin-top:6px}.btn-login[href]{display:flex;text-align:center;text-decoration:none}
@media(max-width:900px){.toolbar-actions{width:100%}.toolbar-actions .btn-action{flex:1}.years-grid{grid-template-columns:1fr}.table-head-split{align-items:stretch;gap:12px;flex-direction:column}.table-search-wrap,.table-search-wrap .table-search{width:100%}}
@media(max-width:560px){.toolbar-actions{display:grid;grid-template-columns:1fr 1fr}.toolbar-actions .btn-primary{grid-column:1/-1}.modal-dialog{max-height:calc(100vh - 16px);border-radius:14px}.app-modal{padding:8px}.toast-container{right:10px;bottom:10px;width:calc(100vw - 20px)}}

/* eDomaćin v0.4.0 – UI stabilization, nested navigation, wide square modals */
html,body{scrollbar-color:#477c67 #092f25;scrollbar-width:thin}
.sidebar{overflow:hidden}
.nav-menu{scrollbar-width:thin;scrollbar-color:rgba(107,224,158,.45) rgba(255,255,255,.035);padding-right:8px}
.nav-menu::-webkit-scrollbar,.modal-scroll::-webkit-scrollbar,.modal-dialog::-webkit-scrollbar,.table-responsive::-webkit-scrollbar{width:8px;height:8px}
.nav-menu::-webkit-scrollbar-track{background:rgba(255,255,255,.035)}
.nav-menu::-webkit-scrollbar-thumb{background:linear-gradient(#2d9966,#176849);border:2px solid #07382b;border-radius:0}
.modal-scroll::-webkit-scrollbar-track,.modal-dialog::-webkit-scrollbar-track{background:var(--surface-2)}
.modal-scroll::-webkit-scrollbar-thumb,.modal-dialog::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--primary) 55%,var(--border));border:2px solid var(--surface);border-radius:0}
.table-responsive::-webkit-scrollbar-track{background:var(--surface-2)}.table-responsive::-webkit-scrollbar-thumb{background:var(--border);border-radius:0}

.sidebar-brand{height:94px;padding:14px 16px}.sidebar-logo-surface{width:100%;border-radius:0;padding:9px 12px}.sidebar-logo-surface img{height:48px}
.nav-group{margin:2px 0}.nav-group-toggle{width:100%;border:0;background:transparent;text-align:left;cursor:pointer;position:relative}.nav-group-toggle .nav-caret{margin-left:auto;font-size:10px;transition:transform .18s}.nav-group.open>.nav-group-toggle .nav-caret{transform:rotate(90deg)}.nav-submenu{display:none;padding:2px 0 4px 24px}.nav-group.open>.nav-submenu{display:block}.nav-submenu .nav-item{min-height:38px;font-size:12px;padding:7px 10px}.nav-submenu .nav-icon{width:20px;font-size:13px}.nav-submenu .nav-item.active{box-shadow:inset 2px 0 0 #55df93}
.business-year-card{border-radius:0;margin:10px 12px 12px}.business-year-card select{border-radius:0}

/* stable login – intentionally self-contained */
.login-body{min-height:100vh;background:#f4f7f5;overflow-x:hidden}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(520px,1.08fr) minmax(430px,.92fr)}
.login-brand-panel{min-height:100vh;padding:64px clamp(42px,6vw,96px);display:flex;align-items:center;background:radial-gradient(circle at 72% 20%,rgba(59,198,124,.22),transparent 28%),linear-gradient(145deg,#042f24 0%,#064c36 58%,#073a2c 100%)}
.login-brand-content{width:100%;max-width:760px}.login-logo-plate{display:inline-flex;align-items:center;justify-content:center;background:#f7fff9;border:1px solid rgba(255,255,255,.85);border-radius:0;padding:13px 18px;box-shadow:0 18px 45px rgba(0,0,0,.2)}.login-brand-clean .login-logo{width:min(410px,72vw);height:auto;max-height:112px;margin:0;object-fit:contain;filter:none}.login-brand-clean h1{max-width:650px;margin:42px 0 0;font-size:clamp(36px,4vw,64px);line-height:1.04;color:#fff}
.login-feature-grid{margin-top:45px}.login-feature-grid>div{border-radius:0}
.login-form-panel{min-height:100vh;padding:48px clamp(28px,5vw,72px);background:linear-gradient(180deg,#fbfdfc,#f0f5f2);display:flex;flex-direction:column;align-items:center;justify-content:center}.login-card{width:min(470px,100%)}.login-icon-wrap,.input-shell,.btn-primary,.alert{border-radius:0}.login-icon-wrap{width:68px;height:68px}.input-shell{height:54px}.btn-login{height:55px}.mobile-brand{display:none}
html[data-theme="dark"] .login-form-panel{background:#0e1713}.login-body .login-card{color:#10231b}html[data-theme="dark"] .login-body .login-card{color:#edf6f1}

/* wide square modal system */
.app-modal{padding:18px}.modal-dialog,.modal-dialog.modal-lg{width:min(1180px,calc(100vw - 36px));max-height:calc(100vh - 36px);border-radius:0;overflow:hidden;display:flex;flex-direction:column}.modal-dialog.modal-sm{width:min(520px,calc(100vw - 36px));border-radius:0}.modal-head{flex:0 0 auto;padding:16px 20px}.modal-head .icon-btn{border-radius:0}.modal-scroll,.modal-body{overflow-y:auto;overscroll-behavior:contain}.modal-dialog form{min-height:0;display:flex;flex-direction:column;flex:1}.modal-dialog form>.modal-body{flex:1;max-height:calc(100vh - 175px)}.modal-actions{flex:0 0 auto;position:relative;z-index:3}.modal-lg .form-grid.two,.modal-lg .form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.modal-lg .span-2{grid-column:span 2}.modal-lg .span-3,.modal-lg .span-full{grid-column:1/-1}.modal-body input,.modal-body select,.modal-body textarea,.full-input{border-radius:0!important}.modal-body textarea{min-height:88px}.modal-section-title{grid-column:1/-1;padding:4px 0 8px;border-bottom:1px solid var(--border);font-size:10px;font-weight:900;letter-spacing:.12em;color:var(--primary)}

/* inventory / pricing */
.kpi-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.mini-kpi{background:var(--surface);border:1px solid var(--border);padding:16px}.mini-kpi small,.mini-kpi b{display:block}.mini-kpi small{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.mini-kpi b{font-size:20px;margin-top:6px}.promo-price{color:#b07d09;font-weight:900}.price-old{text-decoration:line-through;color:var(--muted);font-size:9px}.stock-negative{color:#c84040;font-weight:900}.stock-positive{color:var(--primary);font-weight:900}.stock-muted{color:var(--muted)}.row-icon.bom:hover{color:#a97709;border-color:#d0a12d}.section-inline-note{font-size:9px;color:var(--muted);line-height:1.5}.switch-inline{display:flex!important;flex-direction:row!important;align-items:center;gap:8px}.switch-inline input{width:16px!important;height:16px!important}

@media(max-width:1100px){.login-shell{grid-template-columns:1fr}.login-brand-panel{min-height:auto;padding:38px}.login-brand-clean h1{font-size:36px}.login-feature-grid{display:none}.login-form-panel{min-height:auto;padding:48px 28px}.modal-lg .form-grid.two,.modal-lg .form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-lg .span-3{grid-column:1/-1}.kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.login-brand-panel{display:none}.login-form-panel{min-height:100vh}.mobile-brand{display:inline-flex!important;margin-bottom:28px}.mobile-brand img{width:min(270px,72vw)}.modal-lg .form-grid.two,.modal-lg .form-grid.three{grid-template-columns:1fr}.modal-lg .span-2,.modal-lg .span-3{grid-column:auto}.modal-dialog,.modal-dialog.modal-lg,.modal-dialog.modal-sm{width:100%;max-height:100vh}.app-modal{padding:0}.modal-dialog form>.modal-body{max-height:calc(100vh - 150px)}.kpi-strip{grid-template-columns:1fr 1fr}}


/* v0.5.0 Serbian datepicker and invoice builder */
.sr-date{font-variant-numeric:tabular-nums}.sr-datepicker{position:absolute;z-index:10050;width:296px;background:var(--panel,#fff);border:1px solid var(--border,#dfe7e3);box-shadow:0 18px 45px rgba(0,0,0,.18);padding:10px;color:var(--text,#18352b)}.dp-head,.dp-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.dp-head button,.dp-foot button{border:1px solid var(--border,#dfe7e3);background:transparent;color:inherit;padding:7px 10px;cursor:pointer}.dp-week,.dp-days{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-top:8px}.dp-week span{text-align:center;font-size:11px;font-weight:800;opacity:.65;padding:5px 0}.dp-days button{border:0;background:transparent;color:inherit;padding:8px 2px;cursor:pointer}.dp-days button:hover{background:rgba(16,185,129,.14)}.dp-empty{min-height:30px}.dp-foot{margin-top:8px;border-top:1px solid var(--border,#dfe7e3);padding-top:8px}
.invoice-builder{display:grid;grid-template-columns:1fr;gap:18px}.invoice-form-card{padding:20px}.invoice-items-table input,.invoice-items-table select{width:100%;min-width:80px}.invoice-items-table .item-desc{min-width:210px}.invoice-items-table .qty{min-width:90px}.invoice-items-table .price{min-width:120px}.invoice-items-table .vat{min-width:80px}.invoice-totals{margin-left:auto;width:min(430px,100%);display:grid;gap:8px;padding:18px 0}.invoice-total-row{display:flex;justify-content:space-between;gap:20px;padding:7px 0;border-bottom:1px solid var(--border,#e6ece9)}.invoice-total-row.grand{font-size:20px;font-weight:800;border-bottom:0;padding-top:12px}.invoice-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.invoice-status-draft{color:#8a5b00;background:#fff3cd}.invoice-status-issued{color:#075b42;background:#dff7ed}.number-tabular{font-variant-numeric:tabular-nums}.invoice-editor-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap}.invoice-meta{font-size:13px;opacity:.72}.modal-dialog.modal-xl{width:min(1420px,96vw);max-width:1420px}

/* eDomaćin v0.6.0 - dokumenti, memorandum i banke */
.modal-dialog.modal-xxl{width:min(1480px,calc(100vw - 28px));max-width:1480px}.square-modal,.square-modal .modal-head,.square-modal .modal-body,.square-modal .modal-actions{border-radius:0!important}.invoice-builder{padding:22px}.invoice-top-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-bottom:16px}.invoice-tax-grid{grid-template-columns:1.15fr .85fr}.invoice-form-card,.invoice-lines,.invoice-extra{border:1px solid var(--border);background:var(--surface);padding:16px}.invoice-form-card h4{margin:0 0 14px;display:flex;gap:8px;align-items:center}.invoice-form-card h4 i{color:var(--primary)}.form-grid.five{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;padding-top:16px}.invoice-extra{margin:0 0 16px}.invoice-extra summary{cursor:pointer;font-weight:700;color:var(--text);list-style:none}.invoice-extra summary i{color:var(--primary);margin-right:8px}.partner-preview{border:1px solid var(--border);background:var(--surface-soft,#f7faf8);padding:12px;min-height:168px}.partner-name{font-size:17px;font-weight:800;margin-bottom:10px;color:var(--text)}.partner-grid{display:grid;grid-template-columns:110px 1fr;gap:5px 10px;font-size:13px}.partner-grid span{color:var(--muted)}.partner-grid b{font-weight:650;overflow-wrap:anywhere}.warn-text{color:#b54708!important}.field-info{align-self:end;padding:10px;border-left:3px solid var(--primary);background:rgba(11,109,78,.07);font-size:12px}.invoice-lines{margin-top:2px;padding:0}.invoice-lines .section-title{padding:15px}.invoice-items-table th,.invoice-items-table td{white-space:nowrap}.invoice-items-table input,.invoice-items-table select{min-width:82px}.invoice-items-table .item-desc{min-width:220px}.invoice-items-table .line-product{min-width:190px}.invoice-bottom-grid{display:grid;grid-template-columns:1fr 360px;gap:22px;margin-top:18px}.invoice-bottom-grid textarea{width:100%;min-height:132px}.invoice-totals{margin:0}.rsd-equivalent{font-size:12px}.foreign-only[hidden]{display:none!important}.settings-logo-row{display:grid;grid-template-columns:190px 1fr;gap:20px;align-items:center;margin-bottom:20px;padding:16px;border:1px solid var(--border);background:var(--surface-soft,#f7faf8)}.org-logo-preview{height:95px;background:#fff;border:1px solid #d7e1dd;display:flex;align-items:center;justify-content:center;padding:10px}.org-logo-preview img{max-width:100%;max-height:100%;object-fit:contain}.logo-placeholder{display:flex;flex-direction:column;gap:6px;align-items:center;color:#8b9994}.logo-placeholder i{font-size:26px}.logo-upload{display:flex;flex-direction:column;gap:7px}.logo-upload input{max-width:440px}.logo-upload small{color:var(--muted)}
@media(max-width:1100px){.invoice-top-grid,.invoice-tax-grid{grid-template-columns:1fr}.form-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-bottom-grid{grid-template-columns:1fr}}
@media(max-width:700px){.modal-dialog.modal-xxl{width:100vw;max-width:100vw;height:100vh;margin:0}.invoice-builder{padding:12px}.form-grid.five{grid-template-columns:1fr}.settings-logo-row{grid-template-columns:1fr}.org-logo-preview{height:120px}.partner-grid{grid-template-columns:95px 1fr}}

/* eDomaćin v0.6.1 - gazdinstvo i otkupni list */
.farm-mode-toggle{margin:10px 0 18px;padding:12px 14px;border-left:4px solid var(--primary,#0a6b4f);background:rgba(10,107,79,.06)}
.purchase-only[hidden],.purchase-only-col[hidden],.purchase-quality-cell[hidden]{display:none!important}
#purchaseListCard{margin-top:16px;border-left:4px solid #8aa52d}
#purchaseListCard textarea{min-height:92px}

/* v0.7.0 */
.expense-qr{display:flex;justify-content:center;align-items:center;padding:18px;background:#fff;border:1px solid var(--border);margin:18px auto;max-width:300px}.expense-qr canvas{max-width:100%;height:auto}.qr-import-body{text-align:center}.qr-wait{margin-top:16px;padding:12px;border:1px solid var(--border);background:var(--surface-soft)}.small-link{display:block;overflow-wrap:anywhere;font-size:12px}.settings-info{border-left:3px solid var(--primary);padding:12px 14px;background:var(--surface-soft);align-self:end}.settings-info p{margin:5px 0 0}.fiscal-preview{border:1px solid var(--border);padding:12px;background:var(--surface-soft)}

.btn-danger{border:0;background:#b42318;color:#fff;padding:10px 16px;font-weight:700;cursor:pointer;border-radius:0}.badge.danger{background:#fee4e2;color:#b42318}.delivery-note-ref{font-size:12px;color:var(--muted)}

/* v0.9.0 ergonomija formi i modala */
.modal-body{padding:26px 30px 30px}.modal-actions{padding:18px 30px 24px;gap:12px}.modal-actions .btn-primary,.modal-actions .btn-secondary{padding:11px 18px}.form-grid{gap:18px 20px}.form-grid label>span{display:block;margin-bottom:7px}.fiscal-preview{padding:18px;border:1px solid var(--border,#d9e3df);background:var(--panel-soft,#f7faf8)}.fiscal-preview>div{margin-top:6px}.fiscal-links{margin:8px 0 12px}.fiscal-item-list{display:grid;gap:7px;margin:12px 0}.fiscal-item-list>div{display:flex;justify-content:space-between;gap:15px;padding:8px 0;border-bottom:1px solid #dce5e1}.fiscal-preview details{margin-top:12px}.fiscal-preview pre{white-space:pre-wrap;max-height:320px;overflow:auto;padding:14px;background:#eef3f1;border:1px solid #d7e1dd;font-family:Consolas,monospace;font-size:12px}.btn-mini{border:1px solid #b9cbc4;background:#fff;color:#07563f;padding:6px 10px;text-decoration:none;cursor:pointer;font-weight:700}.mini-stats{display:flex;gap:18px;flex-wrap:wrap}
/* v0.10.0 bank statement review */
.modal-xxl{width:min(1540px,calc(100vw - 32px));max-height:calc(100vh - 28px)}
.statement-review{padding:22px 28px 28px;overflow:auto;max-height:calc(100vh - 190px)}
.statement-summary-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:12px;margin-bottom:18px}.statement-summary-grid>div{border:1px solid var(--border);padding:12px 14px;background:var(--surface-soft)}.statement-summary-grid span{display:block;font-size:12px;color:var(--text-muted);text-transform:uppercase}.statement-summary-grid strong{display:block;margin-top:5px;font-size:16px}.review-note{padding:11px 14px;margin-bottom:14px;border-left:3px solid var(--primary);background:var(--surface-soft)}
.review-table{min-width:1450px}.review-table select{min-width:190px}.row-unmatched td{background:rgba(212,58,58,.055)}
.statement-state{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:12px}.statement-state i,.status-dot{width:9px;height:9px;border-radius:50%;display:inline-block}.statement-state.ok i,.status-dot.green{background:#1ea66f;box-shadow:0 0 0 4px rgba(30,166,111,.12)}.statement-state.warn i,.status-dot.red{background:#d74848;box-shadow:0 0 0 4px rgba(215,72,72,.12)}.legend-inline{display:flex;gap:18px;font-size:12px;color:var(--text-muted)}.legend-inline span{display:flex;align-items:center;gap:8px}.row-icon.ok{color:#15855a}
.import-bank-card{display:flex;gap:16px;align-items:flex-start;padding:18px;border:1px solid var(--border);background:var(--surface-soft);margin-bottom:20px}.import-bank-card>i{font-size:28px;color:var(--primary)}.import-bank-card p{margin:5px 0 0;color:var(--text-muted)}.file-drop{display:block;border:1px dashed var(--border-strong);padding:26px;text-align:center}.file-drop input{display:block;margin:12px auto 0}
@media(max-width:1100px){.statement-summary-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.statement-summary-grid{grid-template-columns:1fr 1fr}.modal-xxl{width:100%;height:100%;max-height:100vh}.statement-review{max-height:calc(100vh - 170px);padding:16px}}
/* v0.10.0 reports */
.form-action-cell{display:flex;align-items:end}.aging-grid{grid-template-columns:repeat(7,minmax(125px,1fr));margin-bottom:20px}.aging-grid .kpi-card{min-height:110px}.aging-grid .kpi-card strong{font-size:22px}.calendar-week,.due-calendar{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-week{border-bottom:1px solid var(--border);font-weight:700;color:var(--text-muted)}.calendar-week span{padding:12px;text-align:center}.calendar-day{min-height:120px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:10px;position:relative}.calendar-day:nth-child(7n){border-right:0}.calendar-day.empty{background:var(--surface-soft)}.calendar-day.today{outline:2px solid var(--primary);outline-offset:-2px}.calendar-day.has-due{background:rgba(29,158,117,.04)}.day-number{font-weight:800;margin-bottom:14px}.calendar-day strong,.calendar-day small{display:block}.calendar-day small{color:var(--text-muted);margin-top:3px}.calendar-pop{display:none;position:absolute;left:8px;right:8px;top:70px;z-index:4;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);padding:10px}.calendar-day:hover .calendar-pop{display:block}.calendar-pop span{display:block;font-size:12px;padding:4px 0;border-bottom:1px solid var(--border)}
@media(max-width:1100px){.aging-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.aging-grid{grid-template-columns:1fr 1fr}.calendar-day{min-height:82px;padding:7px}.calendar-day strong{font-size:11px}.calendar-day small{font-size:10px}.calendar-week span{font-size:11px;padding:8px 2px}}

/* v0.11.0 – bank archive / allocation polish */
.bank-account-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:0 0 18px}.bank-account-card{appearance:none;border:1px solid var(--border);background:var(--panel);display:flex;gap:14px;align-items:center;padding:16px;text-align:left;cursor:pointer;color:var(--text);box-shadow:var(--shadow-sm)}.bank-account-card:hover,.bank-account-card.primary{border-color:rgba(16,185,129,.5);transform:translateY(-1px)}.bank-card-icon{width:44px;height:44px;display:grid;place-items:center;background:rgba(16,185,129,.12);color:var(--primary);font-size:19px}.bank-card-copy{display:flex;min-width:0;flex-direction:column}.bank-card-copy small{color:var(--muted);font-style:normal}.bank-card-copy strong{font-size:15px;margin:2px 0}.bank-card-copy em{font-size:12px;color:var(--muted);font-style:normal}.review-partner-select{min-width:240px;width:100%;padding:9px 10px;border:1px solid var(--border);background:var(--input-bg);color:var(--text);font:inherit}.field-warning{display:block;color:#b42318;margin-top:5px;font-size:11px}.allocation-input{width:130px;padding:9px 10px;border:1px solid var(--border);background:var(--input-bg);color:var(--text);text-align:right;font:inherit}.empty-state.compact{padding:18px;min-height:auto}.statement-review .data-table td{vertical-align:middle}

/* v0.12.0 – global compact UI polish */
:root{--app-font:"PT Sans","Segoe UI Variable Text","Segoe UI",Arial,sans-serif}
html,body,button,input,select,textarea,table,.app-shell,.app-modal{font-family:var(--app-font)!important}
.page-toolbar{margin-bottom:16px;gap:16px}.page-toolbar h2{margin-bottom:4px}.page-toolbar p{margin-top:3px;line-height:1.45}.toolbar-actions{gap:8px}
.panel{margin-bottom:16px}.panel-heading{padding:16px 18px}.table-toolbar{padding:12px 18px}.data-table th{padding:10px 12px}.data-table td{padding:10px 12px}.row-actions{gap:6px}
.btn-primary,.btn-secondary,.btn-danger,.btn-action{min-height:38px;padding:9px 14px}.row-icon{width:34px;height:34px}.btn-mini{padding:7px 10px}
.modal-dialog{border-radius:0!important}.modal-head{padding:17px 24px}.modal-head h3{margin:3px 0 0}.modal-body{padding:22px 26px 24px}.modal-actions{padding:15px 26px 20px;border-top:1px solid var(--border);background:var(--surface-2)}.form-grid{gap:14px 18px}.form-grid label>span{margin-bottom:6px}.form-grid input,.form-grid select,.form-grid textarea{min-height:40px}.form-grid textarea{min-height:88px}.modal-section-title{margin:4px 0 -2px;padding-top:8px}
.statement-review{padding:18px 22px 22px}.statement-summary-grid{gap:9px;margin-bottom:14px}.statement-summary-grid>div{padding:10px 12px}.review-note{margin-bottom:11px}.review-table th,.review-table td{padding:8px 9px}.review-partner-select{padding:7px 9px}
.bom-help{margin:0 0 16px}.data-table td small{display:block;color:var(--muted);margin-top:3px}

/* v0.12.0 – finance analytics */
.finance-kpi-grid{grid-template-columns:repeat(4,minmax(160px,1fr));margin-bottom:16px}.finance-kpi-grid .kpi-card{min-height:116px}.finance-kpi-grid .kpi-card.accent{border-left:3px solid var(--primary)}.finance-kpi-grid .negative{color:var(--danger)}
.analytics-grid-two{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);gap:16px}.cashflow-chart{height:285px;display:grid;grid-template-columns:repeat(12,1fr);align-items:end;gap:8px;padding:20px 18px 12px}.cash-month{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px}.cash-bars{height:225px;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:4px;border-bottom:1px solid var(--border)}.cash-bars i{display:block;width:min(16px,36%);min-height:2px}.cash-in{background:var(--primary)}.cash-out{background:#d96b54}.cash-month span{font-size:11px;color:var(--muted)}
.balance-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:16px 18px 20px}.balance-columns h4{margin:0 0 10px}.rank-list{display:grid;gap:4px}.rank-row{display:grid;grid-template-columns:24px 1fr auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}.rank-row>b{width:22px;height:22px;display:grid;place-items:center;background:var(--surface-2);font-size:11px}.rank-row span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-row strong{font-variant-numeric:tabular-nums}
@media(max-width:1200px){.finance-kpi-grid{grid-template-columns:repeat(2,1fr)}.analytics-grid-two{grid-template-columns:1fr}}@media(max-width:700px){.finance-kpi-grid{grid-template-columns:1fr 1fr}.balance-columns{grid-template-columns:1fr}.cashflow-chart{overflow-x:auto;grid-template-columns:repeat(12,minmax(42px,1fr))}}

/* v0.13.0 – izvodi, normativ u formi, dashboard i godišnji prenos */
.inline-review-table{min-width:1540px}.inline-review-table .review-inline{width:100%;min-width:86px;height:34px;padding:6px 8px;border:1px solid var(--border);background:var(--input-bg);color:var(--text);font:inherit}.inline-review-table .num-input{min-width:105px;text-align:right}.inline-review-table td{padding:7px 8px}.modal-head-actions{display:flex;align-items:center;gap:10px}.modal-head-actions .btn-action{min-height:34px;padding:7px 11px}.statement-review .field-warning{line-height:1.3}.statement-review .review-partner-select{min-height:34px;padding:6px 8px}.statement-review .row-actions{white-space:nowrap}
.inline-bom-section{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.inline-bom-entry{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr auto;gap:12px;align-items:end;margin:14px 0}.inline-bom-entry label{margin:0}.inline-bom-entry .btn-action{margin-bottom:0}.compact-table th,.compact-table td{padding:8px 10px}.opening-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.dashboard-v2 .kpi-card strong{font-size:23px}.dashboard-bars .cash-bars.single{justify-content:center}.dashboard-bars .cash-bars.single i{width:38%;max-width:26px}.dashboard-thresholds{padding:18px 20px}.dashboard-thresholds .threshold-item+ .threshold-item{margin-top:24px}.position-stack{display:grid;padding:12px 18px 20px}.position-stack>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--border)}.position-stack>div:last-child{border-bottom:0}.position-stack span{color:var(--muted)}.position-stack strong{font-variant-numeric:tabular-nums}.position-total{margin-top:6px;padding-top:16px!important;font-size:17px}.due-in{color:#138a61!important}.due-out{color:#c6533d!important}.due-split{display:flex;flex-direction:column;gap:2px}.calendar-day .due-split strong{font-size:11px}.supplier-aging{margin-bottom:16px}
@media(max-width:900px){.inline-bom-entry{grid-template-columns:1fr 1fr}.inline-bom-entry .btn-action{grid-column:1/-1}.modal-head-actions .btn-action{display:none}}
@media(max-width:600px){.inline-bom-entry{grid-template-columns:1fr}.opening-actions{align-items:stretch}.opening-actions button{width:100%}}

/* v1.0.0 – Polish & Stabilization */
:root{
  --panel:var(--surface);--panel-soft:var(--surface-2);--surface-soft:var(--surface-2);
  --input-bg:var(--surface);--text-muted:var(--muted);--border-strong:#cfdad4;
  --shadow-sm:0 5px 16px rgba(23,60,43,.06);
}
html[data-theme="dark"]{--border-strong:#385247;--shadow-sm:0 5px 16px rgba(0,0,0,.18)}
body{font-size:14px;line-height:1.48}
.content-wrap{padding:22px 24px 30px}.page-toolbar{align-items:center}.page-toolbar>div:first-child{min-width:0}.page-toolbar h2{font-size:24px;letter-spacing:-.025em}.page-toolbar p{max-width:900px;color:var(--muted)}
.panel{border-radius:14px}.panel-heading,.panel-head{gap:12px}.panel-heading h3,.panel-head h3,.section-title h3{margin:2px 0 0;font-size:17px}
.data-table{font-size:13px}.data-table th{font-size:11px;letter-spacing:.025em;white-space:nowrap}.data-table td{line-height:1.35}.table-responsive{scrollbar-width:thin}.num{font-variant-numeric:tabular-nums}
.form-grid label{min-width:0}.form-grid label>span{font-size:12px;font-weight:700;color:var(--muted)}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border-radius:8px;padding:8px 10px;border:1px solid var(--border);background:var(--input-bg);color:var(--text);outline:none;transition:border-color .15s,box-shadow .15s}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.review-inline:focus,.review-partner-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}
.btn-primary,.btn-secondary,.btn-danger,.btn-action,.btn-mini,.row-icon{transition:transform .12s,box-shadow .12s,opacity .12s}.btn-primary:hover,.btn-secondary:hover,.btn-danger:hover,.btn-action:hover{transform:translateY(-1px)}button:disabled{opacity:.55;cursor:not-allowed;transform:none!important}
.modal-dialog{max-height:calc(100vh - 28px)}.modal-body{overflow:auto}.modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:9px;flex-wrap:wrap}.modal-actions>*{margin:0!important}
.app-toast{max-width:min(440px,calc(100vw - 28px));line-height:1.4}.loading-cell{padding:24px!important;color:var(--muted);text-align:center}
.empty-state{border-radius:12px}.badge{white-space:nowrap}
.calendar-day{min-width:0}.calendar-pop{max-height:220px;overflow:auto}.due-calendar{overflow:visible}
@media(max-width:1200px){.content-wrap{padding:20px}.topbar{padding-left:20px;padding-right:20px;gap:16px}.page-toolbar{align-items:flex-start}}
@media(max-width:760px){.content-wrap{padding:14px 12px 24px}.page-toolbar{display:flex;flex-direction:column}.toolbar-actions{width:100%;display:flex;flex-wrap:wrap}.toolbar-actions .btn-action{flex:1 1 auto}.panel{border-radius:10px}.panel-heading,.panel-head{padding:14px}.modal-dialog{width:calc(100% - 12px);max-height:calc(100vh - 12px);margin:6px}.modal-head{padding:14px 16px}.modal-body{padding:16px}.modal-actions{padding:12px 16px 16px}.modal-actions .btn-action{flex:1 1 140px}.form-grid{grid-template-columns:1fr!important;gap:11px}.span-full{grid-column:1!important}.data-table th,.data-table td{padding:8px 9px}.calendar-week,.due-calendar{min-width:650px}.panel:has(.due-calendar){overflow-x:auto}}

/* v1.0.1 demo/factory tools */
.danger-zone{border-color:rgba(180,35,24,.28)}
.danger-info{border-left:3px solid #b42318}
.demo-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}
.demo-tools .muted{margin-left:auto;font-size:13px}
.danger-confirm-box{display:flex;gap:12px;align-items:flex-start;padding:14px;margin-bottom:14px;background:rgba(180,35,24,.08);border:1px solid rgba(180,35,24,.22)}
.danger-confirm-box>i{font-size:22px;color:#b42318;margin-top:2px}.danger-confirm-box p{margin:4px 0 0;color:var(--muted)}
@media(max-width:720px){.demo-tools{align-items:stretch}.demo-tools .btn-action{width:100%}.demo-tools .muted{margin-left:0;width:100%}}


/* v1.0.2 – form controls polish + checkbox sizing hotfix */
:root{
  --input-border:#d5e0da;
  --input-shadow:0 1px 2px rgba(16,35,27,.025),inset 0 1px 0 rgba(255,255,255,.55);
}
html[data-theme="dark"]{--input-border:#334b40;--input-shadow:0 1px 2px rgba(0,0,0,.14)}

/* Never let checkbox/radio inherit the generic 100% form-input width. */
.form-grid input[type="checkbox"],.form-grid input[type="radio"],
input[type="checkbox"],input[type="radio"]{
  width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;
  max-width:18px!important;max-height:18px!important;padding:0!important;margin:0!important;
  border-radius:5px;accent-color:var(--primary);box-shadow:none!important;cursor:pointer;flex:0 0 18px;
}
input[type="radio"]{border-radius:50%}
.check-row{display:flex!important;align-items:center!important;gap:10px!important;min-height:40px;padding:8px 10px;border:1px solid transparent;border-radius:10px}
.check-row:hover{background:color-mix(in srgb,var(--surface-2) 82%,transparent);border-color:var(--border)}
.check-row>span{margin:0!important;color:var(--text)!important;font-size:13px!important;font-weight:650!important;line-height:1.3}

/* Consistent, softer form fields across all business screens. */
.form-grid input:not([type="checkbox"]):not([type="radio"]),
.form-grid select,.form-grid textarea,
.review-inline,.review-partner-select,.allocation-input{
  border:1px solid var(--input-border)!important;
  border-radius:10px!important;
  background:color-mix(in srgb,var(--input-bg) 96%,var(--surface-2) 4%)!important;
  box-shadow:var(--input-shadow);
  color:var(--text);
}
.form-grid input:not([type="checkbox"]):not([type="radio"]):hover,
.form-grid select:hover,.form-grid textarea:hover,
.review-inline:hover,.review-partner-select:hover,.allocation-input:hover{border-color:var(--border-strong)!important}
.form-grid input:not([type="checkbox"]):not([type="radio"]):focus,
.form-grid select:focus,.form-grid textarea:focus,
.review-inline:focus,.review-partner-select:focus,.allocation-input:focus{
  border-color:color-mix(in srgb,var(--primary) 72%,#ffffff 28%)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 11%,transparent),0 2px 7px rgba(16,35,27,.035)!important;
}
.form-grid input::placeholder,.form-grid textarea::placeholder{color:color-mix(in srgb,var(--muted) 72%,transparent)}
.form-grid select{cursor:pointer}
.form-grid label small{display:block;margin-top:5px;line-height:1.35;color:var(--muted)}

/* Settings should be compact despite many switches. */
.module-settings .form-panel,.settings-page .form-panel{overflow:visible}

/* v1.0.3 – responsive polish for 1366x768 and finance/document fixes */
:root{--field-bg:#fbfcfb;--field-border:#cfd9d4;--field-radius:8px}
html[data-theme="dark"]{--field-bg:#17251f;--field-border:#385047}
.app-main input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
.app-main select,.app-main textarea,.app-modal input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),.app-modal select,.app-modal textarea{
  border:1px solid var(--field-border);border-radius:var(--field-radius);background:var(--field-bg);color:var(--text);outline:0;box-shadow:0 1px 2px rgba(16,35,27,.025);transition:border-color .15s,box-shadow .15s,background .15s
}
.app-main input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]):focus,
.app-main select:focus,.app-main textarea:focus,.app-modal input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]):focus,.app-modal select:focus,.app-modal textarea:focus{
  border-color:color-mix(in srgb,var(--primary) 65%,#fff 35%);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent)
}
.btn-action,.row-icon,.icon-btn,.btn-mini{display:inline-flex;align-items:center;justify-content:center;gap:7px}
.btn-action>i,.row-icon>i,.icon-btn>i,.btn-mini>i{display:inline-flex;align-items:center;justify-content:center;line-height:1;margin:0}
.row-icon{padding:0!important;text-decoration:none}
.modal-dialog{border-radius:10px!important;overflow:hidden}.square-modal{border-radius:10px!important}.square-modal .modal-head{border-radius:10px 10px 0 0!important}.square-modal .modal-actions{border-radius:0 0 10px 10px!important}
.modal-body{overflow-y:auto!important;overflow-x:hidden!important}.invoice-builder{max-width:100%;overflow-x:hidden!important}.invoice-lines{max-width:100%;overflow:hidden}.invoice-lines .table-responsive{overflow-x:visible;max-width:100%}
.invoice-items-table{width:100%;min-width:0!important;table-layout:fixed;font-size:11px}.invoice-items-table th,.invoice-items-table td{padding:7px 5px!important;white-space:normal!important;overflow:hidden}.invoice-items-table input,.invoice-items-table select{width:100%!important;min-width:0!important;height:34px!important;padding:5px 7px!important;font-size:11px}.invoice-items-table .item-desc,.invoice-items-table .line-product,.invoice-items-table .qty,.invoice-items-table .price,.invoice-items-table .vat{min-width:0!important}
.invoice-items-table th:nth-child(1){width:38px}.invoice-items-table th:nth-child(2){width:19%}.invoice-items-table th:nth-child(3){width:18%}.invoice-items-table th:nth-child(5){width:7%}.invoice-items-table th:nth-child(6){width:8%}.invoice-items-table th:nth-child(7){width:10%}.invoice-items-table th:nth-child(8){width:7%}.invoice-items-table th:nth-child(9),.invoice-items-table th:nth-child(10),.invoice-items-table th:nth-child(11){width:10%}.invoice-items-table th:last-child{width:38px}
.dashboard-chart-legend{display:flex;gap:18px;align-items:center;padding:0 18px 8px;color:var(--muted);font-size:11px}.dashboard-chart-legend span{display:inline-flex;align-items:center;gap:7px}.dashboard-chart-legend i{width:10px;height:10px;border-radius:3px}.dashboard-chart-legend .income{background:var(--primary)}.dashboard-chart-legend .expense{background:#d85c52}.cash-bars i{position:relative;cursor:default}.cash-bars i:hover{filter:brightness(.92)}
@media(max-width:1450px){.sidebar{width:232px}.app-main{margin-left:232px}.sidebar-brand{padding-left:16px;padding-right:16px}.sidebar-brand img{width:176px}.topbar{height:72px;padding:0 18px;grid-template-columns:minmax(190px,.7fr) minmax(220px,1fr) minmax(300px,.9fr);gap:14px}.content-wrap{padding:18px 18px 26px}.page-toolbar{margin-bottom:15px}.page-toolbar h2{font-size:22px}.kpi-grid{gap:11px}.kpi-card{padding:14px 15px}.modal-dialog.modal-xxl{width:calc(100vw - 18px);max-width:none;max-height:calc(100vh - 18px);margin:9px}.modal-head{padding:13px 18px}.modal-body{padding:15px 18px 18px}.invoice-builder{padding:14px}.invoice-top-grid{gap:11px;margin-bottom:11px}.invoice-form-card{padding:12px}.form-grid{gap:10px 12px}.form-grid input,.form-grid select{min-height:36px}.partner-preview{min-height:140px}.invoice-bottom-grid{gap:14px;margin-top:12px}.invoice-items-table{font-size:10px}.invoice-items-table th,.invoice-items-table td{padding:5px 4px!important}.invoice-items-table input,.invoice-items-table select{height:31px!important;font-size:10px}}
@media(max-width:1180px){.topbar{grid-template-columns:1fr auto}.global-search{display:none}.user-meta{display:none}.invoice-top-grid,.invoice-tax-grid{grid-template-columns:1fr}.invoice-items-table th:nth-child(3),.invoice-items-table td:nth-child(3){display:none}.invoice-items-table th:nth-child(2){width:27%}.invoice-items-table th:nth-child(9),.invoice-items-table th:nth-child(10),.invoice-items-table th:nth-child(11){width:11%}}

/* v1.0.4 – document editor density + always-visible line items */
.invoice-primary-grid{grid-template-columns:minmax(0,1.55fr) minmax(290px,.75fr);gap:10px;margin-bottom:10px}
.invoice-primary-grid .invoice-form-card{padding:11px 12px}
.invoice-primary-grid .invoice-form-card h4{margin-bottom:8px;font-size:13px}
.invoice-primary-grid .form-grid{gap:7px 9px}
.invoice-primary-grid .form-grid label>span{font-size:10px;margin-bottom:4px}
.invoice-primary-grid .form-grid input,.invoice-primary-grid .form-grid select{min-height:32px!important;height:32px;padding:5px 8px;font-size:12px}
.invoice-primary-grid .partner-preview{min-height:88px;padding:9px 10px}
.invoice-primary-grid .partner-name{font-size:14px;margin-bottom:5px}
.invoice-primary-grid .partner-grid{grid-template-columns:90px 1fr;gap:2px 7px;font-size:11px}
.invoice-items-jump{margin-top:5px;border:0;background:transparent;color:var(--primary);padding:0;font:inherit;font-size:11px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;gap:5px}
.invoice-items-jump:hover{text-decoration:underline}
.invoice-lines{border-radius:9px;margin:0 0 10px!important;border-color:color-mix(in srgb,var(--primary) 20%,var(--border))}
.invoice-lines .section-title{padding:10px 12px!important;background:color-mix(in srgb,var(--primary) 3%,var(--surface));align-items:center}
.invoice-lines .section-title h3{margin:1px 0 0;font-size:15px}
.invoice-lines .section-title small{display:block;margin-top:2px;color:var(--muted);font-size:10px;font-weight:500}
.invoice-lines .table-responsive{overflow-x:hidden!important}
.invoice-items-empty td{text-align:center!important;padding:18px!important;color:#9a3412;background:#fff8ed}
.invoice-items-empty i{margin-right:7px}
.invoice-secondary-settings{display:grid;gap:10px;margin-top:0}
.invoice-secondary-settings .invoice-top-grid{margin-bottom:0}
.invoice-secondary-settings .invoice-form-card{padding:11px 12px}
.invoice-secondary-settings .invoice-form-card h4{margin-bottom:8px;font-size:13px}
.invoice-secondary-settings .form-grid{gap:8px 10px}
.invoice-extra{padding:10px 12px!important;margin:0!important;border-radius:9px}
.invoice-extra[open] summary{margin-bottom:4px}
#purchaseListCard{padding:10px 12px;margin:0 0 10px;border-radius:9px}
#purchaseListCard h4{margin-bottom:8px;font-size:13px}
#purchaseListCard .form-grid{gap:7px 9px}
#purchaseListCard textarea{min-height:58px!important;height:58px}
#purchaseListCard .section-inline-note{margin:6px 0 0;font-size:10px}
.invoice-bottom-grid{margin-top:10px!important;gap:12px!important;grid-template-columns:minmax(0,1fr) 320px!important}
.invoice-bottom-grid textarea{min-height:74px!important;height:74px}
.invoice-totals{gap:4px!important;padding:4px 0!important}
.invoice-total-row{padding:4px 0!important;font-size:12px}
.invoice-total-row.grand{font-size:17px!important;padding-top:6px!important}
.invoice-actions{padding-top:10px!important;padding-bottom:10px!important}

/* Make fields in document lines modern but dense; no default browser-looking controls. */
.invoice-items-table input,.invoice-items-table select{
  border:1px solid var(--field-border)!important;border-radius:6px!important;background:var(--field-bg)!important;
  box-shadow:0 1px 2px rgba(16,35,27,.02)!important;color:var(--text)!important
}
.invoice-items-table input:focus,.invoice-items-table select:focus{border-color:color-mix(in srgb,var(--primary) 65%,#fff 35%)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 10%,transparent)!important}
.invoice-items-table input:disabled,.invoice-items-table select:disabled{opacity:1!important;color:var(--text)!important;background:color-mix(in srgb,var(--surface-2) 72%,var(--field-bg))!important;cursor:default}

@media(max-width:1450px){
  .invoice-builder{padding:10px!important}.invoice-primary-grid{gap:8px;margin-bottom:8px}.invoice-primary-grid .invoice-form-card{padding:9px 10px}
  .invoice-primary-grid .form-grid{gap:6px 8px}.invoice-primary-grid .partner-preview{min-height:72px}.invoice-lines .section-title{padding:8px 10px!important}
  .invoice-secondary-settings .invoice-form-card{padding:9px 10px}.invoice-bottom-grid{grid-template-columns:minmax(0,1fr) 285px!important}
}
@media(max-width:1180px){
  .invoice-primary-grid{grid-template-columns:1fr}.invoice-primary-grid .partner-preview{min-height:auto}
  .invoice-bottom-grid{grid-template-columns:1fr!important}.invoice-secondary-settings .invoice-tax-grid{grid-template-columns:1fr}
}
/* Do not over-constrain all invoice columns: fixed percentages + action columns caused overflow on 1366px. */
.invoice-items-table th:nth-child(n+4):not(:last-child){width:auto!important}
.invoice-items-table th:nth-child(1){width:34px!important}.invoice-items-table th:nth-child(2){width:18%!important}.invoice-items-table th:nth-child(3){width:17%!important}.invoice-items-table th:last-child{width:34px!important}
.invoice-items-table .purchase-only-col:not([hidden]){width:9%!important}
@media(max-width:1366px){
  .modal-dialog.modal-xxl{width:calc(100vw - 10px)!important;margin:5px!important;max-height:calc(100vh - 10px)!important}
  .modal-head{padding:9px 14px!important}.modal-head h3{font-size:16px;margin:1px 0}.invoice-meta{font-size:10px}
  .modal-body{padding:8px 10px 10px!important}.invoice-builder{padding:7px!important}.invoice-primary-grid .form-grid input,.invoice-primary-grid .form-grid select{height:30px!important;min-height:30px!important}
  .invoice-items-table{font-size:9.5px!important}.invoice-items-table input,.invoice-items-table select{height:29px!important;font-size:9.5px!important;padding:4px 5px!important}
  .invoice-actions{padding:8px 12px!important}.invoice-actions .btn-action{min-height:34px;padding:7px 11px}
}

/* v1.0.5 – compact tax/purchase toggles */
.compact-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:10px}.compact-card-head h4{margin:0!important}.switch-row{display:inline-flex!important;align-items:center!important;gap:8px;cursor:pointer;min-height:34px;padding:4px 7px;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft,#f7faf8)}.switch-row input{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}.switch-control{width:34px;height:18px;border-radius:999px;background:#cbd5d1;position:relative;flex:0 0 auto;transition:.18s ease}.switch-control:after{content:"";position:absolute;left:2px;top:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:.18s ease}.switch-row input:checked+.switch-control{background:var(--primary)}.switch-row input:checked+.switch-control:after{transform:translateX(16px)}.switch-row input:focus-visible+.switch-control{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)}.switch-label{font-size:11px;font-weight:800;color:var(--text)}.switch-row small{font-size:9px;color:var(--muted);font-weight:700}.switch-row small.on{color:var(--primary)}
.purchase-base-fields{margin-top:2px}.invoice-subdetails{margin-top:9px!important;background:var(--surface-soft,#f8faf9)!important}.invoice-subdetails summary,.tax-details-card summary{display:flex;align-items:center;gap:7px;min-height:28px}.details-status{margin-left:auto;display:inline-flex;align-items:center;min-height:22px;padding:3px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:9px;font-weight:800;white-space:nowrap}.tax-details-card{padding:10px 12px!important}.tax-details-card[open] summary{margin-bottom:10px}.tax-details-card:not([open]){background:var(--surface-soft,#f8faf9)}
.invoice-subdetails label:has(#purchaseDeclaration){display:block;width:100%;margin-top:10px}.invoice-subdetails label:has(#purchaseDeclaration)>span{display:block;margin-bottom:7px}#purchaseDeclaration{display:block;width:100%!important;max-width:none!important;min-height:150px!important;height:150px!important;padding:12px!important;line-height:1.55;resize:vertical}
@media(max-width:1450px){.compact-card-head{gap:8px}.switch-row{min-height:30px;padding:3px 6px}.purchase-settings-card{padding:9px 10px!important}.tax-details-card{padding:8px 10px!important}.tax-details-card[open] summary{margin-bottom:7px}}
@media(max-width:900px){.compact-card-head{align-items:flex-start;flex-direction:column}.switch-row{width:100%;justify-content:flex-start}.details-status{white-space:normal;text-align:right}}

/* v1.0.6 – partner quick search, Ctrl+K palette, partner profile, normative preview */
.partner-quick-search{position:relative}.partner-quick-search input{min-width:0}.search-command-trigger{display:flex;align-items:center;gap:5px;border:0;background:transparent;color:var(--muted);cursor:pointer;padding:3px 0 3px 8px}.search-command-trigger i{font-size:11px;color:var(--primary)}.search-command-trigger kbd{pointer-events:none}.quick-search-results{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:90;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 18px 45px rgba(15,42,31,.18);padding:6px;max-height:360px;overflow:auto}.quick-search-result,.command-result{display:flex;align-items:center;gap:10px;padding:10px;border-radius:9px;color:var(--text);text-decoration:none}.quick-search-result:hover,.command-result:hover,.command-result.active{background:var(--surface-2)}.search-result-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:var(--green-soft);color:var(--primary);flex:0 0 auto}.quick-search-result b,.quick-search-result small,.command-result b,.command-result small{display:block}.quick-search-result b,.command-result b{font-size:11px}.quick-search-result small,.command-result small{font-size:9px;color:var(--muted);margin-top:2px}.quick-search-empty,.command-empty{padding:20px;text-align:center;color:var(--muted);font-size:10px}
.command-palette{position:fixed;inset:0;z-index:150;display:none}.command-palette.open{display:block}.command-palette-backdrop{position:absolute;inset:0;background:rgba(4,18,13,.48);backdrop-filter:blur(3px)}.command-palette-dialog{position:relative;width:min(720px,calc(100vw - 28px));max-height:min(640px,calc(100vh - 90px));margin:72px auto 0;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 28px 80px rgba(0,0,0,.25);overflow:hidden}.command-search-box{height:58px;display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid var(--border)}.command-search-box>i{color:var(--primary);font-size:17px}.command-search-box input{flex:1;border:0!important;box-shadow:none!important;background:transparent!important;font-size:14px;outline:0;color:var(--text);padding:0!important}.command-search-box kbd{font-size:9px;border:1px solid var(--border);padding:4px 6px;border-radius:5px;color:var(--muted);background:var(--surface-2)}.command-search-hint{display:flex;justify-content:space-between;gap:12px;padding:8px 15px;border-bottom:1px solid var(--border);font-size:9px;color:var(--muted);background:var(--surface-2)}.command-search-hint i{color:var(--primary)}.command-results{padding:7px;overflow:auto;max-height:480px}.command-result{position:relative}.command-enter{margin-left:auto;color:var(--muted);font-size:10px}
.row-icon.view{color:#2c7a62}.row-icon.view:hover{background:#e9f7f1;color:#126c46}
.partner-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.partner-profile-card{padding:16px}.partner-profile-head{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--border)}.partner-profile-head .badge{margin-left:auto}.partner-avatar{width:42px;height:42px;border-radius:11px;background:var(--green-soft);color:var(--primary);display:grid;place-items:center;font-size:18px}.partner-profile-head h3{margin:0;font-size:16px}.partner-profile-head p{margin:3px 0 0;color:var(--muted);font-size:10px}.partner-data-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding-top:13px}.partner-data-grid>div{padding:9px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;min-width:0}.partner-data-grid span,.partner-data-grid b{display:block}.partner-data-grid span{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.partner-data-grid b{font-size:10px;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.partner-tabs-panel{padding:0;overflow:hidden}.entity-tabs{display:flex;gap:2px;padding:8px 8px 0;border-bottom:1px solid var(--border);background:var(--surface-2);overflow:auto}.entity-tabs button{border:0;background:transparent;color:var(--muted);padding:10px 12px;border-radius:8px 8px 0 0;font-size:10px;font-weight:700;white-space:nowrap;cursor:pointer}.entity-tabs button.active{background:var(--surface);color:var(--primary);box-shadow:0 -1px 0 var(--border),1px 0 0 var(--border),-1px 0 0 var(--border)}.entity-tabs button span{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:5px;padding:0 5px;border-radius:10px;background:var(--surface-2);font-size:8px}.partner-tab-pane{display:none;padding:12px}.partner-tab-pane.active{display:block}.ledger-mini-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.ledger-mini-summary>div{border:1px solid var(--border);background:var(--surface-2);border-radius:9px;padding:12px}.ledger-mini-summary span,.ledger-mini-summary b{display:block}.ledger-mini-summary span{font-size:8px;color:var(--muted)}.ledger-mini-summary b{font-size:13px;margin-top:5px}.normative-preview-head{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin-bottom:12px}.normative-preview-head>div{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;padding:10px}.normative-preview-head span,.normative-preview-head b{display:block}.normative-preview-head span{font-size:8px;color:var(--muted)}.normative-preview-head b{font-size:11px;margin-top:4px}.legal-note{display:flex;gap:9px;align-items:flex-start;margin-top:12px;padding:10px 12px;border:1px solid #ecd8a2;background:#fff8e6;color:#695727;border-radius:8px;font-size:9px;line-height:1.45}.legal-note i{margin-top:1px}.modal-subtitle{margin:3px 0 0;color:var(--muted);font-size:9px}
@media(max-width:1366px){.partner-data-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.partner-summary-grid{gap:9px}.partner-summary-grid .kpi-card{padding:13px 14px}.command-palette-dialog{margin-top:48px}.command-results{max-height:430px}}
@media(max-width:900px){.partner-summary-grid{grid-template-columns:1fr 1fr}.partner-data-grid{grid-template-columns:1fr 1fr}.ledger-mini-summary{grid-template-columns:1fr 1fr}.normative-preview-head{grid-template-columns:1fr}.command-palette-dialog{margin-top:18px;max-height:calc(100vh - 36px)}.command-results{max-height:calc(100vh - 150px)}}
@media(max-width:560px){.partner-summary-grid,.partner-data-grid,.ledger-mini-summary{grid-template-columns:1fr}.entity-tabs{padding-left:5px}.partner-profile-head{align-items:flex-start}.partner-profile-head .badge{margin-left:0}.partner-profile-head{flex-wrap:wrap}}

/* v1.0.8 - document preview modal */
.invoice-preview-modal{padding:22px;background:rgba(15,23,42,.22)}
.invoice-preview-modal .modal-backdrop{background:rgba(15,23,42,.62);backdrop-filter:blur(8px)}
.invoice-preview-dialog{width:min(1120px,calc(100vw - 44px));max-height:calc(100vh - 44px);display:flex;flex-direction:column;border:0!important;border-radius:0!important;background:#fff;box-shadow:0 35px 90px rgba(0,0,0,.35)}
.invoice-preview-actions{flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;background:#f8fafc;border-bottom:1px solid #e5edf7}
.invoice-preview-actions h3{margin:3px 0 0;font-size:20px;color:#0f172a}
.invoice-preview-action-group{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.invoice-preview-action-group .btn-action{min-height:38px;padding:9px 12px;border-radius:12px;text-decoration:none}
.invoice-preview-scroll{overflow:auto;overscroll-behavior:contain;background:#f3f6fb;padding:18px}
.document-preview{--doc-primary:#0b4f93;--doc-accent:#ec6b00;--doc-line:#d9e2ef;background:#fff;color:#101827;border:1px solid #dfe8f4;border-radius:22px;padding:24px;box-shadow:0 18px 45px rgba(15,23,42,.10);font-family:Inter,Arial,sans-serif}
.document-preview-header{display:grid;grid-template-columns:1fr 1.2fr;gap:22px;border-bottom:1px solid var(--doc-line);padding-bottom:18px;margin-bottom:12px}
.document-preview-logo{max-width:180px;max-height:64px;object-fit:contain;margin-bottom:9px}
.document-preview-brand{font-size:25px;font-weight:900;color:var(--doc-primary);letter-spacing:-.04em}
.document-preview-org{text-align:right}.document-preview-org h4{margin:0 0 7px;font-size:17px;color:#0f172a}.document-preview-text{font-size:12px;line-height:1.6;color:#344054}
.document-preview-title{text-align:center;margin:12px 0 18px}.document-preview-title h2{margin:0;color:var(--doc-primary);font-size:30px;letter-spacing:-.03em}.document-preview-title .badge{margin-top:7px}
.document-preview-main{display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:start;margin-bottom:18px}
.document-preview-block h4{font-size:20px;color:var(--doc-primary);margin:0 0 8px}
.document-preview-row{display:grid;grid-template-columns:130px 1fr;gap:10px;border-bottom:1px solid #cfd8e3;padding:5px 0;font-size:12px}.document-preview-row span{font-weight:750;color:#344054}.document-preview-row b{text-align:right;overflow-wrap:anywhere}
.document-preview-debt{text-align:right;margin-top:14px}.document-preview-debt span{display:block;font-size:16px;font-weight:800}.document-preview-debt strong{display:block;margin-top:4px;font-size:31px;color:var(--doc-primary);font-weight:550}
.document-preview-table-wrap{overflow:auto}.document-preview-table{width:100%;min-width:760px;border-collapse:collapse}.document-preview-table th{background:var(--doc-primary);color:#fff;padding:8px;text-align:left;font-size:12px}.document-preview-table td{padding:8px;border-bottom:1px solid #e5edf7;font-size:12px}.document-preview-table tbody tr:nth-child(even) td{background:#f1f5f9}.document-preview-table .num{text-align:right;white-space:nowrap}
.document-preview-bottom{display:grid;grid-template-columns:1fr 360px;gap:28px;margin-top:20px;align-items:start}.document-preview-payment{font-size:13px;line-height:1.7}.document-preview-note{font-size:12px;line-height:1.5;margin-top:14px}.document-preview-summary{border:1px solid #dbe5f2;border-radius:16px;padding:14px}.document-preview-sum{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #d7deea;padding:7px 0;font-size:14px}.document-preview-sum span{font-weight:850}.document-preview-sum.total{font-size:18px;border-bottom:0;color:#0f172a}.document-preview-valid{margin-top:20px;background:#f8fafc;border:1px solid #dbe5f2;border-radius:12px;padding:11px;font-size:11px;color:#475467;line-height:1.5;text-align:center}
@media(max-width:900px){.invoice-preview-modal{padding:0;align-items:stretch}.invoice-preview-dialog{width:100%;max-height:100vh;height:100vh;margin:0;border-radius:0!important}.invoice-preview-scroll{padding:0}.document-preview{min-height:100vh;border:0;border-radius:0;box-shadow:none}.invoice-preview-actions{position:sticky;top:0;z-index:5}.document-preview-bottom{grid-template-columns:1fr}}
@media(max-width:640px){.invoice-preview-actions{align-items:flex-start}.invoice-preview-action-group .btn-action{font-size:0}.invoice-preview-action-group .btn-action i{font-size:14px;margin:0}.document-preview{padding:16px}.document-preview-header,.document-preview-main{grid-template-columns:1fr}.document-preview-org{text-align:left}.document-preview-row{grid-template-columns:115px 1fr}.document-preview-row b{text-align:left}.document-preview-debt{text-align:left}.document-preview-title h2{font-size:26px}}

/* v1.0.8 - compact tabbed document editor */
.invoice-editor-tabs{flex:0 0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;background:var(--surface-2);border-bottom:1px solid var(--border);padding:0 18px}
.invoice-editor-tabs button{position:relative;display:grid;grid-template-columns:28px 18px 1fr;grid-template-rows:auto auto;align-items:center;column-gap:7px;min-height:58px;padding:8px 14px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);text-align:left;cursor:pointer}
.invoice-editor-tabs button>span{grid-row:1/3;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--border);color:var(--muted);font-size:10px;font-weight:900}.invoice-editor-tabs button>i{grid-row:1/3;color:var(--primary);font-size:14px}.invoice-editor-tabs button>b{font-size:12px;color:var(--text)}.invoice-editor-tabs button>small{font-size:9px}.invoice-editor-tabs button>small strong{font:inherit}.invoice-editor-tabs button:hover{background:color-mix(in srgb,var(--primary) 4%,transparent)}
.invoice-editor-tabs button.active{border-bottom-color:var(--primary);background:var(--surface);color:var(--primary)}.invoice-editor-tabs button.active>span{background:var(--primary);color:#fff}.invoice-editor-tabs button.active>b{color:var(--primary)}
.invoice-builder[data-active-tab="basic"]>.invoice-tab-panel:not([data-invoice-panel="basic"]),.invoice-builder[data-active-tab="items"]>.invoice-tab-panel:not([data-invoice-panel="items"]),.invoice-builder[data-active-tab="tax"]>.invoice-tab-panel:not([data-invoice-panel="tax"]){display:none!important}.invoice-tab-items.invoice-lines{margin:0!important;overflow:visible!important}.invoice-tab-items .table-responsive{overflow:visible!important}.invoice-tab-items+.invoice-bottom-grid{margin-top:10px!important}
.invoice-items-callout{display:flex;align-items:flex-start;gap:9px;padding:9px 12px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#f0f7ff;color:#344054;font-size:10px;line-height:1.45}.invoice-items-callout i{color:#1677b8;margin-top:2px}.invoice-items-callout b{color:#0b4f93}
.invoice-editor-tabs button.tab-complete:after{content:"";position:absolute;right:10px;top:10px;width:7px;height:7px;border-radius:50%;background:#16a34a;box-shadow:0 0 0 3px color-mix(in srgb,#16a34a 15%,transparent)}
@media(max-width:700px){.invoice-editor-tabs{padding:0}.invoice-editor-tabs button{grid-template-columns:24px 1fr;min-height:52px;padding:7px 8px}.invoice-editor-tabs button>i,.invoice-editor-tabs button>small{display:none}.invoice-editor-tabs button>b{font-size:10px}.invoice-editor-tabs button>span{width:21px;height:21px}.invoice-items-callout{font-size:9px}}

/* Searchable partner picker (Select2-style, no external dependency) */
.invoice-partner-picker{position:relative}.invoice-partner-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}
.invoice-partner-search{height:36px;display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:7px;background:var(--input-bg,var(--surface));padding:0 8px;transition:border-color .15s,box-shadow .15s}.invoice-partner-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.invoice-partner-search>i{color:var(--primary);font-size:12px}.invoice-partner-search input{flex:1;width:100%;min-width:0;height:34px!important;min-height:34px!important;padding:0!important;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;color:var(--text);font-size:11px}.invoice-partner-search button{width:25px;height:25px;display:grid;place-items:center;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.invoice-partner-search button:hover{background:var(--surface-2);color:var(--danger)}
.invoice-partner-results{position:absolute;z-index:80;left:0;right:0;top:calc(100% + 5px);max-height:280px;overflow:auto;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:9px;box-shadow:0 18px 45px rgba(15,42,31,.2)}.invoice-partner-option{width:100%;display:grid;grid-template-columns:32px minmax(0,1fr);gap:9px;align-items:center;padding:8px 9px;border:0;border-radius:7px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.invoice-partner-option:hover,.invoice-partner-option.active{background:var(--surface-2)}.invoice-partner-option.selected{background:color-mix(in srgb,var(--primary) 9%,var(--surface));color:var(--primary)}.invoice-partner-option>i{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:var(--green-soft);color:var(--primary)}.invoice-partner-option b,.invoice-partner-option small{display:block}.invoice-partner-option b{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-partner-option small{margin-top:2px;color:var(--muted);font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-partner-empty{padding:18px;text-align:center;color:var(--muted);font-size:10px}

/* Searchable product picker inside every invoice line */
.invoice-tab-items .invoice-items-table td{overflow:visible!important}.invoice-tab-items .invoice-items-table tr{position:relative}.invoice-tab-items .invoice-items-table tr:focus-within{z-index:140}.invoice-tab-items .invoice-items-table td:has(.line-product-picker){position:relative;z-index:2}.invoice-tab-items .invoice-items-table tr:focus-within td:has(.line-product-picker){z-index:145}
.line-product-picker{position:relative;z-index:1;min-width:0}.line-product-picker:focus-within{z-index:150}.line-product-native{position:absolute!important;width:1px!important;height:1px!important;min-width:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}.line-product-search{display:flex;align-items:center;gap:5px;width:100%;height:31px;border:1px solid var(--border);border-radius:6px;background:var(--input-bg,var(--surface));padding:0 6px}.line-product-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 12%,transparent)}.line-product-search>i{color:var(--primary);font-size:10px}.invoice-items-table .line-product-query{width:100%!important;min-width:0!important;height:29px!important;min-height:29px!important;padding:0!important;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;font-size:10px!important}.line-product-reset{flex:0 0 20px;width:20px;height:20px;display:grid;place-items:center;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer}.line-product-reset:hover{background:var(--surface-2);color:var(--danger)}
.line-product-results{position:absolute;z-index:160;left:0;top:calc(100% + 4px);width:max(310px,100%);max-width:min(440px,70vw);max-height:260px;overflow:auto;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:9px;box-shadow:0 18px 42px rgba(15,42,31,.22)}.line-product-results.open-up{top:auto;bottom:calc(100% + 4px)}.line-product-option{width:100%;display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:center;padding:7px 8px;border:0;border-radius:7px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.line-product-option:hover,.line-product-option.active{background:var(--surface-2)}.line-product-option.selected{background:color-mix(in srgb,var(--primary) 9%,var(--surface));color:var(--primary)}.line-product-option>i{width:27px;height:27px;display:grid;place-items:center;border-radius:7px;background:var(--green-soft);color:var(--primary)}.line-product-option b,.line-product-option small{display:block}.line-product-option b{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-product-option small{margin-top:2px;color:var(--muted);font-size:8px}.line-product-empty{padding:16px;text-align:center;color:var(--muted);font-size:9px}
