/* Shared geometry for the public site, the report reader and the three authenticated desks. */
:root{--sw-ink:#152e50;--sw-mid:#52657c;--sw-action:#285ac0;--sw-line:#d6e0ec;--sw-canvas:#f3f6fa;--sw-night:#142d4b}
.sw-public{background:#fff;color:var(--sw-ink)}.sw-wrap{width:min(1180px,100%);margin-inline:auto;padding-inline:clamp(20px,4.5vw,64px)}
.sw-public .btn,.sw-bottom .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:9px}
.sw-title>small,.sw-bottom small,.sw-stamp{color:var(--sw-action);font-weight:700;font-size:13px;letter-spacing:.04em}
.sw-title h1{font-weight:720;line-height:1.16;letter-spacing:-.055em;margin:.36em 0;color:var(--sw-ink)}
.sw-title>p{font-size:clamp(16px,1.25vw,19px);line-height:1.85;color:var(--sw-mid);max-width:39em}
.sw-timeline{list-style:none;margin:0;padding:0}.sw-timeline li{display:flex;align-items:baseline;gap:15px;padding:10px 0}.sw-timeline li+li{border-top:1px solid var(--sw-line)}
.sw-plan>small,.sw-timeline li>small{font:600 13px/1.4 Consolas,monospace;color:var(--sw-action)}.sw-plan p,.sw-timeline p{margin:3px 0;color:var(--sw-mid);line-height:1.65}
.sw-page{padding-block:clamp(32px,5vw,74px)}.sw-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px}.sw-link{display:inline-flex;align-items:center;min-height:44px;font-weight:650;color:var(--sw-action)}
.sw-cases,.sw-plans,.sw-timeline{margin-top:22px;border-top:2px solid var(--sw-ink)}.sw-case,.sw-case-head{display:grid;grid-template-columns:minmax(145px,.7fr) 1.13fr 1.18fr;column-gap:clamp(18px,3.4vw,50px);padding:20px 8px;border-bottom:1px solid var(--sw-line);align-items:baseline}
.sw-case-head{background:#f5f7fa;padding-block:9px;font-size:13px;color:var(--sw-mid);font-weight:650}.sw-case h3{font-size:18px;line-height:1.35;margin:0 0 4px}.sw-case small{color:var(--sw-action);font-size:13px}.sw-case p{margin:0;color:#344d68;line-height:1.8;font-size:15px}.sw-case i{display:none}
.sw-bottom{padding-block:25px;margin-top:18px;border-top:1px solid var(--sw-line)}.sw-page .sw-bottom{background:var(--sw-canvas);padding-inline:18px;border-radius:8px}.sw-footer{border-top:1px solid var(--sw-line);background:#f8fafd}.sw-footer>.sw-wrap,.sw-footer nav{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.sw-footer>.sw-wrap{padding-block:25px}.sw-footer nav a,.sw-title>a,.sw-back{font-size:14px;color:var(--sw-mid);min-height:44px;display:inline-flex;align-items:center}
.sw-title>small{display:block;margin-top:22px}.sw-title h1{font-size:clamp(32px,3.5vw,52px)}.sw-title{padding-bottom:10px}.sw-plan{display:grid;grid-template-columns:48px 1fr auto;gap:16px;align-items:baseline;padding:24px 3px;border-bottom:1px solid var(--sw-line)}.sw-plan strong{color:var(--sw-action);font-size:19px}.sw-plan h2,.sw-timeline h2{margin:0;font-size:23px}.sw-timeline li{padding:22px 6px;gap:30px}
.sw-auth .auth-intro{padding:clamp(22px,3vw,43px);border:1px solid var(--sw-line);background:#eaf1fc;border-radius:12px;align-self:start}.sw-auth .auth-steps{border-top:1px solid #c6d6eb;padding-top:15px}.sw-auth .auth-card,.recovery-wrap .auth-card{border-top:3px solid var(--sw-action);border-radius:10px}
@media(min-width:901px){.sw-auth[data-mode=register] #account-form{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.sw-auth[data-mode=register] #account-form .field{margin:0;min-width:0}.sw-auth[data-mode=register] #account-form :is(.form-error,button){grid-column:1/-1}.gw-policy{max-width:880px;margin:42px auto;padding:28px 40px 42px;background:white;border:1px solid var(--sw-line);border-radius:12px}}
.gw-policy .text-block,.gw-policy>section{background:white;border:0;border-top:1px solid var(--sw-line);padding:16px 0;margin-top:14px}.gw-policy h2{font-size:20px}
.live-layout .sidebar{background:var(--sw-night);color:#f1f6ff;border:0}.live-layout .sidebar .brand,.live-layout .side-workspace,.live-layout .sidebar a.brand span{color:#fff}.live-layout .sidebar .brand-mark{background:#e4edff;color:var(--sw-night)}.live-layout .sidebar .brand-mark svg{color:var(--sw-night)}
.live-layout .sidebar .side-workspace{background:#203d5d;border:1px solid #3d536c;border-radius:8px;margin:16px 0 8px;padding:9px 12px}.live-layout .side-workspace small,.live-layout .sidebar .nav-label{color:#b2c3d9}.live-layout .sidebar .side-nav a{color:#e1e9f5;border:1px solid transparent}.live-layout .sidebar .side-nav a:is(:hover,:focus-visible){background:#223f61;color:white}.live-layout .sidebar .side-nav a.active{background:#e9f1ff;color:#153b78;border-color:#bed4f6}.live-layout .sidebar .side-bottom .btn,.live-layout .sidebar-close{background:transparent;border-color:#5a6f87;color:#ebf3ff}.live-layout .app-header{background:#fff;border-bottom:1px solid var(--sw-line)}
.sw-work{width:100%;max-width:1530px;min-width:0;margin:0 auto}.sw-work-body{min-width:0}.sw-work-body .business-workspace{max-width:none}.sw-work .page-heading h1{font-size:clamp(25px,2.45vw,37px);letter-spacing:-.035em}.sw-work .page-heading p{max-width:65ch}.sw-work .page-heading{margin-bottom:20px}.sw-work .panel-title :is(h2,h3){line-height:1.55}.sw-work .panel,.sw-work .empty{border:1px solid var(--sw-line);border-radius:10px;box-shadow:none}.sw-work .panel-title{background:#f8fafd;border-bottom:1px solid var(--sw-line)}
.sw-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--sw-line);border-radius:10px;background:white;overflow:hidden;margin-bottom:16px}.sw-shortcuts a{display:flex;align-items:center;gap:12px;padding:17px;color:var(--sw-ink);text-decoration:none}.sw-shortcuts a+a{border-inline-start:1px solid var(--sw-line)}.sw-shortcuts a:hover{background:#f0f5ff}.sw-shortcuts svg{width:24px;height:24px;flex:none;color:var(--sw-action)}.sw-shortcuts span{min-width:0}.sw-shortcuts b,.sw-shortcuts small{display:block}.sw-shortcuts small{font-size:12px;color:var(--sw-mid);line-height:1.6;margin-top:3px}.sw-shortcuts i{margin-left:auto;color:var(--sw-action);font-style:normal}.sw-work .activity-filters{gap:5px}
.sw-work[data-kind=collection] .panel-body:has(.biz-record),.sw-work[data-kind=ledger] .panel-body:has(.biz-record){padding-block:4px}.sw-work .record-row,.sw-work .biz-record,.sw-work .activity-row{border-color:var(--sw-line)}.sw-work .biz-record h3,.sw-work .activity-row h3{color:var(--sw-ink)}.sw-work[data-kind=ledger]{font-variant-numeric:tabular-nums}.sw-work[data-kind=ledger] .finance-part{background:#f6f8fb;border:1px solid var(--sw-line);border-inline-start:3px solid #789bcf}
.sw-work .field :is(input:not([type=checkbox]):not([type=radio]),select,textarea){color:var(--sw-ink);border-color:#aebbcc;border-radius:7px}.sw-work .field :is(input,textarea,select):focus-visible{outline:2px solid var(--sw-action);outline-offset:2px}.sw-work .badge{white-space:normal;line-height:1.5}
.sw-outline{min-width:0}.sw-outline details{border:1px solid var(--sw-line);border-radius:9px;background:white}.sw-outline summary{display:flex;align-items:center;justify-content:space-between;font-size:15px;font-weight:700;min-height:44px;padding:10px 14px;cursor:pointer}.sw-outline summary::after{content:'＋';color:var(--sw-action)}.sw-outline details[open] summary::after{content:'－'}.sw-outline p{font-size:13px;margin:0 14px 7px;color:var(--sw-mid)}.sw-outline nav{display:grid;margin:0 8px 9px}.sw-outline button{display:flex;gap:9px;align-items:baseline;text-align:left;background:none;border:0;color:var(--sw-ink);padding:9px 7px;min-height:43px;line-height:1.55;border-top:1px solid var(--sw-line);cursor:pointer}.sw-outline i{font:12px Consolas,monospace;color:var(--sw-action)}.sw-outline button:hover{background:#eff4fe}.sw-work-body :is(h2,h3)[tabindex]{scroll-margin-block-start:76px}
@media(min-width:1180px){.sw-work:has(>.sw-outline){display:grid;grid-template-columns:minmax(0,1fr) minmax(175px,215px);column-gap:22px;align-items:start}.sw-work>.sw-outline{grid-column:2;grid-row:1;position:sticky;top:78px}.sw-work:has(>.sw-outline)>.sw-work-body{grid-column:1;grid-row:1}.sw-work[data-kind=form]:not(:has(>.sw-outline)) .sw-work-body{max-width:940px}.sw-work[data-kind=form] .panel .panel-body{padding-inline:clamp(20px,2vw,34px)}}
@media(max-width:1179px){.sw-outline{margin-bottom:12px}}
.interview-mode .wizard-card{border:1px solid var(--sw-line);border-top:3px solid var(--sw-action);border-radius:12px}.interview-mode .wizard-head{border-bottom:1px solid var(--sw-line)}.interview-mode .wizard-card .field{padding-block:8px}.report-mode .report-headline{border-left:3px solid var(--sw-action);padding-left:16px}.report-mode .diagnosis-chapter h2{font-size:clamp(19px,1.8vw,26px)}.report-mode .diagnosis-upgrade{border-block-start:3px solid var(--sw-action)}.report-mode .report-analysis-panel{border-inline-start:3px solid #91acd8}.report-mode .report-index nav button{border-radius:5px}
@media(max-width:767px){.sw-bottom{align-items:flex-start;flex-wrap:wrap}.sw-case-head{display:none}.sw-case{grid-template-columns:1fr;gap:7px;padding:14px 2px}.sw-case>div{display:flex;align-items:baseline;gap:10px}.sw-case p{display:grid;grid-template-columns:2.25em 1fr;gap:8px}.sw-case i{display:block;font-style:normal;font-weight:650;font-size:13px;color:var(--sw-mid);padding-top:2px}.sw-plan{grid-template-columns:24px 1fr;gap:7px}.sw-plan strong{grid-column:2}.sw-footer>.sw-wrap{align-items:flex-start}.sw-footer nav{gap:0 15px}.sw-auth .auth-intro{padding:14px 18px}.sw-shortcuts{grid-template-columns:1fr}.sw-shortcuts a{padding:9px 12px;min-height:52px}.sw-shortcuts a+a{border-inline-start:0;border-top:1px solid var(--sw-line)}.sw-shortcuts span{display:flex;flex-wrap:wrap;gap:9px;align-items:baseline}.sw-work .sw-shortcuts small{margin:0}.sw-work .activity-stats{margin-block:12px}.sw-work .page-heading{margin-bottom:15px}.gw-policy{padding:20px 18px}.sw-work .btn{min-height:42px}}
@media print{.sw-outline,.sw-shortcuts,.sidebar,.app-header{display:none!important}.sw-work:has(>.sw-outline){display:block}}

.sw-diagnosis {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 18px 26px;
  margin-bottom: 16px;
  padding: clamp(18px, 2.5vw, 32px);
  border: 1px solid #bdcff0;
  border-radius: 12px;
  background: linear-gradient(115deg, #fff 22%, #eef4ff);
}
.sw-diagnosis > div:first-child { flex: 1 1 320px; min-width: 0; }
.sw-diagnosis small { color: var(--sw-mid); }
.sw-diagnosis h2 { margin: 5px 0; color: var(--sw-ink); font-size: clamp(21px, 2vw, 28px); }
.sw-diagnosis p { margin: 0; max-width: 67ch; color: var(--sw-mid); overflow-wrap: anywhere; }
.sw-diagnosis .button-row { margin: 0; flex-wrap: wrap; }
@media (min-width: 768px) {
  [data-workspace-role="enterprise"] .sw-shortcuts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Light glass frame for the public homepage. */
.sw-landing{
  --glass-ink:#182a42;--glass-muted:#435970;--glass-hair:#ffffffba;
  min-height:100svh;display:flex;flex-direction:column;isolation:isolate;
  background:radial-gradient(ellipse at 78% 25%,#cbdff5 0,transparent 43%),
    radial-gradient(ellipse at 12% 5%,#fff 2%,transparent 54%),#edf3f9;
  color:var(--glass-ink)
}
.sw-landing main{flex:1;position:relative;isolation:isolate;background:transparent;padding-bottom:clamp(1.7rem,3.5vw,3.4rem)}
.sw-landing main::before{
  content:"";pointer-events:none;position:absolute;z-index:-1;inset:0;overflow:hidden;
  background:radial-gradient(ellipse 57% 109% at 79% -18%,transparent 56%,#ffffff7a 58%,#c4dbea75 61%,transparent 66%),
    radial-gradient(ellipse 86% 94% at 89% 123%,transparent 74%,#fff9 77%,#bad8ef63 81%,transparent 88%);
}
.sw-landing .tech-nav-band{
  position:relative;z-index:2;flex:none;width:min(calc(100% - 4rem),76rem);margin:.95rem auto 0;
  border:1px solid var(--glass-hair);border-radius:1.3rem;background:#f7fafd;
  box-shadow:inset 0 1px 1px #fff,0 1px 2px #344b6a14,0 6px 24px #47658711
}
.sw-landing .public-nav{padding-inline:clamp(1rem,2.1vw,2rem);height:57px;background:transparent;border-radius:inherit}
.sw-landing .public-nav .btn.primary{min-height:38px;padding:.4rem 1rem;border:1px solid #c1cfdf;border-radius:100px;background:#f8fbff;color:#253e57}
.sw-landing .public-nav .btn.primary:hover{background:#fff}
.sw-landing .public-nav .brand-mark{border-radius:10px;background:linear-gradient(145deg,#6db8ed,#365aab 72%);box-shadow:inset 0 1px 2px #ffffffbf}
.fde-spread{width:min(100%,82rem);margin-inline:auto;padding:clamp(3rem,5.3vw,5rem) clamp(1.25rem,5.8vw,5.5rem) clamp(2.3rem,4.4vw,4.5rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1rem,3vw,3.5rem);align-items:center}
.fde-copy{min-width:0}
.fde-label{width:fit-content;margin:0;display:flex;align-items:center;gap:.6rem;padding:.27rem .76rem .27rem .57rem;border-radius:100px;border:1px solid #ffffffc9;background:#ffffffa8;color:#334f6d;font-size:.8rem;font-weight:640;letter-spacing:.06em;box-shadow:inset 0 1px 1px white,0 1px 3px #273f5d12}
.fde-label::before,.fde-glass-dot{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#bdeeff,#659ed1 51%,#365e90 89%);box-shadow:0 0 0 2px #b9d6ed4d}
.fde-intro h1{margin:1.12rem 0 1.05rem;color:#14253b;font-size:clamp(2.7rem,4.7vw,4.45rem);font-weight:710;letter-spacing:-.065em;line-height:1.15}
.fde-intro h1 span,.fde-intro h1 em{display:block}.fde-intro h1 em{font-style:normal;color:#285183}
@supports (background-clip:text){.fde-intro h1 em{width:fit-content;background:linear-gradient(105deg,#162e51 4%,#365f9e 57%,#2a507e 92%);background-clip:text;color:transparent}}
.fde-copy .fde-lead{margin:0;max-width:24em;color:var(--glass-muted);font-size:clamp(1rem,1.25vw,1.13rem);line-height:1.82;text-wrap:pretty}
.fde-action{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem 1.05rem;margin-top:clamp(1.35rem,2vw,1.95rem)}
.fde-action .btn.primary{min-height:48px;padding-inline:1.43rem;gap:.9rem;border-radius:100px;color:#fff;background:linear-gradient(175deg,#346cb6,#224e8c 90%);border:1px solid #255397;box-shadow:inset 0 1px 1px #bad9ff91,0 5px 12px #345b8930}
.fde-action .btn.primary:hover{background:#234f91}.fde-action small{font-size:.8rem;color:#486079}
.fde-readout{
  width:min(calc(100% - clamp(2.5rem,8vw,8rem)),76rem);margin-inline:auto;
  display:grid;grid-template-columns:minmax(8rem,.75fr) minmax(0,3fr);gap:clamp(1rem,2.5vw,2.6rem);align-items:center;
  padding:clamp(1.2rem,2.4vw,2.15rem) clamp(1.25rem,2.8vw,2.7rem);border:1px solid var(--glass-hair);border-radius:1.55rem;
  background:#f5f9fd;box-shadow:inset 0 1px 1px #fff,0 1px 2px #35506c15,0 8px 32px #48678610
}
.fde-readout header small{color:#49617a;font-size:.76rem;letter-spacing:.08em}.fde-readout h2{margin:.2rem 0 0;font-size:clamp(1.22rem,1.65vw,1.54rem);line-height:1.45;color:#213754}
.fde-readout dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.7rem,2vw,1.8rem);margin:0}
.fde-readout dl>div{border-left:1px solid #b8cadd94;padding-left:clamp(.8rem,1.5vw,1.5rem)}
.fde-readout dt{color:#243e5b;font-weight:680;font-size:1.01rem;line-height:1.5}.fde-readout i{display:block;margin-bottom:.32rem;color:#507395;font:normal .72rem/1.45 Consolas,monospace;letter-spacing:.1em}
.fde-readout dd{margin:.32rem 0 0;color:#475d73;line-height:1.65;font-size:.89rem}
.sw-landing .sw-footer{background:#f4f7facc}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .sw-landing .tech-nav-band,.fde-readout{background:linear-gradient(112deg,#ffffffb8,#f5fbff69);-webkit-backdrop-filter:blur(17px) saturate(125%);backdrop-filter:blur(17px) saturate(125%)}
}
@media(min-width:769px) and (max-width:1030px){
  .fde-spread{padding-inline:4vw}.fde-intro h1{font-size:clamp(2.35rem,4.6vw,3.1rem)}.fde-readout{grid-template-columns:8rem minmax(0,1fr)}
}
@media(max-width:768px){
  .sw-landing .tech-nav-band{width:calc(100% - 1.5rem);margin-top:.55rem;border-radius:1.12rem}
  .sw-landing .public-nav{height:51px;padding-inline:.8rem}.sw-landing .mobile-public-nav{background:transparent;border-top:1px solid #ccd9e6;border-radius:0 0 1.12rem 1.12rem}.sw-landing .mobile-public-nav summary{min-height:42px;padding-inline:.85rem}
  .fde-spread{grid-template-columns:1fr;gap:1.2rem;padding:2.05rem 1.4rem 1.45rem}
  .fde-intro h1{font-size:clamp(2.3rem,7.9vw,3.75rem);margin:.7rem 0 .8rem}.fde-action{margin-top:1.1rem;gap:.6rem .8rem}.fde-action small{font-size:.76rem}
  .fde-readout{width:calc(100% - 2rem);grid-template-columns:1fr;gap:.8rem;padding:1.15rem;border-radius:1.2rem}
  .fde-readout h2{margin:.12rem 0 0}.fde-readout dl{grid-template-columns:1fr;gap:0}.fde-readout dl>div{border:0;border-top:1px solid #c6d4e1;padding:.66rem 0}.fde-readout i{display:inline;margin-right:.6rem}.fde-readout dd{margin:.2rem 0 0 1.65rem}
}
@media(max-width:360px){.fde-action{align-items:flex-start;flex-direction:column}.fde-intro h1{font-size:2.18rem}}
@media(prefers-reduced-transparency:reduce){
  .sw-landing .tech-nav-band,.fde-readout{background:#f5f8fc;backdrop-filter:none;-webkit-backdrop-filter:none}
}
@media(forced-colors:active){.fde-intro h1 em{background:none;color:CanvasText}.fde-action .btn.primary{border:1px solid ButtonText}}

/* The middle navigation track stays on the page axis in both account states. */
@media (min-width: 769px) {
  .sw-landing .public-nav { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; }
  .sw-landing .public-nav > .brand { justify-self:start; }
  .sw-landing .public-nav > .nav-links { display:flex; justify-self:center; margin:0; gap:clamp(18px,2.5vw,38px); }
  .sw-landing .public-nav > .button-row { justify-self:end; margin:0; }
  .sw-landing .mobile-public-nav { display:none; }
}
.sw-landing { --home-rail:min(76rem,calc(100% - clamp(2.5rem,8vw,8rem))); }
.sw-landing .tech-nav-band,.sw-landing .fde-readout { width:var(--home-rail); }
.sw-landing main { flex:0 0 auto; padding-block-end:clamp(1.2rem,2vw,2rem); }
.sw-landing .sw-footer { margin-block-start:auto; }
.sw-landing .tech-nav-band { margin-top:.5rem; }
.sw-landing main::before {
  background:radial-gradient(ellipse 32% 70% at 76% 34%,#bbd6f255,transparent 100%);
}
.sw-landing .fde-spread {
  width:var(--home-rail); padding:clamp(1rem,1.4vw,1.5rem) 0 clamp(1.4rem,2vw,2rem);
  grid-template-columns:minmax(0,1fr) minmax(0,.96fr); gap:clamp(2rem,4vw,4rem); align-items:start;
}
.fde-copy { padding-top:.35rem; }
.fde-copy .fde-label { border:0; border-radius:0; padding:0; background:transparent; box-shadow:none; }
.fde-copy .fde-lead { max-width:29em; }
.fde-solution {
  --diagram-ink:#1d395a;
  width:100%; margin:0; padding:clamp(1rem,1.65vw,1.65rem); border:1px solid #ffffffd9;
  border-radius:1.65rem; color:var(--diagram-ink); position:relative; isolation:isolate;
  background:radial-gradient(ellipse at 76% 90%,#ccdef54a,transparent 66%),linear-gradient(125deg,#ffffffa8,#f4f9ff50);
  box-shadow:inset 0 1px 1px white,0 14px 45px #3757820b,0 1px 2px #4562870a;
}
.fde-solution figcaption { display:flex; align-items:baseline; justify-content:space-between; gap:.8rem; }
.fde-solution figcaption strong { color:var(--diagram-ink); font-size:.91rem; font-weight:600; }
.fde-solution figcaption span { font:.65rem/1.4 Consolas,monospace; letter-spacing:.14em; color:#536e8e; }
.fde-solution svg { flex:none; width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.6; }
.solution-stage { position:relative; height:270px; margin-top:1rem; }
.fde-solution .solution-lightpaths { position:absolute; inset:0; width:100%; height:100%; stroke:none; pointer-events:none; overflow:visible; }
.solution-inputs,.solution-steps {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0; padding:0; list-style:none; position:absolute; width:100%;
}
.solution-inputs { top:4px; }
.solution-inputs li { display:flex; gap:.38rem; align-items:center; justify-content:center; position:relative; color:#3d5774; font-size:.82rem; padding:.35rem 0; }
.solution-inputs svg { color:#476e9e; }
.solution-hub {
  position:absolute; top:98px; left:50%; transform:translateX(-50%); width:max-content; max-width:100%; padding:.95rem 1.25rem;
  display:flex; align-items:center; gap:.85rem; background:linear-gradient(135deg,#ffffffed,#eef6ffcc); border:1px solid #ffffff; border-radius:1.2rem;
  box-shadow:inset 0 1px 1px #fff,0 10px 28px #518acb1c,0 0 0 1px #b6cee928;
}
.solution-mark { display:grid; flex:none; place-items:center; width:2.7rem; height:2.7rem; border-radius:.85rem; background:linear-gradient(145deg,#a8d9ff,#4e7bb9 87%); color:#fff; box-shadow:inset 0 1px 2px #ffffffb0,0 4px 12px #527ba32b; }
.solution-mark svg { width:1.45rem; height:1.45rem; }
.solution-hub h2 { margin:0; color:var(--diagram-ink); font-size:clamp(1.08rem,.9rem + .45vw,1.3rem); font-weight:650; line-height:1.33; }
.solution-hub p { margin:.22rem 0 0; color:#4c6481; font-size:.79rem; line-height:1.45; }
.solution-steps { bottom:0; }
.solution-steps li { display:grid; justify-items:center; gap:.18rem; position:relative; }
.solution-steps span { padding:.05rem .37rem; color:#53759e; font:.66rem/1.5 Consolas,monospace; letter-spacing:.1em; }
.solution-steps strong { color:var(--diagram-ink); font-size:.85rem; font-weight:560; }
body:has(.sw-landing)>nav[aria-label="本机审核导航"] { display:none!important; }
@supports (backdrop-filter:blur(1px)) { .fde-solution { backdrop-filter:blur(14px); } }
@media (prefers-reduced-motion:no-preference) { .solution-stage { animation:solution-arrive 1.2s ease-out both; } }
@keyframes solution-arrive { from { opacity:.35; transform:translateY(7px); } to { opacity:1; transform:translateY(0); } }
@media (min-width:769px) {
  .fde-solution { align-self:start; margin-top:.35rem; }
}
@media (max-width:768px) {
  .sw-landing { --home-rail:calc(100% - 2rem); }
  .sw-landing .fde-spread { grid-template-columns:minmax(0,1fr); padding-block:.9rem 1.15rem; gap:1.15rem; }
  .fde-copy { padding-top:0; }
}
@media (max-width:400px) {
  .fde-solution { padding:.9rem .6rem; }
  .solution-inputs li { gap:.2rem; font-size:.78rem; }
  .solution-inputs svg { width:14px; height:14px; }
}
@media (prefers-reduced-transparency:reduce) {
  .fde-solution { background:#f4f8fd; backdrop-filter:none; }
}

.stage-delivery { margin: 1rem 0; }
.stage-version { margin: .75rem 0; border: 1px solid #d6e1ed; border-radius: .65rem; background: #fff; }
.stage-version > summary { padding: .9rem 1rem; color: #193e68; font-weight: 650; cursor: pointer; }
.stage-version[open] > summary { background: #f0f5fb; border-radius: .65rem .65rem 0 0; }
.stage-version > dl, .stage-version > p { margin: .75rem 1rem; }
.stage-version a { text-decoration: underline; text-underline-offset: .15em; overflow-wrap: anywhere; }
.stage-version dd { overflow-wrap: anywhere; white-space: pre-line; }

/* Give the homepage's two content sections equal breathing room above and below. */
@media (min-width:769px) {
  .sw-landing main {
    flex:1 0 auto;display:flex;flex-direction:column;justify-content:center;
    gap:clamp(1.5rem,3.1vh,2.15rem);padding-block:clamp(1.4rem,4vh,2.8rem);
  }
  .sw-landing .fde-spread {padding-block:0;align-items:center}
  .sw-landing .fde-copy {padding-block:0}
  .sw-landing .fde-readout {padding:1.05rem clamp(1.2rem,2.5vw,2rem);border-radius:1.1rem;grid-template-columns:minmax(8rem,.6fr) minmax(0,3fr)}
  .sw-landing .fde-readout h2 {font-size:1.23rem;margin:0}
  .sw-landing .fde-readout dt {font-size:.94rem}
  .sw-landing .fde-readout dd {font-size:.84rem;margin-top:.2rem}
  .sw-landing .sw-footer {margin-top:0}
  .sw-landing .sw-footer>.sw-wrap {padding-block:.7rem}
}
@media (max-width:768px) {
  .sw-landing .fde-readout dl>div {padding-block:.45rem}
  .sw-landing .fde-readout dd {margin-left:0}
}

/* One control per row; short hints share the label line. */
.sw-auth[data-mode=register]{padding-block:clamp(20px,3vh,32px)}
.sw-auth[data-mode=register] .auth-card{padding:20px 24px}
.sw-auth[data-mode=register] .auth-card h2{margin:0;font-size:22px;line-height:1.3}
.sw-auth[data-mode=register] .auth-card>p{margin:4px 0 0;font-size:14px;line-height:1.45}
.sw-auth[data-mode=register] #account-form{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin:14px 0 0}
.sw-auth[data-mode=register] #account-form .field{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:4px 8px;min-width:0;margin:0;font-size:14px;line-height:1.35}
.sw-auth[data-mode=register] #account-form .field>span{grid-area:1/1;margin:0}
.sw-auth[data-mode=register] #account-form .field>small{grid-area:1/2;text-align:right;color:#526681;font-size:12px;line-height:1.4;margin:0}
.sw-auth[data-mode=register] #account-form :is(input,select){grid-area:2/1/3/-1;height:40px;min-height:40px;padding:6px 10px;font-size:16px;line-height:1.35}
.sw-auth[data-mode=register] #account-form .form-error:empty{display:none}
.sw-auth[data-mode=register] #account-form button{min-height:42px;margin:2px 0 0;padding:8px 12px}
.sw-auth[data-mode=register] .auth-links{margin-top:6px;gap:4px 12px}
.sw-auth[data-mode=register] .auth-card .btn.text{padding:4px 0;min-height:32px}
@media(max-width:767px){
  .sw-auth[data-mode=register]{padding:16px;gap:10px}
  .sw-auth[data-mode=register] .auth-intro{margin:0;padding:12px 16px}
  .sw-auth[data-mode=register] .auth-intro :is(.gw-kicker,h1,.auth-steps){display:none}
  .sw-auth[data-mode=register] .auth-intro p{margin:0;font-size:14px;line-height:1.5}
  .sw-auth[data-mode=register] .auth-card{padding:16px}
  .sw-auth[data-mode=register] #account-form :is(input,select,button){min-height:44px}
}

/* The report reads as one decision brief; the estimate rail uses the same source as the PDF. */
.brief-page{box-sizing:border-box;min-height:100dvh;background:radial-gradient(ellipse at 12% 0%,#e4eef9,transparent 54%),#f3f6fa;color:#172e51;padding:0 max(14px,calc((100% - 1060px)/2)) 16px;font-family:Geist,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif}
.brief-nav{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.brief-nav>a{display:flex;align-items:center;gap:9px;font-size:1.05rem;font-weight:750;color:#172e51;text-decoration:none}
.brief-brand-mark{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;color:white;background:#26579d;font-size:1.3rem}
.brief-nav>div{display:flex;gap:6px}
.brief-paper,.brief-tools{box-sizing:border-box;border:1px solid #d5dfed;border-radius:20px;background:#fff;box-shadow:0 16px 42px #1635580b}
.brief-paper{display:grid;grid-template-columns:minmax(0,1fr) minmax(235px,29%);grid-template-areas:"hero data" "body data" "foot data";gap:0 26px;padding:clamp(22px,3vw,36px)}
.brief-paper>.brief-heading{grid-area:hero;display:block;position:static;height:auto;background:transparent;box-shadow:none;border-bottom:1px solid #cbd9e9;padding-bottom:16px}
.brief-heading small{font-size:.8rem;font-weight:650;letter-spacing:.08em;color:#46688f}
.brief-heading h1{font-size:clamp(1.45rem,1.12rem + 1.15vw,2.25rem);line-height:1.25;letter-spacing:-.04em;margin:8px 0 0;color:#142c4c}
.brief-sections{grid-area:body}.brief-paper section{padding:15px 0;border-bottom:1px solid #dce5ef}
.brief-paper section h2{font-size:1rem;color:#234b78;margin:0 0 5px;font-weight:720}
.brief-paper section p{font-size:1rem;margin:0;color:#253e58;line-height:1.58;overflow-wrap:anywhere}
.brief-paper footer{grid-area:foot;display:flex;align-items:center;gap:12px;padding-top:16px;color:#53657d}
.brief-impact{grid-area:data;align-self:stretch;background:linear-gradient(155deg,#e9f1fb,#f4f7fc 75%);border-radius:14px;padding:20px;box-sizing:border-box}
.brief-impact-head{display:flex;align-items:center;justify-content:space-between;gap:4px}
.brief-impact-head h2{font-size:.94rem;margin:0}
.brief-button{font:inherit;font-size:.875rem;min-height:44px;padding:7px 12px;border:1px solid #c8d7e8;border-radius:9px;color:#214d78;background:#fff;cursor:pointer}
.brief-impact-head .brief-button{background:none;border:0;color:#2259a5;text-decoration:underline;text-underline-offset:3px;padding:0 3px;font-size:.8rem}
.brief-primary{font-weight:650;background:#22539b;color:white;border-color:#22539b;padding:10px 17px}
.brief-button:active{transform:translateY(1px)}.brief-button:focus-visible{outline:3px solid #7698ce;outline-offset:2px}
.brief-measures{margin:0}.brief-measures>div{padding:18px 0;border-top:1px solid #cad8e8}
.brief-measures dt{color:#365574;font-weight:650;font-size:.86rem}.brief-measures dd{margin:4px 0 0}
.brief-measures strong{display:block;font:650 clamp(1.25rem,1.1rem + .8vw,1.8rem)/1.25 Geist,"Microsoft YaHei",sans-serif;color:#194279;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.brief-measures dd span{display:block;line-height:1.42;font-size:.85rem;margin-top:5px;color:#435d78}
.brief-tools{padding:clamp(16px,3vw,32px)}.brief-tools>section,.brief-tools>.panel{margin-top:16px}
.brief-estimate h1{margin:16px 0 8px;font-size:1.65rem}.brief-estimate p{color:#53657d}
.brief-estimate-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.brief-estimate-fields label{font-weight:650;font-size:.9rem}.brief-estimate-fields label span{display:flex;align-items:center;gap:5px;margin-top:4px}
.brief-estimate-fields input{width:100%;min-width:0;height:44px;border:1px solid #c8d7e8;border-radius:6px;padding:6px}.brief-estimate-fields small{white-space:nowrap;color:#53657d}
.brief-estimate>.brief-measures{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
@media(max-width:767px){
.brief-page{padding:0 10px 8px}.brief-nav{min-height:48px}.brief-nav .brief-button{background:none;border:0;padding:4px 8px}
.brief-paper{display:flex;flex-direction:column;padding:14px;border-radius:15px}.brief-paper>.brief-heading{padding-bottom:10px;border:0}
.brief-heading h1{font-size:1.4rem;margin-top:4px}.brief-impact{padding:4px 10px 9px;border-radius:9px}
.brief-impact-head h2{font-size:.81rem}.brief-impact-head .brief-button{min-height:44px;margin-block:-4px}
.brief-impact .brief-measures{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.brief-impact .brief-measures>div{padding:5px 0 0}.brief-measures dt,.brief-measures dd span{font-size:.78rem}
.brief-measures dd{margin-top:2px}.brief-measures dd span{margin-top:3px}.brief-measures strong{font-size:1.12rem}
.brief-paper section{padding:9px 0}.brief-paper section p{font-size:.94rem;line-height:1.43}.brief-paper section h2{font-size:.93rem;margin-bottom:3px}.brief-paper footer{padding-top:9px}
}
@media(prefers-reduced-motion:reduce){.brief-button:active{transform:none}}

/* Editorial brief: diagnosis through example, with the outcome ledger last. */
.brief-page .brief-paper{display:block;padding:clamp(18px,2.4vw,32px)}
.brief-paper>.brief-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding-bottom:16px;border-bottom:1px solid #cbd9e9}
.brief-heading>div{min-width:0}.brief-heading .brief-primary{flex:none;white-space:nowrap}
.brief-paper section{display:grid;grid-template-columns:8.4rem 1fr;column-gap:20px;padding:13px 0;align-items:baseline}
.brief-paper section h2{margin:0;display:flex;align-items:baseline;gap:9px;white-space:nowrap}
.brief-paper section h2 small{font:600 .72rem/1.4 Consolas,monospace;color:#526d90}
.brief-paper section p{max-width:52em}.brief-paper section.brief-case{border-bottom:0}
.brief-paper section ol{margin:0;padding-inline-start:1.4rem;color:#253e58;line-height:1.5}
.brief-case p{border-inline-start:2px solid #91aacc;padding-inline-start:12px}
.brief-paper .brief-impact{margin-top:8px;padding:9px 16px 14px;background:#eef3f9}
.brief-impact .brief-measures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}
.brief-impact .brief-measures>div{padding:7px 0 0}.brief-impact .brief-measures>div+div{border-left:1px solid #cad8e8;padding-left:18px}
.brief-impact .brief-button{min-height:44px}
@media(max-width:767px){
  .brief-page .brief-paper{padding:13px}
  .brief-paper>.brief-heading{gap:8px;padding-bottom:12px}
  .brief-heading h1{font-size:1.3rem}.brief-heading .brief-primary{font-size:.8rem;padding:6px 8px}
  .brief-paper section{display:block;padding:8px 0}.brief-paper section h2{margin-bottom:3px}
  .brief-paper section p{font-size:.9375rem;line-height:1.44}
  .brief-paper .brief-impact{margin-top:3px;padding:2px 10px 10px}
  .brief-impact .brief-measures{gap:10px}.brief-impact .brief-measures>div+div{padding-left:10px}
}
