
:root{--font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans","Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji";--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
--bg:#f8f8f7;--soft:#efeeec;--card:#ffffff;--fg:#141518;--muted:#5c5e62;--line:#dfdedb;--signal:#1b1c1f;--signal-ink:#2b2d31;--on-signal:#f4f4f2;--strip:#17181b;--on-strip:#e9e8e5;
--plat:linear-gradient(135deg,#fdfdfc 0%,#e7e6e3 26%,#f8f8f7 44%,#d3d2ce 68%,#f1f0ee 86%,#dcdbd8 100%);
--metal:linear-gradient(135deg,#ffffff 0%,#e5e4e2 30%,#a9a8a5 52%,#f5f5f3 70%,#c3c2bf 100%);
--metal-text:linear-gradient(100deg,#2f2a45 0%,#6c5aa6 34%,#a6577f 62%,#b77940 100%);
--opal:linear-gradient(135deg,#fdfbff 0%,#efe6ff 22%,#e2f1ff 44%,#fff0e3 66%,#e6fbf1 88%,#f6efff 100%);--wash-1:rgba(255,206,180,.42);--wash-2:rgba(205,190,255,.42);--wash-3:rgba(182,232,214,.38);--tint-gaming:linear-gradient(135deg,#f1e9ff 0%,#dfeeff 100%);--tint-audio:linear-gradient(135deg,#ffeadf 0%,#ffe0ee 100%);--tint-home:linear-gradient(135deg,#e2f8ec 0%,#e0efff 100%);--sep:linear-gradient(135deg,#ffd9c2,#d9ccff 50%,#bfeedd);--glint:rgba(255,255,255,.9);--shine:0 1px 0 rgba(255,255,255,.9) inset,0 -1px 0 rgba(0,0,0,.06) inset,0 30px 60px -32px rgba(40,40,45,.35);color-scheme:light}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]){--bg:#0b0b0c;--soft:#18191b;--card:#141517;--fg:#efefed;--muted:#a4a5a8;--line:#2a2b2e;--signal:#e5e4e2;--signal-ink:#e5e4e2;--on-signal:#111214;--strip:#e5e4e2;--on-strip:#111214;
--plat:linear-gradient(135deg,#2c2d30 0%,#1c1d1f 28%,#3a3b3f 46%,#18191b 70%,#323337 88%,#202124 100%);
--metal:linear-gradient(135deg,#ffffff 0%,#e5e4e2 30%,#9d9c99 52%,#f5f5f3 70%,#bdbcb9 100%);
--metal-text:linear-gradient(100deg,#ffffff 0%,#d8cbff 34%,#ffc6dc 62%,#ffd9b0 100%);
--opal:linear-gradient(135deg,#232030 0%,#1c2634 40%,#2e2521 70%,#1b2b25 100%);--wash-1:rgba(255,150,110,.14);--wash-2:rgba(150,125,255,.16);--wash-3:rgba(90,200,160,.12);--tint-gaming:linear-gradient(135deg,#2a2440 0%,#1e2b40 100%);--tint-audio:linear-gradient(135deg,#3a2622 0%,#3a2232 100%);--tint-home:linear-gradient(135deg,#1d3329 0%,#1e2b3d 100%);--sep:linear-gradient(135deg,#ffb48f,#a993ff 50%,#7fdcbc);--glint:rgba(255,255,255,.22);--shine:0 1px 0 rgba(255,255,255,.08) inset,0 30px 60px -32px rgba(0,0,0,.8);color-scheme:dark}}html[data-theme="dark"]{--bg:#0b0b0c;--soft:#18191b;--card:#141517;--fg:#efefed;--muted:#a4a5a8;--line:#2a2b2e;--signal:#e5e4e2;--signal-ink:#e5e4e2;--on-signal:#111214;--strip:#e5e4e2;--on-strip:#111214;
--plat:linear-gradient(135deg,#2c2d30 0%,#1c1d1f 28%,#3a3b3f 46%,#18191b 70%,#323337 88%,#202124 100%);
--metal:linear-gradient(135deg,#ffffff 0%,#e5e4e2 30%,#9d9c99 52%,#f5f5f3 70%,#bdbcb9 100%);
--metal-text:linear-gradient(100deg,#ffffff 0%,#d8cbff 34%,#ffc6dc 62%,#ffd9b0 100%);
--opal:linear-gradient(135deg,#232030 0%,#1c2634 40%,#2e2521 70%,#1b2b25 100%);--wash-1:rgba(255,150,110,.14);--wash-2:rgba(150,125,255,.16);--wash-3:rgba(90,200,160,.12);--tint-gaming:linear-gradient(135deg,#2a2440 0%,#1e2b40 100%);--tint-audio:linear-gradient(135deg,#3a2622 0%,#3a2232 100%);--tint-home:linear-gradient(135deg,#1d3329 0%,#1e2b3d 100%);--sep:linear-gradient(135deg,#ffb48f,#a993ff 50%,#7fdcbc);--glint:rgba(255,255,255,.22);--shine:0 1px 0 rgba(255,255,255,.08) inset,0 30px 60px -32px rgba(0,0,0,.8);color-scheme:dark}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.55 var(--font);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
.ph{font-size:20px;width:1em;height:1em;fill:currentColor;flex:none;display:inline-block;vertical-align:-.15em}
.wrap{max-width:1280px;margin:0 auto;padding:0 32px}
@media (max-width:640px){.wrap{padding:0 16px}}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--signal);outline-offset:3px}
.preview{background:var(--soft);color:var(--muted);font-size:13px;text-align:center;padding:7px 16px}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:72px;gap:16px}
.logo{display:inline-flex;align-items:baseline;font-weight:800;font-size:27px;letter-spacing:-.01em;text-transform:uppercase;text-decoration:none;line-height:1}
/* The diamond spans the cap height: a .495em square turned 45deg is .7em tall, lifted by its overhang to sit on the baseline. */
.logo i{display:inline-block;width:.495em;height:.495em;background:var(--metal);box-shadow:0 0 0 1px rgba(0,0,0,.28) inset;transform:translateY(-.1025em) rotate(45deg);margin:0 .1em 0 .17em}
.links{display:flex;align-items:center;gap:30px;font-size:15px}
.links a{text-decoration:none;color:var(--muted)}
.links a:hover{color:var(--fg)}
@media (max-width:760px){.links .hide-sm{display:none}}
/* Phones and small tablets get a menu for the links hidden above. */
.mnav{display:none;position:relative}
@media (max-width:760px){.links{gap:10px}.mnav{display:block}}
.mnav summary{list-style:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;cursor:pointer;color:var(--fg);font-size:22px;background:var(--soft)}
.mnav summary::-webkit-details-marker{display:none}
.mnav[open] summary{background:var(--line)}
.mnav-panel{position:absolute;right:0;top:calc(100% + 10px);z-index:30;min-width:220px;display:grid;gap:2px;padding:8px;background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:0 18px 40px -18px rgba(20,20,25,.35)}
.links .mnav-panel a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;color:var(--fg);font-size:16px;font-weight:600}
.links .mnav-panel a:hover{background:var(--soft)}
.mnav-panel .ph{font-size:20px;color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 26px;border-radius:999px;font:600 16px/1 var(--font);text-decoration:none;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:transform .2s cubic-bezier(.2,.8,.2,1),background .15s,border-color .15s}
.btn .ph{font-size:18px}
.btn:active{transform:scale(.97)}
.btn.signal{background:var(--signal);color:var(--on-signal);box-shadow:0 1px 0 rgba(255,255,255,.18) inset}
.btn.signal:hover{opacity:.86}
.btn.ink{background:var(--signal);color:var(--on-signal);box-shadow:0 1px 0 rgba(255,255,255,.18) inset}
.btn.ghost{background:transparent;border-color:var(--line);color:var(--fg)}
.btn.ghost:hover{border-color:var(--fg)}
.btn.sm{height:40px;padding:0 18px;font-size:14.5px}
.links .btn{color:var(--bg)}
.hero{padding:88px 0 56px;text-align:center;background:radial-gradient(38% 70% at 12% 18%,var(--wash-1),transparent 70%),radial-gradient(40% 70% at 88% 8%,var(--wash-2),transparent 70%),radial-gradient(50% 60% at 55% 105%,var(--wash-3),transparent 70%)}
@media (max-width:640px){.hero{padding:48px 0 40px}}
.pill-label{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--fg);border:1px solid var(--line);border-radius:999px;padding:6px 14px 6px 10px;margin:0 0 28px}
.pill-label{background:var(--opal)}
.pill-label .ph{font-size:17px;color:#6c5aa6}
.hero h1{font-size:clamp(42px,6.4vw,88px);line-height:1.04;letter-spacing:-.045em;font-weight:600;margin:0 auto;max-width:14ch}
.hero h1 em{font-style:normal;background:var(--metal-text);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.06em}
.hero .lead{margin:24px auto 0;max-width:40ch}
.ctas{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:36px}
.btn.soft{background:var(--soft);color:var(--fg)}
.btn.soft:hover{background:var(--line)}
.stage{position:relative;isolation:isolate;background:var(--plat);box-shadow:var(--shine);border-radius:32px;padding:clamp(20px,5vw,72px);display:grid;place-items:center;overflow:hidden}
.stage::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(45% 60% at 8% 12%,var(--wash-1),transparent 70%),radial-gradient(45% 60% at 95% 20%,var(--wash-2),transparent 70%),radial-gradient(55% 60% at 50% 110%,var(--wash-3),transparent 70%)}
.stage::after{content:"";position:absolute;top:-50%;bottom:-50%;width:38%;left:-60%;z-index:-1;background:linear-gradient(100deg,transparent 0%,var(--glint) 46%,rgba(255,248,236,.5) 49%,rgba(236,244,255,.5) 52%,transparent 100%);transform:rotate(14deg);opacity:.8;will-change:transform}
/* Moves with transform only: animating left re-laid out the whole stage every frame, which made scrolling stutter. 500% of its own width = from -60% to 130% of the stage. */
@keyframes glint{0%{transform:translateX(0) rotate(14deg)}55%,100%{transform:translateX(500%) rotate(14deg)}}
.chat{width:min(820px,100%);background:var(--card);border-radius:24px;box-shadow:0 1px 2px rgba(15,17,20,.05),0 30px 60px -30px rgba(15,40,70,.35);padding:clamp(18px,3vw,32px);display:grid;gap:18px;text-align:left}
.chat .bar{display:flex;gap:6px}
.chat .bar i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.msg-you{justify-self:end;display:grid;justify-items:end;gap:6px}
.msg-you small,.msg-ai small{font-size:13px;color:var(--muted)}
.msg-you p{margin:0;background:var(--fg);color:var(--bg);border-radius:999px;padding:11px 20px;font-size:16px}
.slot{display:inline-block;white-space:nowrap}
.slot.out{animation:slot-out .28s cubic-bezier(.4,0,1,1) forwards}
.slot.in{animation:slot-in .45s cubic-bezier(.2,.8,.2,1) both}
@keyframes slot-out{to{opacity:0;transform:translateY(-6px)}}
@keyframes slot-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.msg-ai{display:grid;gap:10px}
.msg-ai .who{display:flex;align-items:center;gap:8px;font-weight:600;font-size:15px}
.msg-ai .who .dot{width:22px;height:22px;border-radius:7px;background:var(--soft);display:grid;place-items:center;font-size:13px}
.used{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--muted)}
.used b{color:var(--fg);font-weight:600}
.msg-ai p{margin:0}
.offers.out{animation:slot-out .28s cubic-bezier(.4,0,1,1) forwards}
.offers.in{animation:slot-in .45s cubic-bezier(.2,.8,.2,1) both}
.offers{display:grid;gap:12px}
.offers .og{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.prod{display:flex;align-items:center;gap:14px;min-width:0}
.prod .pic{flex:none;width:76px;height:76px;border-radius:16px;overflow:hidden;background:#fff;border:1px solid var(--line);display:grid;place-items:center;font-size:34px;color:var(--fg);position:relative}
.prod .pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.prod b{display:block;font-size:16px;line-height:1.3;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.prod small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
@media (max-width:640px){.offers .og{grid-template-columns:minmax(0,1fr);gap:8px}.offers .offer{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px;padding:12px 16px}.offers .offer b{grid-column:2;grid-row:1 / span 2;font-size:20px}.offers .offer em{margin-top:2px}}
.offer{background:var(--soft);border-radius:18px;padding:16px 18px;display:grid;gap:2px;font-variant-numeric:tabular-nums}
.offer span{font-size:14px;color:var(--muted)}
.offer b{font-size:24px;letter-spacing:-.025em;font-weight:600}
.offer em{font-style:normal;justify-self:start;font-size:12px;font-weight:600;color:var(--on-signal);background:var(--signal);border-radius:999px;padding:2px 9px;margin-top:6px}
.offer.top{background:var(--opal);box-shadow:0 0 0 1px var(--line) inset}
.see{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:600;color:var(--signal-ink);text-decoration:none}
.see .ph{transition:transform .2s cubic-bezier(.2,.8,.2,1)}
.see:hover span{text-decoration:underline;text-underline-offset:3px}
.see:hover .ph{transform:translateX(3px)}
.marquee{background:var(--strip);color:var(--on-strip);overflow:hidden;margin-top:96px}
.band{content-visibility:auto;contain-intrinsic-size:auto 900px}
.marquee .track{display:flex;width:max-content;gap:0;animation:marq 38s linear infinite;will-change:transform}
.marquee span{font-size:clamp(22px,2.6vw,34px);font-weight:600;letter-spacing:-.02em;padding:18px 0;white-space:nowrap;display:inline-flex;align-items:center}
.marquee span::after{content:"";width:10px;height:10px;border-radius:2px;background:var(--sep);transform:rotate(45deg);margin:0 32px}
@keyframes marq{to{transform:translateX(-50%)}}
.marquee:hover .track{animation-play-state:paused}
.works{color:var(--muted);font-size:15px;margin:24px 0 0}
.where{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;margin-top:28px}.where div{display:grid;gap:4px;align-content:start;padding:14px 16px;border-radius:16px;border:1px solid var(--line);background:var(--card)}.where b{font-size:15px}.where span{font-size:14px;color:var(--muted);line-height:1.45}
section.band{padding:120px 0}
section.band+section.band{border-top:1px solid var(--line)}
@media (max-width:640px){section.band{padding:72px 0}}
h2{font-size:clamp(34px,4.6vw,64px);line-height:1.04;letter-spacing:-.04em;margin:0;font-weight:700}
.lead{color:var(--muted);font-size:clamp(17px,1.4vw,20px);margin:18px 0 0;max-width:46ch}
.pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media (max-width:1100px){.pillars{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.pillars{grid-template-columns:minmax(0,1fr)}}
.pillar{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:20px;display:grid;gap:6px;align-content:start}
.pillar h3{margin:0 0 6px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.prow{--tint:hsl(var(--h) 85% 93%);--tink:hsl(var(--h) 62% 32%);display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:center;padding:8px;margin:0 -8px;border-radius:14px;text-decoration:none;color:var(--fg)}
a.prow:hover{background:var(--soft)}
.prow .ti{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--tint);color:var(--tink);font-size:20px}
.prow b{display:block;font-size:15px}
.prow small{display:block;font-size:13px;line-height:1.35;color:var(--muted)}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .prow{--tint:hsl(var(--h) 35% 17%);--tink:hsl(var(--h) 75% 72%)}}html[data-theme="dark"] .prow{--tint:hsl(var(--h) 35% 17%);--tink:hsl(var(--h) 75% 72%)}
.tools-more{margin:20px 0 0}
.pillar-group{display:grid;gap:14px;margin-top:28px}
.pillar-group h2{margin:0;font-size:24px;letter-spacing:-.02em;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.pillar-group h2 span{font-size:15px;font-weight:500;color:var(--muted);letter-spacing:0}
.tools-head{display:grid;gap:14px;margin-bottom:36px}
.tools-head h2{margin:0}
.tools-head .lead{margin:0;max-width:560px}
.kit{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media (max-width:1100px){.kit{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.kit{grid-template-columns:minmax(0,1fr);gap:10px}}
.tool-card{--tint:hsl(var(--h) 85% 93%);--tink:hsl(var(--h) 62% 32%);position:relative;display:grid;grid-template-rows:auto auto 1fr auto;gap:8px;padding:22px;border-radius:24px;background:var(--card);border:1px solid var(--line);text-decoration:none;color:var(--fg);min-width:0;transition:transform .2s cubic-bezier(.2,.8,.2,1),border-color .2s}
.tool-card.link:hover{transform:translateY(-3px);border-color:var(--tink)}
.tool-card q{display:block;align-self:end;margin-top:6px;padding:10px 12px;border-radius:14px;background:var(--soft);font-size:13.5px;line-height:1.4;color:var(--fg)}
.tool-card q::before{content:"“"}.tool-card q::after{content:"”"}
.tool-card:focus-visible{outline:2px solid var(--tink);outline-offset:3px}
.tool-card .ti{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--tint);color:var(--tink);font-size:25px;margin-bottom:6px}
.tool-card .ti .ph{font-size:26px}
.tool-card b{font-size:18px;letter-spacing:-.015em}
.tool-card p{margin:0;font-size:14.5px;line-height:1.45;color:var(--muted)}
.tool-card .go{position:absolute;top:22px;right:22px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);color:var(--tink);font-size:16px;transition:background .2s,border-color .2s}
.tool-card.link:hover .go{background:var(--tint);border-color:transparent}
.tool-card .go .ph{transition:transform .2s cubic-bezier(.2,.8,.2,1)}
.tool-card.link:hover .go .ph{transform:translate(2px,-2px)}
@media (max-width:560px){.tool-card{grid-template-columns:52px minmax(0,1fr);grid-template-rows:none;column-gap:14px;row-gap:4px;padding:16px}.tool-card .ti{grid-row:span 4;margin:0}.tool-card q{grid-column:2}.tool-card .go{top:14px;right:14px;width:32px;height:32px}}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .tool-card{--tint:hsl(var(--h) 35% 17%);--tink:hsl(var(--h) 75% 72%)}}html[data-theme="dark"] .tool-card{--tint:hsl(var(--h) 35% 17%);--tink:hsl(var(--h) 75% 72%)}
.try{margin-top:56px;display:grid;gap:14px;max-width:760px}
.search{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:6px 6px 6px 22px;color:var(--muted)}
.search:focus-within{border-color:var(--fg)}
.search input{flex:1;min-width:0;border:0;background:transparent;font:17px/1 var(--font);color:var(--fg);height:46px;outline:none}
.search input::placeholder{color:var(--muted)}
.search button{display:inline-flex;align-items:center;gap:8px;height:46px;border:0;border-radius:999px;padding:0 22px;background:var(--fg);color:var(--bg);font:600 15px/1 var(--font);cursor:pointer;white-space:nowrap}
.search button:active{transform:scale(.97)}
@media (max-width:480px){.search button span{display:none}.search button{padding:0 15px}}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips a{font-size:14.5px;text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:6px 14px;color:var(--muted)}
.chips a:hover{color:var(--fg);border-color:var(--fg)}
.steps{margin:64px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;counter-reset:s}
.steps li{position:relative;padding:0 32px 0 0;counter-increment:s;display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-content:start;min-width:0}
.steps li::before{content:counter(s);font-size:15px;font-weight:700;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--fg);color:var(--bg);margin-bottom:8px}
/* The rule joins one step to the next, so it stops at the last step. */
.steps li:not(:last-child)::after{content:"";position:absolute;top:16px;left:46px;right:12px;height:2px;border-radius:2px;background:var(--sep)}
.steps b{font-size:24px;letter-spacing:-.025em;line-height:1.2}
.steps p{margin:0;color:var(--muted);max-width:34ch}
@media (max-width:860px){.steps{grid-template-columns:minmax(0,1fr)}.steps li{padding:0 0 40px 52px}.steps li:last-child{padding-bottom:0}.steps li::before{position:absolute;left:0;top:-3px;margin:0}.steps li:not(:last-child)::after{top:43px;bottom:9px;left:16px;right:auto;width:2px;height:auto}}
.url{display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:5px 5px 5px 18px;margin-top:8px;max-width:min(400px,100%)}
.url code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 14.5px/1.4 var(--mono)}
.url button{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 15px;border-radius:999px;border:0;background:var(--signal);color:var(--on-signal);font:600 14px/1 var(--font);cursor:pointer}
.url button .ph{font-size:16px}
.faq-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:64px;align-items:start}
@media (max-width:860px){.faq-grid{grid-template-columns:minmax(0,1fr);gap:32px}}
.faq details{border-top:1px solid var(--line)}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:24px 0;font-size:19px;font-weight:600;letter-spacing:-.015em}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ph{color:var(--muted);transition:transform .25s cubic-bezier(.2,.8,.2,1)}
.faq details[open] summary .ph{transform:rotate(45deg);color:var(--fg)}
.faq p{margin:0 0 24px;color:var(--muted);max-width:60ch}
footer{border-top:1px solid var(--line);padding:56px 0 0;color:var(--muted);font-size:14px;overflow:hidden}
footer .row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px 32px;align-items:flex-start}
footer nav{display:flex;flex-wrap:wrap;gap:22px}
footer nav a{text-decoration:none;color:var(--fg)}
footer nav a:hover{color:var(--signal-ink)}
/* Phones: 42px-tall footer links (easier to tap) with the same visual spacing. */
@media (max-width:640px){footer nav{gap:2px 22px}footer nav a{padding:10px 0}}
footer p{margin:0;max-width:60ch}
.bigmark{font-weight:800;letter-spacing:-.035em;line-height:.8;text-transform:uppercase;font-size:clamp(72px,21vw,340px);color:var(--fg);margin:48px 0 0;user-select:none;white-space:nowrap}
.bigmark i{display:inline-block;width:.495em;height:.495em;background:var(--metal);box-shadow:0 0 0 2px rgba(0,0,0,.16) inset;transform:translateY(-.1025em) rotate(45deg);margin:0 .1em 0 .15em}
.page{padding-top:48px;padding-bottom:120px;display:grid;gap:28px}
.crumbs{font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);display:flex;gap:8px;flex-wrap:wrap}
.crumbs a{text-decoration:none}
.crumbs a:hover{color:var(--fg)}
.page h1{font-size:clamp(34px,4.6vw,64px);line-height:1.04;letter-spacing:-.04em;margin:0;font-weight:700}
.phead{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:center}
@media (max-width:900px){.phead{grid-template-columns:minmax(0,1fr)}}
.meta{color:var(--muted);font-size:15px;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:6px 18px}
.meta code{font:500 13.5px/1 var(--mono);background:var(--soft);border-radius:6px;padding:4px 7px}
.summary{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:26px;display:grid;gap:4px}
.summary small{color:var(--muted);font-size:14px;font-weight:700}
.summary b{font-size:44px;letter-spacing:-.035em;line-height:1.1;font-variant-numeric:tabular-nums}
.summary span{color:var(--muted);font-size:15px}
.summary .btn{margin-top:16px}
.filters{display:flex;flex-wrap:wrap;gap:8px}
.filters a{border:1px solid var(--line);text-decoration:none;border-radius:999px;padding:8px 16px;font-size:14.5px;color:var(--muted)}
.filters a:hover{color:var(--fg);border-color:var(--fg)}
.filters a[aria-current]{background:var(--fg);border-color:var(--fg);color:var(--bg);font-weight:600}
.rows{margin:0;padding:0;list-style:none;border-top:2px solid var(--fg)}
.rows li{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.5fr) auto 180px;gap:20px;align-items:center;padding:22px 4px;border-bottom:1px solid var(--line)}
.rows li.picked{background:var(--soft);border-radius:20px;border-bottom-color:transparent;padding-left:16px;padding-right:16px}
.rows li.out{opacity:.5}
.rows li.picked .tag:not(.best){background:var(--card)}
.store{font-weight:700;font-size:19px;letter-spacing:-.015em;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.tag{font-size:12.5px;font-weight:600;border-radius:999px;padding:3px 10px;background:var(--soft);color:var(--muted)}
.tag.best{background:var(--signal);color:var(--on-signal)}
.detail{color:var(--muted);font-size:14px;display:flex;flex-wrap:wrap;gap:2px 14px}
.price{text-align:right;font-variant-numeric:tabular-nums}
.price b{font-size:26px;letter-spacing:-.025em;display:block;line-height:1.1}
.price small{color:var(--muted);font-size:13px;white-space:nowrap}
.go-col{display:grid;gap:4px;text-align:center}
.go-col small{color:var(--muted);font-size:12px}
@media (max-width:900px){.rows li{grid-template-columns:minmax(0,1fr) auto}.rows .detail{grid-column:1/-1;order:3}.rows .go-col{grid-column:1/-1;order:4}}
.empty{padding:28px 4px;color:var(--muted)}
.fine{color:var(--muted);font-size:14px;display:grid;gap:8px;max-width:860px}
.fine p{margin:0}
.fine b{color:var(--fg)}
.results{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:16px}
.result{border:1px solid var(--line);border-radius:28px;padding:26px;display:grid;gap:6px;text-decoration:none;background:var(--card);transition:border-color .15s}
.result:hover{border-color:var(--fg)}
.result b{font-size:18px;letter-spacing:-.015em}
.result span{color:var(--muted);font-size:14.5px}
.result .from{color:var(--fg);font-weight:700;font-variant-numeric:tabular-nums}
.nav-acct{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--fg)!important;font-weight:600}
.avatar{width:34px;height:34px;border-radius:50%;background:var(--opal);color:var(--fg);display:grid;place-items:center;font-weight:700;font-size:14px;box-shadow:0 0 0 1px var(--line)}
.avatar.lg{width:64px;height:64px;font-size:24px}
.auth{min-height:calc(100dvh - 220px);display:grid;place-items:center;padding:56px 16px;background:radial-gradient(40% 60% at 20% 30%,var(--wash-1),transparent 70%),radial-gradient(40% 60% at 80% 70%,var(--wash-2),transparent 70%)}
.auth-card{width:min(440px,100%);background:linear-gradient(180deg,color-mix(in srgb,var(--card) 70%,transparent),var(--card) 45%),var(--opal);border:1px solid var(--line);border-radius:32px;padding:clamp(24px,5vw,40px);box-shadow:var(--shine);display:grid;gap:18px}
.auth-card h1{font-size:30px;line-height:1.1;letter-spacing:-.03em;margin:0;font-weight:600}
.auth-card .lead{font-size:16px;margin:0}
.auth-card form{display:grid;gap:10px}
.auth-card label{font-size:14px;font-weight:600}
.field{height:52px;border:1px solid var(--line);border-radius:16px;padding:0 16px;font:17px/1 var(--font);color:var(--fg);background:var(--bg);width:100%}
.field:focus{outline:none;border-color:var(--fg)}
.field.code{letter-spacing:.4em;font-variant-numeric:tabular-nums;text-align:center;font-size:24px}
.auth-card .btn{width:100%}
.btn.google{background:var(--card);border-color:var(--line);color:var(--fg)}
.btn.google:hover{border-color:var(--fg)}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}
.or{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;color:var(--muted);font-size:13px}
.or::before,.or::after{content:"";height:1px;background:var(--line)}
.msg{min-height:1.4em;margin:0;font-size:14.5px;color:var(--muted)}
.msg.bad{color:#b42318}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .msg.bad{color:#ff8a80}}html[data-theme="dark"] .msg.bad{color:#ff8a80}
.hint-sm{font-size:13.5px;color:var(--muted);margin:0}
.hint-sm a{color:var(--fg);font-weight:600}
.linkish{background:none;border:0;padding:0;font:inherit;color:var(--fg);font-weight:600;text-decoration:underline;cursor:pointer}
.dash{padding-top:48px;padding-bottom:120px;display:grid;gap:28px}
.dash-head{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.dash-head h1{font-size:clamp(30px,3.6vw,46px);letter-spacing:-.035em;margin:0;font-weight:600;line-height:1.1}
.dash-head p{margin:2px 0 0;color:var(--muted)}
.dash-head .btn{margin-left:auto}
.dash-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:20px;align-items:start}
@media (max-width:900px){.dash-grid{grid-template-columns:minmax(0,1fr)}}
.panel{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:clamp(20px,3vw,32px);display:grid;gap:16px;min-width:0}
.panel h2{font-size:22px;letter-spacing:-.02em;font-weight:600}
.panel.metal{background:var(--opal);box-shadow:var(--shine);border-color:transparent}
.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.saved{margin:0;padding:0;list-style:none;display:grid}
.saved li{display:grid;grid-template-columns:56px minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}
.saved li:first-child{border-top:0;padding-top:0}
.saved .thumb{width:56px;height:56px;border-radius:16px;background:var(--opal);display:grid;place-items:center;font-size:26px;color:var(--fg)}
.saved a.t{font-weight:600;text-decoration:none}
.saved a.t:hover{text-decoration:underline}
.saved small{display:block;color:var(--muted);font-size:13.5px}
.saved .p{font-weight:700;font-variant-numeric:tabular-nums}
@media (max-width:520px){.saved li{grid-template-columns:48px minmax(0,1fr) auto}.saved .thumb{width:48px;height:48px}.saved .p{grid-column:2;grid-row:2}.saved li form{grid-column:3;grid-row:1/span 2}}
.icon-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--fg);display:grid;place-items:center;cursor:pointer}
.icon-btn:hover{border-color:var(--fg)}
.empty-state{display:grid;gap:12px;justify-items:start;color:var(--muted)}
.kv{margin:0;display:grid;grid-template-columns:auto 1fr;gap:10px 18px;font-size:15px}
.kv dt{color:var(--muted)}
.kv dd{margin:0;font-weight:600;overflow-wrap:anywhere}
/* Delete confirmation: type your email, then hold for 3 seconds. */
.dlg{border:1px solid var(--line);border-radius:28px;padding:28px;width:min(440px,calc(100vw - 32px));background:var(--card);color:var(--fg);box-shadow:0 30px 80px -30px rgba(0,0,0,.5)}
.dlg[open]{display:grid;gap:14px}
.dlg::backdrop{background:rgba(10,10,12,.55)}
.dlg h2{margin:0;font-size:24px;letter-spacing:-.02em}
.dlg p{margin:0;color:var(--muted)}
.dlg label{font-weight:600;font-size:15px}
.dlg .msg:empty{display:none}
.hold{position:relative;overflow:hidden;height:52px;border-radius:999px;border:1px solid #b42318;background:transparent;color:#b42318;font:700 16px/1 var(--font);cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none}
.hold:disabled{opacity:.4;cursor:not-allowed}
.hold .fill{position:absolute;inset:0;background:rgba(180,35,24,.2);transform:scaleX(0);transform-origin:left}
.hold .lab{position:relative}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .hold{border-color:#ff8a80;color:#ff8a80}html:not([data-theme="light"]) .hold .fill{background:rgba(255,138,128,.22)}}html[data-theme="dark"] .hold{border-color:#ff8a80;color:#ff8a80}html[data-theme="dark"] .hold .fill{background:rgba(255,138,128,.22)}
/* Quiet until needed: red text and a faint red outline, a light red wash on hover. */
.btn.danger{background:transparent;color:#b42318;border-color:rgba(180,35,24,.28)}
.btn.danger:hover{background:rgba(180,35,24,.07);border-color:#b42318;color:#b42318}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .btn.danger{color:#ff8a80;border-color:rgba(255,138,128,.3)}html:not([data-theme="light"]) .btn.danger:hover{background:rgba(255,138,128,.1);border-color:#ff8a80;color:#ff8a80}}html[data-theme="dark"] .btn.danger{color:#ff8a80;border-color:rgba(255,138,128,.3)}html[data-theme="dark"] .btn.danger:hover{background:rgba(255,138,128,.1);border-color:#ff8a80;color:#ff8a80}
.toolrow{display:flex;align-items:center;gap:14px}
.toolrow .tile{width:52px;height:52px;border-radius:16px;background:var(--opal);display:grid;place-items:center;color:var(--fg);font-size:24px;flex:none}
.toolrow.soon .tile{background:transparent;border:2px dashed var(--line);color:var(--muted)}
.toolrow b{display:block}
.toolrow span{color:var(--muted);font-size:14px}
.shop-head{display:grid;gap:18px;max-width:860px}
.seg{display:flex;gap:4px;padding:4px;border-radius:999px;background:var(--soft);width:max-content;max-width:100%;overflow-x:auto}
.seg a{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;border-radius:999px;text-decoration:none;font-weight:600;font-size:15px;color:var(--muted);white-space:nowrap}
.seg a:hover{color:var(--fg)}
.seg a[aria-current]{background:var(--card);color:var(--fg);box-shadow:0 0 0 1px var(--line),0 2px 6px -2px rgba(20,20,25,.18)}
.cats{display:flex;flex-wrap:wrap;gap:8px}
@media (max-width:640px){.cats{flex-wrap:nowrap;overflow-x:auto;margin-inline:-16px;padding-inline:16px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.cats::-webkit-scrollbar{display:none}.cats a{flex:none}}
.cats a{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:8px 16px;text-decoration:none;font-size:15px;color:var(--muted)}
.cats a:hover{color:var(--fg);border-color:var(--fg)}
.cats a[aria-current]{background:var(--signal);border-color:var(--signal);color:var(--on-signal)}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(270px,100%),1fr));gap:20px}
@media (max-width:640px){.pgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pcard{border-radius:20px}.pbody{padding:12px 12px 14px;gap:2px}.pbody .cat{font-size:12px}.pbody b{font-size:14.5px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.pbody .price{margin-top:6px}.pbody .price strong{font-size:20px}.pbody .price small{font-size:12px}.save-form{top:8px;right:8px}.save-btn{width:36px;height:36px}.save-btn .ph{font-size:22px}}
.pcard{position:relative;display:grid;min-width:0;background:var(--card);border:1px solid var(--line);border-radius:28px;overflow:hidden;transition:border-color .15s,transform .25s cubic-bezier(.2,.8,.2,1)}
.pcard:hover{border-color:var(--fg)}
.pcard>a{text-decoration:none;display:grid;grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr);min-width:0}
.pimg{position:relative;aspect-ratio:4/3;background:var(--opal);display:grid;place-items:center;color:var(--fg);overflow:hidden;isolation:isolate}
.pimg .ph{font-size:clamp(64px,8vw,96px);filter:drop-shadow(0 10px 18px rgba(0,0,0,.18))}
/* Real product photos fill a square frame edge to edge; the tinted well stays for icon-only sample products. */
.pimg:has(img){aspect-ratio:1;background:#fff}
.pimg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pimg::after{content:"";position:absolute;inset:-30%;z-index:-1;background:linear-gradient(110deg,transparent 42%,rgba(255,255,255,.7) 50%,transparent 58%);transform:translateX(-60%);transition:transform 1s cubic-bezier(.2,.8,.2,1)}
.pcard:hover .pimg::after{transform:translateX(60%)}
.pbody{padding:18px 20px 22px;display:grid;grid-template-columns:minmax(0,1fr);gap:4px;align-content:start;min-width:0;overflow-wrap:anywhere}
.pbody .cat{font-size:13px;color:var(--muted);font-weight:600}
.pbody b{font-size:17px;letter-spacing:-.015em;line-height:1.3}
.pbody .price{text-align:left;margin-top:8px}
.pbody .price strong{font-size:26px;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.pbody .price small{display:block;white-space:normal}
.save-form{position:absolute;top:14px;right:14px;z-index:2;margin:0}
/* Just the heart: dark outline with a soft white halo so it reads on any photo; filled red once saved. */
.save-btn{width:40px;height:40px;border:0;background:transparent;color:#141518;display:grid;place-items:center;cursor:pointer;text-decoration:none;filter:drop-shadow(0 0 3px rgba(255,255,255,.95));transition:transform .15s}
.save-btn:hover{transform:scale(1.08)}
.save-btn:active{transform:scale(.94)}
.save-btn.on{color:#e0245e}
.save-btn .ph{font-size:25px}
.pd{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
@media (max-width:900px){.pd{grid-template-columns:minmax(0,1fr)}.pd .pimg{width:100%;max-width:520px;justify-self:center}}
.pd .pimg{aspect-ratio:1;border-radius:32px;box-shadow:var(--shine)}
.pd .pimg .ph{font-size:clamp(110px,14vw,180px)}
.pd-info{display:grid;gap:18px;align-content:start}
.pd-info h1{font-size:clamp(30px,3.6vw,48px)}
.pd-actions{display:flex;gap:10px;flex-wrap:wrap}
.legal{max-width:820px}
.legal h2{font-size:22px;letter-spacing:-.02em;margin:18px 0 0}
.legal p,.legal li{color:var(--muted);font-size:16.5px;line-height:1.65}
.legal li{margin:6px 0}
.legal b{color:var(--fg)}
.legal ul{margin:0;padding-left:22px}
.rc-form{display:grid;gap:12px;max-width:860px}
.rc-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,2fr) minmax(0,1fr) auto;gap:10px}
@media (max-width:760px){.rc-row{grid-template-columns:minmax(0,1fr)}}
.rc-list{display:grid;gap:14px;margin:0;padding:0;list-style:none;max-width:980px}
.rc{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:20px 22px;display:grid;gap:8px}
.rc-top{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:13.5px;color:var(--muted)}
.rc-src{font-weight:700;font-size:12px;border-radius:999px;padding:3px 10px;background:var(--opal);color:var(--fg)}
.rc b{font-size:17px;line-height:1.35;letter-spacing:-.01em}
.rc p{margin:0;color:var(--muted);font-size:15px}
.rc a.src-link{font-weight:600;font-size:14.5px;color:var(--fg)}
.rc-note{display:flex;gap:10px;align-items:flex-start;background:var(--opal);border-radius:20px;padding:14px 18px;max-width:980px;font-size:15px}
.rc-note .ph{font-size:20px;margin-top:2px}
.es-metrics{display:flex;flex-wrap:wrap;gap:6px 16px;color:var(--muted);font-size:14.5px;font-variant-numeric:tabular-nums}
.es-metrics b{color:var(--fg);font-size:15px}
.save-prompt{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--opal);border-radius:20px;padding:12px 12px 12px 18px;font-weight:600}
.save-prompt span{flex:1;min-width:200px}
@media (prefers-reduced-motion:no-preference){.stage::after{animation:glint 7s cubic-bezier(.45,0,.2,1) infinite 1.2s}}
@media (prefers-reduced-motion:reduce){.slot.in,.slot.out,.marquee .track{animation:none}.btn,.tool-card{transition:none}}
.theme{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:var(--soft);margin-top:20px}
.consent{position:fixed;z-index:60;left:max(16px,env(safe-area-inset-left,0px));right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));max-width:560px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:14px 16px;border-radius:16px;background:var(--card);border:1px solid var(--line);box-shadow:0 18px 40px -18px rgba(0,0,0,.35)}
.consent p{margin:0;flex:1 1 260px;font-size:14px;color:var(--fg)}
.consent div{display:flex;gap:8px}
.theme button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--muted);font:600 13px/1 var(--font);padding:8px 12px;border-radius:999px;cursor:pointer}
.theme button:hover{color:var(--fg)}
.theme button[aria-pressed="true"]{background:var(--card);color:var(--fg);box-shadow:0 0 0 1px var(--line)}
.theme .ph{font-size:15px}
.agent{position:relative;display:inline-block;white-space:nowrap;vertical-align:baseline;transition:width .32s cubic-bezier(.2,.8,.2,1)}
.agent .twin{position:absolute;left:0;top:0;visibility:hidden;white-space:nowrap;padding:0 .245em 0 .2em;pointer-events:none}
.agent .twin::before{content:attr(data-word)}
.agent .chip{display:inline-block;padding:0 .245em 0 .2em;border-radius:.2em;background:rgb(var(--chip-rgb) / .16);color:rgb(var(--chip-ink))}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .agent .chip{background:rgb(var(--chip-rgb) / .24);color:rgb(var(--chip-rgb))}}html[data-theme="dark"] .agent .chip{background:rgb(var(--chip-rgb) / .24);color:rgb(var(--chip-rgb))}
.agent .chip.swap{animation:word-in .42s cubic-bezier(.2,.8,.2,1) both}
@keyframes word-in{from{opacity:0;transform:translateY(.32em)}to{opacity:1;transform:translateY(0)}}
.priv{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:40px}
@media (max-width:960px){.priv{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.priv{grid-template-columns:minmax(0,1fr)}}
.priv div{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:22px;display:grid;gap:8px;align-content:start;min-width:0}
.priv .ph{font-size:26px;color:var(--fg)}
.priv b{font-size:17px;letter-spacing:-.01em}
.priv p{margin:0;color:var(--muted);font-size:15px}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media (max-width:900px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.kpis{grid-template-columns:minmax(0,1fr)}}
.kpi{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:18px 20px;display:grid;gap:4px;min-width:0}
.kpi small{color:var(--muted);font-weight:600;font-size:13px}
.kpi b{font-size:30px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.kpi span{color:var(--muted);font-size:13px}
.ledger{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.ledger li{display:grid;grid-template-columns:150px minmax(0,1fr) auto auto;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14.5px;align-items:baseline}
.ledger li span{color:var(--muted);font-variant-numeric:tabular-nums}
.ledger li b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ledger li.empty{display:block;color:var(--muted)}
@media (max-width:640px){.ledger li{grid-template-columns:minmax(0,1fr);gap:2px}.ledger li b{white-space:normal}}
html,body{overscroll-behavior:none}
.cats,.seg{overscroll-behavior-x:contain}
.detail .warn{display:inline-flex;align-items:center;gap:6px;color:#9a5a00}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .detail .warn{color:#f0b35c}}html[data-theme="dark"] .detail .warn{color:#f0b35c}
.recall{display:flex;align-items:flex-start;gap:8px;margin:0;font-size:14.5px}
.recall .ph{font-size:18px;flex:none;margin-top:1px}
.recall.ok{color:var(--muted)}.recall.ok .ph{color:#2f8a66}
.recall.bad{display:grid;gap:8px;padding:14px 16px;border-radius:18px;border:1px solid rgba(180,35,24,.3);background:rgba(180,35,24,.06)}
.recall.bad p{margin:0;display:flex;gap:8px;align-items:center;color:#b42318}
.recall.bad ul{margin:0;padding-left:26px;display:grid;gap:4px}
.recall.bad li span{color:var(--muted)}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .recall.ok .ph{color:#6fd3a8}html:not([data-theme="light"]) .recall.bad{border-color:rgba(255,138,128,.35);background:rgba(255,138,128,.08)}html:not([data-theme="light"]) .recall.bad p{color:#ff8a80}}html[data-theme="dark"] .recall.ok .ph{color:#6fd3a8}html[data-theme="dark"] .recall.bad{border-color:rgba(255,138,128,.35);background:rgba(255,138,128,.08)}html[data-theme="dark"] .recall.bad p{color:#ff8a80}
.summary .warn-line{display:inline-flex;gap:6px;align-items:center;color:#9a5a00}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .summary .warn-line{color:#f0b35c}}html[data-theme="dark"] .summary .warn-line{color:#f0b35c}
.report{margin-top:6px;text-align:right}
.report summary{display:inline;cursor:pointer;font-size:12.5px;color:var(--muted);list-style:none;text-decoration:underline;text-underline-offset:2px}
.report summary::-webkit-details-marker{display:none}
.report form{display:grid;gap:6px;justify-items:start;text-align:left;margin-top:8px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--card);font-size:14px}
.report label{display:flex;gap:6px;align-items:center}
.build{display:grid;gap:28px}
.build-head{display:grid;gap:8px}
.build-head .est{font-size:15px;color:var(--muted)}
.build-head .est b{font-size:30px;color:var(--fg);letter-spacing:-.02em;margin-right:8px}
.build-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:start}
@media (max-width:900px){.build-grid{grid-template-columns:minmax(0,1fr)}}
.build .card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:20px 22px;display:grid;gap:14px;min-width:0}
.build h2{font-size:20px;margin:0;letter-spacing:-.01em}
.iso{width:100%;height:auto;max-height:520px}
.build{--b1:#e9c99b;--b2:#c9a37a;--b3:#d8b98f;--b4:#b98c63;--b5:#efd8b4;--edge:#5a4632;--shade1:rgba(0,0,0,.12);--shade2:rgba(0,0,0,.24)}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .build{--b1:#a88a62;--b2:#8c6f4f;--b3:#9b7f5a;--b4:#7d6146;--b5:#b89a70;--edge:#e9dcc8;--shade1:rgba(0,0,0,.18);--shade2:rgba(0,0,0,.34)}}html[data-theme="dark"] .build{--b1:#a88a62;--b2:#8c6f4f;--b3:#9b7f5a;--b4:#7d6146;--b5:#b89a70;--edge:#e9dcc8;--shade1:rgba(0,0,0,.18);--shade2:rgba(0,0,0,.34)}
.buylist{width:100%;border-collapse:collapse;font-size:15px}
.buylist th{text-align:left;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:6px 8px 8px 0;border-bottom:1px solid var(--line)}
.buylist td{padding:10px 8px 10px 0;border-bottom:1px solid var(--line);vertical-align:middle;font-variant-numeric:tabular-nums}
.buylist tr:last-child td{border-bottom:0}
.buylist .num{text-align:right;white-space:nowrap}
.cutrow{display:grid;gap:6px}
.cutrow small{color:var(--muted);font-size:13px}
.cutbar{display:flex;height:34px;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:repeating-linear-gradient(135deg,var(--soft) 0 6px,var(--bg) 6px 12px)}
.cutbar>span{display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;background:var(--b1);color:#2a2016;border-right:2px solid var(--card);min-width:0;padding:0 4px}
.cutbar>span:nth-child(even){background:var(--b3)}
.sheetsvg{width:100%;max-width:360px;height:auto}
.notes-list{margin:0;padding-left:20px;display:grid;gap:6px;font-size:15px}
.tablewrap-b{overflow-x:auto}
.page.blog{grid-template-columns:minmax(0,1fr)}
.t-travel{--tc:linear-gradient(135deg,#dcebff 0%,#eef6ff 55%,#e3f1fb 100%);--ti:#1f5fae}
.t-recalls{--tc:linear-gradient(135deg,#dff5ea 0%,#effaf4 55%,#e2f3f0 100%);--ti:#1d7a52}
.t-prices{--tc:linear-gradient(135deg,#ffe9dc 0%,#fff4ec 55%,#ffe6ea 100%);--ti:#b24a1f}
.t-builder{--tc:linear-gradient(135deg,#fff1cf 0%,#fff8e6 55%,#f8ecd6 100%);--ti:#8a5a00}
.t-cars{--tc:linear-gradient(135deg,#e6e9f2 0%,#f3f5f9 55%,#e4e8ef 100%);--ti:#3a4a66}
.t-energy{--tc:linear-gradient(135deg,#e7f7d9 0%,#f4fbec 55%,#e6f4e0 100%);--ti:#4a7a12}
.t-divux{--tc:var(--plat);--ti:var(--fg)}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .t-travel{--tc:linear-gradient(135deg,#16263d 0%,#1a2230 100%);--ti:#8fbfff}html:not([data-theme="light"]) .t-recalls{--tc:linear-gradient(135deg,#132e23 0%,#18241f 100%);--ti:#7fd7aa}html:not([data-theme="light"]) .t-prices{--tc:linear-gradient(135deg,#352219 0%,#2c1d22 100%);--ti:#ffb08a}html:not([data-theme="light"]) .t-builder{--tc:linear-gradient(135deg,#33290f 0%,#2a2416 100%);--ti:#f2c35a}html:not([data-theme="light"]) .t-cars{--tc:linear-gradient(135deg,#20242e 0%,#1b1e25 100%);--ti:#aebbd6}html:not([data-theme="light"]) .t-energy{--tc:linear-gradient(135deg,#1e2e12 0%,#1c2418 100%);--ti:#b2e07a}}html[data-theme="dark"] .t-travel{--tc:linear-gradient(135deg,#16263d 0%,#1a2230 100%);--ti:#8fbfff}html[data-theme="dark"] .t-recalls{--tc:linear-gradient(135deg,#132e23 0%,#18241f 100%);--ti:#7fd7aa}html[data-theme="dark"] .t-prices{--tc:linear-gradient(135deg,#352219 0%,#2c1d22 100%);--ti:#ffb08a}html[data-theme="dark"] .t-builder{--tc:linear-gradient(135deg,#33290f 0%,#2a2416 100%);--ti:#f2c35a}html[data-theme="dark"] .t-cars{--tc:linear-gradient(135deg,#20242e 0%,#1b1e25 100%);--ti:#aebbd6}html[data-theme="dark"] .t-energy{--tc:linear-gradient(135deg,#1e2e12 0%,#1c2418 100%);--ti:#b2e07a}
.cover{position:relative;display:grid;place-items:center;background:var(--tc);border-radius:24px;overflow:hidden;aspect-ratio:16/10;color:var(--ti)}
.cover::before{content:"";position:absolute;inset:0;background-image:radial-gradient(currentColor 1px,transparent 1.4px);background-size:22px 22px;opacity:.12}
.cover .tile{position:relative;width:min(34%,128px);aspect-ratio:1;border-radius:28%;display:grid;place-items:center;background:var(--card);box-shadow:var(--shine)}
.cover .tile .ph{font-size:clamp(28px,4.4vw,56px)}
.topic{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--ti)}
.topic .ph{font-size:15px}
.blog-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:16px 32px}
.blog-head h1{margin:0}
.blog-head .lead{margin:8px 0 0;max-width:620px}
.rss{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--muted);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:7px 14px}
.rss:hover{color:var(--fg);border-color:var(--fg)}
.filters{display:flex;flex-wrap:wrap;gap:8px}
.filters button{font:500 14.5px var(--font);color:var(--muted);background:transparent;border:1px solid var(--line);border-radius:999px;padding:7px 15px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.filters button:hover{color:var(--fg);border-color:var(--fg)}
.filters button[aria-pressed="true"]{background:var(--signal);border-color:var(--signal);color:var(--on-signal)}
.featured{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(20px,4vw,56px);align-items:center;text-decoration:none;color:inherit;padding-bottom:clamp(28px,4vw,44px);border-bottom:1px solid var(--line)}
.featured .cover{aspect-ratio:16/10}
.featured .txt{display:grid;gap:12px;align-content:center}
.featured h2{margin:0;font-size:clamp(28px,3.4vw,44px);line-height:1.08;letter-spacing:-.025em;text-wrap:balance}
.featured p{margin:0;color:var(--muted);font-size:18px}
.featured:hover h2,.card-post:hover h3{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.byline{font-size:14px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px}
.read{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:15px}
.post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:clamp(20px,3vw,36px) clamp(16px,2.4vw,28px)}
.card-post{display:grid;gap:10px;align-content:start;text-decoration:none;color:inherit}
.card-post .cover{aspect-ratio:16/10;margin-bottom:6px}
.card-post .cover .tile{width:30%}
.card-post h3{margin:0;font-size:20px;line-height:1.25;letter-spacing:-.015em;text-wrap:balance}
.card-post p{margin:0;color:var(--muted);font-size:15.5px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.card-post .row{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;font-size:13px;color:var(--muted)}
.empty-filter{color:var(--muted)}
.post-head{display:grid;gap:14px;max-width:880px;min-width:0}
.post-head h1{margin:0;font-size:clamp(34px,5vw,58px);line-height:1.04;letter-spacing:-.03em;text-wrap:balance}
.post-head .lead{margin:0;max-width:720px}
.post-meta{margin:0;font-size:14px;color:var(--muted)}
.post-note{margin:0;font-size:13.5px;color:var(--muted);border:1px solid var(--line);border-radius:12px;padding:8px 12px;justify-self:start}
.post-cover{aspect-ratio:auto;height:clamp(160px,22vw,280px)}
.post-cover .tile{width:auto;height:58%}
.post-layout{display:grid;grid-template-columns:minmax(0,760px) 240px;justify-content:space-between;gap:56px;align-items:start}
.post{min-width:0;width:100%}
.post-body,.post-head{overflow-wrap:break-word}
.post-body{font-size:18px;line-height:1.7}
.post-body>:first-child{margin-top:0}
.post-head+.post-body{margin-top:clamp(28px,4vw,44px)}
.post-body h2{font-size:27px;line-height:1.2;margin:44px 0 12px;letter-spacing:-.02em;scroll-margin-top:96px}
.post-body h3{font-size:20px;margin:28px 0 8px;scroll-margin-top:96px}
.post-body ul,.post-body ol{padding-left:22px;display:grid;gap:8px}
.post-body li::marker{color:var(--muted)}
.post-body a{text-underline-offset:3px}
.post-body blockquote{margin:20px 0;padding:14px 18px;border-radius:16px;background:var(--soft)}
.post-body code{font-family:var(--mono);font-size:.9em;background:var(--soft);border-radius:6px;padding:1px 5px}
.post-table{overflow-x:auto;margin:22px 0;border:1px solid var(--line);border-radius:18px;background:var(--card)}
.post-table table{border-collapse:collapse;width:100%;min-width:560px;font-size:15px;line-height:1.45}
.post-table th{text-align:left;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:12px 14px;border-bottom:1px solid var(--line);background:var(--soft)}
.post-table td{padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.post-table tr:last-child td{border-bottom:0}
.post-table td:first-child{font-weight:600}
.toc{position:sticky;top:96px;display:grid;gap:4px;font-size:14px}
.toc b{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.toc a{display:block;padding:6px 0 6px 14px;border-left:2px solid var(--line);color:var(--muted);text-decoration:none;line-height:1.35}
.toc a:hover{color:var(--fg)}
.toc a[aria-current="true"]{color:var(--fg);border-left-color:var(--fg);font-weight:600}
.toc-sm{display:none;border:1px solid var(--line);border-radius:16px;padding:4px 16px;margin-bottom:8px}
.toc-sm summary{cursor:pointer;font-weight:600;font-size:15px;padding:10px 0}
.toc-sm a{display:block;padding:7px 0;color:var(--muted);text-decoration:none;font-size:15px;border-top:1px solid var(--line)}
.post-cta{margin-top:44px;padding:24px 26px;border-radius:24px;background:var(--soft);display:grid;gap:8px;justify-items:start}
.post-cta p{margin:0;color:var(--muted)}
.tool-page{--tint:hsl(var(--h) 85% 93%);--tink:hsl(var(--h) 62% 32%)}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .tool-page{--tint:hsl(var(--h) 35% 17%);--tink:hsl(var(--h) 75% 72%)}}html[data-theme="dark"] .tool-page{--tint:hsl(var(--h) 35% 17%);--tink:hsl(var(--h) 75% 72%)}
.tool-page .ti.big{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:var(--tint);color:var(--tink);font-size:28px}
.tool-ask{display:grid;gap:6px;margin:0 0 28px}.tool-ask span{font-size:13px;color:var(--muted)}.tool-ask q{font-size:clamp(20px,2.4vw,28px);font-weight:600;quotes:"“" "”"}
.tool-example{padding:24px 26px;border-radius:24px;border:1px solid var(--line);display:grid;gap:12px}
.tool-example h2{margin:0;font-size:18px}.tool-example h2 small{font-weight:400;color:var(--muted);font-size:13px;margin-left:8px}
.tool-example .say{margin:0;font-size:17px;line-height:1.55}
.tool-example pre{white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.5;margin:10px 0 0;color:var(--muted)}
.tool-example .src{margin:0;font-size:13px;color:var(--muted)}
.tool-page .pillar-group{margin-top:44px}
.more-posts{display:grid;gap:20px;border-top:1px solid var(--line);padding-top:clamp(28px,4vw,44px)}
.more-posts h2{margin:0;font-size:24px;letter-spacing:-.015em}
@media (max-width:960px){.post-layout{grid-template-columns:minmax(0,1fr)}.toc{display:none}.toc-sm{display:block}}
@media (max-width:760px){.featured{grid-template-columns:minmax(0,1fr)}.post-body{font-size:17px}.post-body h2{font-size:23px}}
@media (max-width:640px){.post-grid{gap:18px}.card-post{grid-template-columns:96px minmax(0,1fr);column-gap:14px;row-gap:4px;padding-bottom:18px;border-bottom:1px solid var(--line)}.card-post .cover{grid-row:span 3;aspect-ratio:1;border-radius:18px;margin:0}.card-post .cover .tile{width:52%;border-radius:30%}.card-post .cover .tile .ph{font-size:22px}.card-post h3{font-size:17px}.card-post p{font-size:14.5px;-webkit-line-clamp:2;grid-column:2}.card-post .row>span:last-child{display:none}.featured .cover{aspect-ratio:16/9}.post-cover{height:120px}}
.live-txt{margin-right:2px}
.iso-wrap{touch-action:none;cursor:grab;user-select:none}
.iso-wrap:active{cursor:grabbing}
.viewer-ctl,.viewer-steps{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}
.viewer-steps span{font-size:14.5px;flex:1;min-width:0}
.viewer-ctl [aria-pressed="true"]{background:var(--soft)}
@media (max-width:640px){.build .card{padding:16px}.buylist{font-size:14px}.buylist th,.buylist td{padding-right:6px}.live-txt{display:none}.btn.live{padding:8px 10px}.cutbar .pn{display:none}.cutbar>span{font-size:11px;padding:0 2px}}
.trip-note{margin:0;font-size:13.5px;color:var(--muted);border:1px solid var(--line);border-radius:12px;padding:8px 12px;justify-self:start}
.page.trip{grid-template-columns:minmax(0,1fr)}
.flight-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:12px;align-items:end}
.flight-form label{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--muted)}
.flight-form input[type=text],.flight-form input[type=month]{height:48px;border:1px solid var(--line);border-radius:14px;background:var(--bg);color:var(--fg);font:16px/1 var(--font);padding:0 14px;min-width:0;width:100%}
.flight-form .ow{display:flex;align-items:center;gap:8px;height:48px;font-size:15px;color:var(--fg)}
.flight-form .btn{height:48px}
.fares{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fare{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:6px 18px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:16px 20px}
.fare .price{justify-self:start;font-size:26px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.fare .legs{display:grid;gap:3px;font-size:15px}
.fare .legs span{color:var(--muted);font-size:13.5px}
.fare .book{display:grid;gap:4px;justify-items:end;font-size:12px;color:var(--muted)}
@media (max-width:640px){.fare{grid-template-columns:1fr auto}.fare .legs{grid-column:1/-1;grid-row:2}}
.trip-facts .panel{align-content:start}
.trip .search input{width:100%}
.trip-head{display:grid;gap:14px}
.trip-head .lead{margin:0;max-width:720px}
.trip .search{max-width:640px}
.trip .search button{border:0;border-radius:999px;height:46px;padding:0 20px;display:inline-flex;align-items:center;gap:8px;background:var(--signal);color:var(--on-signal);font:600 15px/1 var(--font);cursor:pointer}
.lv{--l1:#2f7d4f;--l2:#b7791f;--l3:#c4561a;--l4:#c0392b;display:inline-flex;align-items:center;gap:8px;font-weight:600;white-space:nowrap}
.lv i{display:inline-flex;gap:3px}
.lv i b{width:7px;height:16px;border-radius:3px;background:var(--line)}
.lv.l1 i b:nth-child(-n+1){background:var(--l1)}.lv.l2 i b:nth-child(-n+2){background:var(--l2)}.lv.l3 i b:nth-child(-n+3){background:var(--l3)}.lv.l4 i b{background:var(--l4)}
.lv.none{color:var(--muted);font-weight:500}
.advice{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px}
.gov{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:22px;display:grid;gap:10px;align-content:start}
.gov .who{font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.gov .say{font-size:19px;font-weight:600;letter-spacing:-.01em;line-height:1.3;margin:0}
.gov .when{font-size:13.5px;color:var(--muted);margin:0}
.callout{background:var(--soft);border-radius:20px;padding:16px 20px;margin:0}
.trip-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px}
.trip-facts ul{margin:0;padding-left:18px;display:grid;gap:6px}
.big-rate{font-size:clamp(26px,3vw,36px);font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
/* The footer sits at the bottom of the window even on short pages (2026-10-26). */
body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
body>main{flex:1 0 auto}
.chips-row{display:flex;flex-wrap:wrap;gap:8px}
.chips-row a{text-decoration:none;font-size:14px;font-weight:600;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:7px 12px}
.chips-row a:hover{background:var(--soft)}
.dest-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:12px}
.dest{position:relative;display:grid;border-radius:18px;overflow:hidden;text-decoration:none;color:#fff;aspect-ratio:16/9;background:var(--soft);isolation:isolate}
.dest img,.dest-blank{grid-area:1/1;width:100%;height:100%;object-fit:cover;max-width:100%;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.dest-blank{background:var(--fire,linear-gradient(135deg,hsl(22 90% 90%),hsl(268 70% 92%)))}
.dest::after{content:"";grid-area:1/1;z-index:1;background:linear-gradient(180deg,transparent 40%,rgba(10,10,12,.62))}
.dest b{grid-area:1/1;z-index:2;align-self:end;padding:12px 14px;font-size:16px;text-shadow:0 1px 6px rgba(0,0,0,.45)}
.dest:hover img{transform:scale(1.04)}
.dest:focus-visible{outline:2px solid var(--fg);outline-offset:3px}
.photo-credits{margin:10px 0 0;font-size:12px;color:var(--muted);line-height:1.5}
.photo-credits a,.trip-banner figcaption a{color:inherit}
.trip-banner{margin:0 0 28px}
.trip-banner img{display:block;width:100%;height:clamp(150px,22vw,300px);object-fit:cover;border-radius:24px;max-width:100%}
.trip-banner figcaption{margin-top:8px;font-size:12px;color:var(--muted)}
@media (prefers-reduced-motion:reduce){.dest img{transition:none}.dest:hover img{transform:none}}
.ask .ask-box{display:grid;gap:12px;max-width:820px}
.ask-log{display:grid;gap:12px;min-height:220px;padding:18px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(160deg,hsl(268 70% 97%),var(--card) 55%,hsl(22 80% 97%));align-content:start}
.ask-try b{display:block;font-size:14px;margin-bottom:8px;color:var(--muted)}
.ask-chip{font:600 14px/1.3 var(--font);border:1px solid var(--line);background:var(--card);color:var(--fg);border-radius:999px;padding:8px 13px;cursor:pointer;text-align:left}
.msg{max-width:88%;padding:12px 15px;border-radius:18px;font-size:15.5px;line-height:1.5;overflow-wrap:anywhere}
.msg p{margin:0}.msg p+p,.msg p+ul,.msg ul+p{margin-top:8px}.msg ul{margin:0;padding-left:20px}
.msg.you{justify-self:end;background:var(--signal);color:var(--on-signal);border-bottom-right-radius:6px}
.msg.ai{justify-self:start;background:var(--card);border:1px solid var(--line);border-bottom-left-radius:6px}
.msg.ai a{color:inherit}
.msg.wait{color:var(--muted)}
.msg.err{border-color:hsl(350 60% 75%)}
.ask-form{display:flex;gap:10px;align-items:flex-end}
.ask-form textarea{flex:1;min-width:0;resize:vertical;font:16px/1.4 var(--font);padding:12px 14px;border-radius:18px;border:1px solid var(--line);background:var(--card);color:var(--fg)}
.ask-form textarea:focus-visible{outline:2px solid var(--fg);outline-offset:1px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .ask-log{background:linear-gradient(160deg,hsl(268 25% 13%),var(--card) 55%,hsl(22 25% 12%))}}html[data-theme="dark"] .ask-log{background:linear-gradient(160deg,hsl(268 25% 13%),var(--card) 55%,hsl(22 25% 12%))}
.flag{font-family:"Apple Color Emoji","Noto Color Emoji","Segoe UI Emoji",sans-serif;font-weight:400;margin-right:.35em}
h1 .flag{font-size:.8em;vertical-align:.04em}
.plan-ico{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--soft);font-size:24px;color:var(--fg)}
.gov .tag{justify-self:start}
.advice.plan{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}
@media (max-width:640px){.advice.plan .gov{grid-template-columns:48px 1fr;column-gap:14px;padding:18px}.advice.plan .plan-ico{grid-row:span 3}}
.credits{font-size:13px;color:var(--muted);display:grid;gap:4px;margin:0}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .lv{--l1:#6fd29a;--l2:#f0b44f;--l3:#f39a5e;--l4:#ff7d74}}html[data-theme="dark"] .lv{--l1:#6fd29a;--l2:#f0b44f;--l3:#f39a5e;--l4:#ff7d74}
/* Color layer (2026-10-26, user: "too black and white ... gradient color slightly lightly and also colors on the
   components", then "i like the before [homepage] ... its just the things in other areas", e.g. travel). The homepage
   (body.home) keeps its own look; every other page gets a soft wash at the top, tool cards tinted by their own hue, a
   colored diamond per part of life, pastel chips, tinted travel cards and a tinted footer. Dark mode uses deep tints. */
:root{--p-health:350;--p-wealth:155;--p-love:22;--p-happiness:268}
body:not(.home){background:radial-gradient(40% 560px at 4% 0,var(--wash-1),transparent 72%) no-repeat,radial-gradient(38% 520px at 96% 0,var(--wash-2),transparent 72%) no-repeat,radial-gradient(34% 460px at 50% 0,var(--wash-3),transparent 72%) no-repeat,var(--bg)}
[data-p=health]{--ph:var(--p-health)}[data-p=wealth]{--ph:var(--p-wealth)}[data-p=love]{--ph:var(--p-love)}[data-p=happiness]{--ph:var(--p-happiness)}
.pillar-group[data-p] h2{display:flex;align-items:center;gap:10px}
.pillar-group[data-p] h2::before{content:"";flex:none;width:12px;height:12px;border-radius:2px;transform:rotate(45deg);background:linear-gradient(135deg,hsl(var(--ph) 85% 72%),hsl(var(--ph) 70% 55%))}
.tool-card{background:linear-gradient(160deg,hsl(var(--h) 85% 95%) 0,var(--card) 62%);border-color:hsl(var(--h) 40% 88%)}
.tool-card q{background:hsl(var(--h) 70% 96%)}
body:not(.home) .btn.ink,body:not(.home) .btn.signal{background:linear-gradient(180deg,#2e2f35,#141518)}
body:not(.home) .chips-row a:nth-child(5n+1){background:hsl(22 90% 96%);border-color:hsl(22 60% 88%)}
body:not(.home) .chips-row a:nth-child(5n+2){background:hsl(350 85% 96%);border-color:hsl(350 55% 89%)}
body:not(.home) .chips-row a:nth-child(5n+3){background:hsl(268 75% 97%);border-color:hsl(268 45% 90%)}
body:not(.home) .chips-row a:nth-child(5n+4){background:hsl(190 65% 95%);border-color:hsl(190 40% 86%)}
body:not(.home) .chips-row a:nth-child(5n+5){background:hsl(155 60% 95%);border-color:hsl(155 40% 85%)}
body:not(.home) .chips-row a:hover{filter:brightness(.97)}
body:not(.home) footer{background:linear-gradient(180deg,transparent,hsl(268 50% 97%) 35%,hsl(22 70% 96%))}
.post-cta{background:linear-gradient(120deg,hsl(22 90% 95%),hsl(350 80% 96%) 35%,hsl(268 70% 96%) 70%,hsl(155 55% 95%))}
.advice.plan .gov:nth-child(5n+1){--gh:268}.advice.plan .gov:nth-child(5n+2){--gh:22}.advice.plan .gov:nth-child(5n+3){--gh:155}.advice.plan .gov:nth-child(5n+4){--gh:190}.advice.plan .gov:nth-child(5n+5){--gh:350}
.advice.plan .gov{background:linear-gradient(165deg,hsl(var(--gh) 80% 96%),var(--card) 65%);border-color:hsl(var(--gh) 40% 88%)}
.trip-facts .panel:nth-child(5n+1){--gh:22}.trip-facts .panel:nth-child(5n+2){--gh:155}.trip-facts .panel:nth-child(5n+3){--gh:350}.trip-facts .panel:nth-child(5n+4){--gh:268}.trip-facts .panel:nth-child(5n+5){--gh:190}
.trip-facts .panel{background:linear-gradient(165deg,hsl(var(--gh) 80% 96%),var(--card) 60%);border-color:hsl(var(--gh) 40% 88%)}
.trip .advice .gov{background:linear-gradient(180deg,hsl(40 60% 98%),var(--card) 70%)}
.advice.plan .plan-ico{background:hsl(var(--gh) 80% 92%);color:hsl(var(--gh) 55% 32%)}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .tool-card{background:linear-gradient(160deg,hsl(var(--h) 35% 15%) 0,var(--card) 62%);border-color:hsl(var(--h) 25% 24%)}html:not([data-theme="light"]) .tool-card q{background:hsl(var(--h) 25% 14%)}html:not([data-theme="light"]) body:not(.home) .btn.ink,html:not([data-theme="light"]) body:not(.home) .btn.signal{background:var(--signal)}html:not([data-theme="light"]) body:not(.home) .chips-row a:nth-child(5n+1){background:hsl(22 30% 16%);border-color:hsl(22 25% 25%)}html:not([data-theme="light"]) body:not(.home) .chips-row a:nth-child(5n+2){background:hsl(350 30% 16%);border-color:hsl(350 25% 25%)}html:not([data-theme="light"]) body:not(.home) .chips-row a:nth-child(5n+3){background:hsl(268 28% 18%);border-color:hsl(268 22% 27%)}html:not([data-theme="light"]) body:not(.home) .chips-row a:nth-child(5n+4){background:hsl(190 28% 15%);border-color:hsl(190 22% 24%)}html:not([data-theme="light"]) body:not(.home) .chips-row a:nth-child(5n+5){background:hsl(155 28% 14%);border-color:hsl(155 22% 23%)}html:not([data-theme="light"]) body:not(.home) footer{background:linear-gradient(180deg,transparent,hsl(268 22% 10%) 35%,hsl(22 22% 10%))}html:not([data-theme="light"]) .post-cta{background:linear-gradient(120deg,hsl(22 30% 15%),hsl(350 25% 15%) 35%,hsl(268 25% 17%) 70%,hsl(155 22% 13%))}html:not([data-theme="light"]) .advice.plan .gov{background:linear-gradient(165deg,hsl(var(--gh) 32% 15%),var(--card) 65%);border-color:hsl(var(--gh) 22% 24%)}html:not([data-theme="light"]) .trip-facts .panel{background:linear-gradient(165deg,hsl(var(--gh) 30% 14%),var(--card) 60%);border-color:hsl(var(--gh) 22% 24%)}html:not([data-theme="light"]) .trip .advice .gov{background:var(--card)}html:not([data-theme="light"]) .advice.plan .plan-ico{background:hsl(var(--gh) 30% 20%);color:hsl(var(--gh) 70% 76%)}
}html[data-theme="dark"] .tool-card{background:linear-gradient(160deg,hsl(var(--h) 35% 15%) 0,var(--card) 62%);border-color:hsl(var(--h) 25% 24%)}html[data-theme="dark"] .tool-card q{background:hsl(var(--h) 25% 14%)}html[data-theme="dark"] body:not(.home) .btn.ink,html[data-theme="dark"] body:not(.home) .btn.signal{background:var(--signal)}html[data-theme="dark"] body:not(.home) .chips-row a:nth-child(5n+1){background:hsl(22 30% 16%);border-color:hsl(22 25% 25%)}html[data-theme="dark"] body:not(.home) .chips-row a:nth-child(5n+2){background:hsl(350 30% 16%);border-color:hsl(350 25% 25%)}html[data-theme="dark"] body:not(.home) .chips-row a:nth-child(5n+3){background:hsl(268 28% 18%);border-color:hsl(268 22% 27%)}html[data-theme="dark"] body:not(.home) .chips-row a:nth-child(5n+4){background:hsl(190 28% 15%);border-color:hsl(190 22% 24%)}html[data-theme="dark"] body:not(.home) .chips-row a:nth-child(5n+5){background:hsl(155 28% 14%);border-color:hsl(155 22% 23%)}html[data-theme="dark"] body:not(.home) footer{background:linear-gradient(180deg,transparent,hsl(268 22% 10%) 35%,hsl(22 22% 10%))}html[data-theme="dark"] .post-cta{background:linear-gradient(120deg,hsl(22 30% 15%),hsl(350 25% 15%) 35%,hsl(268 25% 17%) 70%,hsl(155 22% 13%))}html[data-theme="dark"] .advice.plan .gov{background:linear-gradient(165deg,hsl(var(--gh) 32% 15%),var(--card) 65%);border-color:hsl(var(--gh) 22% 24%)}html[data-theme="dark"] .trip-facts .panel{background:linear-gradient(165deg,hsl(var(--gh) 30% 14%),var(--card) 60%);border-color:hsl(var(--gh) 22% 24%)}html[data-theme="dark"] .trip .advice .gov{background:var(--card)}html[data-theme="dark"] .advice.plan .plan-ico{background:hsl(var(--gh) 30% 20%);color:hsl(var(--gh) 70% 76%)}

