/* Marvexx Financial 1.0 — deployment stylesheet */
:root{
  --paper:#f4f0e6;--paper-2:#fbf8f0;--ink:#181716;--muted:#726d65;--line:#d8d0c2;
  --accent:#8d1f2d;--accent-dark:#671620;--accent-soft:#f3e3e5;--success:#2e6847;--warning:#8a5d14;
  --danger:#9a2833;--shadow:0 18px 50px rgba(41,34,27,.10);--radius:14px;--sidebar:276px;
  --mono:"Courier New",Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}html{min-height:100%;background:var(--paper)}body{margin:0;min-height:100vh;color:var(--ink);font-family:var(--sans);background:var(--paper);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}button,a{ -webkit-tap-highlight-color:transparent }a{color:inherit}img{max-width:100%}button{cursor:pointer}button:disabled{cursor:not-allowed}
::selection{background:#e6c7cc}input,select,textarea{width:100%;border:1px solid var(--line);background:#fffdf8;color:var(--ink);border-radius:9px;min-height:44px;padding:10px 12px;outline:none;transition:border-color .15s,box-shadow .15s}
textarea{resize:vertical;min-height:90px}input:focus,select:focus,textarea:focus{border-color:#a8858a;box-shadow:0 0 0 3px rgba(141,31,45,.09)}input[type=number]{font-family:var(--mono);font-variant-numeric:tabular-nums}
.btn{border:1px solid var(--accent);background:var(--accent);color:white;border-radius:9px;min-height:42px;padding:9px 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:700;letter-spacing:.01em;transition:.15s transform,.15s background,.15s border-color;white-space:nowrap}
.btn:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.btn:active{transform:translateY(1px)}.btn-secondary{background:transparent;color:var(--ink);border-color:var(--line)}.btn-secondary:hover{background:#ece6da;border-color:#bfb5a5}.btn-large{min-height:49px;padding:12px 18px}.btn-small{min-height:34px;padding:6px 10px;font-size:13px}
.icon-btn{width:40px;height:40px;border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--ink);display:inline-grid;place-items:center;padding:0;position:relative}.icon-btn:hover{background:#ebe5da}.icon-btn svg,.btn svg,.quick-action svg,.metric-icon svg{width:18px;height:18px;stroke-width:1.7}
.text-link{font-weight:700;color:var(--accent);text-decoration:none}.text-link:hover{text-decoration:underline}
.eyebrow,.page-kicker{font-family:var(--mono);font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);margin:0 0 8px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:0 0 24px}.page-header h1{font:700 clamp(28px,3vw,42px)/1.05 var(--mono);letter-spacing:-.04em;margin:0}.page-subtitle{color:var(--muted);max-width:700px;margin:9px 0 0;line-height:1.55}.page-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.card,.statement-paper,.support-card{background:rgba(255,253,248,.82);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 1px 0 rgba(255,255,255,.8);padding:20px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.card-head h2{font:700 18px/1.2 var(--mono);margin:0}.form-card{padding:22px}.form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.field,.form-grid>label{display:flex;flex-direction:column;gap:7px;min-width:0}.field>span,.form-grid>label>span,.entry-line label span{font:700 12px/1.2 var(--mono);letter-spacing:.03em;color:#59534c}.field-wide{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:8px;align-items:center}.note{border:1px solid var(--line);border-radius:10px;background:#f8f4eb;padding:12px 14px;display:flex;align-items:flex-start;gap:10px;color:#514b44;line-height:1.45;margin:0 0 18px}.note svg{width:18px;height:18px;flex:0 0 auto;margin-top:1px}.note.warning{border-color:#d3b371;background:#faf1da;color:#654815}.note.success{border-color:#a9c9b6;background:#edf7f0;color:#2e5d42}.note.info{border-color:#cfc5b5}.empty-state{padding:34px 18px;text-align:center;color:var(--muted)}
/* Landing */
.landing-body{background:radial-gradient(circle at 72% 8%,rgba(141,31,45,.055),transparent 28%),var(--paper)}.landing-main{min-height:100vh;max-width:1280px;margin:auto;padding:0 34px}.landing-nav{height:92px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.landing-brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}.landing-brand img,.brand img{width:46px;height:46px;border-radius:9px;object-fit:cover;border:1px solid #cfc4b5}.landing-brand strong,.brand strong{font:700 16px/1.1 var(--mono);display:block}.landing-brand span,.brand span{font-size:11px;color:var(--muted);display:block;margin-top:4px}.landing-actions{display:flex;align-items:center;gap:9px}.language-select, .landing-actions select,.auth-top select{width:auto;min-height:40px;border-radius:8px;background:#fbf8f0}.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:54px;align-items:center;padding:72px 0 58px}.hero-copy h1{font:700 clamp(46px,6vw,82px)/.93 var(--mono);letter-spacing:-.065em;margin:0 0 22px;max-width:870px}.hero-copy>p{font-size:18px;line-height:1.65;color:#514c45;max-width:750px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.hero-ledger{background:#fbf7ee;border:1px solid var(--line);box-shadow:var(--shadow);padding:26px;transform:rotate(.5deg);position:relative}.free-stamp{display:inline-block;border:2px solid var(--accent);color:var(--accent);font:700 12px var(--mono);letter-spacing:.15em;padding:8px 10px;transform:rotate(-3deg);margin-bottom:22px}.paper-top{border-bottom:2px solid var(--ink);padding-bottom:12px;margin-bottom:6px}.paper-title{font:700 19px var(--mono)}.paper-row{display:grid;grid-template-columns:1fr auto;gap:18px;padding:12px 0;border-bottom:1px dotted #bdb3a3;font-family:var(--mono)}.paper-row strong{font-variant-numeric:tabular-nums}.paper-note{font:12px/1.5 var(--mono);color:var(--muted);margin-top:18px}.landing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:0 0 42px}.landing-feature{padding:24px;background:#fbf8f0;border:1px solid var(--line);border-radius:12px}.landing-feature svg{width:24px;height:24px;color:var(--accent)}.landing-feature h2{font:700 18px var(--mono);margin:14px 0 8px}.landing-feature p{color:var(--muted);line-height:1.55;margin:0}.landing-cta{margin:12px 0 42px;padding:34px;border:1px solid var(--line);background:#eae2d5;display:flex;align-items:center;justify-content:space-between;gap:20px}.landing-cta h2{font:700 28px var(--mono);margin:0 0 8px}.landing-cta p{margin:0;color:#565048}.landing-footer{border-top:1px solid var(--line);padding:26px 0 40px;color:var(--muted);font-size:13px;display:flex;justify-content:space-between;gap:20px}.landing-footer strong{color:var(--ink);font-family:var(--mono)}
/* Auth */
.auth-body{background:var(--paper)}.auth-layout{min-height:100vh;display:grid;grid-template-columns:minmax(320px,.82fr) minmax(420px,1.18fr)}.auth-brand-panel{padding:42px;display:flex;flex-direction:column;justify-content:space-between;background:#e9e1d5;border-right:1px solid var(--line)}.auth-brand-panel h1{font:700 clamp(34px,4vw,58px)/1 var(--mono);letter-spacing:-.05em;margin:12px 0 20px}.auth-brand-panel p{line-height:1.65;color:#565049;max-width:620px}.auth-origin{font-family:var(--mono);font-size:12px}.auth-form-panel{padding:28px clamp(24px,6vw,80px);display:flex;flex-direction:column}.auth-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.auth-top a{text-decoration:none;color:var(--muted);font-weight:650}.auth-card{width:min(480px,100%);margin:auto}.auth-card h2{font:700 32px var(--mono);margin:0 0 24px}.auth-card form{display:flex;flex-direction:column;gap:15px}.auth-card form label{display:flex;flex-direction:column;gap:7px}.auth-card form label span{font:700 12px var(--mono)}.auth-card small{color:var(--muted);margin-top:-8px}.auth-message{padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:#f5f0e6;line-height:1.4}.auth-message.error{background:#fae7e9;border-color:#e2b0b7;color:#7b202c}.auth-message.success{background:#edf7f0;border-color:#b5d1bf;color:#2e6847}
/* Application shell */
.app-body{overflow-x:hidden}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:#ebe4d8;border-right:1px solid var(--line);z-index:30;padding:18px 14px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;padding:0 8px 15px;border-bottom:1px solid var(--line)}.brand>div{min-width:0}.sidebar-close{display:none;margin-left:auto}.sidebar nav{overflow:auto;padding:12px 2px;flex:1;scrollbar-width:thin}.nav-group{margin-bottom:15px}.nav-group>p{font:700 10px var(--mono);letter-spacing:.13em;color:#7d756b;text-transform:uppercase;margin:0 10px 6px}.nav-group button{width:100%;border:0;background:transparent;color:#393530;display:flex;align-items:center;gap:10px;text-align:left;border-radius:8px;min-height:40px;padding:8px 10px;position:relative}.nav-group button:hover,.nav-group button.active{background:#ddd4c5;color:#181716}.nav-group button svg{width:17px;height:17px;stroke-width:1.7;flex:0 0 auto}.nav-group button span{flex:1}.nav-group button small{font-size:9px;text-transform:uppercase;color:#8a8177;letter-spacing:.06em}.nav-group button.locked{opacity:.55}.nav-bottom{border-top:1px solid var(--line);padding-top:12px}.nav-group b{font:700 10px var(--mono);background:var(--accent);color:white;border-radius:999px;min-width:19px;height:19px;display:none;place-items:center}.nav-group b.visible{display:grid}.sidebar-user{border-top:1px solid var(--line);padding:13px 6px 0;display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-user span{display:block;font:700 12px var(--mono);overflow:hidden;text-overflow:ellipsis}.sidebar-user small{display:block;color:var(--muted);margin-top:3px}.content-shell{margin-left:var(--sidebar);min-height:100vh}.topbar{height:68px;border-bottom:1px solid var(--line);background:rgba(244,240,230,.92);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;padding:0 26px}.menu-btn{display:none}.business-picker{display:flex;align-items:center;gap:9px}.business-picker label{font:700 10px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.business-picker select{width:min(260px,36vw);background:transparent;border-color:transparent;font-weight:700}.topbar-spacer{flex:1}.topbar .language-select{display:flex;align-items:center;gap:4px}.topbar .language-select svg{width:17px}.topbar .language-select select{width:auto;border:0;background:transparent;padding-right:26px}.badge{position:absolute;top:-4px;right:-4px;background:var(--accent);color:white;border-radius:999px;font:700 9px var(--mono);min-width:17px;height:17px;display:none;place-items:center}.badge.visible{display:grid}#page{padding:32px clamp(22px,4vw,54px) 92px;max-width:1580px;margin:auto}.mobile-nav{display:none}
.save-banner{border:1px solid #c6b59b;background:#eee5d7;padding:15px 16px;border-radius:12px;display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:20px}.save-banner strong{display:block;font:700 14px var(--mono)}.save-banner span{display:block;color:var(--muted);font-size:13px;margin-top:4px}.save-banner>div:last-child{display:flex;gap:8px;flex-wrap:wrap}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.metric-grid.compact{grid-template-columns:minmax(220px,320px)}.metric{background:#fbf8f0;border:1px solid var(--line);padding:17px;border-radius:12px;display:flex;align-items:center;gap:12px;min-width:0}.metric-icon{width:38px;height:38px;border:1px solid var(--line);display:grid;place-items:center;border-radius:9px;background:#f1ebe1;color:var(--accent);flex:0 0 auto}.metric span{display:block;color:var(--muted);font-size:12px}.metric strong{display:block;font:700 19px var(--mono);font-variant-numeric:tabular-nums;margin-top:3px;overflow:hidden;text-overflow:ellipsis}.metric.negative strong{color:var(--danger)}.metric.positive strong{color:var(--success)}.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.quick-action{border:1px solid var(--line);background:#f8f4eb;border-radius:10px;padding:16px;display:flex;align-items:center;gap:10px;font-weight:750;text-align:left;min-height:58px}.quick-action:hover{background:#eee7db}.quick-action svg{color:var(--accent)}
.split-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:16px;align-items:start}.aging-card{position:sticky;top:86px}.aging-grid{display:grid;gap:8px}.aging-grid>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px dotted var(--line)}.aging-grid span{color:var(--muted);font-size:12px}.aging-grid strong{font:700 13px var(--mono)}
.table-wrap{width:100%;overflow:auto;border:1px solid var(--line);border-radius:10px;background:#fffdf8}.table-wrap table{width:100%;border-collapse:collapse;min-width:680px}.table-wrap th{font:700 10px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:#6f675d;background:#eee7dc;text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.table-wrap td{padding:12px;border-bottom:1px solid #e4ddd2;vertical-align:middle;font-size:13px}.table-wrap tr:last-child td{border-bottom:0}.table-wrap tbody tr:hover{background:#f8f4ec}.money-cell,.table-wrap td:last-child{font-variant-numeric:tabular-nums}.row-actions,.doc-actions,.download-group,.report-controls{display:flex;gap:6px;flex-wrap:wrap}.status{font:700 10px var(--mono);letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--line);padding:5px 7px;border-radius:999px;background:#f3eee5;white-space:nowrap}.status-paid,.status-posted{border-color:#b5d1bf;background:#edf7f0;color:#2e6847}.status-overdue{border-color:#e2b0b7;background:#fae7e9;color:#7b202c}.status-draft{color:#726d65}.status-partially_paid{border-color:#d7bd83;background:#faf1da;color:#745115}
.line-editor{display:flex;flex-direction:column;gap:9px}.line-editor-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.entry-line{display:grid;align-items:end;gap:9px;border:1px solid var(--line);border-radius:10px;background:#f9f5ed;padding:10px;min-width:0}.entry-line label{display:flex;flex-direction:column;gap:6px;min-width:0}.journal-line{grid-template-columns:minmax(240px,1.8fr) minmax(130px,.7fr) minmax(130px,.7fr) 40px}.invoice-line,.bill-line{grid-template-columns:minmax(160px,.9fr) minmax(180px,1.2fr) minmax(90px,.4fr) minmax(110px,.5fr) minmax(180px,1fr) 40px}.remove-line{align-self:end}.journal-totals{display:grid;grid-template-columns:1fr 1fr;gap:10px}.journal-totals>div,.invoice-total{display:flex;justify-content:space-between;gap:20px;padding:12px 14px;background:#eee7dc;border-radius:9px}.journal-totals strong,.invoice-total strong{font-family:var(--mono);font-variant-numeric:tabular-nums}
/* Statements and accounting */
.report-tabs{display:flex;gap:4px;overflow:auto;border-bottom:1px solid var(--line);margin-bottom:16px}.report-tabs button{border:0;background:transparent;padding:10px 13px;white-space:nowrap;border-bottom:2px solid transparent;color:var(--muted);font-weight:700}.report-tabs button.active{color:var(--accent);border-color:var(--accent)}.report-controls{margin-bottom:12px;justify-content:flex-end}.statement-paper{max-width:980px;margin:auto;padding:30px;background:#fffdf8}.statement-title{text-align:center;border-bottom:2px solid var(--ink);padding-bottom:14px;margin-bottom:18px}.statement-title strong,.statement-title span{display:block;font:12px var(--mono)}.statement-title h2{font:700 22px var(--mono);margin:6px 0}.statement-section{margin-top:18px}.statement-section h3{font:700 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#655e55;margin:0 0 7px}.statement-line,.statement-total{display:flex;justify-content:space-between;gap:20px;padding:7px 4px;border-bottom:1px dotted #c9c0b2}.statement-line strong,.statement-total strong{font-family:var(--mono);font-variant-numeric:tabular-nums}.statement-total{border-top:1px solid var(--ink);border-bottom:0;margin-top:4px;font-weight:700}.statement-total.grand{border-top:2px solid var(--ink);border-bottom:3px double var(--ink);padding:9px 4px}.taccount-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.t-account{border:1px solid var(--line);background:#fffdf8;padding:14px}.t-title{text-align:center;font:700 13px var(--mono);border-bottom:2px solid var(--ink);padding:3px 4px 9px}.t-head,.t-body{display:grid;grid-template-columns:1fr 1fr}.t-head span{font:700 10px var(--mono);text-transform:uppercase;padding:7px;text-align:center}.t-head span:first-child,.t-body>div:first-child{border-right:1px solid var(--ink)}.t-body>div{min-height:68px;padding:3px 8px}.t-body p{display:flex;justify-content:space-between;gap:10px;margin:7px 0;font:11px var(--mono)}
/* Inbox/docs/support/learn */
.inbox-list{display:flex;flex-direction:column;gap:10px}.inbox-item{border:1px solid var(--line);background:#fbf8f0;border-radius:11px;padding:16px;display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:start;cursor:pointer}.inbox-item.unread{border-left:4px solid var(--accent);background:#fffaf1}.inbox-icon{width:40px;height:40px;border:1px solid var(--line);border-radius:9px;display:grid;place-items:center;color:var(--accent)}.inbox-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.message-type{font:700 10px var(--mono);text-transform:uppercase;letter-spacing:.06em}.message-type.sponsored{color:var(--accent)}.inbox-meta time{font-size:11px;color:var(--muted)}.inbox-copy h2{font:700 16px var(--mono);margin:6px 0}.inbox-copy p{margin:0;color:#5b554e;line-height:1.5}.unread-dot{width:9px;height:9px;border-radius:50%;background:var(--accent);margin-top:8px}.support-card{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:start;max-width:840px}.support-mark{width:58px;height:58px;border:1px solid var(--line);display:grid;place-items:center;border-radius:12px;color:var(--accent)}.support-mark svg{width:28px;height:28px}.support-card h2{font:700 19px/1.35 var(--mono);margin:0 0 10px}.support-card p{color:var(--muted);line-height:1.55}.user-id-card{border:1px dashed #b7aa98;background:#f4eee4;padding:13px;margin:15px 0;display:flex;justify-content:space-between;gap:10px}.user-id-card span{font-size:12px;color:var(--muted)}.user-id-card strong{font-family:var(--mono)}.help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.help-card{border:1px solid var(--line);background:#fbf8f0;border-radius:10px;padding:16px;text-align:left;font-weight:700}.help-card:hover,.help-card.active{border-color:#a88489;background:#f4e7e8}.help-answer{margin-top:15px;padding:18px;border-left:3px solid var(--accent);background:#f7f1e8;line-height:1.6}.future-assistant{margin-top:22px;border:1px dashed #b7aa98;padding:18px;color:var(--muted)}.lock-chip{font:700 10px var(--mono);text-transform:uppercase;color:var(--accent)}.document-preview{max-height:65vh;overflow:auto}.onboarding{max-width:880px;margin:50px auto}.onboarding>h1{font:700 clamp(34px,5vw,56px)/1 var(--mono);letter-spacing:-.05em;margin:0 0 12px}.onboarding>p{color:var(--muted);line-height:1.6}.business-type-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.business-type-grid label{position:relative}.business-type-grid input{position:absolute;opacity:0;pointer-events:none}.business-type-grid label>div{border:1px solid var(--line);background:#fbf8f0;border-radius:11px;padding:18px;min-height:150px}.business-type-grid input:checked+div{border:2px solid var(--accent);background:#f8edef}.business-type-grid svg{color:var(--accent)}.business-type-grid strong{display:block;font:700 15px var(--mono);margin:14px 0 5px}.business-type-grid p{font-size:12px;color:var(--muted);line-height:1.5;margin:0}
/* Modal/toasts */
#modal-root,#toast-root{position:relative;z-index:100}.modal-overlay{position:fixed;inset:0;background:rgba(24,23,22,.48);backdrop-filter:blur(2px);display:grid;place-items:center;padding:20px;z-index:100}.modal-card{width:min(980px,100%);max-height:92vh;display:flex;flex-direction:column;background:var(--paper-2);border:1px solid #bdb3a4;border-radius:14px;box-shadow:0 28px 80px rgba(0,0,0,.22);overflow:hidden}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 18px;border-bottom:1px solid var(--line)}.modal-head h2{font:700 17px var(--mono);margin:0}.modal-body{padding:18px;overflow:auto}.modal-actions{padding:13px 18px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.mail-popup{text-align:center;padding:20px}.mail-popup svg{width:48px;height:48px;color:var(--accent)}.mail-popup p{font:700 18px/1.5 var(--mono)}.toast{position:fixed;right:20px;bottom:20px;max-width:min(420px,calc(100vw - 40px));padding:12px 15px;border-radius:9px;background:#26231f;color:white;box-shadow:var(--shadow);z-index:120;transition:opacity .2s,transform .2s}.toast.error{background:#7d222c}.toast.success{background:#285b40}.toast.hide{opacity:0;transform:translateY(8px)}.boot-screen,.fatal{min-height:100vh;display:grid;place-items:center;font:700 18px var(--mono);letter-spacing:.12em}.fatal{padding:30px;align-content:center;text-align:center}.fatal pre{white-space:pre-wrap;max-width:800px}
/* Mobile */
@media(max-width:1180px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-line,.bill-line{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-line .remove-line,.bill-line .remove-line{grid-column:2;justify-self:end}.split-grid{grid-template-columns:1fr}.aging-card{position:static}.landing-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){:root{--sidebar:300px}.sidebar{transform:translateX(-102%);transition:transform .22s ease;box-shadow:var(--shadow)}.sidebar.open{transform:none}.sidebar-close{display:grid}.sidebar-open:after{content:"";position:fixed;inset:0;background:rgba(0,0,0,.25);z-index:25}.content-shell{margin-left:0}.menu-btn{display:grid}.topbar{padding:0 16px}.business-picker label{display:none}.business-picker select{width:min(44vw,260px)}#page{padding:26px 18px 92px}.mobile-nav{display:grid;position:fixed;left:0;right:0;bottom:0;z-index:24;grid-template-columns:repeat(5,1fr);background:rgba(244,240,230,.97);border-top:1px solid var(--line);padding:6px max(6px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));backdrop-filter:blur(14px)}.mobile-nav button{border:0;background:transparent;display:flex;min-width:0;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;color:#504a43;font-size:9px;font-weight:700}.mobile-nav svg{width:19px;height:19px}.journal-line{grid-template-columns:1fr 1fr}.journal-line .account-field{grid-column:1/-1}.journal-line .remove-line{grid-column:2;justify-self:end}.taccount-grid{grid-template-columns:1fr}.auth-layout{grid-template-columns:1fr}.auth-brand-panel{display:none}.hero{grid-template-columns:1fr;padding-top:50px}.hero-ledger{max-width:620px}.landing-grid{grid-template-columns:1fr}.landing-main{padding:0 20px}.landing-cta{align-items:flex-start;flex-direction:column}.page-header{flex-direction:column}.page-actions{justify-content:flex-start}.business-type-grid{grid-template-columns:1fr}}
@media(max-width:640px){.landing-nav{height:74px}.landing-brand span{display:none}.landing-actions .btn-secondary{display:none}.hero{gap:28px;padding:42px 0}.hero-copy h1{font-size:clamp(40px,13vw,60px)}.hero-copy>p{font-size:16px}.hero-ledger{padding:18px}.landing-footer{flex-direction:column}.topbar{height:60px}.topbar .language-select svg{display:none}.topbar .language-select select{padding-left:4px;padding-right:20px}.business-picker select{font-size:13px}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric{padding:12px;align-items:flex-start}.metric-icon{display:none}.metric strong{font-size:16px}.quick-grid{grid-template-columns:1fr 1fr}.card,.statement-paper,.support-card{padding:14px}.form-grid{grid-template-columns:1fr;gap:12px}.field-wide{grid-column:1}.entry-line,.journal-line,.invoice-line,.bill-line{grid-template-columns:1fr!important;align-items:stretch}.entry-line .account-field,.journal-line .account-field,.invoice-line .remove-line,.bill-line .remove-line,.journal-line .remove-line{grid-column:1!important}.remove-line{justify-self:end!important}.journal-totals{grid-template-columns:1fr}.table-wrap{margin:0 -2px}.table-wrap table{min-width:620px}.statement-paper{margin:0 -2px}.statement-title h2{font-size:18px}.report-controls{justify-content:stretch}.report-controls .btn{flex:1 1 45%}.help-grid{grid-template-columns:1fr}.support-card{grid-template-columns:1fr}.support-mark{width:46px;height:46px}.inbox-item{grid-template-columns:36px 1fr}.unread-dot{display:none}.inbox-icon{width:34px;height:34px}.inbox-meta{align-items:flex-start;flex-direction:column;gap:3px}.page-header h1{font-size:31px}.save-banner{flex-direction:column;align-items:stretch}.save-banner>div:last-child .btn{flex:1}.modal-overlay{padding:0;align-items:end}.modal-card{border-radius:16px 16px 0 0;max-height:94vh;width:100%}.modal-actions .btn{flex:1}.auth-form-panel{padding:20px}.auth-top{margin-bottom:34px}.auth-card h2{font-size:28px}.onboarding{margin:22px auto}.business-type-grid label>div{min-height:0}.row-actions,.doc-actions{min-width:max-content}}
@media(max-width:420px){.metric-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr}.topbar .icon-btn{width:36px;height:36px}.business-picker select{width:42vw}.landing-actions select{max-width:58px}.report-controls .btn{flex-basis:100%}}
@media print{.sidebar,.topbar,.mobile-nav,.page-header,.report-controls,.report-tabs,.note,.save-banner{display:none!important}.content-shell{margin:0}.statement-paper{border:0;box-shadow:none;max-width:none;padding:0}#page{padding:0}.app-body{background:white}}

/* --- UI cleanup patch: text-only branding, straighter landing, cleaner mobile iOS layout --- */
.landing-brand img,.brand img{display:none}
.landing-brand,.brand{gap:0}
.landing-brand strong,.brand strong{font-size:18px}
.landing-brand span,.brand span{display:none}
.hero-ledger{transform:none;border-radius:18px;overflow:hidden}
.free-stamp{display:block;transform:none;max-width:100%;width:100%;margin:22px 0 0;padding:16px 18px;border:2px solid var(--accent);border-radius:14px;letter-spacing:.08em;line-height:1.45;background:#f9f1f2}
.free-stamp span{display:block;font-size:14px;margin-bottom:8px}
.free-stamp p{margin:0;font:700 14px/1.5 var(--mono);letter-spacing:.04em}
.topbar-title{display:none;font:700 18px/1.1 var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.topbar-right{display:flex;align-items:center;gap:10px;margin-left:auto}
.language-select select{font-weight:700}
input[type="date"]{-webkit-appearance:none;appearance:none;max-width:100%}
input[type="date"]::-webkit-date-and-time-value{text-align:left}

@media(max-width:900px){
  .sidebar{width:min(88vw,var(--sidebar))}
  .topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center}
  .topbar-title{display:block}
  .business-picker{display:none}
  .topbar-spacer{display:none}
  .topbar-right{justify-self:end;margin-left:0}
}
@media(max-width:640px){
  .landing-nav{display:grid;grid-template-columns:1fr auto;align-items:center;row-gap:12px;height:auto;padding:16px 0}
  .landing-brand strong{font-size:20px}
  .landing-actions{gap:8px;justify-self:end}
  .hero-copy h1{font-size:clamp(34px,12vw,52px);letter-spacing:-.045em}
  .hero-copy>p{max-width:none}
  .hero-actions{gap:12px}
  .hero-actions .btn{flex:1 1 0}
  .hero-ledger{margin-top:8px;padding:16px}
  .topbar{height:64px;padding:0 12px;gap:8px}
  .topbar-title{font-size:16px}
  .topbar .language-select{border:1px solid var(--line);border-radius:10px;background:#fbf8f0;padding:0 8px;height:40px}
  .topbar .language-select select{min-height:38px;padding:0 20px 0 2px}
  input,select,textarea{font-size:16px}
  .card,.statement-paper,.support-card,.form-card{padding:16px}
  .form-grid,.entry-line,.journal-line,.invoice-line,.bill-line{gap:12px}
  .note{margin-bottom:14px}
  .mobile-nav button span{font-size:10px}
}
@media(max-width:420px){
  .topbar .language-select{padding:0 6px}
  .topbar-title{font-size:15px}
  .landing-main{padding:0 16px}
  .free-stamp{padding:14px 15px}
}


/* --- Marvexx mobile landing hardening: prevent iOS horizontal clipping --- */
html,body,#landing{width:100%;max-width:100%;overflow-x:hidden}
#landing{min-width:0}
.landing-nav,.landing-main,.landing-footer{width:min(100%,1280px);max-width:1280px;margin-left:auto;margin-right:auto}
.landing-nav{padding-left:34px;padding-right:34px}
.landing-footer{padding-left:34px;padding-right:34px}
.landing-brand,.landing-actions,.hero,.hero-copy,.hero-ledger,.paper-window,.free-stamp{min-width:0;max-width:100%}
.landing-actions{flex:0 0 auto}
.landing-actions .language-select{display:flex;align-items:center;min-width:0}
.landing-actions .language-select svg{display:none}
.landing-actions .language-select select{width:auto;max-width:78px;padding-left:12px;padding-right:26px}
.hero-copy{overflow:hidden}
.hero-copy h1,.hero-copy>p,.free-stamp p{overflow-wrap:anywhere;word-break:normal}
.hero-ledger{width:100%;transform:none;border-radius:16px;overflow:hidden}
.free-stamp{box-sizing:border-box;width:100%;transform:none;border-radius:16px;overflow:hidden}
.paper-window{width:100%;overflow:hidden}
.paper-top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.paper-top span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.paper-top span:last-child{flex:0 0 auto}
.paper-row{grid-template-columns:minmax(0,1fr) auto;min-width:0}
.paper-row span{min-width:0;overflow-wrap:anywhere}
.paper-row strong{white-space:nowrap}

@media(max-width:640px){
  .landing-nav{padding:14px 18px;grid-template-columns:minmax(0,1fr) auto;column-gap:12px}
  .landing-brand{overflow:hidden}
  .landing-brand strong{font-size:18px;line-height:1.15;white-space:normal;overflow-wrap:anywhere}
  .landing-actions{gap:0}
  .landing-actions .btn{display:none!important}
  .landing-actions .language-select{height:42px;border:1px solid var(--line);border-radius:11px;background:#fbf8f0;padding:0 6px}
  .landing-actions .language-select select{min-height:40px;max-width:70px;border:0;background:transparent;padding-left:8px;padding-right:22px;font-size:16px}
  .landing-main{padding:0 18px}
  .landing-footer{padding:24px 18px 34px}
  .hero{width:100%;padding:38px 0 44px;gap:24px;overflow:hidden}
  .hero-copy h1{font-size:clamp(38px,11.5vw,52px);line-height:.98;letter-spacing:-.045em;max-width:100%}
  .hero-copy>p{font-size:16px;line-height:1.55}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
  .hero-actions .btn{width:100%;min-width:0;padding-left:10px;padding-right:10px}
  .free-stamp{margin-top:18px;padding:16px 16px}
  .free-stamp span{font-size:13px;letter-spacing:.06em}
  .free-stamp p{font-size:13px;line-height:1.5;letter-spacing:.02em}
  .hero-ledger{padding:16px;margin-top:2px}
  .paper-top{font-size:12px}
  .paper-title{font-size:17px}
  .paper-row{gap:10px;font-size:14px}
  .paper-note{font-size:11px}
}

@media(max-width:390px){
  .landing-nav{padding-left:14px;padding-right:14px}
  .landing-main{padding-left:14px;padding-right:14px}
  .landing-footer{padding-left:14px;padding-right:14px}
  .landing-brand strong{font-size:17px}
  .hero-copy h1{font-size:clamp(34px,11vw,46px)}
  .hero-actions{grid-template-columns:1fr}
  .paper-row{font-size:13px}
}
