@import url("/tokens.css?v=fe10c788362cbf6b");
/* The portal follows the device; embedded players keep their own theme controls. */
:root{
  color-scheme:light;
  --g-bg:#f3f5f8;--g-panel:#fff;--g-ink:#08213c;--g-muted:#536579;
  --g-line:#d7dfe8;--g-soft:#eaf0f7;--g-accent:#f7b718;--g-focus:#896000;
  --g-gold-ink:#8c650b;--g-marker:#b37f00;--g-number:#708197;
  --g-selected-bg:#fffdf7;--g-selected-border:#9b740c;--g-selected-ink:#6b520f;
  --g-control-line:#9aaabc;--g-selected-control-bg:#fff8e7;
  --g-action-bg:#08213c;--g-action-ink:#fff;--g-action-hover:#174166;
  --g-dots:#cbd5e0;--g-success:#087443;--g-test-bg:#fff3d8;--g-test-ink:#65490e;
  --g-hover-line:#9aaebf;--g-shadow:#04172d08;
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --g-bg:#04172d;--g-panel:#102235;--g-ink:#edf3fa;--g-muted:#b4c3d3;
  --g-line:#32485e;--g-soft:#172d43;--g-focus:#f7b718;
  --g-gold-ink:#f7b718;--g-marker:#f7b718;--g-number:#93a8bf;
  --g-selected-bg:#1d2a31;--g-selected-border:#f7b718;--g-selected-ink:#f7b718;
  --g-control-line:#627a94;--g-selected-control-bg:#2c2a21;
  --g-action-bg:#f7b718;--g-action-ink:#04172d;--g-action-hover:#ffca45;
  --g-dots:#31465d;--g-success:#86d7b2;--g-test-bg:#1e2a37;--g-test-ink:#e6c786;
  --g-hover-line:#708aa4;--g-shadow:#00000024;
}
@media(prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
  color-scheme:dark;
  --g-bg:#04172d;--g-panel:#102235;--g-ink:#edf3fa;--g-muted:#b4c3d3;
  --g-line:#32485e;--g-soft:#172d43;--g-focus:#f7b718;
  --g-gold-ink:#f7b718;--g-marker:#f7b718;--g-number:#93a8bf;
  --g-selected-bg:#1d2a31;--g-selected-border:#f7b718;--g-selected-ink:#f7b718;
  --g-control-line:#627a94;--g-selected-control-bg:#2c2a21;
  --g-action-bg:#f7b718;--g-action-ink:#04172d;--g-action-hover:#ffca45;
  --g-dots:#31465d;--g-success:#86d7b2;--g-test-bg:#1e2a37;--g-test-ink:#e6c786;
  --g-hover-line:#708aa4;--g-shadow:#00000024;
  }
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--g-bg);color:var(--g-ink);font:16px/1.6 var(--bs-body)}button,select,textarea,input{font:inherit}button,select,input,a{touch-action:manipulation}button{cursor:pointer}button,a,select,input,textarea{outline-offset:4px}*:focus-visible{outline:3px solid var(--g-focus)}button{min-height:44px}a{color:inherit;text-underline-offset:4px}img,svg{display:block}svg{flex:none}button svg{pointer-events:none}p,h1,h2,h3{margin-top:0}h1,h2,h3{letter-spacing:-.04em;line-height:1.15}h1,h2{font-family:var(--bs-display);font-weight:800}button{max-width:100%}[hidden]{display:none!important}.shell{width:min(1184px,calc(100% - 64px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:8px;left:8px;z-index:20;transform:translateY(-180%);background:white;color:#08213c;padding:12px 18px;border-radius:8px}.skip:focus{transform:none}.gallery-test-notice{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 9px;margin:22px 0 0;font-size:11px;line-height:1.7;color:var(--g-muted)}.gallery-test-notice strong{font-size:10px;font-weight:700;color:var(--g-test-ink);background:var(--g-test-bg);padding:3px 8px;border-radius:4px}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none}.brand span{font-family:var(--bs-display);font-size:20px;line-height:1.05;letter-spacing:-.05em}.brand strong{display:block;color:#f7b718;font-size:15px;margin-top:3px}
.gallery-intro{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:60px;padding-block:66px 54px}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:750;color:var(--g-muted);margin-bottom:20px;display:flex;align-items:center;gap:10px}.eyebrow:before{content:"";height:2px;width:24px;background:var(--g-marker)}.gallery-intro h1{font-size:clamp(36px,4.7vw,60px);margin-bottom:23px;line-height:1.06}.gallery-intro h1 em{font-style:normal;color:var(--g-gold-ink)}.intro-copy{font-size:15px;color:var(--g-muted);max-width:55ch;margin-bottom:0;line-height:1.8}.intro-aside{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:4px 24px;border-left:1px solid var(--g-line);padding-left:50px}.intro-number{font-family:var(--bs-display);font-size:94px;letter-spacing:-.08em;line-height:1;color:var(--g-number)}.intro-aside>span:nth-child(2){font-size:13px;color:var(--g-muted);line-height:1.7}.intro-tags{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap;margin-top:23px}.intro-tags span{padding:5px 10px;border:1px solid var(--g-line);border-radius:999px;font-size:10px;color:var(--g-muted)}
.model-section{padding-block:10px 56px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:25px}.step-label{font-size:10px;font-weight:750;letter-spacing:.12em;color:var(--g-muted);display:block;margin-bottom:11px}.section-heading h2{font-size:clamp(24px,2.4vw,32px);margin:0;max-width:28ch}.section-heading p{font-size:12px;color:var(--g-muted);margin:0}.model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.model-card{text-align:left;border:1px solid var(--g-line);background:var(--g-panel);border-radius:14px;padding:16px;color:var(--g-ink);transition:border-color .15s,box-shadow .15s;min-width:0;position:relative}.model-card:hover{border-color:var(--g-hover-line);box-shadow:0 8px 24px var(--g-shadow)}.model-card[aria-pressed=true]{border:2px solid var(--g-selected-border);padding:15px;background:var(--g-selected-bg)}.model-card-heading{display:flex;align-items:center;justify-content:space-between;margin-top:17px;font-size:16px;font-weight:750;letter-spacing:-.025em}.model-card-heading>span{font-size:10px;letter-spacing:.08em;color:var(--g-muted);font-weight:500}.model-card-copy{display:block;font-size:11px;color:var(--g-muted);margin-top:5px;line-height:1.6;min-height:36px}.model-card-footer{display:flex;justify-content:space-between;gap:8px;margin-top:16px;border-top:1px solid var(--g-line);padding-top:12px;font-size:10px;color:var(--g-muted)}.model-card-footer [data-selected-label]{font-weight:700;color:var(--g-selected-ink)}.model-note{font-size:11px;color:var(--g-muted);margin:18px 0 0}
/* These schematics illustrate structure; only the selected preview has a player. */
.model-mock{display:block;height:138px;background:#eef2f7;border-radius:8px;position:relative;overflow:hidden;--m-dark:#0b2540;--m-light:#b8c6d7}.model-mock:after{content:"";position:absolute;left:10%;right:10%;bottom:21px;height:1px;background:#d5dee9}.mock-dot{position:absolute;width:4px;height:4px;border-radius:50%;background:#087443;left:12%;top:26px}.mock-brand{position:absolute;width:29px;height:29px;border-radius:5px;background:var(--m-dark);left:12%;top:47px}.mock-brand:before{content:"";position:absolute;width:9px;height:16px;left:10px;top:7px;border-radius:5px 0 5px 0;background:#f7b718}.mock-lines{position:absolute;left:28%;top:48px;right:29%;display:flex;flex-direction:column;gap:7px}.mock-lines i{height:6px;border-radius:3px;background:var(--m-dark);width:100%}.mock-lines i+i{width:65%;height:4px;background:var(--m-light)}.mock-play{display:grid;place-items:center;position:absolute;right:12%;top:47px;width:30px;height:30px;border-radius:50%;background:#f7b718;color:#04172d;font-size:11px;padding-left:2px}.mock-full .mock-brand{top:34px}.mock-full .mock-lines{top:37px;right:16%}.mock-full .mock-play{left:12%;right:auto;top:83px;width:25px;height:25px;font-size:9px}.mock-full .mock-dot{top:18px}.mock-full .mock-wave{position:absolute;left:28%;right:12%;top:88px;height:15px;background:repeating-linear-gradient(90deg,#b8c6d7 0 3px,transparent 3px 7px);clip-path:polygon(0 45%,7% 0,15% 50%,24% 15%,35% 40%,42% 0,55% 40%,63% 20%,75% 45%,90% 0,100% 40%,100% 75%,90% 100%,75% 65%,63% 100%,55% 80%,42% 100%,35% 60%,24% 100%,15% 70%,7% 100%,0 60%)}.mock-bar:before{content:"";position:absolute;left:8%;top:36px;bottom:36px;width:4px;background:#f7b718;border-radius:4px}.mock-bar .mock-lines{left:14%;top:59px;right:30%}.mock-bar .mock-play{top:56px}.mock-bar .mock-dot{top:44px;left:14%}.mock-bar:after{bottom:36px;left:8%;right:8%}.mock-card{background:#e4eaf2}.mock-cover{position:absolute;top:16px;left:26%;right:26%;height:47px;border-radius:5px 5px 0 0;background:#04172d;display:grid;place-items:center}.mock-card .mock-lines{top:73px;left:32%;right:32%;align-items:center;gap:5px}.mock-card .mock-play{top:98px;left:calc(50% - 11px);width:22px;height:22px;font-size:8px}.mock-card:after{display:none}.mock-editorial:before{content:"";position:absolute;left:18%;right:18%;top:17px;height:3px;background:#f7b718}.mock-editorial .mock-brand{top:29px;left:18%;width:18px;height:18px;border-radius:0}.mock-editorial .mock-brand:before{width:6px;height:10px;left:6px;top:4px}.mock-editorial .mock-lines{top:58px;left:18%;right:18%;gap:6px}.mock-editorial .mock-lines i{height:11px}.mock-editorial .mock-lines i+i{height:7px;background:var(--m-dark);width:65%}.mock-editorial .mock-play{left:18%;top:97px;width:22px;height:22px;border-radius:4px;font-size:8px}.mock-editorial:after{display:none}.mock-mini .mock-play{left:15%;right:auto;top:52px;width:32px;height:32px}.mock-mini .mock-lines{left:35%;right:17%;top:58px}.mock-mini:before{content:"";position:absolute;left:10%;right:10%;top:40px;bottom:38px;border:1px solid #c8d3e0;border-radius:999px}.mock-mini:after{display:none}
.builder-section{background:var(--g-panel);border-block:1px solid var(--g-line);padding-block:56px}.builder-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:36px}.builder-settings{min-width:0}.field-label,legend{font-size:12px;font-weight:700;display:block;margin-bottom:9px}select{width:100%;height:46px;border:1px solid var(--g-control-line);border-radius:8px;padding:9px 12px;background:var(--g-panel);color:var(--g-ink);font-size:13px}.model-description{font-size:11px;color:var(--g-muted);margin:11px 0 25px;min-height:36px}fieldset{border:0;padding:0;margin:0 0 24px;min-width:0}legend{padding:0}.theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.theme-options label{position:relative;cursor:pointer}.theme-options input{position:absolute;opacity:0;width:1px;height:1px}.theme-options label>span{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;border:1px solid var(--g-line);border-radius:8px;padding:12px 5px;font-size:11px;min-height:78px}.theme-options input:checked+span{border-color:var(--g-selected-border);background:var(--g-selected-control-bg);box-shadow:inset 0 0 0 1px var(--g-selected-border)}.theme-options input:focus-visible+span{outline:3px solid var(--g-focus);outline-offset:3px}.theme-swatch{width:26px;height:21px;border:1px solid #a2b1c2;border-radius:4px;display:block}.swatch-light{background:#fff}.swatch-dark{background:#081e35;border-color:#081e35}.swatch-system{background:linear-gradient(90deg,#fff 50%,#081e35 50%)}.field-help{font-size:10px;line-height:1.65;color:var(--g-muted);margin:11px 0 0}.viewport-options{display:flex;gap:7px}.viewport-options button{flex:1;border:1px solid var(--g-line);border-radius:7px;font-size:11px;color:var(--g-muted);background:var(--g-panel)}.viewport-options button[aria-pressed=true]{background:var(--g-action-bg);color:var(--g-action-ink);border-color:var(--g-action-bg)}.size-note{display:flex;gap:10px;background:var(--g-bg);padding:15px;border-radius:9px;color:var(--g-muted);font-size:10px}.size-note svg{margin-top:2px}.size-note p{margin:0;min-width:0}.size-note strong,.size-note span{display:block}.size-note strong{font-size:11px;margin-bottom:4px;color:var(--g-ink)}.text-link{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:650;min-height:44px;margin-top:12px}.preview-panel{border:1px solid var(--g-line);border-radius:12px;overflow:hidden;background:var(--g-bg);align-self:start;min-width:0}.preview-toolbar{display:flex;align-items:center;gap:13px;background:var(--g-panel);border-bottom:1px solid var(--g-line);padding:13px 17px;font-size:10px;color:var(--g-muted)}.browser-dots{display:flex;gap:4px}.browser-dots i{width:6px;height:6px;border-radius:50%;background:#c3ccd8}.preview-size{margin-left:auto;font-size:9px}.preview-stage{padding:28px;background-image:radial-gradient(var(--g-dots) 1px,transparent 1px);background-size:16px 16px;min-height:330px;display:flex;align-items:center;justify-content:center}.preview-device{width:100%;max-width:100%;background:var(--g-panel);padding:22px;border:1px solid var(--g-line);border-radius:10px;box-shadow:0 14px 38px var(--g-shadow)}.preview-device.is-mobile{width:320px;padding:14px 0;border-radius:24px;border:5px solid #31465d;background:#fff;overflow:hidden}.portal-skeleton{display:flex;gap:8px;align-items:center;margin-bottom:22px}.portal-skeleton span{height:13px;width:78px;border-radius:3px;background:#d5dee9;margin-right:auto}.portal-skeleton i{height:6px;width:30px;border-radius:3px;background:#e3e9f1}.skeleton-bottom{margin:24px 0 0;flex-direction:column;align-items:stretch;gap:8px}.skeleton-bottom i{width:100%;height:7px}.skeleton-bottom i+i{width:72%}.is-mobile .portal-skeleton{margin-inline:14px}.live-preview{display:block;width:100%;border:0;min-width:0;border-radius:12px;background:#fff}.preview-note{padding:14px 18px;margin:0;border-top:1px solid var(--g-line);font-size:10px;color:var(--g-muted)}
.code-panel{margin-top:36px;border:1px solid var(--g-line);border-radius:12px;padding:24px;background:var(--g-bg)}.code-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.code-header .step-label{font-size:9px;margin-bottom:7px}.code-header h3{font-size:18px;margin:0;font-weight:750}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 17px;border-radius:8px;border:1px solid transparent;font-size:12px;font-weight:700;text-decoration:none;line-height:1.5}.button.primary{background:var(--g-action-bg);color:var(--g-action-ink);border-color:var(--g-action-bg)}.button.primary:hover{background:var(--g-action-hover)}.button.secondary{border-color:var(--g-control-line);color:var(--g-ink);background:transparent}.button.secondary:hover{background:var(--g-soft)}textarea{width:100%;display:block;resize:vertical;min-height:180px;border:1px solid #29435b;border-radius:8px;background:#071c32;color:#dce7f4;padding:18px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.code-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:13px}.code-footer p{font-size:10px;color:var(--g-muted);margin:0;max-width:65ch}.copy-link{border:0;background:transparent;text-decoration:underline;color:var(--g-ink);font-size:11px;font-weight:650;flex:none;padding:5px}.copy-status{font-size:11px;color:var(--g-muted);margin:5px 0 0;min-height:1.6em}.copy-status[data-success=true]{color:var(--g-success)}
.help-section{display:grid;grid-template-columns:1fr 1.15fr;gap:84px;padding-block:64px}.help-section h2{font-size:32px;margin-bottom:21px}.help-section>div>p:not(.eyebrow){font-size:13px;color:var(--g-muted);max-width:44ch;line-height:1.8;margin-bottom:24px}.faq-list details{border-bottom:1px solid var(--g-line)}.faq-list details:first-child{border-top:1px solid var(--g-line)}.faq-list summary{font-size:13px;font-weight:700;padding:19px 0;cursor:pointer;line-height:1.7}.faq-list details p{font-size:12px;line-height:1.8;color:var(--g-muted);margin:0 0 21px}.gallery-footer{background:#04172d;color:#bdccdd;padding:32px 0;--g-focus:#f7b718}.gallery-footer .shell{display:flex;align-items:center;gap:28px}.gallery-footer .brand span{font-size:17px;color:white}.gallery-footer .brand strong{font-size:13px}.gallery-footer p{font-size:11px;margin:0}.gallery-footer>.shell>a:last-child{margin-left:auto;display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:11px}.no-script{padding:20px;text-align:center;background:var(--g-test-bg);color:var(--g-test-ink)}
@media(max-width:960px){.gallery-intro{gap:35px}.intro-aside{padding-left:30px}.intro-number{font-size:76px}.model-grid{gap:12px}.model-card{padding:13px}.model-card[aria-pressed=true]{padding:12px}.model-card-copy{min-height:50px}.builder-grid{grid-template-columns:240px minmax(0,1fr);gap:24px}.preview-stage{padding:20px}.preview-device{padding:16px}.help-section{gap:40px}.model-card-footer{font-size:9px}}
@media(max-width:760px){.shell{width:calc(100% - 40px)}.gallery-intro{grid-template-columns:1fr;gap:28px;padding-block:42px}.intro-aside{border-left:0;border-top:1px solid var(--g-line);padding:22px 0 0;grid-template-columns:auto 1fr auto;gap:16px}.intro-number{font-size:53px}.intro-aside>span:nth-child(2){font-size:11px}.intro-tags{grid-column:auto;margin:0;max-width:170px;justify-content:flex-end;gap:5px}.intro-tags span{font-size:9px}.section-heading{align-items:start;flex-direction:column;gap:15px}.section-heading p br{display:none}.model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.model-card-copy{min-height:36px}.model-card-footer{font-size:10px}.model-section{padding-bottom:38px}.builder-section{padding-block:38px}.builder-grid{grid-template-columns:1fr;gap:24px}.builder-settings{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.builder-settings>.field-label,.builder-settings>select,.builder-settings>.model-description{grid-column:1/-1}.builder-settings>.model-description{min-height:0}.builder-settings>.text-link{grid-column:2;align-self:start;justify-self:start;margin-top:0}.builder-settings>.size-note{grid-column:1}.builder-settings fieldset{margin-bottom:20px}.preview-stage{min-height:300px}.preview-device{max-width:600px;padding:22px}.code-header{align-items:start}.code-header h3{font-size:17px}.code-header .button{font-size:11px;padding:10px 13px;flex:none}.code-footer{align-items:start}.help-section{grid-template-columns:1fr;gap:32px;padding-block:42px}.help-section h2 br{display:none}.help-section>div>p:not(.eyebrow){max-width:65ch}.gallery-footer .shell{flex-wrap:wrap}.gallery-footer p{margin-left:auto}.gallery-footer>.shell>a:last-child{margin-left:0}}
@media(max-width:440px){.shell{width:calc(100% - 32px)}.brand img{width:27px;height:37px}.brand span{font-size:16px}.brand strong{font-size:12px}.gallery-intro h1{font-size:39px}.intro-copy{font-size:13px}.intro-aside{grid-template-columns:auto 1fr}.intro-tags{grid-column:1/-1;max-width:none;justify-content:flex-start;margin-top:4px}.section-heading h2{font-size:25px}.section-heading p{font-size:11px}.model-grid{gap:10px}.model-card{padding:10px;border-radius:10px}.model-card[aria-pressed=true]{padding:9px}.model-mock{height:118px}.model-mock:after{bottom:15px}.model-card-heading{font-size:13px;margin-top:13px}.model-card-copy{font-size:10px;min-height:48px}.model-card-footer{font-size:9px;flex-direction:column;gap:5px;margin-top:10px;padding-top:10px}.mock-brand{width:23px;height:23px}.mock-brand:before{left:8px;top:5px;width:8px;height:13px}.mock-compact .mock-lines{left:36%;right:30%;top:49px}.mock-compact .mock-play{right:8%;top:48px;width:24px;height:24px;font-size:8px}.mock-full .mock-lines{left:36%;right:12%;top:38px}.mock-full .mock-play{top:79px}.mock-full .mock-wave{top:83px;left:36%}.mock-full .mock-brand{width:23px;height:23px}.mock-bar .mock-play{right:10%;width:23px;height:23px;top:57px;font-size:8px}.mock-bar .mock-lines{right:34%;top:59px}.mock-card .mock-cover{top:10px;left:20%;right:20%;height:42px}.mock-card .mock-lines{top:61px;left:28%;right:28%}.mock-card .mock-play{top:87px;width:20px;height:20px;left:calc(50% - 10px)}.mock-editorial .mock-play{top:91px}.mock-editorial .mock-lines{top:55px}.mock-mini .mock-play{width:25px;height:25px;top:48px;left:14%;font-size:8px}.mock-mini .mock-lines{left:40%;top:52px;right:15%}.mock-mini:before{top:37px;bottom:32px}.builder-settings{display:block}.theme-options label>span{min-height:72px}.builder-settings>.text-link{margin-top:10px}.preview-stage{padding:13px}.preview-device{padding:12px}.preview-device.is-mobile{max-width:100%;padding:14px 0;border-width:3px}.preview-toolbar{padding:12px;font-size:9px;gap:8px}.preview-size{font-size:8px}.portal-skeleton{margin-bottom:15px}.skeleton-bottom{margin-top:17px}.preview-note{font-size:10px;padding:12px}.code-panel{padding:16px}.code-header{flex-direction:column;gap:16px}.code-header .button{width:100%}.code-header h3{font-size:17px}textarea{padding:13px;font-size:10px}.code-footer{flex-direction:column;gap:3px}.copy-link{align-self:start}.copy-status{font-size:10px}.help-section h2{font-size:27px}.gallery-footer p{margin:0}.gallery-footer .shell{align-items:flex-start;flex-direction:column;gap:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
