:root {
  --mdz-green: #006b55;
  --mdz-green-deep: #003f35;
  --mdz-green-soft: #0c8a6d;
  --mdz-gold: #f4c542;
  --mdz-gold-deep: #dca62d;
  --mdz-charcoal: #101311;
  --mdz-panel: #191d1a;
  --mdz-panel-soft: #222821;
  --mdz-cream: #fff8e7;
  --mdz-muted: #b9c0b7;
  --mdz-border: #3c4a40;
  --mdz-danger: #bd3d36;
  --mdz-radius-sm: 8px;
  --mdz-radius: 14px;
  --mdz-radius-lg: 22px;
  --mdz-shadow: 0 12px 34px rgba(0,0,0,.22);
  --mdz-font: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
}
html, body, button, input, select, textarea { font-family: var(--mdz-font); }
body { background: var(--mdz-charcoal); color: var(--mdz-cream); }
button, .btn-primary { border-radius: var(--mdz-radius-sm); }
.mdz-brand-badge { display:inline-flex; align-items:center; gap:8px; font-weight:800; letter-spacing:.06em; color:var(--mdz-cream); }
.mdz-brand-badge img { width:28px; height:28px; object-fit:contain; }
.mdz-subtle-brand { color:var(--mdz-gold); font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
#busyOverlay { background: rgba(16,19,17,.78) !important; backdrop-filter: blur(3px); }
#busyOverlay img { width:58px !important; height:58px !important; object-fit:contain; filter:none !important; }

/* Simple public site: clear feature shortcuts, real plan details, no rotating claims. */
.md-public-site { --mdz-cream:#17213b; --mdz-border:#dfe6ef; --mdz-panel:#fff; --mdz-panel-soft:#f5f8fc; --mdz-green-soft:#12a66a; --mdz-gold:#1877f2; width:min(1120px,100%); margin:0 auto; padding:4px 0 32px; color:var(--mdz-cream); }
.md-feature-shortcuts { display:flex; gap:8px; overflow-x:auto; padding:8px 0 14px; scrollbar-width:thin; }
.md-feature-shortcuts a,.md-public-nav a { display:inline-flex; align-items:center; justify-content:center; white-space:nowrap; border:1px solid var(--mdz-border); border-radius:999px; padding:8px 12px; color:var(--mdz-cream); text-decoration:none; font-size:12px; font-weight:700; background:var(--mdz-panel); }
.md-feature-shortcuts a:hover,.md-public-nav a:hover { border-color:var(--mdz-gold); background:var(--mdz-panel-soft); }
.md-public-hero { border:1px solid var(--mdz-border); border-left:4px solid var(--mdz-green-soft); border-radius:var(--mdz-radius); background:#fff; padding:clamp(20px,4vw,38px); box-shadow:0 8px 24px rgba(28,53,87,.05); }
.md-public-kicker { color:var(--mdz-gold); font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.md-public-hero h1 { max-width:800px; margin:9px 0; color:#17213b; font-size:clamp(30px,5vw,54px); line-height:1.06; letter-spacing:-.035em; }
.md-public-hero p { max-width:690px; margin:0; color:#536174; font-size:15px; line-height:1.6; }
.md-public-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.md-public-actions button { min-height:44px; padding:10px 16px; font-weight:800; }
.md-public-trial { margin-top:11px!important; color:#65748a!important; font-size:12px!important; }
.md-public-section { margin:24px 0; scroll-margin-top:100px; }
.md-public-section-head { display:flex; justify-content:space-between; align-items:end; gap:12px; flex-wrap:wrap; margin-bottom:12px; }
.md-public-section h2 { margin:0; color:#17213b; font-size:clamp(21px,3vw,30px); }
.md-public-section-head p { margin:4px 0 0; color:#536174; font-size:13px; line-height:1.5; }
.md-plan-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; align-items:stretch; }
.md-plan-card { display:flex; flex-direction:column; min-width:0; padding:18px; border:1px solid var(--mdz-border); border-radius:var(--mdz-radius); background:#fff; box-shadow:0 8px 24px rgba(28,53,87,.05); }
.md-plan-card.is-featured { border:2px solid var(--mdz-green-soft); background:#f6fcf9; }
.md-plan-name { color:var(--mdz-gold); font-size:11px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.md-plan-card h3 { margin:6px 0; color:#17213b; font-size:20px; }
.md-plan-card p { margin:0; color:#536174; font-size:12px; line-height:1.5; }
.md-plan-price { margin:14px 0 2px; color:#17213b; font-size:27px; font-weight:900; letter-spacing:-.025em; }
.md-plan-price small { color:#65748a; font-size:12px; font-weight:600; letter-spacing:0; }
.md-plan-annual { color:#536174; font-size:12px; }
.md-plan-trial { margin:9px 0; color:#176b4a; font-size:12px; font-weight:800; }
.md-plan-card ul { flex:1; margin:10px 0 16px; padding-left:18px; color:#38465b; font-size:12px; line-height:1.7; }
.md-plan-card button { width:100%; min-height:42px; }
.md-feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.md-feature-card { scroll-margin-top:100px; padding:15px; border:1px solid var(--mdz-border); border-radius:var(--mdz-radius-sm); background:#fff; }
.md-feature-card h3 { margin:0 0 5px; color:#17213b; font-size:14px; }
.md-feature-card p { margin:0; color:#536174; font-size:12px; line-height:1.55; }
.md-public-footer { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; border-top:1px solid var(--mdz-border); padding-top:16px; color:#65748a; font-size:12px; }
.md-public-footer a { color:#1261c7; }
.md-private-entry { width:min(520px,100%); margin:12px auto; }
.md-shop-chooser { width:min(500px,100%); margin:16px auto; padding:20px; border:1px solid var(--mdz-border); border-radius:var(--mdz-radius); background:#191e1a; }
.md-shop-chooser h2 { margin:0 0 5px; color:#fff; font-size:20px; }
.md-shop-chooser p { color:#bbc4bc; font-size:13px; line-height:1.5; }
.md-shop-chooser input { width:100%; box-sizing:border-box; }
#login.entry-focused { width:min(620px,calc(100% - 28px)); margin:0 auto; padding:22px 14px; align-items:stretch; }
#login.entry-focused .landing-nav { width:100%!important; justify-content:center!important; border-bottom:0!important; margin-bottom:12px!important; }
#login.entry-focused .landing-nav-menu,#login.entry-focused .landing-nav-links,#login.entry-focused #publicLandingContent,#login.entry-focused #legacyLandingContent { display:none!important; }
#login.entry-focused #ownerLoginShell,#login.entry-focused #directShopWelcome,#login.entry-focused #loginCard { width:100%; max-width:520px; margin:10px auto; box-sizing:border-box; }
@media(max-width:760px){.md-plan-grid,.md-feature-grid{grid-template-columns:1fr;}.md-plan-card.is-featured{order:-1;}.md-public-hero p{font-size:14px;}}
@media(prefers-reduced-motion:reduce){.md-public-site *{scroll-behavior:auto!important;transition:none!important;}}
#onboarding .md-onboard-plan { display:flex; flex-direction:column; align-items:flex-start; gap:5px; min-height:110px; padding:11px; text-align:left; background:var(--panel2); }
#onboarding .md-onboard-plan b { color:var(--amber); font-size:14px; }
#onboarding .md-onboard-plan span { color:var(--text); font-size:11px; font-weight:750; }
#onboarding .md-onboard-plan small { color:var(--text-dim); font-size:11px; line-height:1.4; }
#onboarding .md-onboard-plan.is-selected { border-color:var(--green); outline:2px solid color-mix(in srgb,var(--green) 35%,transparent); }
@media(max-width:640px){#onboarding .md-onboard-plan-grid{grid-template-columns:1fr!important;}.md-feature-shortcuts a{padding:8px 10px;}}

/* D1 inventory/accounting controls: compact, scannable, and usable beside the
   existing Products/Stock/Accounts flows without turning each view into a mega-card. */
.mdz-accounting-panel{margin-top:14px;overflow:hidden;}
.mdz-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.mdz-panel-heading h3,.mdz-panel-heading h4{margin:3px 0 4px;font-size:16px;}
.mdz-panel-heading p{margin:0;color:var(--text-dim);font-size:12px;line-height:1.5;max-width:760px;}
.mdz-panel-heading small,.mdz-panel-heading td small{display:block;color:var(--text-mute);font-size:10px;margin-top:3px;}
.mdz-subtle-brand{color:var(--mdz-gold,var(--amber));font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase;}
.mdz-explainer{margin:11px 0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--green) 35%,var(--border));border-radius:var(--mdz-radius-sm,8px);background:color-mix(in srgb,var(--green) 9%,var(--panel2));color:var(--text-dim);font-size:12px;line-height:1.5;}
.mdz-explainer b{color:var(--text);}
.mdz-table-scroll{max-width:100%;overflow:auto;}
.mdz-mapping-table{min-width:1040px;}
.mdz-mapping-table th,.mdz-mapping-table td{vertical-align:middle;min-width:118px;}
.mdz-mapping-table th:first-child,.mdz-mapping-table td:first-child{min-width:190px;}
.mdz-mapping-table select{min-width:118px;padding:7px 8px;font-size:12px;}
.mdz-mapping-table td b,.mdz-opening-table td b{display:block;font-size:12px;}
.mdz-readonly-label{display:inline-block;padding:5px 8px;border:1px solid var(--border);border-radius:999px;color:var(--text-mute);font-size:10px;white-space:nowrap;}
.mdz-opening-controls{display:grid;grid-template-columns:minmax(150px,220px) minmax(180px,1fr);gap:10px;margin:12px 0;}
.mdz-opening-controls label,.mdz-issue-form label{margin:0;}
.mdz-opening-table{min-width:600px;}
.mdz-opening-table input{min-width:110px;padding:7px 8px;font-size:13px;}
.mdz-opening-table td,.mdz-opening-table th{vertical-align:middle;}
.mdz-action-row{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:12px;}
.mdz-opening-preview{margin-top:14px;padding-top:14px;border-top:1px solid var(--border);}
.mdz-opening-totals{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:8px;margin:10px 0;}
.mdz-opening-totals span{display:flex;flex-direction:column;gap:3px;padding:9px 10px;border:1px solid var(--border);border-radius:var(--mdz-radius-sm,8px);font-size:12px;color:var(--text);}
.mdz-opening-totals b{color:var(--text-mute);font-size:10px;text-transform:uppercase;letter-spacing:.06em;}
.mdz-balance-check{margin:8px 0;padding:8px 10px;border-radius:var(--mdz-radius-sm,8px);font-size:12px;}
.mdz-balance-check.is-balanced{background:var(--green-dim);color:var(--green);}
.mdz-balance-check.is-unbalanced{background:var(--red-dim);color:var(--red);}
.mdz-inline-error,.mdz-authority-warning{margin:10px 0;padding:9px 11px;border:1px solid var(--red);border-radius:var(--mdz-radius-sm,8px);background:var(--red-dim);color:var(--red);font-size:12px;line-height:1.45;}
.mdz-issue-form{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:10px;align-items:end;margin:12px 0 8px;}
.mdz-issue-form button{min-height:42px;}
.mdz-ledger-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 14px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--mdz-radius-sm,8px);font-size:12px;line-height:1.45;}
.mdz-ledger-status span{flex:1;min-width:220px;color:var(--text-dim);}
.mdz-ledger-status.is-authoritative{background:var(--green-dim);border-color:color-mix(in srgb,var(--green) 45%,var(--border));color:var(--green);}
.mdz-ledger-status.is-unavailable{background:var(--red-dim);border-color:color-mix(in srgb,var(--red) 55%,var(--border));color:var(--red);}
.mdz-accounting-note p{margin:5px 0 8px;color:var(--text-mute);font-size:12px;line-height:1.45;}
.mdz-accounting-note label{margin:6px 0;}
.mdz-inline-label{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.mdz-inline-label select{width:auto;min-width:190px;}
.mdz-related-select{width:100%;margin-top:6px;padding:8px;border-radius:7px;}
@media(max-width:700px){.mdz-opening-controls,.mdz-issue-form{grid-template-columns:1fr;}.mdz-opening-totals{grid-template-columns:repeat(2,minmax(100px,1fr));}.mdz-panel-heading .btn-ghost{width:auto;}.mdz-ledger-status{align-items:flex-start;}}
