/* Inneaux — built from the Inneaux Design System (Haint Blue + Cayenne). */
:root{
  --ink:#16182A;--deep-indigo:#1F2A5A;--porch-blue:#2E5AAC;--slate:#4A4D5E;
  --cayenne:#B5401F;--cayenne-light:#F2A07B;--haint:#BFE0DC;--porch-mist:#D2E8E4;--cotton:#FAF8F3;

  --bg:var(--cotton);--surface:#FFFFFF;--hero:var(--porch-mist);--tint:var(--porch-mist);
  --text:var(--ink);--muted:var(--slate);--line:#E3E1DA;
  --band:var(--deep-indigo);--band-text:var(--cotton);--band-muted:#D6DAEA;
  --button:var(--cayenne);--button-text:#FFFFFF;--link:var(--porch-blue);--focus:var(--porch-blue);
  --accent-on-dark:var(--cayenne-light);
  --ok:#1F6B4A;--ok-soft:#E3F1E9;--warn:#4A3200;--warn-soft:#FBE7B8;--danger:#B42318;--danger-soft:#FDECEA;
  --shadow-pop:0 2px 4px rgb(22 24 42 / .06),0 24px 48px -20px rgb(22 24 42 / .25);

  --display:"Unbounded","Figtree",system-ui,sans-serif;
  --sans:"Figtree",ui-sans-serif,system-ui,sans-serif;
  --serif:"Instrument Serif",Georgia,serif;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root{
    --bg:#0F1226;--surface:#181C36;--hero:#16203F;--tint:#141834;
    --text:var(--cotton);--muted:#B9BED6;--line:#2A2F52;
    --link:var(--haint);--focus:var(--haint);
    --ok:#8FD8B0;--ok-soft:#143326;--warn:#F6CF7E;--warn-soft:#3A2E10;--danger:#F4A39A;--danger-soft:#3A1714;
    --shadow-pop:0 2px 4px rgb(0 0 0 / .3),0 24px 48px -20px rgb(0 0 0 / .6);
    color-scheme:dark;
  }
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:400 17px/1.55 var(--sans);overflow-x:hidden}
img,svg{max-width:100%;display:block}
a{color:var(--link);text-underline-offset:3px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}
h1,h2,h3{margin:0;text-wrap:balance}
p{margin:0}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.narrow{max-width:820px}
.skip{position:absolute;left:-9999px;top:8px;background:var(--surface);color:var(--text);padding:10px 16px;border-radius:999px;z-index:10}
.skip:focus{left:16px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Type */
.display{font:800 clamp(34px,6.4vw,76px)/1.08 var(--display);letter-spacing:-1px}
.display .light{font-weight:300;display:block}
.h1{font:600 clamp(28px,4vw,42px)/1.15 var(--display);letter-spacing:-.5px}
.h2{font:600 clamp(22px,2.6vw,26px)/1.25 var(--display);letter-spacing:-.5px}
.h3{font:600 22px/1.3 var(--sans)}
.lead{font-size:clamp(18px,2vw,20px);line-height:1.5;color:var(--muted)}
.small{font-size:15px;line-height:1.45;color:var(--muted)}
.def{font:400 20px/1.4 var(--serif);color:var(--muted)}
.def i{font-style:italic}
.ul{background:linear-gradient(var(--cayenne),var(--cayenne)) 0 92%/100% .12em no-repeat;-webkit-box-decoration-break:clone;box-decoration-break:clone}
@media (prefers-color-scheme:dark){.ul{background-image:linear-gradient(var(--cayenne-light),var(--cayenne-light))}}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 22px;border-radius:999px;font:600 15px/1.2 var(--sans);text-decoration:none;white-space:nowrap;border:1px solid transparent}
.btn-primary{background:var(--button);color:var(--button-text)}
.btn-primary:hover{background:#9E3619;color:#fff}
.btn-ghost{border-color:var(--text);color:var(--text)}
.btn-ghost:hover{background:var(--text);color:var(--bg)}
.on-band .btn-ghost{border-color:var(--band-text);color:var(--band-text)}
.on-band .btn-ghost:hover{background:var(--band-text);color:var(--band)}
.btns{display:flex;flex-wrap:wrap;gap:12px}

/* Beta bar + header */
.betabar{background:var(--band);color:var(--band-text);font-size:15px;text-align:center;padding:10px 16px}
.betabar a{color:var(--accent-on-dark);font-weight:600}
.hero-bg{background:var(--hero)}
.hdr-wrap{padding:16px 16px 0;position:relative;z-index:5}
.hdr{max-width:1200px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:8px 8px 8px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.logo{display:block;flex:none}
.logo img{height:38px;width:auto;margin:-6px 0 -6px -10px}
.logo .lg-dark{display:none}
@media (prefers-color-scheme:dark){.logo .lg-light{display:none}.logo .lg-dark{display:block}}
.nav{display:flex;gap:22px;font-size:15px;font-weight:500}
.nav a{color:var(--text);text-decoration:none;white-space:nowrap}
.nav a:hover,.nav a[aria-current=page]{color:var(--link);text-decoration:underline}
.hdr-right{display:flex;align-items:center;gap:6px}
.login{color:var(--text);text-decoration:none;font-size:15px;font-weight:500;padding:10px 14px;white-space:nowrap}
.login:hover{color:var(--link)}
.menu-btn{display:none;width:48px;height:48px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--text);align-items:center;justify-content:center;cursor:pointer}
.mob{display:none;max-width:1200px;margin:8px auto 0;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:6px 20px;box-shadow:var(--shadow-pop)}
.mob a{display:block;padding:13px 0;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none;font-weight:600}
.mob a:last-child{border-bottom:0;color:var(--link)}
.mob.open{display:block}
@media (max-width:1020px){.nav,.login{display:none}.menu-btn{display:inline-flex}.hdr{border-radius:24px}}
@media (max-width:420px){.hdr .btn{padding:10px 14px;font-size:14px;min-height:44px}.logo img{height:32px}}

/* Sections */
.hero{padding:clamp(48px,8vw,104px) 0 clamp(48px,7vw,88px)}
.hero .lead{max-width:640px;margin-top:22px}
.hero .btns{margin-top:32px}
.hero .def{margin-top:28px}
.sec{padding:clamp(64px,9vw,96px) 0}
.sec-tint{background:var(--tint)}
.sec-head{max-width:720px;margin-bottom:40px}
.sec-head .lead{margin-top:14px}
.band{background:var(--band);color:var(--band-text)}
.band .small,.band .lead{color:var(--band-muted)}
.panel{border-radius:28px;padding:clamp(28px,5vw,56px)}

/* Feature strip */
.strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.strip>div{padding:28px 24px;border-left:1px solid rgb(250 248 243 / .14)}
.strip>div:first-child{border-left:0}
.strip b{display:block;font:600 19px/1.3 var(--display);letter-spacing:-.3px;margin-bottom:6px}
.strip .tick{color:var(--accent-on-dark);font-weight:700}
@media (max-width:860px){.strip{grid-template-columns:1fr 1fr}.strip>div:nth-child(3){border-left:0}.strip>div:nth-child(n+3){border-top:1px solid rgb(250 248 243 / .14)}}
@media (max-width:460px){.strip{grid-template-columns:1fr}.strip>div{border-left:0!important;border-top:1px solid rgb(250 248 243 / .14)}.strip>div:first-child{border-top:0}}

/* Steps */
.steps{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--line)}
.steps li{display:grid;grid-template-columns:96px 1fr 1.3fr;gap:24px;padding:28px 0;border-bottom:1px solid var(--line);align-items:baseline}
.steps .n{font:300 44px/1 var(--display);color:var(--cayenne)}
@media (prefers-color-scheme:dark){.steps .n{color:var(--cayenne-light)}}
.steps p{color:var(--muted)}
@media (max-width:760px){.steps li{grid-template-columns:56px 1fr;gap:8px 16px}.steps .n{font-size:30px}.steps p{grid-column:2}}

