/* Interface-only update v0.25. The calculator engine and cloud API are unchanged. */
:root{--ux-green:#245640;--ux-soft:#e9f2e9;--ux-cream:#f7f8f4;--ux-line:#d9e5db;--ux-shadow:0 10px 34px rgba(29,65,41,.07)}
body.ux-ready{background:#f7f8f5}
.ux-ready .wrap{max-width:1060px;padding-top:22px}
.ux-ready .head{margin-bottom:15px}
.ux-ready .head .eyebrow{letter-spacing:.08em}
.ux-ready .head h1{font-size:24px;margin:5px 0}
.ux-ready .head p{font-size:13px}
.ux-ready .pill{font-size:11px}
.ux-shell{width:100%;min-width:0}
.ux-topbar{display:grid;grid-template-columns: minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #d6e4d6;background:white;border-radius:17px;padding:13px 15px;margin-bottom:14px;box-shadow:var(--ux-shadow)}
.ux-active-name{font-weight:800;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.ux-save-status{font-size:12px;color:#496b51;margin-top:3px;display:flex;align-items:center;gap:5px}
.ux-save-status.ux-pending{color:#a26825;font-weight:750}
.ux-topbar-right{display:flex;align-items:center;gap:12px}
.ux-pricebox{text-align:right;white-space:nowrap}
.ux-pricebox .ux-price-caption{font-size:11px;color:#65786a}
.ux-pricebox strong{font-size:18px;color:#1d583b;display:block;line-height:1.2;font-variant-numeric:tabular-nums}
.ux-pricebox .ux-profit{font-size:11px;color:#597162}
.ux-action{font:inherit;border:1px solid #255840;border-radius:11px;background:#255840;color:white;font-weight:750;padding:11px 13px;min-height:42px;cursor:pointer}
.ux-action:disabled{opacity:.6;cursor:wait}.ux-action.secondary{color:#255840;background:white;border-color:#b8d0bf}
.ux-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:0 0 16px}
.ux-nav-btn{font:inherit;font-size:13px;font-weight:750;border:1px solid #dae6db;background:#fff;color:#45614d;border-radius:11px;min-height:45px;cursor:pointer;padding:9px 5px}
.ux-nav-btn[aria-selected="true"]{background:#245840;color:white;border-color:#245840;box-shadow:0 3px 12px #315a352a}
.ux-nav-btn:focus-visible,.ux-step-next:focus-visible{outline:3px solid #9abcab;outline-offset:2px}
.ux-page{display:none}.ux-page.ux-active{display:block}
.ux-page h2{font-size:17px}
.ux-page-intro{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 3px 15px}
.ux-page-intro h2{font-size:21px;margin:0 0 3px;letter-spacing:-.2px}
.ux-page-intro p{color:#69786c;font-size:13px;margin:0}
.ux-page-intro .ux-smalltag{flex:0 0 auto;white-space:nowrap;border-radius:20px;padding:5px 10px;font-size:11px;background:#eaf3e9;border:1px solid #d9e5dc;color:#3e704d;font-weight:750}
.ux-ready .card{box-shadow:0 3px 16px #20482b09;border-radius:17px}
.ux-ready .orders-card{max-width:none}
.ux-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.68fr);gap:14px;align-items:start}
.ux-workspace .ux-main,.ux-workspace .ux-side{min-width:0}
.ux-ready .ux-document-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
.ux-document-grid>.card{min-width:0}
.ux-ready .ux-brief .grid2{margin-top:12px}
.ux-ready .ux-brief .field:last-child{margin-bottom:7px}
.ux-ready .ux-advanced{border:1px solid #d9e6da;border-radius:14px;background:white;overflow:hidden;margin-bottom:14px}
.ux-ready .ux-advanced>summary{padding:15px 16px;color:#365c44;font-size:15px;list-style:none;display:flex;align-items:center;justify-content:space-between}
.ux-ready .ux-advanced>summary::after{content:'＋';font-size:22px;font-weight:400;line-height:1}
.ux-ready .ux-advanced[open]>summary::after{content:'−'}
.ux-ready .ux-advanced>.card{margin:0;border-top:1px solid #edf1eb;border-bottom:0;border-left:0;border-right:0;border-radius:0;box-shadow:none}
.ux-ready .ux-advanced-description{font-size:12px;color:#687c6a;padding:0 16px 13px}
.ux-ready .ux-results-wrap{margin:0 0 15px}
.ux-ready .ux-results-wrap>.card{border-radius:15px}
.ux-ready .ux-results-wrap summary{padding:14px 16px;list-style:none;font-size:14px}
.ux-ready .ux-results-wrap summary::after{content:' ▾'}
.ux-ready .ux-results-wrap[open] summary::after{content:' ▴'}
.ux-ready .ux-results-wrap>.card{margin:0}
.ux-ready .ux-footer{display:flex;justify-content:space-between;gap:10px;margin:0 0 20px;align-items:center}
.ux-ready .ux-step-next{background:#245840;color:white;border:0;border-radius:12px;padding:13px 16px;min-height:48px;font-size:14px;font-weight:750;cursor:pointer}
.ux-ready .ux-footer .ux-tip{font-size:12px;color:#617667;max-width:65%}
.ux-note{background:#edf4e9;color:#406447;border:1px solid #dce9d6;padding:12px;border-radius:11px;margin-bottom:14px;font-size:13px}
.ux-alert{color:#963b2d;background:#fff0ec;border:1px solid #efd3c8;border-radius:12px;padding:10px 13px;margin-bottom:10px;font-size:12px}
.ux-money-banner{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:15px}
.ux-money-banner>div{padding:14px 13px;background:#fff;border:1px solid #dce7df;border-radius:14px;min-width:0}
.ux-money-banner small{display:block;color:#708170;font-size:11px;margin-bottom:5px}
.ux-money-banner strong{font-size:20px;line-height:1.2;color:#25553d;word-wrap:break-word;font-variant-numeric:tabular-nums}
.ux-ready .ux-bottomnav{display:none}
.ux-ready .ux-page .card h2{margin-bottom:14px}
.ux-ready .ux-page .card p.hint{line-height:1.5}
.ux-ready #appCloudSettings{margin-top:16px}
.ux-ready .ux-document-grid textarea{font-size:16px}
.ux-ready .ux-document-grid .button{width:100%;margin:8px 0}
.ux-ready .ux-document-grid .card{margin:0 0 14px}
.ux-ready #appFeedback{margin-bottom:11px}
.ux-ready .ux-profit-hidden{display:none!important}
@media(max-width:820px){
 .ux-workspace{grid-template-columns:1fr}
 .ux-document-grid{grid-template-columns:1fr!important}
 .ux-pricebox .ux-profit{display:none}
 .ux-money-banner{grid-template-columns:1fr 1fr}
 .ux-money-banner>div:last-child{grid-column:1/-1}
}
@media(max-width:780px){
 .ux-ready .wrap{padding:12px 11px calc(98px + env(safe-area-inset-bottom))}
 .ux-ready .head{padding:2px 3px 5px;margin-bottom:10px}
 .ux-ready .head h1{font-size:21px}
 .ux-ready .head p{font-size:12px}
 .ux-ready .pill{padding:5px 8px}
 .ux-topbar{position:sticky;top:0;z-index:10;border-radius:0 0 14px 14px;margin:0 -11px 12px;padding:9px 12px;box-shadow:0 5px 13px #234f3011}
 .ux-active-name{font-size:13px;max-width:100%}
 .ux-save-status{font-size:11px}
 .ux-topbar-right{gap:7px}
 .ux-pricebox strong{font-size:15px}
 .ux-pricebox .ux-price-caption{font-size:10px}
 .ux-topbar .ux-action{padding:8px 10px;font-size:12px;min-height:38px}
 .ux-nav{display:none}
 .ux-ready .ux-bottomnav{display:grid;position:fixed;bottom:0;left:0;right:0;z-index:100;grid-template-columns:repeat(5,minmax(0,1fr));background:#ffffffef;backdrop-filter:blur(16px);border-top:1px solid #d7e2d8;box-shadow:0 -4px 18px #182c1d19;padding:7px 5px calc(6px + env(safe-area-inset-bottom))}
 .ux-bottomnav .ux-nav-btn{min-height:51px;background:transparent;border:0;border-radius:9px;font-size:10.5px;padding:5px 1px;display:flex;flex-direction:column;justify-content:center;gap:2px;align-items:center;line-height:1.15}
 .ux-bottomnav .ux-nav-btn .ux-symbol{display:block;font-size:19px;line-height:21px}
 .ux-bottomnav .ux-nav-btn[aria-selected="true"]{background:#e8f3e8;color:#1e6841;border:0;box-shadow:none}
 .ux-ready .iphone-nav{display:none!important}
 .ux-page-intro{padding-bottom:11px;align-items:flex-start}
 .ux-page-intro h2{font-size:19px}
 .ux-page-intro .ux-smalltag{display:none}
 .ux-ready .card{padding:15px;border-radius:15px}
 .ux-ready .orders-card{padding:14px}
 .ux-money-banner strong{font-size:17px}
 .ux-ready .ux-footer{padding:0 3px}
 .ux-ready .ux-step-next{min-width:140px}
 .ux-ready .ux-footer .ux-tip{font-size:11px}
 .ux-ready .grid3{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ux-ready .ux-results-wrap{margin-bottom:10px}
}
@media(max-width:390px){.ux-topbar-right{gap:5px}.ux-ready .pill{display:none}.ux-money-banner>div{padding:11px}.ux-page-intro h2{font-size:18px}}
@media print{.ux-nav,.ux-bottomnav,.ux-topbar,.ux-footer,.ux-page-intro{display:none!important}.ux-page{display:block!important}}
/* v0.25: grouped materials and a compact customer brief next to current order. */
.ux-ready .orders-card .ux-brief{margin:13px 0 16px;background:#f6faf5;border:1px solid #dce7da;box-shadow:none;border-radius:12px;padding:14px}
.ux-ready .orders-card .ux-brief h2{font-size:15px;margin-bottom:5px}
.ux-ready .ux-materialgroup summary{font-size:16px;font-weight:750}
.ux-ready .ux-materialgroup[open] summary{border-bottom:1px solid #e5eee6}
.ux-ready .ux-materialgroup>.card{border-color:#e9efe8}
@media(min-width:781px){.ux-nav .ux-symbol{margin-right:7px}}
.ux-doc-actions{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:14px}
.ux-doc-actions .ux-action{min-height:52px;font-size:15px}
.ux-ready #uxQuote #offerPdf,.ux-ready #productionSection #workCardPdf{display:none}
.ux-ready #uxQuote .button+.hint,.ux-ready #productionSection .button+.hint{margin-top:8px}
@media(max-width:580px){
 .ux-doc-actions{grid-template-columns:1fr 1fr;gap:8px}
 .ux-doc-actions .ux-action{font-size:12px;line-height:1.25;padding:10px 6px;min-height:54px}
 .ux-ready #calculatorStart .grid2{grid-template-columns:1fr}
}
