:root{font-family:Arial,sans-serif;background:#f5f1e8;color:#16302b}body{margin:0}.skip-link{position:fixed;top:8px;left:8px;z-index:1000;padding:10px 14px;border-radius:8px;background:#16302b;color:white;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid #c56b24;outline-offset:3px}.loading-shell,main{max-width:720px;margin:auto;padding:18vh 24px}h1{font-size:clamp(2.5rem,8vw,5rem);overflow-wrap:anywhere}.button-link,button{min-height:44px;padding:12px 20px}button:disabled{cursor:not-allowed;opacity:.62}form{grid-gap:16px;gap:16px;max-width:420px;margin:24px 0}form,label{display:grid}label{grid-gap:6px;gap:6px;font-weight:600}input{border:1px solid #9aa9a5;border-radius:8px;padding:12px;font:inherit}.status-badge{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;padding:4px 9px;border:1px solid;border-radius:999px;font-size:.84rem;font-weight:700}.status-positive{color:#17623d;background:#e8f7ef}.status-warning{color:#784510;background:#fff4df}.status-negative{color:#8a1c1c;background:#fff0ee}.status-neutral{color:#304a44;background:#eef2f0}.beta-panel{padding:18px;border-radius:14px;background:white}select,textarea{border:1px solid #9aa9a5;border-radius:8px;padding:10px;font:inherit}.wide{max-width:1100px;padding-top:64px}.drop-zone{border:2px dashed #66837c;border-radius:12px;padding:32px;text-align:center;background:white}.drop-zone.dragging{border-color:#16302b;background:#e4eee9}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.upload-list{list-style:none;padding:0;display:grid;grid-gap:12px;gap:12px}.upload-list li{display:grid;grid-template-columns:120px 1fr;grid-gap:16px;gap:16px;padding:12px;background:white;border-radius:10px}.gallery img,.upload-list img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}.gallery small,.upload-list small{display:block;margin:6px 0}.actions{display:flex;gap:8px;margin-top:8px}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:20px;gap:20px}.gallery article{background:white;border-radius:12px;padding:12px}.gallery form{gap:10px;margin:12px 0}.preview-placeholder{aspect-ratio:4/3;display:grid;place-items:center;background:#dfe6e3;border-radius:8px}.danger{color:#8a1c1c}a{color:inherit}.conceptual-notice{border-left:4px solid #a5682a;background:#fff8eb;padding:14px 16px}.concept-grid,.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:20px;gap:20px;margin-top:24px}.card,.concept-card{background:white;border-radius:14px;padding:20px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;font-weight:700}.concept-stats,.detail-list{display:grid;grid-gap:10px;gap:10px}.concept-stats{grid-template-columns:repeat(3,1fr)}.concept-stats div,.detail-list div{display:grid;grid-gap:4px;gap:4px}.concept-stats dt,.detail-list dt{font-weight:700}.concept-stats dd,.detail-list dd{margin:0}.palette{display:flex;gap:8px;margin:18px 0}.palette span{width:44px;height:44px;border:1px solid #8b9692;border-radius:50%}.button-link{display:inline-flex;align-items:center;border:1px solid;padding:10px 16px;text-decoration:none}.comparison-scroll{overflow-x:auto}.comparison-table{border-collapse:collapse;min-width:850px;background:white}.comparison-table td,.comparison-table th{border:1px solid #ccd5d2;padding:12px;text-align:left;vertical-align:top}.estimate-notice{border-left:4px solid #a5682a;background:#fff8eb;padding:16px}.estimate-header,.estimate-notes section,.estimate-range,.estimate-totals,.line-group,.selected-concept-summary{background:white;border-radius:14px;padding:18px;margin:18px 0}.version-tabs{display:flex;flex-wrap:wrap;gap:8px}.version-tabs .active{color:white;background:#16302b}.estimate-header{display:flex;justify-content:space-between;gap:24px}.estimate-header small,.estimate-lines small{display:block;margin-top:5px}.estimate-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:16px;gap:16px}.estimate-range div,.estimate-totals div{display:grid;grid-gap:5px;gap:5px}.estimate-totals dd{margin:0;font-size:1.2rem;font-weight:700}.estimate-totals .grand-total{color:#8a4d16}.estimate-range{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;text-align:center}.estimate-range strong{font-size:1.3rem}.estimate-lines{width:100%;border-collapse:collapse}.estimate-lines td,.estimate-lines th{border-bottom:1px solid #dce3e1;padding:10px;text-align:left;vertical-align:top}.estimate-notes{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:18px;gap:18px}.catalog-page{max-width:1240px}.catalog-notice{border-left:4px solid #a5682a;background:#fff8eb;padding:16px}.catalog-context,.catalog-toolbar{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:16px;margin:20px 0;padding:18px;border-radius:14px;background:white}.catalog-context div{display:grid;grid-gap:5px;gap:5px}.catalog-toolbar label{min-width:190px}.product-group{margin:34px 0}.product-group>h2{text-transform:capitalize}.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(285px,1fr));grid-gap:20px;gap:20px}.product-card{display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:16px;background:white}.product-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;background:#e7ece9}.product-card h3,.product-card h4,.product-card p,.product-card ul{margin-top:0;margin-bottom:0}.product-price{font-size:1.4rem;font-weight:700;color:#8a4d16}.catalog-badges{display:flex;flex-wrap:wrap;gap:8px}.catalog-badges span{padding:5px 9px;border-radius:999px;background:#e4eee9;text-transform:capitalize;font-size:.82rem;font-weight:700}.product-attributes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin:6px 0}.product-attributes div{display:grid;grid-gap:3px;gap:3px}.product-attributes dt{font-size:.78rem;font-weight:700;text-transform:capitalize}.product-attributes dd{margin:0;overflow-wrap:anywhere}.compare-control{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:7px;font-weight:600}.compare-control input{width:18px;height:18px}.product-comparison th:first-child{min-width:150px}.product-comparison td{min-width:220px}.marketplace-page{max-width:1240px}.marketplace-notice{border-left:4px solid #a5682a;background:#fff8eb;padding:16px}.stripe-test-panel{display:grid;grid-gap:14px;gap:14px;padding:16px;border:2px solid #a5682a;border-radius:12px;background:#fffaf0}.stripe-test-warning{margin:0;color:#694217}.stripe-payment-form{margin:0;padding:16px;border:1px solid #d8c4a6}.marketplace-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:18px;gap:18px;margin:18px 0}.marketplace-card{display:grid;grid-gap:10px;gap:10px;margin:18px 0;padding:18px;border-radius:14px;background:white;overflow-wrap:anywhere}.marketplace-card>*{margin-top:0;margin-bottom:0}.marketplace-card pre{max-height:480px;overflow:auto;padding:14px;border-radius:10px;background:#eef2f0;white-space:pre-wrap}.marketplace-actions,.marketplace-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.marketplace-form{display:grid;grid-gap:14px;gap:14px;max-width:760px;margin:20px 0;padding:20px;border-radius:14px;background:white}.marketplace-form fieldset,.marketplace-form label{display:grid;grid-gap:7px;gap:7px}.marketplace-form input,.marketplace-form select,.marketplace-form textarea{padding:10px}.quote-comparison td{min-width:220px}.communication-page{max-width:1280px}.communication-layout{display:grid;grid-template-columns:minmax(240px,340px) minmax(0,1fr);grid-gap:24px;gap:24px;margin-top:24px}.conversation-list{display:flex;flex-direction:column;gap:8px}.conversation-list button{display:grid;grid-gap:5px;gap:5px;border:1px solid #c7d2ce;border-radius:10px;background:white;text-align:left}.conversation-list button.active{border-color:#16302b;background:#e4eee9}.unread-badge{width:-moz-fit-content;width:fit-content;padding:3px 8px;border-radius:999px;background:#16302b;color:white;font-size:.75rem}.communication-thread{min-width:0}.message-history{display:flex;flex-direction:column;gap:10px;max-height:560px;overflow-y:auto;padding:18px;border-radius:14px;background:white}.message-bubble{align-self:flex-start;max-width:min(75%,680px);padding:12px 14px;border-radius:12px;background:#eef2f0;white-space:pre-wrap;overflow-wrap:anywhere}.message-bubble p{margin:6px 0}.own-message{align-self:flex-end;background:#d8e8e1}.system-message{align-self:center;background:#fff8eb}.message-composer{max-width:none;padding:16px;border-radius:14px;background:white}.visit-time-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px}.counter-proposal{display:flex;flex-wrap:wrap;gap:8px;padding:12px;background:#eef2f0}.communication-page address{padding:10px;border-left:4px solid #16302b;background:#eef2f0}.execution-page progress{width:100%;min-height:14px}.execution-timeline{display:grid;grid-gap:0;gap:0;padding-left:18px;border-left:4px solid #9bb4aa}.execution-timeline .marketplace-card{position:relative}.execution-timeline .marketplace-card:before{position:absolute;top:24px;left:-28px;width:16px;height:16px;border:3px solid white;border-radius:50%;background:#16302b;content:""}.execution-blocker,.execution-warning{margin:18px 0;padding:16px;border:2px solid #a7442f;border-radius:12px;background:#fff1ed}@media (max-width:700px){.catalog-page,.communication-page,.loading-shell,.marketplace-page,.wide,main{width:auto;max-width:none;padding:32px 16px 64px}h1{font-size:clamp(2rem,11vw,3rem);line-height:1.05}.button-link,button,form,input,select,textarea{max-width:100%;box-sizing:border-box}.actions,.marketplace-actions,.marketplace-heading{align-items:stretch;flex-direction:column}.button-link{justify-content:center}.upload-list li{grid-template-columns:1fr}.concept-grid,.detail-grid,.marketplace-grid,.product-grid{grid-template-columns:minmax(0,1fr)}.comparison-scroll{margin-inline:-16px;padding-inline:16px}.estimate-range{grid-template-columns:1fr}.catalog-context,.catalog-toolbar{align-items:stretch;flex-direction:column}.communication-layout{grid-template-columns:1fr}}