/* Cards */
.card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:32px}
.card .h3{margin-bottom:10px}
.grid-2{display:grid;grid-template-columns:1.25fr 1fr;gap:24px}
.grid-2.even{grid-template-columns:1fr 1fr}
@media (max-width:860px){.grid-2,.grid-2.even{grid-template-columns:1fr}}
.checks{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:12px}
.checks li{padding-left:30px;position:relative}
.checks li::before{content:"";position:absolute;left:2px;top:.45em;width:14px;height:8px;border-left:2.5px solid var(--cayenne);border-bottom:2.5px solid var(--cayenne);transform:rotate(-45deg)}
.band .checks li::before{border-color:var(--accent-on-dark)}
@media (prefers-color-scheme:dark){.checks li::before{border-color:var(--cayenne-light)}}
.xs{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px;color:var(--muted)}
.xs li{padding-left:30px;position:relative}
.xs li::before{content:"—";position:absolute;left:4px}

/* Price */
.price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.price .big{font:800 clamp(44px,6vw,64px)/1 var(--display);letter-spacing:-1px}
.price .per{font:300 22px/1 var(--display)}
.timeline{display:grid;grid-template-columns:1fr 1fr 1.4fr;margin-top:28px;border-radius:14px;overflow:hidden;font-size:15px}
.timeline>div{padding:16px 18px}
.timeline .t1{background:var(--haint);color:var(--ink)}
.timeline .t2{background:var(--porch-mist);color:var(--ink)}
.timeline .t3{background:var(--band);color:var(--band-text)}
.timeline b{display:block;font-weight:700}
@media (max-width:640px){.timeline{grid-template-columns:1fr}}

