/* Manrope is distributed under the SIL Open Font License 1.1. */
@font-face{font-family:"Manrope";font-style:normal;font-weight:400 800;font-display:swap;src:url("https://fonts.gstatic.com/s/manrope/v20/xn7gYHE41ni1AdIRggqxSuXd.woff2") format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Manrope";font-style:normal;font-weight:400 800;font-display:swap;src:url("https://fonts.gstatic.com/s/manrope/v20/xn7gYHE41ni1AdIRggOxSuXd.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Manrope";font-style:normal;font-weight:400 800;font-display:swap;src:url("https://fonts.gstatic.com/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root {
  --bg: #f3efe6;
  --ink: #1c1a17;
  --muted: #6d675c;
  --card: #fffdf8;
  --line: #ddd4c4;
  --accent: #0f6b5c;
  --accent-2: #c45c26;
}
* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: "Manrope", "Segoe UI Variable", "Segoe UI", Arial, sans-serif;
  color: var(--ink);
  background:
    radial-gradient(circle at 10% 0%, #efe2c8 0%, transparent 40%),
    linear-gradient(180deg, #f7f2e8, #ebe4d7);
  min-height: 100vh;
}
.top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 24px;
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(8px);
  position: sticky;
  top: 0;
  background: rgba(247, 242, 232, 0.9);
}
.brand { font-weight: 700; letter-spacing: 0.08em; text-decoration: none; color: var(--ink); }
nav a { margin-left: 14px; color: var(--muted); text-decoration: none; }
.wrap { max-width: 1100px; margin: 0 auto; padding: 28px 20px 64px; }
.hero { padding: 48px 0 24px; }
.eyebrow { text-transform: uppercase; letter-spacing: 0.14em; color: var(--muted); font-size: 12px; }
.hero h1 { font-size: clamp(2rem, 5vw, 3.4rem); line-height: 1.05; margin: 10px 0; }
.btn {
  display: inline-block;
  border: 0;
  background: var(--accent);
  color: #fff;
  padding: 12px 18px;
  border-radius: 999px;
  text-decoration: none;
  cursor: pointer;
}
.btn.secondary { background: transparent; color: var(--ink); border: 1px solid var(--line); }
.btn:disabled { opacity: 0.45; cursor: not-allowed; }
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 16px; }
.card {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 18px;
  margin-bottom: 16px;
}
.price { font-size: 1.4rem; color: var(--accent-2); }
.row { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; margin: 10px 0; }
.row.between { justify-content: space-between; }
input, select, textarea {
  width: 100%;
  padding: 11px 12px;
  border-radius: 12px;
  border: 1px solid var(--line);
  background: #fff;
  font: inherit;
}
label { display: block; margin: 10px 0; }
.hint { color: var(--muted); }
.hidden { display: none; }
.style-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; }
.style-card {
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 10px;
  cursor: pointer;
  background: #fff;
}
.style-card.selected { outline: 2px solid var(--accent); }
.style-card img { width: 100%; height: 110px; object-fit: cover; border-radius: 10px; background: #e8e0d2; }
.badge { display: inline-block; font-size: 12px; padding: 2px 8px; border-radius: 999px; background: #e8f3ef; color: var(--accent); }
.badge.soon { background: #f3e7dc; color: var(--accent-2); }
.demo-actions.is-disabled .btn { opacity: 0.45; cursor: not-allowed; }
.demo-hint { color: var(--muted); margin: 8px 0; }
.skip-link{position:absolute;left:16px;top:-48px;z-index:40;padding:10px 14px;border-radius:999px;background:var(--accent);color:#fff}
.skip-link:focus{top:16px}
@media (max-width: 700px) {
  .row > * { width: 100%; }
}

/* Cabinet-only restoration; public pages keep the existing theme. */
.cabinet-page{--cb-bg:#05071f;--cb-panel:#0d1235;--cb-line:#ffffff1c;--cb-text:#f7f8ff;--cb-muted:#9ba5cd;--cb-cyan:#50e5ff;--cb-violet:#6040ff;margin:0;min-height:100vh;color:var(--cb-text);background:radial-gradient(circle at 80% 10%,#28166b55,transparent 35%),var(--cb-bg);font-family:"Manrope","Segoe UI Variable","Segoe UI",Arial,sans-serif}.cabinet-page *{box-sizing:border-box}.cabinet-shell{width:min(1428px,100%);margin:auto;padding-inline:24px}.cabinet-header{position:sticky;top:0;z-index:30;border-bottom:1px solid var(--cb-line);background:#05071fdd;backdrop-filter:blur(18px)}.cabinet-header-in,.cabinet-app-head,.summary-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.cabinet-header-in{min-height:76px}.cabinet-logo{color:#fff;font-size:24px;font-weight:800;letter-spacing:.06em;text-decoration:none}.cabinet-logo span,#who{color:var(--cb-cyan)}.cabinet-nav{display:flex;align-items:center;gap:10px}.cabinet-nav a{margin:0;padding:11px 15px;color:#cad1ed;text-decoration:none}.cabinet-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--cb-line);border-radius:999px;background:#ffffff08;color:#fff;padding:13px 20px;text-decoration:none;cursor:pointer;font:inherit}.cabinet-btn.is-primary{border:0;background:linear-gradient(100deg,var(--cb-violet),#405dff);font-weight:800}.cabinet-btn.is-cyan{border:0;background:var(--cb-cyan);color:#06102c;font-weight:800}.cabinet-btn.is-disabled{opacity:.42;pointer-events:none;filter:grayscale(.35)}.cabinet-eyebrow{color:var(--cb-cyan);font-size:12px;font-weight:800;letter-spacing:.2em}.cabinet-muted{color:var(--cb-muted);line-height:1.55}.cabinet-auth{width:min(520px,100%);margin:70px auto;padding:30px;border:1px solid var(--cb-line);border-radius:25px;background:var(--cb-panel)}.cabinet-auth h1{margin:14px 0 24px;font-size:42px;line-height:1}.auth-tabs{display:flex;gap:8px;margin-bottom:22px}.auth-tabs button{border:1px solid var(--cb-line);border-radius:999px;background:transparent;color:#fff;padding:11px 16px;cursor:pointer}.auth-tabs button.is-active{background:#fff;color:#090b25}.cabinet-form{display:grid;gap:14px}.cabinet-field{display:grid;gap:7px;margin:0}.cabinet-field input,.cabinet-field select{width:100%;border:1px solid var(--cb-line);border-radius:13px;background:#080c2b;color:#fff;padding:14px;font:inherit}.cabinet-text-link{border:0;background:none;color:var(--cb-muted);text-decoration:underline;cursor:pointer;text-align:left}.cabinet-app{padding:35px 0 80px}.cabinet-app-head{margin-bottom:25px}.cabinet-app-head h1{margin:10px 0;font-size:42px}.cabinet-workspace{display:grid;grid-template-columns:280px 1fr;gap:18px}.cabinet-sidebar,.cabinet-panel{border:1px solid var(--cb-line);border-radius:22px;background:var(--cb-panel);padding:22px}.project-item{width:100%;margin:5px 0;padding:13px;border:0;border-radius:13px;background:#ffffff08;color:#fff;text-align:left;cursor:pointer}.project-item small{display:block;margin-top:5px;color:var(--cb-muted)}.project-item.is-active{background:var(--cb-violet)}.cabinet-builder-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);gap:18px}.cabinet-panel h2{margin-top:10px;font-size:28px}.tariff-summary,.cabinet-notice{padding:16px;border:1px solid var(--cb-line);border-radius:15px;background:#ffffff06;color:#cbd2ee;line-height:1.5}.tariff-summary b{color:#fff;font-size:18px}.tariff-summary p{margin:7px 0}.tariff-summary ul{margin:10px 0 0;padding-left:20px}.cabinet-status{display:inline-block;padding:7px 10px;border-radius:999px;background:#50e5ff1c;color:var(--cb-cyan);font-size:12px}.summary-row{margin:12px 0}.cabinet-demo-actions{display:grid;gap:9px;margin:16px 0}.cabinet-demo-actions .cabinet-btn,#selected-project>.cabinet-btn{width:100%}.demo-hint{margin:16px 0 8px;padding:11px 14px;border:1px solid #50e5ff55;border-radius:13px;background:#50e5ff0d;color:var(--cb-cyan);text-align:center}.cabinet-style-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:12px 0 24px}.cabinet-style-card{overflow:hidden;padding:0;border:1px solid var(--cb-line);border-radius:15px;background:#ffffff08;color:#fff;text-align:left;cursor:pointer}.cabinet-style-card img,.style-placeholder{display:block;width:100%;aspect-ratio:8/5;max-height:190px;object-fit:contain;object-position:center;background:#11163a}.cabinet-style-card b{display:block}.cabinet-style-card.is-active{border-color:var(--cb-cyan);box-shadow:0 0 0 2px var(--cb-cyan)}.cabinet-style-card:focus-visible{outline:3px solid #7fefff;outline-offset:2px}.cabinet-check{display:flex;align-items:center;gap:10px;margin:14px 0;padding:13px;border:1px solid var(--cb-line);border-radius:13px}.cabinet-check input{width:auto}.cabinet-check small{color:var(--cb-cyan)}.cabinet-notice{margin:18px 0}.cabinet-modal{position:fixed;inset:0;z-index:60;display:none;place-items:center;padding:20px;background:#000b}.cabinet-modal.is-open{display:grid}.cabinet-modal-box{width:min(500px,100%);border:1px solid var(--cb-line);border-radius:24px;background:var(--cb-panel);padding:28px;color:var(--cb-text)}.service-success{text-align:center}.service-success-icon{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 22px;border-radius:50%;background:var(--cb-cyan);color:#06102c;font-size:38px;font-weight:800}.cabinet-toast{position:fixed;left:50%;bottom:30px;z-index:100;transform:translateX(-50%) translateY(20px);opacity:0;padding:13px 20px;border-radius:99px;background:#fff;color:#111;transition:.2s;pointer-events:none}.cabinet-toast.is-visible{opacity:1;transform:translateX(-50%);pointer-events:auto}.is-hidden{display:none!important}
@media(max-width:1000px){.cabinet-builder-grid,.cabinet-workspace{grid-template-columns:1fr}.cabinet-sidebar{display:flex;overflow:auto}.project-item{width:auto;min-width:190px}.cabinet-app-head{align-items:stretch;flex-direction:column}.cabinet-style-card img,.style-placeholder{max-height:180px}}@media(max-width:620px){.cabinet-shell{width:100%;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}.cabinet-auth{width:auto;margin-left:max(20px,env(safe-area-inset-left,0px));margin-right:max(20px,env(safe-area-inset-right,0px))}.cabinet-nav a{display:none}.cabinet-auth h1,.cabinet-app-head h1{font-size:34px}.cabinet-style-grid{grid-template-columns:1fr}}


/* Cabinet token alignment and clear interactive states. */
.cabinet-page{--md-sys-color-primary:var(--cb-cyan);--md-sys-color-surface:var(--cb-bg);--md-sys-color-surface-container:var(--cb-panel);--md-sys-color-on-surface:var(--cb-text);--md-sys-color-on-surface-variant:var(--cb-muted);--md-sys-color-outline-variant:var(--cb-line)}
.cabinet-btn,.auth-tabs button,.project-item,.cabinet-style-card,.cabinet-text-link{min-height:48px}.cabinet-field input,.cabinet-field select{min-height:52px}.cabinet-field input:hover,.cabinet-field select:hover{border-color:#ffffff55}.cabinet-field input:focus,.cabinet-field select:focus{border-color:var(--cb-cyan);box-shadow:0 0 0 3px #50e5ff22;outline:0}.cabinet-btn:hover:not(.is-disabled){filter:brightness(1.08)}.cabinet-btn:active:not(.is-disabled){transform:scale(.985)}.auth-tabs button[aria-selected="true"]{background:#fff;color:#090b25}

@media(prefers-reduced-motion:reduce){.cabinet-page *{transition:none!important;animation:none!important}}

/* Live site-build progress. Percent and step states arrive from the server. */
.build-progress{position:relative;overflow:hidden;margin:20px 0;padding:22px;border:1px solid #6c7dff45;border-radius:22px;background:radial-gradient(circle at 100% 0,#6040ff30,transparent 46%),linear-gradient(145deg,#101744,#0a0f31);box-shadow:0 22px 54px #02051a55;transition:border-color .45s ease,background .45s ease}
.build-progress:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 25%,#ffffff08 46%,transparent 67%);transform:translateX(-100%);animation:build-card-shine 5s ease-in-out infinite}
.build-progress-head,.build-progress-foot{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.build-progress-kicker{color:var(--cb-cyan);font-size:10px;font-weight:800;letter-spacing:.2em}
.build-progress h3{margin:7px 0 0;font-size:23px;line-height:1.15}
.build-progress-percent{font-size:34px;line-height:1;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:-.045em}
.build-progress-percent small{margin-left:2px;color:var(--cb-cyan);font-size:14px;letter-spacing:0}
.build-progress-caption{display:flex;align-items:center;gap:9px;margin:18px 0 12px;color:#dce2ff;font-size:14px}
.build-progress-caption.is-swap [data-build-caption]{animation:build-caption-in .45s ease}
.build-progress-caption>span:first-child{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:#66f0d0;box-shadow:0 0 0 5px #66f0d01b,0 0 18px #66f0d0;animation:build-pulse 1.8s ease-in-out infinite}
.build-progress-caption [data-build-caption]{font-weight:inherit}
.build-progress-eta{color:#9db0ff;font-weight:650}
.build-progress-eta-total{margin:6px 0 0;color:var(--cb-muted);font-size:12px}
.build-progress-track{position:relative;height:12px;overflow:hidden;border:1px solid #ffffff12;border-radius:99px;background:#030620;box-shadow:inset 0 2px 6px #0008}
.build-progress-fill{position:absolute;inset:0 auto 0 0;width:100%;border-radius:inherit;background:linear-gradient(90deg,#6547ff 0%,#426cff 55%,#50e5ff 100%);box-shadow:0 0 24px #50e5ff66;transform:scaleX(var(--build-progress-scale,0));transform-origin:left center;transition:transform .85s cubic-bezier(.22,1,.36,1)}
.build-progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 15%,#ffffff55 50%,transparent 85%);transform:translateX(-100%);animation:build-bar-shine 2.6s ease-in-out infinite}
.build-progress-steps{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin:15px 0 0;padding:0;list-style:none}
.build-progress-steps:before{content:"";position:absolute;left:8%;right:8%;top:6px;height:2px;border-radius:99px;background:#4a537d55;pointer-events:none}
.build-progress-steps li{position:relative;z-index:1;display:grid;justify-items:center;gap:7px;min-width:0;color:#737da7;text-align:center;transition:color .35s ease}
.build-progress-steps li>span{width:9px;height:9px;border:2px solid #4a537d;border-radius:50%;background:#101537;transition:background .35s ease,border-color .35s ease,box-shadow .35s ease,transform .35s ease}
.build-progress-steps li small{overflow:hidden;width:100%;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.build-progress-steps li.is-done{color:#bfc8ee}.build-progress-steps li.is-done>span{border-color:#5874ff;background:#5874ff;box-shadow:0 0 12px #5874ff88;animation:build-step-pop .4s ease}
.build-progress-steps li.is-active{color:#fff}.build-progress-steps li.is-active>span{width:13px;height:13px;border:3px solid var(--cb-cyan);background:radial-gradient(circle at 40% 35%,#fff 0 34%,var(--cb-cyan) 38%);box-shadow:0 0 0 6px #50e5ff1c,0 0 18px #50e5ffaa;animation:build-step-pulse 1.7s ease-in-out infinite}
.build-progress-foot{align-items:center;margin-top:18px;padding-top:15px;border-top:1px solid #ffffff12;color:var(--cb-muted);font-size:12px;line-height:1.45}
.build-progress-foot p{max-width:380px;margin:0}.build-progress-foot a{color:var(--cb-cyan);font-weight:750;text-decoration:none;transition:opacity .2s ease}
.build-progress-foot a:hover{opacity:.8}
.build-progress-links{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px 16px}.build-progress-links:not(:empty){animation:progress-links-in .2s ease}.build-progress-link{display:inline-flex;min-height:46px;align-items:center;padding:0 2px;color:var(--cb-cyan);font-weight:750;text-decoration:none;border-radius:8px;transition:opacity .2s ease}.build-progress-link:hover{opacity:.82}.build-progress-link:focus-visible{outline:3px solid #7fefff;outline-offset:2px}
.build-progress.is-ready{border-color:#66f0d055;background:radial-gradient(circle at 100% 0,#19b38a29,transparent 48%),linear-gradient(145deg,#0f2940,#0a1630)}
.build-progress.is-ready:before,.build-progress.is-ready .build-progress-fill:after,.build-progress.is-ready .build-progress-caption>span:first-child{animation:none}
.build-progress.is-ready .build-progress-fill{background:linear-gradient(90deg,#20c995,#66f0d0)}
.build-progress.is-ready .build-progress-steps li.is-active>span{animation:none;background:#66f0d0;border-color:#66f0d0}
.build-progress.is-failed{border-color:#ff718055;background:radial-gradient(circle at 100% 0,#b82b4929,transparent 48%),linear-gradient(145deg,#35122a,#160b25)}
.build-progress.is-failed:before,.build-progress.is-failed .build-progress-fill:after{animation:none}
.build-progress.is-failed .build-progress-caption>span:first-child{background:#ff7180;box-shadow:0 0 0 5px #ff718019,0 0 18px #ff7180;animation:none}
.build-progress.is-failed .build-progress-fill{transform:scaleX(1);background:linear-gradient(90deg,#932849,#ff7180);opacity:.7}
@keyframes build-pulse{50%{opacity:.5;transform:scale(.76)}}
@keyframes build-bar-shine{60%,100%{transform:translateX(140%)}}
@keyframes build-card-shine{55%,100%{transform:translateX(120%)}}
@keyframes build-caption-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes build-step-pulse{0%,100%{transform:scale(1);box-shadow:0 0 0 5px #50e5ff16,0 0 16px #50e5ffaa}50%{transform:scale(1.12);box-shadow:0 0 0 10px #50e5ff12,0 0 22px #50e5ffcc}}
@keyframes build-step-pop{from{transform:scale(.6)}to{transform:scale(1)}}
@keyframes progress-links-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:700px){.build-progress-foot{align-items:flex-start;flex-direction:column;gap:12px}.build-progress-links{width:100%;flex-direction:column;align-items:stretch;gap:0}.build-progress-link{width:100%;min-height:46px}}
@media(max-width:620px){.build-progress{padding:18px;border-radius:18px}.build-progress-head{align-items:center}.build-progress h3{font-size:20px}.build-progress-percent{font-size:29px}.build-progress-steps{grid-template-columns:repeat(3,1fr);row-gap:14px}.build-progress-steps:before{display:none}.build-progress-steps li small{white-space:normal}.build-progress-foot{align-items:flex-start;flex-direction:column}.build-progress-links{width:100%;justify-content:flex-start;flex-direction:column;gap:0}.build-progress-foot a{display:inline-flex;min-height:44px;align-items:center}}
@media(prefers-reduced-motion:reduce){.build-progress:before,.build-progress-fill:after,.build-progress-caption>span:first-child,.build-progress-steps li.is-active>span,.build-progress-steps li.is-done>span,.build-progress-caption.is-swap [data-build-caption],.build-progress-links:not(:empty){animation:none!important}.build-progress-fill,.build-progress-steps li>span{transition:none}}

.cabinet-roadmap{margin:18px 0;padding:16px;border:1px solid var(--cb-line);border-radius:15px;background:#ffffff06}
.cabinet-roadmap-head b{display:block;color:#fff;font-size:15px}
.cabinet-roadmap-head p{margin:7px 0 14px;color:var(--cb-muted);line-height:1.5}
.cabinet-roadmap ol{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin:0;padding:0;list-style:none}
.cabinet-roadmap li{display:grid;justify-items:center;gap:7px;min-width:0;color:#737da7;text-align:center}
.cabinet-roadmap li>span{width:9px;height:9px;border:2px solid #4a537d;border-radius:50%;background:#101537}
.cabinet-roadmap li small{overflow:hidden;width:100%;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.cabinet-roadmap li.is-done{color:#bfc8ee}.cabinet-roadmap li.is-done>span{border-color:#5874ff;background:#5874ff;box-shadow:0 0 12px #5874ff88}
.cabinet-roadmap li.is-active{color:#fff}.cabinet-roadmap li.is-active>span{border-color:var(--cb-cyan);background:var(--cb-cyan);box-shadow:0 0 0 5px #50e5ff19,0 0 16px #50e5ffaa}
.cabinet-roadmap li.is-next{opacity:.72}
@media(max-width:620px){.cabinet-roadmap ol{grid-template-columns:repeat(3,1fr);row-gap:14px}.cabinet-roadmap li small{white-space:normal}}

/* Brief-approved style chooser: neutral concepts, explicit generation action. */
.style-picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-top:24px}.style-picker-head h3{margin:0 0 5px;font-size:21px}.style-picker-head p{margin:0}.style-picker-head>span{display:grid;place-items:center;min-width:38px;height:38px;border:1px solid #ffffff1c;border-radius:50%;color:var(--cb-cyan);font-size:11px;font-weight:800;letter-spacing:.12em}
.cabinet-style-card{position:relative;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.cabinet-style-card:hover{transform:translateY(-2px);border-color:#ffffff40}.cabinet-style-card>b{min-height:52px;padding:12px 14px;line-height:1.25}.cabinet-style-card.is-active:after{content:"✓";position:absolute;top:11px;right:11px;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--cb-cyan);color:#06102c;font-size:13px;font-weight:800;box-shadow:0 6px 18px #50e5ff66}
.style-generate{width:100%;margin-top:-8px;box-shadow:0 12px 30px #50e5ff22}@media(prefers-reduced-motion:reduce){.cabinet-style-card,.cabinet-style-card:hover{transform:none}}
@media(max-width:620px){.style-picker-head{align-items:center}.style-picker-head>span{display:none}.cabinet-style-card>b{min-height:auto}.cabinet-style-card img,.style-placeholder{max-height:170px}.style-generate{position:sticky;bottom:12px;z-index:5;box-shadow:0 14px 38px #02051acc}}

.cabinet-builder-grid.is-review{grid-template-columns:minmax(0,1fr)}
.cabinet-builder-grid.is-review #create-form{display:none!important}
.cabinet-btn.is-disabled{opacity:.55;pointer-events:none;cursor:default}
.cabinet-payment-note{margin:12px 0 0;max-width:42rem;line-height:1.55;color:#c8d0ef}
.cabinet-revision-panel{margin:22px 0 0;padding:22px;border:1px solid #6c7dff45;border-radius:22px;background:linear-gradient(160deg,#101744,#0d1330)}
.cabinet-revision-eyebrow{margin:0 0 8px;color:var(--cb-cyan);font-size:10px;font-weight:800;letter-spacing:.18em}
.cabinet-revision-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.cabinet-revision-head h3{margin:0;font-size:22px}
.cabinet-revision-pill{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;background:#ffffff12;border:1px solid #ffffff22;font-size:13px;font-weight:700}
.cabinet-revision-form{display:grid;gap:10px;margin-top:16px}
.cabinet-revision-form label{font-weight:700}
.cabinet-revision-form textarea{min-height:148px;padding:14px 16px;border-radius:14px;border:1px solid #ffffff22;background:#060b22;color:#eef2ff;font:inherit;resize:vertical}
.cabinet-revision-counter{margin:0;font-size:12px;color:#a8b3c9}
.cabinet-revision-error{margin:10px 0 0;color:#ffb4b4}
.cabinet-revision-history{display:grid;gap:12px;margin-top:18px}
.cabinet-revision-round{padding:14px 16px;border-radius:14px;background:#ffffff08;border:1px solid #ffffff14}
.cabinet-revision-round-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.cabinet-revision-message,.cabinet-revision-response{margin:0;white-space:pre-wrap;line-height:1.5}
.cabinet-revision-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700}
.cabinet-revision-badge.is-submitted{background:#50e5ff22;color:#9ef6ff}
.cabinet-revision-badge.is-in_progress{background:#ffc85722;color:#ffd98e}
.cabinet-revision-badge.is-completed{background:#6dffb422;color:#c9ffd0}
.cabinet-revision-badge.is-declined{background:#ff7b7b22;color:#ffb4b4}

.cabinet-checkout{margin:18px 0 0;padding:20px 20px 18px;border:1px solid #6c7dff45;border-radius:22px;background:radial-gradient(circle at 100% 0,#6040ff28,transparent 46%),linear-gradient(160deg,#101744,#0a0f31);font-synthesis:none}
.cabinet-price{display:grid;gap:6px;margin:0 0 16px}
.cabinet-price-kicker{color:var(--cb-cyan);font-size:10px;font-weight:800;letter-spacing:.2em;line-height:1.4;text-transform:uppercase}
.cabinet-price-value{font-size:34px;font-weight:800;line-height:1;letter-spacing:-.045em;font-variant-numeric:tabular-nums}
.cabinet-price s{margin-right:10px;color:var(--cb-muted);font-size:18px;font-weight:600;line-height:1;letter-spacing:0;text-decoration-thickness:2px}
.cabinet-promo{display:grid;gap:8px;margin:0 0 14px}
.cabinet-promo-label{color:var(--cb-muted);font-size:14px;font-weight:700;line-height:1.4}
.cabinet-promo-row{display:flex;align-items:center;gap:4px;min-height:56px;padding:4px;border:1px solid #ffffff22;border-radius:16px;background:#080c2b;transition:border-color .2s ease,box-shadow .2s ease}
.cabinet-promo-row:hover{border-color:#ffffff55}
.cabinet-promo-row:focus-within{border-color:var(--cb-cyan);box-shadow:0 0 0 3px #50e5ff22}
.cabinet-promo-row .cabinet-input{flex:1 1 auto;width:auto;height:48px;min-width:0;border:0;border-radius:12px;background:transparent;color:#fff;padding:0 14px;font:inherit;font-size:16px;font-weight:500;line-height:48px;box-shadow:none}
.cabinet-promo-row .cabinet-input::placeholder{color:var(--cb-muted);font-weight:500}
.cabinet-promo-row .cabinet-input:focus{outline:0}
.cabinet-promo-apply{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;height:48px;margin:0;padding:0 18px;border:0;border-radius:12px;background:#ffffff14;color:#fff;font:inherit;font-size:15px;font-weight:700;line-height:1;cursor:pointer}
.cabinet-promo-apply:hover{background:#ffffff24}
.cabinet-promo-apply:focus-visible{outline:3px solid #7fefff;outline-offset:2px}
.cabinet-promo-apply:active{transform:scale(.985)}
.cabinet-promo-clear{justify-self:start;min-height:36px;padding:0;color:var(--cb-muted);font-size:14px;line-height:1.4}
.cabinet-promo-chip{display:inline-flex;align-items:center;margin:0 0 12px;min-height:32px;padding:0 12px;border-radius:999px;background:#50e5ff18;color:var(--cb-cyan);font-size:13px;font-weight:700;line-height:1.2}
.cabinet-pay{width:100%;min-height:54px;font-size:16px;font-weight:800;line-height:1;box-shadow:0 12px 28px #50e5ff2e}
.cabinet-pay:hover:not(.is-disabled){filter:brightness(1.06)}
.cabinet-error{margin:0 0 12px;color:#ffb4b4;font-size:14px;font-weight:600;line-height:1.45}
.cabinet-checkout .cabinet-payment-note{margin:12px 0 0;font-size:14px;font-weight:500;line-height:1.5}
@media(max-width:520px){.cabinet-checkout{padding:16px}.cabinet-price-value{font-size:30px}.cabinet-promo-row{flex-direction:column;align-items:stretch;padding:6px}.cabinet-promo-apply{height:48px}}
.cabinet-support{margin:18px 0 0;padding:18px 18px 16px;border:1px solid var(--cb-line);border-radius:20px;background:linear-gradient(160deg,#101744,#0a0f31)}
.cabinet-support-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;flex-wrap:wrap}
.cabinet-support-head b{font-size:16px}
.cabinet-support-head span{color:var(--cb-muted);font-size:13px;font-weight:700}
.cabinet-support-msg{margin:10px 0;color:#ffd9a8;font-size:14px;line-height:1.5}
.cabinet-support-pay{margin-top:12px;min-height:44px}
.cabinet-support-links{margin-top:12px}

/* One type scale for the cabinet page. Manrope stops at 800. */
.cabinet-page{font-synthesis:none}
.cabinet-logo{font-weight:800;line-height:1.2}
.cabinet-nav a,.cabinet-btn{line-height:1}
.cabinet-eyebrow{line-height:1.4}
.cabinet-app-head h1{font-weight:700;line-height:1.2}
.cabinet-panel h2{font-weight:700;line-height:1.2}
.project-item{font-family:inherit;font-size:14px;font-weight:500;line-height:1.35}
.project-item b{font-size:14px;font-weight:700;line-height:1.3}
.project-item small{font-size:12px;font-weight:500;line-height:1.35}
.build-progress-kicker{font-weight:800;line-height:1.4}
.build-progress h3{line-height:1.25}
.build-progress-percent{display:flex;align-items:baseline;font-weight:800}
.build-progress-percent span,.build-progress-percent small{line-height:1;font-weight:800}
.build-progress-caption{line-height:1.45}
.build-progress-steps li small,.cabinet-roadmap li small{font-size:12px;line-height:1.3}
.build-progress-foot{font-size:14px;font-weight:500;line-height:1.5}
.build-progress-foot a,.build-progress-link{font-size:14px;font-weight:700;line-height:1}
.cabinet-roadmap-head b{font-size:16px;font-weight:700;line-height:1.3}
.cabinet-roadmap-head p{font-size:14px;line-height:1.5}
.cabinet-notice{font-size:14px;line-height:1.5}
html{font-synthesis:none}
button,input,select,textarea{font-family:inherit}
.summary-row span{color:var(--cb-muted);font-size:14px;font-weight:500;line-height:1.4}
.summary-row b{font-size:18px;font-weight:800;line-height:1.2;font-variant-numeric:tabular-nums}
.cabinet-status{font-weight:700;line-height:1.3}
