:root{color-scheme:light;--ink:#20262b;--ink-strong:#131719;--slate:#5e676d;--stone:#747b80;--line:#d9d8d2;--paper:#f3f0e9;--paper-deep:#e9e4da;--surface:#fffefa;--forest:#1f332c;--forest-hover:#172720;--brass:#a98a5b;--brass-soft:#eee4d3;--success:#216e45;--success-soft:#e8f4ed;--warning:#8a5a10;--warning-soft:#fbf0d9;--danger:#9d3734;--danger-soft:#fae9e7;--info:#285d75;--info-soft:#e7f0f4;--font:"Segoe UI",Arial,sans-serif;--display:Bahnschrift,"DIN Alternate","Segoe UI",sans-serif;--shadow:0 1px 2px rgba(25,31,28,.06),0 8px 25px rgba(25,31,28,.05);--radius:.8rem;--sidebar:17rem}*{box-sizing:border-box}html{min-width:320px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 var(--font)}a{color:var(--forest);text-underline-offset:3px}button,input,select,textarea{font:inherit}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:.55rem;background:#fff;padding:.7rem .78rem;color:var(--ink)}textarea{resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid rgba(169,138,91,.32);outline-offset:1px}label{display:grid;gap:.35rem;font-size:.82rem;font-weight:650;color:#464d50}label small{font-weight:400;color:var(--stone)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);color:var(--ink-strong)}h1{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.05;margin-bottom:.65rem}h2{font-size:1.25rem}.environment-banner{height:2.1rem;display:flex;align-items:center;justify-content:center;background:var(--brass-soft);border-bottom:1px solid #dbc8a7;color:#63461e;font-size:.71rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.app-shell{min-height:calc(100vh - 2.1rem);display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr)}.sidebar{position:sticky;top:0;height:calc(100vh - 2.1rem);display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--line);z-index:10}.sidebar-brand{display:flex;align-items:center;gap:.8rem;padding:1.25rem 1.3rem;border-bottom:1px solid var(--line);text-decoration:none}.sidebar-brand strong,.sidebar-brand small{display:block}.sidebar-brand small{color:var(--stone);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.brand-mark{display:grid;place-items:center;width:2.5rem;height:2.5rem;background:var(--forest);color:#fff;border-radius:50%;font:700 1.2rem var(--display);box-shadow:inset 0 0 0 3px var(--brass)}.sidebar nav{padding:1rem .7rem;display:grid;gap:.18rem;overflow-y:auto}.nav-link{padding:.64rem .75rem;border-radius:.55rem;color:#434b4f;font-size:.87rem;font-weight:650;text-decoration:none}.nav-link:hover{background:var(--paper)}.nav-link.is-active{background:var(--forest);color:#fff}.sidebar-user{margin-top:auto;padding:1rem 1.3rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:.82rem}.link-button{border:0;background:none;color:var(--forest);cursor:pointer}.workspace{min-width:0}.topbar{min-height:4.3rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem clamp(1rem,3vw,2.3rem);border-bottom:1px solid var(--line);background:rgba(243,240,233,.94);position:sticky;top:0;z-index:8;backdrop-filter:blur(10px)}.topbar strong{display:block;font:700 .95rem var(--display)}.eyebrow{display:block;color:var(--brass);font-size:.67rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.25rem}.content{width:min(94rem,100%);margin:auto;padding:clamp(1rem,3vw,2.4rem)}.page-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:1.5rem}.page-head.compact{margin-bottom:1rem}.page-head p{color:var(--slate);margin-bottom:0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.65rem;padding:.62rem 1rem;border:1px solid var(--line);border-radius:.55rem;background:var(--surface);color:var(--ink);font-weight:700;text-decoration:none;cursor:pointer}.button:hover{border-color:var(--brass);background:#fff}.button-primary{background:var(--forest);border-color:var(--forest);color:#fff}.button-primary:hover{background:var(--forest-hover);color:#fff}.button-small{min-height:2.25rem;padding:.45rem .75rem;font-size:.8rem}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;box-shadow:var(--shadow);margin-bottom:1.2rem}.panel-head,.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.3rem}.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.15rem;text-decoration:none;box-shadow:var(--shadow)}.stat-card span{color:var(--stone);font-size:.78rem;font-weight:700}.stat-card strong{display:block;font:500 2.2rem var(--display);margin-top:.4rem}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.83rem}th{text-align:left;color:var(--stone);font-size:.69rem;letter-spacing:.07em;text-transform:uppercase;padding:.7rem;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:.8rem .7rem;border-bottom:1px solid #e8e5de;vertical-align:top}td small{display:block;color:var(--stone)}.status{display:inline-flex;border-radius:99px;padding:.2rem .55rem;background:var(--info-soft);color:var(--info);font-size:.68rem;font-weight:800;text-transform:uppercase;white-space:nowrap}.status-draft{background:var(--warning-soft);color:var(--warning)}.status-generated{background:var(--success-soft);color:var(--success)}.filter-bar{display:flex;gap:.65rem;margin-bottom:1rem}.filter-bar input{flex:1}.filter-bar select{width:auto;min-width:9rem}.form-section{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:1rem;padding:1.4rem}.section-number{display:grid;place-items:center;width:2.35rem;height:2.35rem;border:1px solid var(--brass);border-radius:50%;color:var(--brass);font:700 .78rem var(--display)}.form-grid{display:grid;gap:.9rem}.form-grid.cols-2{grid-template-columns:repeat(2,1fr)}.form-grid.cols-3{grid-template-columns:repeat(3,1fr)}.span-all{grid-column:1/-1}.number-preview{margin-top:.8rem;padding:.65rem .8rem;border-left:3px solid var(--brass);background:var(--brass-soft);font-size:.8rem}.choice-tabs,.preset-row,.action-row{display:flex;flex-wrap:wrap;gap:.55rem}.choice-tabs{margin-bottom:1rem}.choice-tabs button{border:1px solid var(--line);border-radius:99px;background:#fff;padding:.5rem .8rem;cursor:pointer;font-weight:650;font-size:.79rem}.choice-tabs button.is-active{background:var(--forest);border-color:var(--forest);color:#fff}.line-row{display:grid;grid-template-columns:minmax(250px,3fr) .7fr 1fr .75fr .75fr 2.2rem;gap:.65rem;align-items:end;padding:.8rem 0;border-bottom:1px solid var(--line)}.icon-button{width:2.2rem;height:2.2rem;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--danger);cursor:pointer}.form-actions{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:.7rem;padding:1rem;background:rgba(243,240,233,.95);border-top:1px solid var(--line);z-index:5}.alert{padding:.85rem 1rem;border-radius:.6rem;margin-bottom:1rem;background:var(--info-soft);color:var(--info);border:1px solid rgba(40,93,117,.18)}.alert-success{background:var(--success-soft);color:var(--success)}.alert-warning{background:var(--warning-soft);color:var(--warning)}.alert-error{background:var(--danger-soft);color:var(--danger)}.split{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.7fr);gap:1.1rem}.split.wide-left{grid-template-columns:minmax(0,2fr) minmax(280px,.65fr)}.sticky-panel{position:sticky;top:5.4rem;height:max-content}.form-stack{display:grid;gap:.85rem}.card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}.card-grid.three{grid-template-columns:repeat(3,1fr)}.brand-card{display:flex;gap:.8rem;align-items:center;border:1px solid var(--line);border-radius:.65rem;padding:.9rem}.brand-card h3,.brand-card p{margin-bottom:.15rem}.brand-avatar{display:grid;place-items:center;width:2.7rem;height:2.7rem;border-radius:.55rem;background:var(--forest);color:#fff;font-weight:800}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}.totals-card{display:grid;gap:.65rem}.totals-card span{display:flex;justify-content:space-between}.totals-card .total{padding-top:.7rem;border-top:1px solid var(--line);font-size:1.1rem}.action-row.lower{margin:1rem 0}.empty{text-align:center;padding:3rem 1rem;color:var(--stone)}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-bottom:1.2rem}.review-grid>div{padding:.8rem;background:var(--paper);border-radius:.6rem}.review-grid span,.review-grid strong{display:block}.review-grid span{color:var(--stone);font-size:.72rem}.confidence{padding:.5rem .8rem;border-radius:99px;background:var(--warning-soft);color:var(--warning);font-weight:800}.is-hidden{display:none!important}.auth-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 80% 20%,rgba(169,138,91,.18),transparent 30%),var(--paper);padding:1rem}.auth-shell{width:min(29rem,100%)}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:1rem;padding:2rem;box-shadow:0 25px 60px rgba(25,31,28,.13)}.auth-brand{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem}.auth-brand strong,.auth-brand small{display:block}.auth-brand small{color:var(--stone)}.check{display:flex;grid-template-columns:auto 1fr;align-items:center}.check input{width:auto}.menu-button{display:none}.card-reader-message{padding:.7rem;background:var(--info-soft);color:var(--info);border-radius:.5rem;margin-top:.8rem}@media(max-width:1050px){.stats{grid-template-columns:repeat(2,1fr)}.card-grid.three{grid-template-columns:1fr}.line-row{grid-template-columns:2fr repeat(4,1fr) 2.2rem}.split,.split.wide-left{grid-template-columns:1fr}.sticky-panel{position:static}}@media(max-width:800px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:0;top:2.1rem;width:var(--sidebar);transform:translateX(-105%);transition:.2s;box-shadow:0 20px 50px rgba(0,0,0,.2)}body.nav-open .sidebar{transform:translateX(0)}.menu-button{display:inline-flex}.page-head{align-items:flex-start;flex-direction:column}.form-grid.cols-3,.detail-grid,.review-grid{grid-template-columns:1fr}.line-row{grid-template-columns:1fr 1fr}.line-description{grid-column:1/-1}.filter-bar{flex-wrap:wrap}.filter-bar input,.filter-bar select{width:100%}.card-grid{grid-template-columns:1fr}}@media(max-width:520px){.content{padding:1rem}.topbar .button{display:none}.stats,.form-grid.cols-2{grid-template-columns:1fr}.form-section{grid-template-columns:1fr}.line-row{grid-template-columns:1fr}.form-actions{display:grid}.panel{padding:1rem}}