/* Haint block */
.haint-block{background:var(--haint);color:var(--ink);border-radius:28px}
.haint-block .def,.haint-block .small{color:#2A2D40}
.quote{font:400 clamp(30px,4.4vw,48px)/1.2 var(--serif)}
.quote i{font-style:italic}

/* Tools */
.tool{display:flex;flex-direction:column;gap:14px}
.tool .btns{margin-top:auto;padding-top:12px}
.chip{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;padding:5px 12px;border-radius:999px;background:var(--ok-soft);color:var(--ok);width:max-content}
.chip.soon{background:var(--warn-soft);color:var(--warn)}
.swatches{display:flex;gap:8px;flex-wrap:wrap}
.swatches span{width:44px;height:44px;border-radius:12px;border:1px solid var(--line)}
.fontrow{display:grid;gap:10px}
.fontrow div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid var(--line);padding-bottom:10px}
.fontrow span{font-size:13px;color:var(--muted);white-space:nowrap}

/* FAQ */
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line);padding:4px 0}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;padding:18px 0;font-weight:600;font-size:18px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:300 26px/1 var(--display);color:var(--muted)}
.faq details[open] summary::after{content:"–"}
.faq .ans{padding:0 0 20px;color:var(--muted);max-width:720px}
.faq .ans p+p{margin-top:10px}

