.v-application{font-family:var(--font)!important;background:transparent!important}.v-application__wrap{min-height:100vh}.v-field--variant-outlined .v-field__outline{--v-field-border-opacity:1;color:var(--border-strong)}.v-field--focused .v-field__outline{color:var(--accent)!important}:root{--ink:#12101a;--ink-soft:#2a2735;--surface:#fff;--surface-muted:#f3f2ef;--border:#e4e2dc;--border-strong:#cdcac2;--accent:#0f766e;--accent-soft:#ccfbf1;--accent-hover:#0d9488;--danger:#b42318;--danger-soft:#fef3f2;--warning:#b54708;--text:#1c1917;--text-muted:#78716c;--shadow-sm:0 1px 2px rgba(18,16,26,.06);--shadow-md:0 8px 24px rgba(18,16,26,.08);--shadow-lg:0 20px 50px rgba(18,16,26,.12);--radius:14px;--radius-sm:10px;--font:"IBM Plex Sans",system-ui,sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace}*,:after,:before{box-sizing:border-box}#app,body,html{min-height:100%}body{margin:0;font-family:var(--font);color:var(--text);background:radial-gradient(1200px 600px at 10% -10%,rgba(15,118,110,.08),transparent 55%),radial-gradient(900px 500px at 100% 0,rgba(18,16,26,.05),transparent 50%),linear-gradient(180deg,#f7f6f3,#efeee9);-webkit-font-smoothing:antialiased}.page-shell{max-width:1180px;margin:0 auto;padding:28px 16px 64px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.page-kicker{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 6px}.page-title{font-size:clamp(1.6rem,2.5vw,2rem);font-weight:700;letter-spacing:-.03em;color:var(--ink);margin:0;line-height:1.15}.page-subtitle{margin:8px 0 0;color:var(--text-muted);font-size:.95rem}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.panel-pad{padding:20px}.mono{font-family:var(--mono)}.action-chip{display:inline-flex;align-items:center;gap:6px}.invoice-editor{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}@media (max-width:960px){.invoice-editor{grid-template-columns:1fr}}.editor-main,.editor-side{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.editor-main{padding:24px}.editor-side{padding:20px;position:sticky;top:16px}.editor-section-title{font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:0 0 14px}.line-items{display:flex;flex-direction:column;gap:10px}.line-item{display:grid;grid-template-columns:36px minmax(0,1fr) 140px auto;gap:10px;align-items:start;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fafaf8;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.line-item:focus-within{border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px rgba(15,118,110,.12)}.line-item.is-qty{grid-template-columns:36px minmax(0,1fr) 88px 140px auto}.line-index{width:36px;height:40px;display:grid;place-items:center;border-radius:8px;background:var(--ink);color:#fff;font-family:var(--mono);font-size:.75rem;font-weight:600}.line-actions{display:flex;align-items:center;gap:2px;padding-top:2px}.summary-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;border-bottom:1px solid var(--border);font-size:.95rem}.summary-row:last-of-type{border-bottom:none}.summary-row .label{color:var(--text-muted)}.summary-total{margin-top:8px;padding:14px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--ink) 0,#2a2735 100%);color:#fff}.summary-total .label{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;opacity:.7}.summary-total .value{font-family:var(--mono);font-size:1.45rem;font-weight:600;margin-top:4px;letter-spacing:-.02em}.empty-state{text-align:center;padding:56px 24px;color:var(--text-muted)}.empty-state h3{color:var(--ink);margin:12px 0 6px}.fade-up{animation:fadeUp .45s ease both}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.no-print{@media print{display:none!important}}@media print{body{background:#fff}.v-application,.v-application--wrap,body{margin:0;padding:0}}