:root{font-family:system-ui,-apple-system,Segoe UI,Tahoma,sans-serif;color:#17212b;background:#f3f5f3;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;background:#f3f5f3}button,input{font:inherit}.app-shell{max-width:1220px;margin:auto;padding:0 30px}.topbar{height:82px;display:flex;align-items:center;gap:14px;border-bottom:1px solid #dfe5df}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border:1px solid #d8b96c;border-radius:12px;background:#102d2a;color:#f2cc73;font-size:22px;font-weight:700;box-shadow:0 5px 15px #102d2a26}.topbar strong{display:block;font-size:16px;letter-spacing:-.02em}.topbar span{display:block;color:#7b8782;font-size:11px;margin-top:2px}.domain{margin-right:auto;padding:7px 11px;border:1px solid #dfe5df;border-radius:20px;background:#fff;color:#7d8883;font-family:ui-monospace,monospace;font-size:10px;direction:ltr}.hero{position:relative;overflow:hidden;margin-top:28px;padding:66px 52px 54px;border:1px solid #dfe6e0;border-radius:24px;background:#112e2b;color:#f3f5ed;box-shadow:0 16px 40px #152c271f}.hero:before{position:absolute;inset:0;background-image:linear-gradient(rgba(202,183,117,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(202,183,117,.09) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.9),transparent 85%);mask-image:linear-gradient(90deg,rgba(0,0,0,.9),transparent 85%);content:""}.hero>*{position:relative}.kicker{margin:0 0 12px;color:#b1873a;font-size:11px;font-weight:700;letter-spacing:.08em}.hero .kicker{color:#d7b666}.hero h1{margin:0;max-width:720px;font-size:clamp(34px,5vw,60px);line-height:1.3;letter-spacing:-.055em}.hero h1 em{font-style:normal;color:#a9d0b6}.hero>p:last-child{max-width:600px;margin:20px 0 0;color:#b7c7be;line-height:1.9;font-size:14px}.workspace,.results,.output{position:relative;margin:22px 0;padding:31px;border:1px solid #dfe5df;border-radius:20px;background:#fff;box-shadow:0 9px 28px #1f342c0b}.workspace:after{position:absolute;right:-1px;top:32px;width:3px;height:40px;border-radius:3px 0 0 3px;background:#c69b43;content:""}.step-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:25px}.step-head>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#eaf2ed;color:#517960;font-size:12px;font-weight:700}.step-head h2,.results h2,.output h2{margin:0;font-size:20px;letter-spacing:-.025em}.step-head p{margin:6px 0 0;color:#7e8984;font-size:12px}.step-head b{margin-right:auto;padding:7px 11px;border-radius:20px;font-size:10px;font-weight:600}.pending{background:#faf3e3;color:#a4772b}.done{background:#eaf4ed;color:#558166}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:205px;border:1px dashed #bfc9c0;border-radius:15px;background:linear-gradient(180deg,#fcfdfb,#f7faf7);text-align:center;cursor:pointer;transition:.2s}.dropzone:hover,.dropzone.attached{border-color:#b28a3d;background:#fdf9ef;transform:translateY(-1px)}.dropzone input{display:none}.upload-icon{width:48px;height:48px;display:grid;place-items:center;margin-bottom:12px;border:1px solid #e3cc8e;border-radius:14px;background:#fbf1d9;color:#a1782c;font-size:27px;box-shadow:0 7px 16px #ac84381a}.dropzone strong{font-size:14px}.dropzone small{margin-top:7px;color:#8a918d;font-size:11px}.auto-strip{display:flex;align-items:center;gap:10px;margin-top:15px;padding:13px 15px;border:1px solid #e1eee4;border-radius:11px;background:#f3f9f4;color:#5f7e68;font-size:12px}.auto-strip span{color:#b08539}.auto-strip small{color:#839089}.remove-file{display:block;margin:12px auto 0;border:0;background:transparent;color:#a65e4f;font-size:11px;cursor:pointer}.error-note,.warning{margin-top:12px;padding:11px 13px;border-radius:9px;background:#fff4f0;color:#a65e4f;font-size:11px}.warning{background:#fff8e8;color:#96712e}.extracted{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:16px}.extracted>div{padding:12px;border:1px solid #e6e8e3;border-radius:10px;background:#fbfcfa}.extracted small,.extracted b{display:block}.extracted small{color:#8a928d;font-size:9px}.extracted b{margin-top:6px;color:#34463b;font-size:12px}.choice-groups{display:grid;grid-template-columns:repeat(4,1fr);gap:24px 16px}fieldset{padding:0;border:0}legend{margin-bottom:9px;color:#66736b;font-size:11px;font-weight:700}.choices{display:flex;flex-wrap:wrap;gap:7px}.choice{border:1px solid #dfe4df;border-radius:9px;padding:8px 11px;background:#fff;color:#78807b;font-size:11px;cursor:pointer;transition:.18s}.choice:hover{border-color:#b89a61;box-shadow:0 3px 9px #b28a3d1a}.choice.active{border-color:#c3984d;background:#fbf6e8;color:#7b5c24;box-shadow:0 3px 10px #b28a3d1f}.choice span{margin-left:4px;color:#5d896b}.orientation{display:flex;align-items:center;gap:11px;margin-top:25px;padding:14px 16px;border:1px solid #e4eee5;border-radius:12px;background:#f5f9f5}.orientation>span{font-size:23px;color:#b0802c}.orientation b{display:block;font-size:11px;color:#435248}.orientation small{display:block;margin-top:3px;color:#8a948d;font-size:10px}.orientation strong{margin-right:auto;color:#5c8668;font-size:10px}.results{overflow:hidden;border-color:#183a34;background:#183a34;color:#f4f1e8;box-shadow:0 13px 32px #10342b2e}.results:before{position:absolute;left:-100px;bottom:-140px;width:330px;height:330px;border:1px solid rgba(209,183,111,.16);border-radius:50%;box-shadow:0 0 0 25px #d1b76f0a,0 0 0 50px #d1b76f08;content:""}.results .kicker{color:#dbb869}.results-title{position:relative;display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:23px}.results-title h2{color:#fff}.live-dot{color:#9cccaa;font-size:10px}.metrics{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.metric{padding:17px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#ffffff0d}.metric small{display:block;color:#9faea7;font-size:10px}.metric strong{display:block;margin:10px 0 6px;color:#eac870;font-size:20px}.metric span{color:#88b394;font-size:9px}.quantity-table{position:relative;margin-top:20px;border-top:1px solid rgba(255,255,255,.11)}.quantity-row{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:10px;padding:12px 2px;border-bottom:1px solid rgba(255,255,255,.08);font-size:11px}.quantity-row span{color:#dfe7e0}.quantity-row b{color:#a9c6ae;font-weight:500}.quantity-row strong{color:#dfbd68;text-align:left;font-weight:600}.design-row{position:relative;display:grid;grid-template-columns:1fr 330px;gap:26px;margin-top:29px;padding-top:25px;border-top:1px solid rgba(255,255,255,.1)}.design-copy h3{margin:0;font-size:22px}.design-copy>p:not(.kicker){margin:5px 0 15px;color:#a9b4ae;font-size:11px}.design-list{display:flex;gap:9px}.design-card{position:relative;display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:6px;padding:11px;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:#ffffff0a;color:#fff;text-align:right;cursor:pointer}.design-card.selected{border-color:#ca9e50;background:#ca9e501c}.design-card b{font-size:11px}.design-card small{min-height:30px;color:#a6b0aa;font-size:9px;line-height:1.5}.design-card em{color:#d4b15f;font-size:9px;font-style:normal}.plan{display:grid;grid-template-columns:repeat(2,18px);grid-template-rows:repeat(2,14px);gap:2px;padding:5px;border-radius:6px;background:#e7d4a8}.plan i{display:block;background:#86714b;border-radius:1px}.plan.green{background:#adcab6}.plan.green i{background:#527561}.plan.blue{background:#b8c9d1}.plan.blue i{background:#536f7c}.plan-preview{padding:16px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:#ffffff09}.plan-preview>span{display:block;margin-bottom:12px;color:#a9b3ad;font-size:10px}.plan-drawing{position:relative;min-height:180px;padding:13px;display:grid;grid-template-columns:1fr 1.25fr;grid-template-rows:1fr 1fr;gap:4px;border:1px solid #b28d4e;background:#e7dfc7}.room{display:grid;place-items:center;background:#d3c29c;color:#56655d;font-size:10px}.r2{background:#b7ccba}.r3{background:#d9c8a0}.r4{background:#bdcfca}.courtyard{position:absolute;left:35%;top:38%;display:grid;place-items:center;width:30%;height:25%;border:1px dashed #9a7940;color:#7c6334;background:#f2ead5;font-size:9px}.plan-preview small{display:block;margin-top:10px;color:#9ba8a1;font-size:9px}.empty-state{margin:0 0 22px;padding:50px 25px;border:1px dashed #d2d5d0;border-radius:18px;background:#fff;text-align:center}.empty-state>span{display:grid;place-items:center;width:31px;height:31px;margin:0 auto 12px;border-radius:9px;background:#f6f0e3;color:#a4772b;font-size:11px;font-weight:700}.empty-state h2{margin:0;font-size:18px}.empty-state p{margin:8px 0 0;color:#8a928d;font-size:12px}.output{display:flex;align-items:center;justify-content:space-between;border-color:#e0d3b1;background:linear-gradient(100deg,#fff,#fffaf0)}.output h2{font-size:21px}.output p:last-child{margin:6px 0 0;color:#808984;font-size:11px}.primary{padding:13px 18px;border:0;border-radius:9px;background:#b88936;color:#fff;font-size:12px;cursor:pointer;box-shadow:0 7px 14px #a77a2529}.primary:disabled{opacity:.45;cursor:not-allowed}.primary span{margin-right:12px}.app-shell footer{display:flex;justify-content:space-between;padding:22px 3px 30px;color:#929994;font-size:10px}@media (max-width: 800px){.choice-groups{grid-template-columns:repeat(2,1fr)}.design-row{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}}@media (max-width: 520px){.app-shell{padding:0 15px}.topbar{height:68px}.domain{display:none}.hero{margin-top:15px;padding:44px 24px 38px}.workspace,.results,.output{padding:20px}.choice-groups{grid-template-columns:1fr 1fr;gap:18px 9px}.extracted{grid-template-columns:repeat(2,1fr)}.design-list{flex-direction:column}.design-card{min-height:83px}.output{align-items:flex-start;flex-direction:column;gap:18px}.app-shell footer{gap:10px;flex-direction:column}.quantity-row{grid-template-columns:1.3fr 1fr 1fr;font-size:10px}}.manual-panel{border-color:#e3c984;background:linear-gradient(180deg,#fffdf8,#fff)}.manual-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.manual-field{display:grid;gap:6px;color:#65736c;font-size:11px}.manual-field span{font-weight:700}.manual-field input{width:100%;min-height:42px;padding:8px 10px;border:1px solid #dbe3dc;border-radius:10px;outline:none;background:#fbfdfb;color:#17212b;direction:rtl}.manual-field input:focus{border-color:#c69b43;box-shadow:0 0 0 3px #c69b431f}.manual-actions{display:flex;align-items:center;gap:14px;margin-top:18px}.primary-action{border:0;border-radius:10px;padding:12px 17px;background:#b78a35;color:#fff;font-weight:700;cursor:pointer}.manual-actions small{color:#7e8984;font-size:11px;line-height:1.7}@media (max-width: 760px){.manual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.manual-actions{align-items:stretch;flex-direction:column}}.export-note{display:block;max-width:430px;margin-top:10px;color:#987437;font-size:11px;line-height:1.7}.survey-card{position:relative;margin:22px 0;padding:31px;border:1px solid #d8e3da;border-radius:20px;background:#f9fcf9;box-shadow:0 9px 28px #1f342c0a}.survey-summary{display:grid;grid-template-columns:minmax(240px,.9fr) minmax(0,1.4fr);gap:18px}.survey-plot{min-height:238px;display:grid;place-items:center;border:1px dashed #b9c9bd;border-radius:15px;background-color:#f3f8f3;background-image:linear-gradient(rgba(81,121,96,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(81,121,96,.09) 1px,transparent 1px);background-size:24px 24px}.plot-placeholder{display:grid;gap:7px;max-width:220px;padding:20px;border:1px solid #c8d7cb;border-radius:12px;background:#ffffffe0;text-align:center}.plot-placeholder span{color:#718078;font-size:11px}.plot-placeholder strong{color:#a4772b;font-size:16px}.plot-placeholder small{color:#87948b;font-size:11px;line-height:1.7}.survey-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;align-content:start}.survey-facts>div{display:grid;gap:7px;padding:13px;border:1px solid #e0e9e1;border-radius:11px;background:#fff}.survey-facts small{color:#829087;font-size:10px}.survey-facts b{color:#203a31;font-size:14px}.survey-gate{display:grid;gap:6px;margin-top:16px;padding:13px 15px;border-right:3px solid #c69b43;border-radius:9px;background:#fff8e8;color:#8f6d2d;font-size:12px;line-height:1.8}.survey-gate strong{color:#765922}@media (max-width: 760px){.survey-summary{grid-template-columns:1fr}.survey-facts{grid-template-columns:1fr 1fr}}