/* Pinpoint mock */
.browser{background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow-pop)}
.browser .bar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}
.browser .dots{display:flex;gap:6px}.browser .dots i{width:10px;height:10px;border-radius:50%;background:var(--line);display:block}
.browser .url{flex:1;background:var(--bg);border-radius:999px;padding:6px 14px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.pp{display:grid;grid-template-columns:1fr 300px;min-height:440px}
.pp-site{position:relative;background:#F4EFE6;color:#2B2420;padding:28px;overflow:hidden}
.pp-site .s-nav{display:flex;justify-content:space-between;font-size:13px;font-weight:600;margin-bottom:44px}
.pp-site .s-h{font:600 clamp(26px,3.4vw,38px)/1.1 var(--serif);max-width:380px}
.pp-site .s-p{font-size:15px;margin-top:12px;max-width:340px;color:#5A4E46}
.pp-site .s-btn{display:inline-block;margin-top:20px;background:#3E5C46;color:#fff;font-size:14px;font-weight:600;padding:10px 18px;border-radius:8px}
.pp-site .s-img{position:absolute;right:28px;bottom:28px;width:38%;height:52%;border-radius:14px;background:linear-gradient(160deg,#C9B79C,#8E7A60)}
.pin{position:absolute;width:32px;height:32px;border-radius:50% 50% 50% 4px;background:var(--cayenne);color:#fff;font:700 14px/32px var(--sans);text-align:center;transform:rotate(0);box-shadow:0 0 0 3px #fff}
.pin.done{background:#1F6B4A}
.note{position:absolute;width:230px;background:#fff;color:var(--ink);border:1px solid #E3E1DA;border-radius:14px;padding:12px 14px;font-size:14px;box-shadow:0 2px 4px rgb(22 24 42 / .06),0 24px 48px -20px rgb(22 24 42 / .25)}
.note b{display:block;font-size:13px}
.note .meta{font-size:12px;color:#4A4D5E;margin-top:6px}
.pp-side{border-left:1px solid var(--line);padding:18px;display:flex;flex-direction:column;gap:12px;font-size:14px}
.pp-side .it{border:1px solid var(--line);border-radius:14px;padding:12px;display:grid;grid-template-columns:28px 1fr;gap:4px 10px}
.pp-side .it .pin{position:static;width:26px;height:26px;line-height:26px;font-size:12px;box-shadow:none}
.pp-side .pill{grid-column:2;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;width:max-content}
.pill.open{background:var(--danger-soft);color:var(--danger)}
.pill.wip{background:var(--warn-soft);color:var(--warn)}
.pill.ok{background:var(--ok-soft);color:var(--ok)}
@media (max-width:860px){.pp{grid-template-columns:1fr}.pp-side{border-left:0;border-top:1px solid var(--line)}}
@media (max-width:560px){.pp-site .s-img{display:none}.note{width:200px}}

/* Legal */
.legal h2{font:600 22px/1.3 var(--display);margin:40px 0 12px}
.legal p,.legal li{color:var(--muted)}
.legal p+p{margin-top:12px}
.legal ul{padding-left:22px;display:grid;gap:8px;margin:12px 0}
.draft{background:var(--warn-soft);color:var(--warn);border-radius:14px;padding:14px 18px;font-size:15px;margin-bottom:28px}
.ph{background:var(--warn-soft);color:var(--warn);padding:0 4px;border-radius:4px}

/* Footer */
.foot{background:var(--band);color:var(--band-text);padding:64px 0 32px;margin-top:0}
.foot .top{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:32px}
.foot img{height:44px;width:auto;margin:-8px 0 0 -12px}
.foot .def{color:var(--band-muted);font-size:18px;margin-top:10px}
.foot h2{font:700 13px/1.2 var(--sans);letter-spacing:.02em;color:var(--band-muted);margin-bottom:14px}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:15px}
.foot a{color:var(--band-text);text-decoration:none}
.foot a:hover{color:var(--haint);text-decoration:underline}
.foot .bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:48px;padding-top:24px;border-top:1px solid rgb(250 248 243 / .14);font-size:14px;color:var(--band-muted)}
.foot :focus-visible{outline-color:var(--haint)}
@media (max-width:960px){.foot .top{grid-template-columns:1fr 1fr}.foot .brand{grid-column:1/-1}}
@media (max-width:420px){.foot .top{grid-template-columns:1fr}}

.mt8{margin-top:8px}.mt16{margin-top:16px}.mt24{margin-top:24px}.mt32{margin-top:32px}.mt48{margin-top:48px}
.grid-2>*{min-width:0}
@media (max-width:480px){.btns .btn{white-space:normal;text-align:center}}
@media (max-width:560px){.note{left:auto!important;right:14px;top:150px!important}}
.who{display:flex;flex-wrap:wrap;gap:10px}
.who span{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:10px 18px;font-weight:600;font-size:15px}
/* strip: 6 items, hairline grid */
.strip{grid-template-columns:repeat(3,1fr);gap:1px;background:rgb(250 248 243 / .14)}
.strip>div{background:var(--band);border:0!important}
@media (max-width:860px){.strip{grid-template-columns:1fr 1fr}}
@media (max-width:460px){.strip{grid-template-columns:1fr}}

/* Application form */
.apply{display:grid;gap:24px}
.apply [hidden]{display:none!important}
.apply fieldset{border:0;margin:0;padding:0;display:grid;gap:18px;min-width:0}
.apply label,.apply input,.apply select,.apply textarea{min-width:0}
.apply legend{padding:0;margin-bottom:4px}
.apply label{display:grid;gap:6px;font-weight:600;font-size:16px}
.apply input:not([type=checkbox]):not([type=radio]):not([type=file]),.apply select,.apply textarea{font:400 16px/1.4 var(--sans);color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 14px;width:100%;min-height:48px}
.apply textarea{resize:vertical}
.apply input:focus,.apply select:focus,.apply textarea:focus{outline:3px solid var(--focus);outline-offset:1px;border-color:transparent}
.apply .opt,.apply .hint{font-weight:400;font-size:14px;color:var(--muted)}
.apply .req{color:var(--danger);font-weight:700}
.apply .grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media (max-width:600px){.apply .grid2{grid-template-columns:1fr}}
.apply .group{display:grid;gap:10px}
.apply .glabel{font-weight:600}
.apply .handles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:600px){.apply .handles{grid-template-columns:1fr}}
.apply .handle{display:grid;grid-template-columns:96px 1fr;align-items:center;gap:10px;font-weight:500;font-size:15px}
.apply .files{display:grid;gap:12px}
.apply .file{background:var(--surface);border:1px dashed var(--line);border-radius:14px;padding:14px}
.apply .file input{font:400 15px var(--sans);color:var(--muted);max-width:100%}
.apply .more{background:var(--surface);border:1px solid var(--line);border-radius:14px}
.apply .more summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;padding:16px 18px;font-weight:600}
.apply .more summary::-webkit-details-marker{display:none}
.apply .more summary::after{content:"+";font:300 24px/1 var(--display);color:var(--muted)}
.apply .more[open] summary::after{content:"–"}
.apply .more .inner{display:grid;gap:14px;padding:0 18px 18px}
.apply .radio{display:flex;gap:10px;align-items:flex-start;font-weight:500}
.apply .radio input{width:20px;height:20px;margin-top:2px;accent-color:var(--cayenne);flex:none}
.apply .chips{display:flex;flex-wrap:wrap;gap:8px}
.apply .chips label{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-weight:500;font-size:15px;background:var(--bg);cursor:pointer}
.apply .chips input{accent-color:var(--cayenne);width:18px;height:18px}
.apply .sub{display:flex;align-items:center;gap:8px;font-weight:400;color:var(--muted)}
.apply .agree{display:grid;gap:12px;border-top:1px solid var(--line);padding-top:20px;margin-top:8px}
.apply .trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.apply .progress{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.apply .progress li{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--muted);border-top:4px solid var(--line);padding-top:10px}
.apply .progress li span{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--line);color:var(--text);font-size:13px;flex:none}
.apply .progress li.done,.apply .progress li[aria-current]{color:var(--text);border-top-color:var(--cayenne)}
.apply .progress li[aria-current] span,.apply .progress li.done span{background:var(--cayenne);color:#fff}
@media (max-width:600px){.apply .progress li{font-size:0;gap:0}.apply .progress li span{font-size:13px}}
.apply .nav-btns{display:flex;gap:12px;flex-wrap:wrap}
.apply .nav-btns [data-next],.apply .nav-btns [data-send]{margin-left:auto}
.apply .alert{background:var(--danger-soft);color:var(--danger);border-radius:14px;padding:14px 18px;font-weight:600}
.apply .saved{margin-top:-8px}
.apply [aria-invalid=true]{border-color:var(--danger)!important;outline:2px solid var(--danger)}
.btn[disabled]{opacity:.6;cursor:progress}
.thanks{text-align:left}

/* Tool previews (Brand Kit guide, Font Viewer) */
.bgm{background:#F7F1E8;color:#2B2420;padding:clamp(18px,3vw,32px)}
.bgm-top{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.bgm-logo{display:flex;align-items:center;gap:12px}
.bgm-mark{width:48px;height:48px;border-radius:50%;background:#3E5C46;color:#F7F1E8;display:grid;place-items:center;font:400 30px/1 var(--serif)}
.bgm-logo b{display:block;font:400 32px/1 var(--serif);color:#3E5C46}
.bgm-logo small{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#7A6A5C}
.bgm-line{font:italic 400 18px/1.3 var(--serif);color:#5A4E46}
.bgm-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:auto auto;gap:14px}
.bgm-card{background:#fff;border:1px solid #E3D9CA;border-radius:14px;padding:16px}
.bgm-h{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7A6A5C;margin-bottom:10px}
.bgm-colors{grid-row:span 2}
.bgm-sw{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;padding:6px 0;font-size:14px}
.bgm-sw span{width:36px;height:36px;border-radius:10px}
.bgm-sw code{font-size:12px;color:#7A6A5C}
.bgm-checks{display:grid;gap:6px;margin-top:10px}
.bgm-checks span{font-size:12px;font-weight:700;padding:5px 10px;border-radius:999px;width:max-content;max-width:100%}
.bgm-ok{background:#E3F1E9;color:#1F6B4A}.bgm-fix{background:#FBE7B8;color:#4A3200}
.bgm-aa{font-size:40px;line-height:1;color:#3E5C46}
.bgm-fn{font-size:14px;font-weight:600;margin:2px 0 12px}.bgm-fn small{font-weight:400;color:#7A6A5C}
.bgm-voice dl{margin:0;display:grid;gap:8px}
.bgm-voice dl div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #EFE7DA;padding-bottom:6px}
.bgm-voice dt{font-size:13px;color:#7A6A5C}.bgm-voice dd{margin:0;font:400 18px/1 var(--serif)}
.bgm-say{font-size:13px;color:#5A4E46;margin-top:10px}
.bgm-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.bgm-tiles span{aspect-ratio:1;border-radius:10px;display:grid;place-items:center;font:400 22px/1 var(--serif)}
.bgm-tiles .t1{background:#F7F1E8;color:#3E5C46;border:1px solid #E3D9CA}.bgm-tiles .t2{background:#3E5C46;color:#F7F1E8}
.bgm-tiles .t3{background:#2B2420;color:#E8B4A0;border-radius:50%}.bgm-tiles .t4{background:#fff;color:#2B2420;border:1px solid #E3D9CA}
.bgm-dl{display:inline-block;margin-top:12px;font-size:13px;font-weight:600;color:#3E5C46}
@media (max-width:860px){.bgm-grid{grid-template-columns:1fr 1fr}.bgm-colors{grid-row:auto;grid-column:1/-1}}
@media (max-width:520px){.bgm-grid{grid-template-columns:1fr}}

.fvm{display:grid;grid-template-columns:1fr 280px;background:var(--surface)}
.fvm-main{padding:clamp(16px,2.5vw,24px);min-width:0}
.fvm-input{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:var(--bg)}
.fvm-input span{font-size:13px;color:var(--muted)}.fvm-input b{font-weight:500;border-right:2px solid var(--cayenne);padding-right:3px}
.fvm-chips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 6px}
.fvm-chips span{font-size:13px;font-weight:600;border:1px solid var(--line);border-radius:999px;padding:5px 12px;color:var(--muted)}
.fvm-chips .on{background:var(--text);color:var(--bg);border-color:var(--text)}
.fvm-chips .fvm-src{margin-left:auto}
.fvm-list{list-style:none;margin:0;padding:0}
.fvm-list li{display:grid;grid-template-columns:1fr auto;grid-template-areas:"t h" "n h";align-items:center;gap:2px 12px;padding:14px 0;border-bottom:1px solid var(--line)}
.fvm-list p{grid-area:t;font-size:clamp(24px,3.4vw,34px);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fvm-list span{grid-area:n;font-size:13px;color:var(--muted)}
.fvm-list i{grid-area:h;font-style:normal;font-size:22px;color:var(--muted)}
.fvm-list i.saved{color:var(--cayenne)}
.fvm-side{border-left:1px solid var(--line);padding:clamp(16px,2.5vw,24px);background:var(--bg);display:flex;flex-direction:column;gap:10px}
.fvm-h{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.fvm-board{font-size:15px;font-weight:700}.fvm-board span{font-weight:400;color:var(--muted);font-size:13px;margin-left:6px}
.fvm-pick{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.fvm-pick p{font-size:28px;line-height:1}.fvm-pick span{font-size:14px;font-weight:600}
.fvm-cmp{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.fvm-cmp p{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px;font-size:20px;line-height:1.1}
.fvm-btn{margin-top:auto;background:var(--button);color:var(--button-text);border-radius:999px;text-align:center;padding:10px 14px;font-size:14px;font-weight:600}
@media (prefers-color-scheme:dark){.fvm-list i.saved{color:var(--cayenne-light)}.fvm-input b{border-color:var(--cayenne-light)}}
@media (max-width:860px){.fvm{grid-template-columns:1fr}.fvm-side{border-left:0;border-top:1px solid var(--line)}}
