:root{--ink: #16201d;--muted: #68736f;--line: #dce5df;--panel: #ffffff;--surface: #f5f7f2;--teal: #0d8b7c;--teal-soft: #d8f0eb;--amber: #b7791f;--amber-soft: #f8e7c1;--coral: #c85b4b;--coral-soft: #f7dfd8;--green: #4f7f3b;--shadow: 0 16px 42px rgba(40, 55, 47, .12)}html{scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0;min-width:320px;color:var(--ink);background:linear-gradient(135deg,rgba(13,139,124,.08),transparent 28%),linear-gradient(225deg,rgba(200,91,75,.1),transparent 30%),var(--surface);font-family:Inter,Microsoft YaHei,PingFang SC,system-ui,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fbfcf9;outline:none;transition:border-color .18s ease,box-shadow .18s ease}input,select{height:42px;padding:0 12px}textarea{min-height:86px;resize:vertical;padding:12px}input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #0d8b7c21}label{display:grid;gap:7px;color:#34433e;font-size:13px;font-weight:700}.login-shell,.role-shell{min-height:100vh;display:grid;align-items:center;gap:34px;padding:48px}.login-shell{grid-template-columns:minmax(0,1.05fr) minmax(360px,460px)}.role-shell{align-content:center}.brand-mark{display:inline-flex;align-items:center;gap:10px;width:fit-content;height:38px;padding:0 14px;border-radius:999px;background:#fff;color:var(--teal);font-weight:800;box-shadow:0 8px 24px #28372f14}.login-copy h1,.role-heading h1{max-width:780px;margin:28px 0 18px;font-size:clamp(38px,6vw,72px);line-height:1.02;letter-spacing:0}.login-copy p,.role-heading p{max-width:650px;margin:0;color:#52615c;font-size:19px;line-height:1.72}.hero-subtitle{margin-top:0;color:#2a3833;font-size:22px;font-weight:900;line-height:1.45}.hero-desc{margin-top:14px}.login-proof{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.marketing-page{display:grid}.marketing-hero{padding-bottom:56px}.marketing-band{padding:0 48px 28px}.marketing-band.muted{background:#ffffff70}.marketing-band.dark-band{margin-top:8px;padding-top:28px;padding-bottom:28px;color:#fff;background:#17211d}.marketing-inner{width:min(1240px,100%);margin:0 auto}.marketing-head{max-width:760px;margin-bottom:22px}.marketing-head span{min-height:30px;display:inline-flex;align-items:center;border-radius:999px;padding:0 12px;background:#fff;color:var(--green);font-size:13px;font-weight:900;box-shadow:0 8px 18px #28372f12}.marketing-head h2{margin:14px 0 0;font-size:clamp(30px,4vw,46px);line-height:1.12;letter-spacing:0}.hero-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.login-proof span{padding:9px 13px;border:1px solid #ccd9d3;border-radius:999px;background:#ffffffad;font-weight:700}.login-panel,.panel{border:1px solid rgba(216,226,220,.86);border-radius:8px;background:#ffffffeb;box-shadow:var(--shadow)}.login-panel{display:grid;gap:20px;padding:28px}.panel-heading,.panel-title{display:flex;align-items:flex-start;gap:13px}.panel-heading h2,.panel-title h2{margin:0;font-size:20px;letter-spacing:0}.panel-heading p,.panel-title p{margin:5px 0 0;color:var(--muted);line-height:1.5}.code-row{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:10px}.primary-button,.secondary-button,.ghost-button,.mini-button,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:0;border-radius:8px;font-weight:800;letter-spacing:0}.primary-button{padding:0 18px;color:#fff;background:var(--ink);text-decoration:none}.secondary-button{padding:0 18px;color:var(--ink);background:#e8efe9;text-decoration:none}.ghost-button{color:var(--teal);background:var(--teal-soft)}.mini-button{min-height:34px;padding:0 11px;color:var(--ink);background:#edf2ec;font-size:13px}.mini-button.confirm{background:var(--teal-soft);color:#087365}.icon-button{width:42px;min-width:42px;color:var(--ink);background:#eef3ee}.full{width:100%}.notice,.center-notice,.workspace-notice{border:1px solid rgba(13,139,124,.2);border-radius:8px;background:#d8f0ebb8;color:#0b5f55;padding:12px 14px;font-weight:700}.center-notice{max-width:520px;margin:0 auto}.role-heading{text-align:center}.role-heading .brand-mark,.role-heading p{margin:0 auto}.role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;width:min(1100px,100%);margin:0 auto}.role-card{min-height:292px;display:grid;align-content:start;gap:16px;border:1px solid var(--line);border-radius:8px;padding:26px;text-align:left;color:var(--ink);background:#fff;box-shadow:var(--shadow)}.role-card.teal{border-top:7px solid var(--teal)}.role-card.amber{border-top:7px solid var(--amber)}.role-card.coral{border-top:7px solid var(--coral)}.role-card h2{margin:0;font-size:26px}.role-card p{margin:0;color:var(--muted);line-height:1.65}.role-card span{align-self:end;display:inline-flex;align-items:center;gap:7px;font-weight:900}.problem-grid,.step-grid,.pricing-grid,.footer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.problem-card,.step-card,.case-card,.pricing-card,.footer-card{border:1px solid rgba(216,226,220,.86);border-radius:8px;background:#ffffffe6;box-shadow:var(--shadow)}.problem-card,.step-card,.pricing-card,.footer-card{display:grid;gap:14px;padding:22px}.problem-card.company{border-top:6px solid var(--teal)}.problem-card.contractor{border-top:6px solid var(--amber)}.problem-card.homeowner{border-top:6px solid var(--coral)}.problem-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:8px;color:var(--ink);background:#eef3ee}.problem-card h3,.step-card h3,.case-card h3,.pricing-card h3,.footer-card h3{margin:0}.problem-card h3,.step-card h3{font-size:24px}.problem-card .plain-list li,.pricing-card .plain-list li,.footer-card .plain-list li{line-height:1.72}.pricing-card .plain-list li span,.pricing-card .plain-list li small{display:block}.pricing-item-detail{margin-top:6px;color:#68736f;font-size:13px;line-height:1.6;font-weight:700}.step-card{align-content:start;min-height:220px}.step-no{min-width:54px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;color:#fff;background:var(--ink);font-size:13px;font-weight:900}.step-card p{margin:0;color:#4b5a55;line-height:1.72}.output-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.output-item{min-height:70px;display:flex;align-items:flex-start;gap:10px;border:1px solid rgba(216,226,220,.86);border-radius:8px;padding:16px 18px;background:#ffffffe0;box-shadow:var(--shadow);color:#31413b;font-weight:800;line-height:1.6}.case-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.case-card{overflow:hidden}.case-visual{min-height:184px;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;padding:18px;color:#fff}.case-visual span{font-size:12px;font-weight:900;opacity:.88}.case-visual strong{font-size:26px;line-height:1.12}.case-visual.teal{background:linear-gradient(135deg,#0d8b7c,#5fc1b5)}.case-visual.amber{background:linear-gradient(135deg,#b7791f,#e3b154)}.case-visual.coral{background:linear-gradient(135deg,#c85b4b,#eb998d)}.case-visual.green{background:linear-gradient(135deg,#4f7f3b,#8ab467)}.case-visual.ink{background:linear-gradient(135deg,#16201d,#556862)}.case-card>div:last-child{display:grid;gap:10px;padding:18px}.case-card p{margin:0;color:#4b5a55;line-height:1.7}.pricing-card.coral{border-top:6px solid var(--coral)}.pricing-card.amber{border-top:6px solid var(--amber)}.pricing-card.teal{border-top:6px solid var(--teal)}.pricing-top{display:grid;gap:6px}.pricing-top p{margin:0;color:var(--muted);line-height:1.55}.pricing-note{margin-top:auto;border-top:1px solid rgba(216,226,220,.86);padding-top:14px;color:#53625d;line-height:1.72;font-size:14px;font-weight:700}.addon-block{margin-top:18px;display:grid;gap:14px;border:1px solid rgba(216,226,220,.86);border-radius:8px;padding:22px;background:#ffffffe6;box-shadow:var(--shadow)}.addon-block h3,.addon-block p{margin:0}.addon-block p{color:#556560;line-height:1.65}.purchase-actions{margin-top:4px}.action-band{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center}.action-band span{color:#ffffffb8;font-size:13px;font-weight:900}.action-band h2{margin:10px 0 0;font-size:clamp(30px,4vw,44px);line-height:1.12}.action-band p{max-width:560px;margin:14px 0 0;color:#ffffffc7;line-height:1.72}.dark-band .primary-button{color:var(--ink);background:#fff}.dark-band .secondary-button{color:#fff;background:#ffffff24}.footer-band{padding-bottom:52px}.site-record{margin-top:20px;display:flex;justify-content:center;align-items:center;gap:14px;color:#65726d;font-size:13px;font-weight:800}.site-record a{color:#3f5f57;text-decoration:none}.site-record a:hover{text-decoration:underline}.footer-card h3{font-size:20px}.footer-card p{margin:0;color:#42514b;line-height:1.72}.flow-row{display:flex;flex-wrap:wrap;gap:10px}.flow-row span{min-height:32px;display:inline-flex;align-items:center;border-radius:999px;padding:0 12px;background:#eef3ee;color:#3d4d47;font-size:13px;font-weight:900}.footer-card.disclaimer{border-color:#17211d;color:#fff;background:#17211d}.footer-card.disclaimer p{color:#ffffffc2}.loading-screen{min-height:100vh;display:grid;place-items:center;align-content:center;gap:12px;color:var(--muted);font-weight:800}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{min-height:100vh}.top-bar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto;align-items:center;gap:16px;padding:14px 24px;border-bottom:1px solid rgba(213,223,218,.82);background:#f7f9f5f0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.top-brand{display:flex;align-items:center;gap:12px}.logo-tile{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;color:#fff;background:var(--ink)}.top-brand strong,.top-brand span{display:block}.top-brand strong{font-size:16px}.top-brand span{margin-top:2px;color:var(--muted);font-size:13px}.role-tabs{display:inline-flex;gap:6px;padding:5px;border:1px solid var(--line);border-radius:8px;background:#fff}.role-tabs button,.pay-toggle button{min-height:34px;display:inline-flex;align-items:center;gap:6px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-weight:800;padding:0 11px}.role-tabs button.active,.pay-toggle button.active{color:var(--ink);background:#e7eee8}.current-role-chip{height:40px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:0 13px;background:#fff;font-weight:900;white-space:nowrap}.current-role-chip.teal{color:#087365;background:var(--teal-soft)}.current-role-chip.amber{color:#75520d;background:var(--amber-soft)}.current-role-chip.coral{color:#9c3d32;background:var(--coral-soft)}.account-chip{height:40px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:8px;padding:0 12px;background:#fff;font-weight:900}.admin-chip{height:40px;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(13,139,124,.24);border-radius:8px;padding:0 13px;color:#087365;background:var(--teal-soft);font-weight:900;white-space:nowrap}.workspace{max-width:1680px;margin:0 auto;padding:24px}.hero-band{display:grid;grid-template-columns:minmax(280px,1.25fr) minmax(420px,.95fr);gap:28px;align-items:stretch;min-height:208px;border-radius:8px;padding:28px;box-shadow:var(--shadow)}.hero-band.teal{background:linear-gradient(135deg,var(--teal-soft),#ffffff 64%)}.hero-band.amber{background:linear-gradient(135deg,var(--amber-soft),#ffffff 64%)}.hero-band.coral{background:linear-gradient(135deg,var(--coral-soft),#ffffff 64%)}.hero-main span{color:var(--green);font-weight:900}.hero-main h1{margin:10px 0 12px;font-size:40px;letter-spacing:0}.hero-main p{max-width:760px;margin:0;color:#465650;font-size:17px;line-height:1.72}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.metric{min-height:84px;display:grid;align-content:center;gap:5px;border:1px solid rgba(218,226,220,.88);border-radius:8px;padding:14px;background:#ffffffb3}.metric span{color:var(--muted);font-size:13px;font-weight:700}.metric strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:24px}.workspace-notice{margin-top:16px}.work-grid{display:grid;grid-template-columns:minmax(320px,380px) minmax(340px,420px) minmax(0,1fr);gap:18px;align-items:start;margin-top:18px}.left-column,.middle-column{display:grid;gap:18px}.panel{padding:20px}.project-form{display:grid;gap:14px;margin-top:18px}.field-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.layout-notes-field{display:grid;gap:7px}.layout-notes-field textarea{min-height:92px}.file-drop{min-height:72px;display:flex;align-items:center;gap:10px;border:1px dashed #b9c8bf;border-radius:8px;padding:14px;background:#f7faf5;cursor:pointer}.file-drop input,.proof-upload input{display:none}.generation-progress{display:grid;gap:9px;border:1px solid rgba(13,139,124,.18);border-radius:8px;padding:12px;background:#e2f3ed94}.generation-progress>div:first-child{display:inline-flex;align-items:center;gap:8px;color:#087365;font-weight:900}.generation-progress p{margin:0;color:#52615c;font-size:13px;line-height:1.45}.generation-bar{overflow:hidden;height:8px;border-radius:999px;background:#d8e7e1}.generation-bar span{display:block;height:100%;border-radius:inherit;background:var(--teal);transition:width .35s ease}.project-list{display:grid;gap:12px;margin-top:18px;max-height:650px;overflow:auto;padding-right:2px}.project-item{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;padding:14px;background:#fbfcf9}.project-item.selected{border-color:var(--teal);box-shadow:0 0 0 3px #0d8b7c1f}.project-topline,.project-meta,.stage-row,.result-header,.order-box>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.project-topline strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-item p{margin:0;color:var(--muted);line-height:1.45}.project-meta{justify-content:flex-start;flex-wrap:wrap}.project-meta span,.status{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;padding:0 9px;background:#edf2ec;color:#4f615a;font-size:12px;font-weight:800}.status.completed{background:var(--teal-soft);color:#087365}.status.generating{background:var(--amber-soft);color:#75520d}.stage-row select{max-width:190px;height:34px;font-size:13px}.result-panel{min-height:760px}.empty-result{display:grid;place-items:center;align-content:center;min-height:420px;text-align:center}.empty-result h2{margin:12px 0 8px}.empty-result p{max-width:380px;margin:0;color:var(--muted);line-height:1.6}.result-header{align-items:flex-start;padding-bottom:18px;border-bottom:1px solid var(--line)}.result-header span{color:var(--green);font-weight:900}.result-header h2{margin:8px 0;font-size:26px}.result-header p{margin:0;color:var(--muted);line-height:1.65}.result-badge{min-width:104px;height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;background:var(--teal-soft);color:#087365;font-weight:900}.result-actions{display:flex;align-items:center;gap:10px;margin-top:14px}.result-actions span{color:#52615c;font-size:13px;font-weight:800}.quality-alert{display:flex;gap:10px;margin-top:16px;border:1px solid rgba(183,121,31,.24);border-radius:8px;padding:12px 14px;background:#f8e7c170;color:#66572f}.quality-alert p{margin:0;line-height:1.55}.quality-issues{margin:8px 0 0;padding-left:18px;line-height:1.55}.quality-alert.generated{border-color:#0d8b7c38;background:#e2f3eda3;color:#2f695d}.floorplan-layout{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);gap:14px;margin-top:18px}.floorplan-preview img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:contain;border-radius:8px;background:#f5f7f2}.image-zoom-trigger,.space-image-button{position:relative;display:block;width:100%;border:0;padding:0;background:transparent;cursor:zoom-in;text-align:left}.image-zoom-trigger>span,.space-image-button>span{position:absolute;right:10px;bottom:10px;min-height:28px;display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:0 10px;background:#102d28d1;color:#fff;font-size:12px;font-weight:900}.floorplan-preview p{margin:12px 0 0;color:#40504a;line-height:1.65}.asset-placeholder{min-height:120px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px dashed #b9c8bf;border-radius:8px;background:#f7faf5;color:var(--muted);font-weight:700}.section-stack{display:grid;gap:14px}.micro-heading{display:inline-block;margin-bottom:8px;color:var(--green);font-size:13px;font-weight:900}.ai-note{display:flex;gap:12px;margin-top:16px;border:1px solid rgba(183,121,31,.2);border-radius:8px;padding:14px;background:#f8e7c16b}.ai-note p{margin:0;color:#55452c;line-height:1.7}.section-block{margin-top:18px;border:1px solid var(--line);border-radius:8px;padding:16px;background:#fbfcf9}.section-block h3{margin:0 0 12px;font-size:17px}.check-list,.plain-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.check-list li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;color:#33423d;line-height:1.55}.plain-list li{color:#33423d;line-height:1.58}.plain-note{margin:0;color:#33423d;line-height:1.62}.space-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.space-card{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.space-card img{display:block;width:100%;aspect-ratio:16 / 10;object-fit:cover;background:#eef3ee}.space-image-placeholder{min-height:220px;display:grid;place-items:center;align-content:center;gap:8px;padding:18px;background:#f4f7f2;color:#52615c;text-align:center}.space-image-placeholder strong{color:#31413b;font-size:16px}.space-image-placeholder span{max-width:360px;color:#6b7974;font-size:13px;line-height:1.45}.space-issues{width:min(360px,100%);margin:2px 0 0;padding-left:18px;color:#8e4637;font-size:12px;line-height:1.45;text-align:left}.space-card-body{padding:14px}.space-card-topline{display:flex;align-items:center;justify-content:space-between;gap:10px}.space-card h3,.space-card p{margin:0}.space-card h3{font-size:18px}.space-card p{margin-top:7px;color:#40504a;line-height:1.55}.space-meta-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.space-meta-row span{min-height:24px;display:inline-flex;align-items:center;border-radius:999px;padding:0 8px;background:#f0f4ef;color:#4f625b;font-size:12px;font-weight:800}.space-source{min-height:26px;display:inline-flex;align-items:center;border-radius:999px;padding:0 9px;background:#eef2ee;color:#55625d;font-size:12px;font-weight:800;white-space:nowrap}.space-source.live{background:var(--teal-soft);color:#087365}.space-source.pending{background:#edf1ec;color:#52615c}.space-source.paused{background:#f4f1e8;color:#66572f}.space-source.failed{background:#fde9e5;color:#a33d2d}.constraint-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.constraint-row span{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;padding:0 8px;background:#edf5f1;color:#2f695d;font-size:12px;font-weight:800;line-height:1.2}.space-card dl{display:grid;grid-template-columns:42px minmax(0,1fr);gap:7px 8px;margin:12px 0}.space-card dt{color:var(--green);font-weight:900}.space-card dd{margin:0;color:var(--muted);line-height:1.5}.space-warning{display:block;border-radius:8px;padding:9px;background:#f4f1e8;color:#66572f;font-size:13px;line-height:1.45}.image-lightbox{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px}.image-lightbox-backdrop{position:absolute;inset:0;border:0;background:#091210c2;cursor:zoom-out}.image-lightbox-panel{position:relative;z-index:1;width:min(1120px,96vw);max-height:92vh;display:grid;grid-template-rows:auto minmax(0,1fr);border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 24px 70px #00000057}.image-lightbox-head{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 14px 0 18px;border-bottom:1px solid var(--line)}.image-lightbox-head button{width:34px;height:34px;border:0;border-radius:999px;background:#edf2ee;color:var(--ink);cursor:pointer}.image-lightbox-panel img{width:100%;max-height:calc(92vh - 48px);object-fit:contain;background:#f6f7f4}.result-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.budget-range{display:block;margin-bottom:10px;font-size:28px}.deliverable-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.deliverable-row span{min-height:30px;display:inline-flex;align-items:center;border-radius:999px;padding:0 11px;background:#eaf0ea;color:#40504a;font-size:13px;font-weight:800}.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-panel{display:grid;gap:16px}.plan-grid{display:grid;gap:10px}.plan{display:grid;gap:5px;border:1px solid var(--line);border-radius:8px;padding:12px;text-align:left;color:var(--ink);background:#fbfcf9}.plan.selected{border-color:var(--teal);background:var(--teal-soft)}.plan span{color:var(--muted);font-size:13px}.plan b{font-size:17px}.pay-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;border:1px solid var(--line);border-radius:8px;padding:5px;background:#fff}.pay-toggle button{justify-content:center;min-height:38px}.pay-toggle button.disabled{color:#9aa49f;background:#f3f5f2}.order-box{display:grid;gap:12px;border:1px solid var(--line);border-radius:8px;padding:13px;background:#fbfcf9}.order-box strong,.order-box span{display:block}.order-box span{margin-top:4px;color:var(--muted);font-size:13px}.qr-placeholder{min-height:132px;display:grid;place-items:center;gap:8px;border:1px dashed #b9c8bf;border-radius:8px;padding:12px;text-align:center;color:#607169;background:#fff}.qr-placeholder img{max-width:132px;max-height:132px;border-radius:8px}.qr-placeholder span{max-width:240px;margin:0;line-height:1.5}.collection-link-box{display:grid;gap:12px;border:1px solid #e5ece7;border-radius:8px;padding:13px;background:#fff}.collection-link-title{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:8px;color:#50627a;font-weight:900;line-height:1.45}.collection-link-title span{margin:0;color:#50627a;font-size:15px}.collection-items{overflow:hidden;border:1px solid #e8ece9;border-radius:8px;background:#f7f8f6}.collection-items div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;padding:0 12px}.collection-items div+div{border-top:1px solid #e0e5e1}.collection-items span{margin:0;color:var(--ink);font-size:14px;font-weight:800}.collection-items strong{font-size:17px;white-space:nowrap}.payment-link-button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;color:#fff;background:var(--ink);text-decoration:none;font-weight:900}.payment-link-copy{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;color:var(--ink);background:var(--teal-soft);font-weight:900}.payment-link-empty{min-height:88px;display:grid;place-items:center;gap:8px;border:1px dashed #b9c8bf;border-radius:8px;padding:12px;text-align:center;color:#607169;background:#fbfcf9}.payment-link-empty span{max-width:280px;margin:0;line-height:1.5}.proof-upload{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:8px;background:#e8efe9;font-weight:900;cursor:pointer}.payment-status-note{display:inline-flex;align-items:center;gap:8px;border-radius:8px;padding:10px 12px;color:#5d5633;background:#f5efdc;font-size:13px;font-weight:800;line-height:1.45}.admin-panel{margin-top:18px}.admin-counts{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.admin-counts span{min-height:32px;display:inline-flex;align-items:center;border-radius:999px;padding:0 12px;background:#edf2ec;color:#41524b;font-size:13px;font-weight:900}.admin-order-list{display:grid;gap:12px;margin-top:16px}.admin-order-card{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;padding:14px;background:#fbfcf9}.admin-order-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.admin-order-head strong{display:block}.admin-order-head span{display:block;margin-top:4px;color:var(--muted);font-size:13px}.status-tag{min-height:26px;display:inline-flex;align-items:center;border-radius:999px;padding:0 10px;background:#edf2ec;color:#4f615a;font-size:12px;font-weight:900;white-space:nowrap}.status-tag.pending_review{background:var(--amber-soft);color:#75520d}.status-tag.waiting_proof,.status-tag.manual_link_pending{background:#edf2ec;color:#566861}.status-tag.paid{background:var(--teal-soft);color:#087365}.status-tag.rejected{background:#f5ddd6;color:#973c32}.admin-order-card p{margin:0;color:#546560;line-height:1.5}.admin-order-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.mini-link-button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:0 12px;color:var(--ink);background:#e8efe9;text-decoration:none;font-size:13px;font-weight:900}.admin-waiting,.admin-empty{color:var(--muted);font-size:13px;font-weight:700}.floating-progress{display:inline-flex;align-items:center;gap:8px;width:100%;border-radius:8px;padding:12px 14px;background:var(--amber-soft);color:#75520d;font-weight:900}@media(max-width:1280px){.problem-grid,.step-grid,.pricing-grid,.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-grid{grid-template-columns:minmax(300px,380px) minmax(0,1fr)}.result-panel{grid-column:1 / -1}}@media(max-width:900px){.login-shell,.role-shell{padding:28px}.marketing-band{padding:0 28px 24px}.login-shell,.hero-band,.work-grid,.result-columns,.floorplan-layout,.role-grid,.space-grid,.problem-grid,.step-grid,.pricing-grid,.footer-grid,.output-grid,.action-band{grid-template-columns:1fr}.top-bar{grid-template-columns:1fr auto}.role-tabs{grid-column:1 / -1;width:100%;justify-content:space-between}.current-role-chip{grid-column:1 / -1;width:fit-content}.account-chip{grid-column:1;width:fit-content}.admin-chip{grid-column:1 / -1;width:fit-content}.workspace{padding:16px}.hero-main h1{font-size:32px}}@media(max-width:560px){.login-shell,.role-shell{padding:18px}.marketing-band{padding:0 18px 18px}.login-copy h1,.role-heading h1{font-size:34px}.login-copy p,.role-heading p{font-size:16px}.hero-subtitle{font-size:18px}.login-panel,.panel,.hero-band{padding:16px}.code-row,.field-pair,.metric-grid,.compact{grid-template-columns:1fr}.top-bar{padding:12px;gap:10px}.top-brand strong{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-tabs button{flex:1;padding:0 6px}.hero-cta-row{display:grid;grid-template-columns:1fr}.marketing-head h2,.action-band h2{font-size:28px}.problem-card,.step-card,.pricing-card,.footer-card,.addon-block{padding:18px}.site-record{flex-direction:column;gap:6px;text-align:center}.case-visual{min-height:144px}.case-visual strong{font-size:22px}}
