/* Approved light-olive workspace; no preview behavior or accounting fixtures. */
:root { --paper:#f3f6f2; --ink:#15392d; --muted:#596956; --line:#d4dfd1; --green:#626b3c; --accent:#e3e8d6; }
body { font-family:Inter,'Segoe UI',Arial,sans-serif; font-size:14px; }
h1,h2,h3,.tier-price,.estimate,.meter strong { font-family:inherit; }
.skip-link { position:fixed; top:-80px; left:12px; padding:12px; background:white; z-index:10; }
.skip-link:focus { top:12px; }
.simulation-banner { background:#e2ebe0; color:#344c30; font-size:12px; }
.simulation-banner strong { color:#344c30; }
.app-shell { display:grid; grid-template-columns:244px minmax(0,1fr); min-height:100vh; }
.app-sidebar { background:#dce2cb; color:#303c28; padding:35px 23px; display:flex; flex-direction:column; align-items:stretch; gap:22px; }
.product-brand { display:flex; gap:10px; align-items:center; font-size:28px; font-weight:650; letter-spacing:-1.2px; white-space:nowrap; }
.product-brand img { object-fit:contain; flex-shrink:0; }
.sidebar-caption { color:#4c5941; font-size:12px; line-height:1.8; margin:0 0 15px; }
.app-sidebar nav { display:grid; margin:0; gap:10px; font-size:12px; }
.app-sidebar nav a { padding:13px 10px; border-radius:7px; }
.app-sidebar nav a:first-child { background:#626b3c; color:white; }
.app-sidebar nav a:hover { text-decoration:none; box-shadow:inset 0 0 0 1px #8b9566; }
.provider-brand { margin-top:45px; padding:12px; background:white; border-radius:9px; }
.provider-brand>span { font-size:9px; letter-spacing:2px; color:#465c40; }
.brand-logo { width:100%; max-width:210px; height:auto; }
.app-sidebar .auth-controls { justify-content:flex-start; }
.app-sidebar .auth-button { border-color:#8b9566; }
.app-sidebar .preview { white-space:normal; margin:0; }
.navigation-toggle { display:none; }
main { width:100%; max-width:1400px; padding:0 38px; min-width:0; }
.intro { padding-top:48px; gap:25px; }
h1 { font-size:clamp(40px,4.5vw,64px); }
h1 em { font-family:Georgia,serif; font-weight:400; }
.lead { font-size:14px; line-height:1.8; }
.eyebrow { font-size:10px; }
.intro-note { max-width:220px; }
.workspace { border:0; border-radius:0; background:transparent; gap:22px; grid-template-columns:minmax(0,1fr) 285px; align-items:start; }
.choose { padding:0; min-width:0; }
.tier { padding:19px 15px; min-width:0; }
.tier.selected { background:#e8efe5; border:1px solid #8b9566; box-shadow:inset 0 3px #626b3c; padding:19px 15px; }
.tier.future { opacity:1; background:#fbfcfa; }
.tier-description { font-size:12px; }
.tier-price { font-size:21px; }
.tier-price small { font:400 11px 'Segoe UI',sans-serif; }
.tier-badge.available { color:#454d2c; }
.section-label h2 { font-size:17px; }
.section-label>span { font-size:10px; white-space:normal; text-align:right; }
.session-config,.model-details { background:white; padding:20px; border:1px solid var(--line); border-radius:12px; }
.session-panel { border:1px solid var(--line); border-radius:12px; background:white; padding:22px; }
.estimate small { font:400 12px 'Segoe UI',sans-serif; }
.primary:hover,.primary.accent:hover { background:#4e582f; color:white; }
.primary.accent { background:#626b3c; color:white; }
.chat-workspace { border-color:var(--line); border-radius:12px; }
.chat-header { background:#e8efe5; color:var(--ink); flex-wrap:wrap; }
.chat-header h2 { color:var(--ink); }
.chat-header .eyebrow,.chat-model { color:var(--muted); }
.end-button { border-color:#8b9566; color:#454d2c; }
.end-button:hover { background:#dce2cb; }
.message.assistant,.meter-note { background:#e8efe5; }
.message.streaming p::after { color:#626b3c; }
.chat-form textarea { min-width:0; }
.payments-panel { background:white; box-shadow:0 12px 36px #173b2810; }
.payment-signin .primary { margin-top:0; justify-content:center; }
.payments-test .tier-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.payment-receipts small { overflow-wrap:anywhere; }
footer { font-size:11px; }
@media(min-width:1550px) { .tier-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:1150px) { .app-shell { grid-template-columns:210px minmax(0,1fr); } .app-sidebar { padding:30px 16px; } .product-brand { font-size:24px; } main { padding:0 25px; } .workspace { grid-template-columns:1fr; } .payments-test .tier-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .intro-note { display:none; } }
@media(max-width:700px) {
  .app-shell { display:block; }
  .app-sidebar { padding:18px 20px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px; align-items:center; }
  .sidebar-caption { display:none; }
  .navigation-toggle { display:block; border:1px solid #8b9566; border-radius:6px; padding:8px 12px; color:#303c28; background:transparent; }
  .app-sidebar nav { display:none; grid-column:1/-1; }
  .app-sidebar.navigation-open nav { display:grid; }
  .provider-brand { margin:0; padding:7px 10px; max-width:180px; }
  .provider-brand>span { font-size:8px; }
  .brand-logo { width:150px; }
  .app-sidebar .auth-controls { max-width:135px; }
  .app-sidebar .preview { display:inline; font-size:10px; padding:4px 7px; }
  main { padding:0 20px; }
  .intro { padding-top:32px; }
  .chat-header { padding:20px; }
  .meter { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .meter>div { padding:14px; }
  .meter strong { font-size:17px; }
  .tier-grid,.payments-test .tier-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tier-price small { display:block; }
  .tier-name { font-size:16px; }
  .tier-badge { margin-left:0; }
  .payments-panel { padding:20px; }
  .pricing-section { gap:25px; padding-block:45px; }
}
@media(max-width:360px) { .app-sidebar { padding:15px; } main { padding:0 15px; } .brand-logo { width:120px; } .product-brand { font-size:23px; gap:5px; } .tier { padding:14px 10px; } .tier.selected { padding:14px 10px; } }
