/* Figma 7:7125: shared visual tokens; existing calculator business logic retained. */
.overview-main .fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.steps button.active{background:transparent}
.brand-image{object-fit:contain;flex-shrink:0}.brand>small{position:absolute;left:-9999px}.side-nav button,.header-actions>button{display:flex;align-items:center;gap:12px}.side-nav button img,.header-actions>button img{flex-shrink:0}.section-icon{display:grid;place-items:center;width:36px;height:36px;background:#e8f6fc;border-radius:6px;flex-shrink:0}.section-heading>div{flex:1;min-width:0}.live-calculation h2{display:flex;gap:8px;align-items:center}
:root{--accent:#009fe3;--navy:#0c2738;--lime:#93c819;--border:#dde5e9;--muted:#62737d;--surface:#f4f7f9;color:#152733;background:var(--surface);font-family:Inter,'Segoe UI',Arial,sans-serif;font-size:14px}
body{grid-template-columns:224px minmax(0,1fr)}
.app-sidebar{padding:16px;gap:24px;background:var(--navy);min-height:100vh}
.brand{height:120px;background:#fff;border-radius:10px;display:flex;flex-direction:column;justify-content:center;gap:4px;color:var(--navy)}
.brand-wordmark{font-size:28px;letter-spacing:-1px;font-weight:750}.brand-wordmark span{display:none}.brand small{color:var(--muted);margin:0;font-size:12px}
.side-nav{display:flex;flex-direction:column;gap:8px;border:0;margin:0;padding:0}.side-nav h2{font-size:11px;letter-spacing:.8px;color:#7392a2;margin:0 0 4px}.side-nav button{text-align:left;color:#d7e2e7;background:transparent;border:0;border-radius:10px;min-height:44px;padding:12px;font-weight:500}.side-nav button:hover{background:#17394b}.side-nav button.active,.side-nav button.primary{background:var(--accent);color:white;font-weight:650}.saved-orders{margin:0}.saved-orders summary{color:#a9bec9;font-size:12px}#orders{max-height:260px;overflow:auto}#orders button{background:#17394b;font-size:12px;border-radius:8px}.sidebar-status{display:flex;align-items:center;gap:8px;background:#17394b;border-radius:10px;padding:12px;font-size:12px}.status-dot{height:8px;width:8px;background:var(--lime);border-radius:50%;flex-shrink:0}.sidebar-note{font-size:11px;line-height:1.5;color:#a9bec9;margin-top:3px}.sidebar-footer{margin-top:auto;color:#91aab7;font-size:11px;line-height:1.6}
main{padding:0;max-width:none;min-width:0}.app-header{min-height:74px;padding:14px 24px;border-bottom:1px solid var(--border);background:white;gap:16px}.app-header h1{font-size:20px;font-weight:500;letter-spacing:0;margin:0 0 4px}.app-header #save-state{font-size:12px;margin:0;color:var(--muted)}.header-actions{align-items:center;gap:8px}.expert-actions summary{font-size:12px;color:var(--muted)}.expert-actions[open]{position:relative}.expert-actions[open] .actions{position:absolute;right:0;top:35px;padding:12px;background:#fff;box-shadow:0 5px 18px #0b29381f;border:1px solid var(--border);border-radius:8px;z-index:10;min-width:240px}.page-content{padding:24px;max-width:1600px;margin:auto}.project-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:20px}.order-name{width:440px;min-width:0}.order-name input{font-size:16px;margin-top:4px}.workspace-label{color:var(--muted);font-size:11px;letter-spacing:1px}
button{border-radius:6px;border-color:#c8d5db;padding:10px 16px;font-weight:600;color:#152733}button:hover{background:#e8f6fc}button.primary:hover{background:#0086bf}button:disabled{cursor:not-allowed}input,select,textarea{border-color:#c8d5db;border-radius:6px;padding:10px 12px;color:#152733;margin-top:4px}input:focus,select:focus,textarea:focus,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}label{font-weight:400;color:#152733}input[type=checkbox]{display:inline-block;width:auto;accent-color:var(--accent);margin-right:8px}summary{color:#167798}.subtle{color:var(--muted)}
.steps{display:flex;padding:16px;margin:0 0 24px;gap:0;background:white;border:1px solid var(--border);border-radius:10px;flex-wrap:nowrap}.steps button{display:flex;align-items:center;gap:8px;text-align:left;flex:1;min-width:0;padding:0 8px;background:none;border:0;font-size:12px;color:#152733;position:relative}.steps button:not(:last-child):after{content:'';height:2px;background:var(--border);width:24px;margin-left:auto}.steps button small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:3px}.step-number{width:32px;height:32px;border-radius:50%;background:#eaf0f3;color:var(--muted);display:grid;place-items:center;flex-shrink:0}.steps button.active{color:var(--accent)}.steps .active .step-number{background:var(--accent);color:#fff}.steps .has-data:not(.active) .step-number{background:var(--lime);color:var(--navy)}
.card,.chat-conversation,.chat-inventory{border-radius:10px;box-shadow:0 5px 18px #0b293814;border-color:var(--border)}.card{padding:16px;margin-bottom:16px}h2{font-size:16px;font-weight:550;margin:0 0 16px}h3{font-size:14px}.grid{gap:16px}.fields{gap:12px}.number{color:var(--accent)}.tag{border-radius:6px;background:#e8f6fc;color:#206584}.success{background:#f1f8e5;border-color:#d7e9b6}.notice{font-size:13px}#workflow{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#eef7fb;box-shadow:none;padding:12px 16px}#workflow>.subtle{display:none}#workflow>p{margin:0;font-size:12px}#workflow>strong{font-size:13px}#workflow>button{margin-left:auto}th{background:#f8fafb;font-size:10px;border-bottom:1px solid var(--border);letter-spacing:0}td{font-size:12px;padding:12px 8px}table{border:1px solid var(--border)}.table-wrap{border-radius:6px}
.overview-layout{display:grid;grid-template-columns:minmax(0,1fr) 328px;gap:24px;align-items:start}.overview-main,.overview-rail{min-width:0}.overview-card .section-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid var(--border);padding-bottom:14px;margin-bottom:16px}.section-heading h2{margin:0 0 3px}.section-heading p{margin:0;font-size:11px;color:var(--muted)}.text-action{font-size:11px;padding:5px 8px;border:0;color:#1475a0}.summary-field small{font-size:12px;display:block;margin-bottom:5px;color:var(--muted)}.summary-field>div{border:1px solid #c8d5db;border-radius:6px;padding:10px 12px;min-height:40px;overflow-wrap:anywhere;font-size:13px}.summary-stack{display:grid;gap:12px;margin-bottom:16px}.overview-card .empty{font-size:13px;line-height:1.8;padding:32px 12px}.overview-card p{font-size:13px}.live-calculation{background:var(--navy);border-radius:10px;color:white;padding:16px}.live-calculation h2{padding-bottom:12px;border-bottom:1px solid #ffffff24}.cost-line{display:flex;justify-content:space-between;gap:16px;font-size:12px;margin:12px 0}.cost-line span{color:#a9bec9}.cost-line strong{font-weight:500;white-space:nowrap}.cost-line.total{border-top:1px solid #ffffff24;padding-top:16px;font-size:14px}.price-panel{padding:12px;background:var(--lime);color:var(--navy);border-radius:6px;display:flex;flex-direction:column;gap:6px;margin-top:16px}.price-panel small{font-size:11px}.price-panel strong{font-size:26px;font-weight:800}.live-calculation .subtle{color:#b8ccd6;font-size:11px}.page-footer{display:flex;justify-content:space-between;gap:12px;margin-top:24px}
.chat-layout{gap:24px;grid-template-columns:minmax(0,1fr) 328px}.chat-user{background:#e8f6fc}.chat-composer{background:#f8fafb}.chat-bubble{font-size:14px}.chat-inventory{padding:16px}.chat-drop{border-color:var(--accent);background:#eefafff2}.chat-welcome{background:white;border-radius:10px;border:1px solid var(--border);padding:56px 24px}.chat-tools #chat-progress{color:var(--muted)}.chat-typing i{background:var(--accent)}.chat-preview,.chat-thumb{border-radius:6px}.chat-history{height:52vh}.chat-composer details{font-size:12px}.skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:white;color:var(--navy);padding:12px}.skip-link:focus{top:12px}dialog{border:1px solid var(--border);border-radius:12px;max-width:min(620px,95vw);padding:24px}dialog::backdrop{background:#0c273877}
@media(min-width:1700px){.page-content{padding:32px}}
@media(max-width:1200px){body{grid-template-columns:200px minmax(0,1fr)}.overview-layout,.chat-layout{grid-template-columns:minmax(0,1fr) 280px;gap:16px}.steps button:not(:last-child):after{display:none}.header-actions{gap:6px}.app-header{align-items:center;flex-direction:row}.header-actions button{font-size:12px;padding:10px}.steps button{padding:0 3px}.step-number{width:26px;height:26px}.steps{padding:12px}.steps button small{font-size:10px}.page-content{padding:20px}.item-top{grid-template-columns:minmax(130px,1fr) 80px 100px}.grid{grid-template-columns:1fr}}
@media(max-width:1000px){.overview-layout,.chat-layout{grid-template-columns:1fr}.overview-rail{display:grid;grid-template-columns:1fr 1fr;gap:16px}.live-calculation{grid-column:1/-1}.app-header{flex-wrap:wrap}.steps{overflow-x:auto}.steps button{flex:none;min-width:130px}.chat-inventory{max-height:none}}
@media(max-width:700px){body{display:block}.app-sidebar{min-height:0;padding:12px;gap:12px;display:grid;grid-template-columns:1fr}.brand{height:auto;min-height:48px;flex-direction:row;gap:12px}.brand-wordmark{font-size:21px}.brand small{font-size:11px}.side-nav{flex-direction:row;overflow-x:auto;gap:6px}.side-nav h2{display:none}.side-nav button{flex-shrink:0;min-height:40px;font-size:12px;padding:8px 10px}.side-nav .wide{width:auto}.saved-orders{margin:0}.saved-orders[open] #orders{display:grid;max-height:140px}.sidebar-status,.sidebar-footer{display:none}.app-header{padding:16px}.app-header h1{font-size:18px}.page-content{padding:16px}.project-heading{margin-bottom:16px}.workspace-label{display:none}.order-name{max-width:none;width:100%}.header-actions{width:100%;flex-wrap:wrap}.steps{margin-bottom:16px}.overview-rail{display:block}.overview-layout{gap:0}.fields{grid-template-columns:1fr}.page-footer{flex-wrap:wrap}.page-footer .actions{width:100%}.card{padding:16px}.chat-layout{gap:16px}.chat-history{height:46dvh}.chat-welcome{padding:32px 16px}#workflow{display:block}#workflow>p{margin-top:8px}.item-top{grid-template-columns:1fr 80px}.summary-field>div{font-size:14px}}
@media(max-width:700px){.side-nav{flex-wrap:nowrap;min-width:0}.brand-image{width:96px;height:72px}.overview-main .fields{grid-template-columns:1fr}.saved-orders:not([open]){padding-bottom:0}}
@media print{.app-sidebar,.app-header,.page-content>.project-heading,.steps,#workflow,.page-footer,.skip-link{display:none!important}.page-content{padding:0;max-width:none}.tab{display:none!important}}
