/* Halo layer, loaded after app.css: orb, tactile gradients, record glow, bar layering and home rhythm. Decorative literals live here only; text and boundaries use tokens. */
/* Iridescent glass sphere: a clear body, drifting bands, fixed highlights, inner glow and rim light. Only transform and opacity move. */
:root{--orb-peach:#ffd3b4;--orb-white:#ffffff;--orb-clear:34%;--orb-band:.8;--orb-rim:.7;--orb-inner:.5}
[data-theme$="-dark"]{--orb-clear:16%;--orb-band:.92;--orb-rim:.5;--orb-inner:.32}
.orb{position:relative;isolation:isolate;inline-size:clamp(7rem,15vw,11rem);aspect-ratio:1;margin:1rem auto;border-radius:50%;background:radial-gradient(circle at 50% 58%,color-mix(in srgb,var(--orb-white) var(--orb-clear),transparent) 0,color-mix(in srgb,var(--orb-stop-2) 26%,transparent) 55%,color-mix(in srgb,var(--orb-stop-1) 50%,transparent) 100%),color-mix(in srgb,var(--orb-stop-1) 22%,var(--solid));box-shadow:inset 0 0 2.25rem color-mix(in srgb,var(--orb-white) calc(var(--orb-inner) * 100%),transparent),inset 0 -1.25rem 2rem color-mix(in srgb,var(--orb-stop-3) 55%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--orb-white) calc(var(--orb-rim) * 100%),transparent),var(--elevation);animation:orb-swell var(--orb-duration) ease-in-out infinite alternate}
.orb::before{content:'';position:absolute;inset:-25%;z-index:-1;border-radius:50%;background:radial-gradient(circle,var(--orb-glow),transparent 68%);animation:orb-breathe var(--orb-duration) ease-in-out infinite alternate}
.orb::after{content:'';position:absolute;inset:0;border-radius:50%;opacity:var(--orb-band);background:conic-gradient(from 20deg at 42% 58%,var(--orb-stop-1),var(--orb-stop-3),var(--orb-peach),var(--orb-stop-2),var(--orb-stop-1)),conic-gradient(from 200deg at 64% 36%,var(--orb-stop-2),var(--orb-stop-1),var(--orb-stop-3),var(--orb-peach),var(--orb-stop-2));background-blend-mode:screen;-webkit-mask-image:radial-gradient(circle,transparent 18%,#000 72%);mask-image:radial-gradient(circle,transparent 18%,#000 72%);animation:orb-bands 48s linear infinite}
.orb-shine{position:absolute;inset:0;z-index:1;border-radius:50%;pointer-events:none;background:radial-gradient(ellipse 26% 16% at 30% 19%,#fffffff2,transparent 72%),radial-gradient(ellipse 52% 34% at 33% 26%,#ffffff70,transparent 70%),radial-gradient(circle at 72% 80%,#ffffff66,transparent 20%),radial-gradient(circle,transparent 66%,#ffffff66 98%,transparent 100%)}
@keyframes orb-swell{to{transform:scale(1.035)}}
@keyframes orb-bands{to{transform:rotate(360deg)}}
@keyframes orb-breathe{from{transform:scale(.92);opacity:.45}to{transform:scale(1.08);opacity:.85}}
/* The bar is its own transition group and sits above every page layer. */
nav{view-transition-name:app-nav}
::view-transition-group(app-nav){z-index:1}
::view-transition-old(app-nav){display:none}
::view-transition-new(app-nav){animation:none}
@media(max-width:599px){nav{z-index:30}main{position:relative;z-index:0}}

/* Clay uses one inner light, one inner shade and one drop. Tint supplies the control boundary. */
:where(:root){--destructive-a:#be123c;--destructive-b:#9f1239;--on-destructive:#ffffff;--clay-inner-light:inset 0 10px 18px -12px #ffffffcc;--clay-inner-shade:inset 0 -14px 20px -14px #51447755;--clay-drop:0 12px 22px -10px #51447740;--glass-fill:var(--surface);--glass-edge:var(--line);--glass-blur:16px;--clay-pressed-scale:.97;--quiet-fill:linear-gradient(145deg,var(--solid),var(--surface));--control-shadow:var(--clay-inner-light),var(--clay-inner-shade),var(--clay-drop)}
body{background:var(--ground,var(--bg))}
button,.segmented button,.suggestions button,#chat-form #microphone,.preview-button,.preview-chip,.icon-bubble,nav .orb-action{border:0;outline:none;border-radius:var(--radius-full,999px);background:var(--quiet-fill);color:var(--ink);box-shadow:var(--control-shadow)}
button,.segmented button,.suggestions button,#chat-form #microphone{background-color:var(--solid)}
form>button,#signin,#setup-device,.preview-button,#voice-listen,#voice-stop,nav .orb-action,.segmented button[aria-pressed=true]{background:var(--gradient);color:var(--on-accent)}
button:active,button[aria-pressed=true],.segmented button[aria-pressed=true],#voice-listen:active,#voice-stop:active,#chat-form #microphone:active{transform:scale(var(--clay-pressed-scale));box-shadow:var(--clay-inner-shade)}
:focus-visible,button:focus-visible,.theme-choice:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.theme-choice[aria-pressed=true]{outline:none}
.theme-choice[aria-pressed=true] strong::after{content:' ✓'}
button.danger,#health-confirm-yes,#everywhere,#remove-reference{background:linear-gradient(145deg,var(--destructive-a),var(--destructive-b));color:var(--on-destructive)}
.segmented,input[type=checkbox]{border:0;background:var(--quiet-fill);box-shadow:var(--clay-inner-shade)}
input[type=checkbox]::after{border:0;background:var(--quiet-fill);box-shadow:var(--control-shadow)}
input[type=checkbox]:checked::after{background:var(--gradient)}
input[type=range]{appearance:none;background:transparent;border:0;box-shadow:none;padding:0}
input[type=range]::-webkit-slider-runnable-track{height:12px;border:0;border-radius:999px;background:var(--quiet-fill);box-shadow:var(--clay-inner-shade)}
input[type=range]::-moz-range-track{height:12px;border:0;border-radius:999px;background:var(--quiet-fill);box-shadow:var(--clay-inner-shade)}
input[type=range]::-webkit-slider-thumb{appearance:none;width:28px;height:28px;margin-top:-8px;border:0;border-radius:50%;background:var(--gradient);box-shadow:var(--control-shadow)}
input[type=range]::-moz-range-thumb{width:28px;height:28px;border:0;border-radius:50%;background:var(--gradient);box-shadow:var(--control-shadow)}
header,nav,section,article,details,#home-today,#chat-form,#chat-history .assistant,.theme-preview,#ask-dock{background:var(--glass-fill);border:1px solid var(--glass-edge);box-shadow:var(--elevation-1,var(--shadow));backdrop-filter:none}
header,#chat-form,#ask-dock{backdrop-filter:blur(var(--glass-blur))}
#home-page{container-type:inline-size;max-width:none;background:transparent;border:0;box-shadow:none;backdrop-filter:none;padding:0}
.home-presence{text-align:left;padding:1rem 0}.home-presence .orb{float:right;inline-size:6rem;margin:0 1rem}
#home-greeting{font-size:clamp(1.75rem,3vw,2.125rem);font-weight:800}
.home-bento{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;clear:both}
.home-bento article{margin:0;min-width:0;padding:1rem;border-radius:var(--radius-large);min-height:10rem}
.home-bento h3{margin:.5rem 0}.home-bento .today-tile{min-height:16rem}
.icon-bubble{padding:.4rem;box-sizing:content-box}.home-bento svg,nav svg,#chat-form svg,.sparkle-avatar svg{fill:currentColor;stroke:none}
.suggestions{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.suggestions button{white-space:nowrap}
@container(min-width:420px){.home-bento{grid-template-columns:repeat(2,minmax(0,1fr))}.today-tile{grid-column:span 2}}
@container(min-width:760px){.home-bento{grid-template-columns:repeat(4,minmax(0,1fr))}.today-tile{grid-row:span 2}}
#home-search{display:flex;gap:.5rem;align-items:center;margin:0 0 1rem}#home-search input{flex:1;min-width:0}#home-search button{margin:0}
#ask-dock{display:none}body:not([data-signed-in=true]) #home-search{display:none}
@media(min-width:1024px){body[data-signed-in=true]{grid-template-columns:var(--navigation) minmax(0,1fr) 180px}#ask-dock{margin:1rem .75rem;padding:1rem;border-radius:var(--radius-large);align-self:start;position:sticky;top:1rem}body[data-signed-in=true] #ask-dock{display:block}#ask-dock a{display:block;min-height:48px}body[data-page=home] main{max-width:none}}
[data-theme=amoled-dark] header,[data-theme=amoled-dark] #chat-form,[data-theme=amoled-dark] #ask-dock{backdrop-filter:none}
[data-theme=amoled-dark] body::before,[data-theme=amoled-dark] body::after{display:none}
[data-theme=hud-dark] button,[data-theme=hud-dark] article,[data-theme=hud-dark] .segmented{border-radius:3px}
[data-solid=true] header,[data-solid=true] nav,[data-solid=true] section,[data-solid=true] article,[data-solid=true] details,[data-solid=true] #home-today,[data-solid=true] #chat-form,[data-solid=true] #chat-history .assistant,[data-solid=true] .theme-preview,[data-solid=true] #ask-dock{background:var(--solid);backdrop-filter:none}
@media(prefers-reduced-transparency:reduce){header,nav,section,article,details,#home-today,#chat-form,#chat-history .assistant,.theme-preview,#ask-dock{background:var(--solid);backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition-duration:1ms!important}button:active{transform:none}}
@media(forced-colors:active){button,.icon-bubble,.segmented{border:1px solid ButtonText;box-shadow:none;background:ButtonFace;color:ButtonText}:focus-visible,button:focus-visible{outline:2px solid Highlight}}
@media(max-width:599px){header{backdrop-filter:none;background:transparent;border:0}}

#voice-stop::after,#chat-form #microphone[data-state=recording]::after{content:'';position:absolute;inset:-6px;border-radius:inherit;box-shadow:0 0 1.25rem var(--accent);pointer-events:none;animation:record-glow 1.6s ease-in-out infinite alternate}
#voice-stop,#chat-form #microphone[data-state=recording]{position:relative}
@keyframes record-glow{from{opacity:.35}to{opacity:1}}
@media(forced-colors:active){.orb-shine{display:none}}

.chips span{border:0;background:var(--quiet-fill);box-shadow:var(--control-shadow);color:var(--ink)}
#chat-history li,#item-grid article,#shopping-suggestions article{backdrop-filter:none}
.segmented button[aria-pressed=true]::after{content:' ✓'}
.theme-choice[aria-pressed=true]:focus-visible,nav .orb-action:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
nav a[aria-current]{border:0;box-shadow:var(--control-shadow)}

.theme-choice{border-radius:var(--radius-large);box-shadow:var(--control-shadow)}
button:hover:not(:active):not([aria-pressed=true]){box-shadow:var(--control-shadow)}
.theme-choice[aria-pressed=true]{box-shadow:var(--clay-inner-shade)}
#today-outfit,.stat,.briefing-preview,#chat-banner{background:var(--glass-fill);border:1px solid var(--glass-edge);backdrop-filter:none}
[data-solid=true] #today-outfit,[data-solid=true] .stat,[data-solid=true] .briefing-preview,[data-solid=true] #chat-banner{background:var(--solid)}
@media(prefers-reduced-transparency:reduce){#today-outfit,.stat,.briefing-preview,#chat-banner{background:var(--solid)}}

:where(:root,[data-theme]){--quiet-fill:linear-gradient(145deg,var(--solid),var(--surface));--control-shadow:var(--clay-inner-light),var(--clay-inner-shade),var(--clay-drop)}
/* Static washes retain the semantic foreground palette. AMOLED keeps its black ground. */
[data-theme=halo-light] body{background:radial-gradient(ellipse at 12% 0,color-mix(in srgb,#d9d2ff 65%,transparent),transparent 50%),radial-gradient(ellipse at 100% 25%,color-mix(in srgb,#ffd9e3 45%,transparent),transparent 50%),var(--ground)}
[data-theme=halo-dark] body{background:radial-gradient(ellipse at 10% 0,#29214f,transparent 55%),radial-gradient(ellipse at 100% 28%,#321b35,transparent 55%),var(--ground)}
[data-theme=amoled-dark] body{background:radial-gradient(ellipse at 100% 0,#100d20,transparent 50%),var(--ground)}
[data-theme=hud-dark] body{background:radial-gradient(ellipse at 50% 0,#08212c,transparent 55%),var(--ground)}
[data-theme$=-dark]{--quiet-fill:linear-gradient(145deg,color-mix(in srgb,var(--solid) 90%,var(--ink)),var(--solid))}
@media(max-width:1023px){#ask-dock{display:none!important}}
@media(prefers-reduced-transparency:reduce){.settings-links a,.transcript-tile,#photo-upload,#shopping-form,#devices li,#chat-page{background:var(--solid);backdrop-filter:none}}

/* Halo v2 layout: shared geometry, local type and page composition. */


:root{--navigation:210px}
body{font-family:'Plus Jakarta Sans',system-ui,sans-serif;font-size:15px;font-weight:500;grid-template-columns:210px minmax(0,1fr);gap:12px;padding:12px;background-attachment:fixed}
[data-theme=hud-dark] body,code,pre,.pair-code{font-family:'JetBrains Mono',monospace}
body::before,body::after{animation:none;inset:0}
header{height:calc(100dvh - 24px);top:12px;border-radius:24px;padding:16px 12px;border:1px solid var(--glass-edge)}
header>a{margin-bottom:20px;font-size:20px;font-weight:800;padding:8px}
nav{border:0;background:transparent;box-shadow:none;gap:6px}
nav a{font-size:14px;border-radius:16px;min-height:48px;padding:10px 12px}
nav a[aria-current]{background:var(--quiet-fill);color:var(--ink);box-shadow:var(--control-shadow)}
main{max-width:1080px;padding:24px;width:100%}
h1{font-size:22px;font-weight:700;margin-bottom:20px}h2{font-size:22px;font-weight:700}h3{font-size:17px;font-weight:700}
main>section{margin:0;padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none}
.page-lede{margin:0 0 24px;font-size:15px}
#signout{left:28px;bottom:28px;width:178px}
body:not([data-signed-in=true]){display:block;padding:0}
body:not([data-signed-in=true]) header,body:not([data-signed-in=true]) #ask-dock,body:not([data-signed-in=true]) #home-search{display:none}
body:not([data-signed-in=true]) main{display:flex;flex-direction:column;justify-content:center;min-height:100dvh;padding:24px 16px;max-width:1080px}
body:not([data-signed-in=true]) main>h1{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#signin-panel{flex:none;width:100%;max-width:420px;margin:0 auto;padding:40px 32px;background:var(--glass-fill);border:1px solid var(--glass-edge);border-radius:24px;box-shadow:var(--elevation-2,var(--shadow))}
#signin-panel p{font-size:13px}#signin-panel>.brand-mark{margin-bottom:20px}#signin-heading{margin-bottom:8px}
body:not([data-signed-in=true]) #status{text-align:center;margin:16px auto 0;max-width:420px}
#setup-page{max-width:420px;margin:auto;padding:32px;background:var(--glass-fill);border-radius:24px}
#home-search{padding:8px 10px;background:var(--glass-fill);border:1px solid var(--glass-edge);border-radius:24px;margin-bottom:24px}
#home-search input{border:0;border-radius:999px;background:var(--quiet-fill);box-shadow:var(--clay-inner-shade);font-size:14px}
.home-presence{padding:0 0 24px}.home-presence .orb{display:none}.home-presence .eyebrow{margin:0 0 8px;font-size:11.5px;text-transform:uppercase;font-weight:700}
#home-greeting{font-size:34px;line-height:1.2;font-weight:800}
.home-bento{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.home-bento article{padding:20px;min-height:180px;display:flex;flex-direction:column;align-items:start;gap:8px}.home-bento p{margin:0}.home-bento h3{margin:4px 0}.home-bento a{margin-top:auto;font-size:13px;min-height:44px;display:flex;align-items:center}.home-bento .today-tile{grid-column:span 2;min-height:230px}.home-bento article:last-child{grid-column:span 2}.suggestions{justify-content:start}
.icon-bubble{width:24px;height:24px;padding:10px;color:var(--accent);fill:currentColor;stroke:none;flex-shrink:0}
#settings-page{max-width:760px;margin:0 auto}
.settings-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 24px}
.settings-links a{padding:20px;border-radius:24px;background:var(--glass-fill);border:1px solid var(--glass-edge);text-decoration:none;color:var(--ink);font-weight:700;min-height:80px}.settings-links span{display:block;color:var(--muted);font-size:13px;font-weight:500;margin-top:4px}
#settings-page>details{margin:12px 0;padding:8px 20px;border-radius:24px}
#settings-page>details>summary{gap:14px;color:var(--ink);padding:8px 0;min-height:72px}
#settings-page>details>summary>span{flex:1}#settings-page>details>summary small{font-size:13px;color:var(--muted)}
#settings-page>details[open]{padding-bottom:20px}
#settings-page details details{background:transparent;box-shadow:none;border:0}
#theme-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}
.theme-choice{padding:12px;border-radius:18px;text-align:center;align-items:center;gap:6px;font-size:13px}
.theme-choice>.theme-preview{display:none}.theme-choice>span:last-child{display:none}.theme-choice:before{content:'';height:20px;width:40px;border-radius:999px;background:var(--gradient)}
.segmented{gap:4px;padding:4px;border-radius:24px}.segmented button{padding:10px 12px;font-size:13px;flex:1 0 80px}
.appearance-live{padding:24px;margin-top:20px;min-height:180px}.appearance-live .preview-button{display:inline-block;padding:12px 20px}
#chat-page{padding:16px;background:var(--glass-fill);border:1px solid var(--glass-edge);border-radius:24px}
#chat-form{background:var(--quiet-fill);box-shadow:var(--clay-inner-shade);border:0}#chat-form textarea{font-size:15px}
#chat-history .owner p{color:inherit}#chat-history .assistant{background:var(--glass-fill)}
#wardrobe-page{position:relative}.view-switch{max-width:260px;margin-bottom:20px}
#photo-upload{background:var(--glass-fill);border:1px dashed var(--glass-edge);padding:24px;border-radius:24px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}#photo-upload label{grid-column:1/-1;font-weight:700;margin:0}
#item-grid{gap:14px;margin-bottom:32px;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr))}#item-grid article{padding:16px;border-radius:24px}#item-grid .chips{margin:12px 0}#item-grid details{background:transparent;box-shadow:none;border:0}
.table-wrap{overflow:auto;background:var(--glass-fill);border:1px solid var(--glass-edge);border-radius:24px;margin:20px 0}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:14px;text-align:left}th{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}td{border-top:1px solid var(--glass-edge)}
#devices-page,#shopping-page{max-width:850px;margin:auto}#devices-page>details{padding:12px 20px;border-radius:18px}#devices{display:grid;gap:12px}#devices li{border:1px solid var(--glass-edge);padding:20px;background:var(--glass-fill);border-radius:24px}#devices:empty::after{content:'No devices loaded.';color:var(--muted)}
#shopping-form{background:var(--glass-fill);border:1px solid var(--glass-edge);padding:24px;border-radius:24px;margin:16px 0 24px}#shopping-form label{margin-top:0;font-weight:700}#shopping-form textarea{border:0;background:var(--quiet-fill);box-shadow:var(--clay-inner-shade);border-radius:18px}
#voice-page{min-height:calc(100dvh - 100px);padding:16px}#listening-orb{inline-size:clamp(140px,18vw,220px);margin:24px auto}#voice-page .eyebrow{margin:0}#listening-status{max-width:40ch}.transcript-tile{padding:20px;border-radius:24px;background:var(--glass-fill);border:1px solid var(--glass-edge);width:100%;max-width:480px;text-align:left}.transcript-tile h3{margin:0}.transcript-tile small{color:var(--muted);font-size:13px}#live-transcript{font-size:17px;min-height:2em;margin:12px 0}.voice-controls{margin:20px 0}
#ask-dock{width:auto;margin:0;padding:24px 16px;top:12px;text-align:center;border-radius:24px}#ask-dock>.orb{inline-size:110px;margin:12px auto 28px}#ask-dock h2{font-size:17px;margin:0}#ask-dock>p{font-size:13px;margin:8px 0 20px}#dock-messages{padding:0;margin:0 0 20px;display:flex;flex-direction:column;gap:12px;list-style:none;text-align:left}#dock-messages li{padding:12px;border-radius:18px;background:var(--glass-fill);border:1px solid var(--glass-edge);font-size:13px;overflow-wrap:anywhere;max-height:220px;overflow:auto}#dock-messages .owner{align-self:end;background:var(--gradient);color:var(--on-accent);border:0}#dock-messages small{display:block;font-size:11px;margin-bottom:6px}#dock-form{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;align-items:center}#dock-input{grid-column:1/-1;border:0;border-radius:999px;background:var(--quiet-fill);box-shadow:var(--clay-inner-shade);font-size:13px}#dock-form button{margin:0;min-height:44px}#dock-form svg{width:20px;height:20px;fill:currentColor}#ask-dock>a{font-size:13px;min-height:44px;display:flex;justify-content:center;align-items:center;margin-top:12px}
@media(min-width:1024px){body[data-signed-in=true]{grid-template-columns:210px minmax(0,1fr) 280px}body[data-page=home] main{max-width:1080px}body[data-signed-in=true] #ask-dock{display:block}}
@container(min-width:760px){.home-bento{grid-template-columns:repeat(4,minmax(0,1fr))}.home-bento .today-tile{grid-row:span 2}.home-bento article:last-child{grid-column:span 2}}
@media(min-width:600px) and (max-width:1023px){:root{--navigation:76px}body{grid-template-columns:76px minmax(0,1fr)}header{padding:12px 6px}#signout{left:18px;width:64px;font-size:10px}}
@media(max-width:599px){body{display:block;padding:0}header{height:64px;border:0;border-radius:0;padding:12px 16px;background:transparent}header>a{padding:0;margin:0;font-size:17px}main{padding:16px 16px calc(24px + var(--tabs))}nav{background:var(--glass-fill);border:1px solid var(--glass-edge);border-radius:24px 24px 0 0;padding:8px 4px calc(8px + env(safe-area-inset-bottom));height:var(--tabs)}nav a{padding:4px 2px;font-size:10px;border-radius:16px}nav .voice-nav{order:2;align-self:start;justify-self:center;width:56px;height:56px;border-radius:50%;transform:translateY(-20px);background:var(--gradient);color:var(--on-accent);box-shadow:var(--clay-drop)}nav .voice-nav span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#signout{top:12px;right:16px;left:auto;bottom:auto;width:auto}.home-bento{grid-template-columns:repeat(2,minmax(0,1fr))}.home-bento article{padding:16px;min-height:180px}.home-bento article:last-child{grid-column:span 2}#home-search{margin-bottom:20px}#home-search input{padding:12px;font-size:13px}#home-search button{font-size:13px;padding:10px 16px}#home-greeting{font-size:30px}.settings-links{grid-template-columns:1fr}#settings-page>details{padding-inline:16px}#theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#photo-upload{grid-template-columns:1fr}#chat-page{padding:8px}#chat-form{flex-wrap:nowrap}#chat-form button{width:44px;min-height:44px;padding:10px}#chat-form textarea{font-size:16px;padding-inline:4px}#chat-history li{max-width:94%}#voice-page{min-height:0;padding:8px 0}#voice-page .voice-controls{gap:8px}#listening-orb{margin:20px auto}#signin-panel{padding:32px 24px}}
[data-solid=true] .settings-links a,[data-solid=true] .transcript-tile,[data-solid=true] #photo-upload,[data-solid=true] #shopping-form,[data-solid=true] #devices li,[data-solid=true] #chat-page{background:var(--solid);backdrop-filter:none}
/* Keep all five Home tiles packed, with no unused bento cell. */
@container(min-width:760px){.home-bento .today-tile{grid-row:auto;grid-column:span 2}.home-bento article:nth-child(2){grid-column:span 2}.home-bento article:last-child{grid-column:span 2}}
[data-theme=halo-dark]{--glass-fill:color-mix(in srgb,var(--ink) 6%,transparent)}
[data-theme=amoled-dark]{--glass-fill:color-mix(in srgb,var(--ink) 5%,transparent)}
#dock-form{grid-template-columns:minmax(0,1fr) 44px 44px;padding:6px;border-radius:24px;background:var(--quiet-fill);box-shadow:var(--clay-inner-shade);gap:4px}
#dock-input{grid-column:auto;background:transparent;box-shadow:none;padding:8px;min-width:0}#dock-form button{width:44px;padding:10px}#dock-form #dock-voice{background:var(--quiet-fill);color:var(--ink)}
#theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.theme-choice{min-height:70px}
#theme-grid .theme-choice:nth-child(n+5){min-height:48px}.theme-choice:nth-child(n+5)::before{display:none}
#settings-page:has(#appearance-panel[open])>.page-lede,#settings-page:has(#appearance-panel[open])>.settings-links,#settings-page:has(#appearance-panel[open])>details:not(#appearance-panel){display:none}
#appearance-panel[open]{margin-top:0}.appearance-live{background:var(--ground);box-shadow:var(--elevation-1,var(--shadow))}
#appearance-panel[open] .segmented[aria-label='Accent colour'] button{flex-basis:65px}
#appearance-panel[open] label:has(input[type=checkbox]){display:flex;align-items:center;gap:12px}
#appearance-panel[open] .appearance-live{margin-top:16px}
@media(max-width:599px){#theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.theme-choice{font-size:12px;padding:8px}.theme-choice>strong{font-weight:600}.appearance-live{padding:16px}.appearance-live h3{font-size:17px}}
[data-theme=halo-dark]{--quiet-fill:linear-gradient(145deg,color-mix(in srgb,var(--solid) 78%,var(--ink)),color-mix(in srgb,var(--solid) 90%,var(--ink)))}
[data-theme$=-dark] main a,[data-theme$=-dark] #ask-dock>a{color:color-mix(in srgb,var(--accent) 60%,var(--ink))}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
@media(prefers-reduced-transparency:reduce){.appearance-live{background:var(--solid);backdrop-filter:none}}
.table-wrap table{min-width:560px}
#wardrobe-page>details{border-radius:18px;padding:8px 16px}
#health-confirm{padding:20px;background:var(--solid);border-radius:18px;margin-top:16px}
#settings-page .settings-links a{color:var(--ink)}
#appearance-panel .segmented button{white-space:nowrap}
[data-theme=halo-light] body{--muted:color-mix(in srgb,var(--secondary-text) 90%,var(--ink))}
[data-solid=true] #signin-panel,[data-solid=true] #home-search,[data-solid=true] .table-wrap,[data-solid=true] .appearance-live,[data-solid=true] #dock-messages li:not(.owner){background:var(--solid);backdrop-filter:none}
@media(prefers-reduced-transparency:reduce){#signin-panel,#home-search,.table-wrap,.appearance-live,#dock-messages li:not(.owner){background:var(--solid);backdrop-filter:none}}
/* Review fixes keep control geometry independent of stored skin preferences. */
#health-confirm{position:fixed;inset:0;width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;margin:auto;padding:28px;border:0;border-radius:24px;background:var(--solid);color:var(--ink);box-shadow:var(--elevation-4,var(--shadow))}
#health-confirm::backdrop{background:color-mix(in srgb,var(--ink) 35%,transparent);backdrop-filter:blur(6px)}
#health-confirm .icon-bubble{color:var(--danger,var(--ink))}.dialog-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:end;margin-top:20px}
#health-confirm-word{width:100%;margin-top:8px}#delete-health{color:var(--destructive-a)}
#appearance-panel .segmented[aria-label='Display mode']{display:grid;grid-template-columns:1fr 1fr 1.6fr}
#appearance-panel .segmented[aria-label='Display mode'] button{min-width:0;padding:10px 4px;font-size:12px;white-space:normal}
#appearance-panel .segmented[aria-label='Display mode'] button::after{display:block;content:' ';height:1em;line-height:1}
#appearance-panel .segmented[aria-label='Display mode'] button[aria-pressed=true]::after{content:'✓'}
#theme-grid{gap:6px;margin:12px 0}.theme-choice,#theme-grid .theme-choice:nth-child(n+5){min-height:44px;padding:8px}.theme-choice::before{display:none}
#appearance-panel .segmented[aria-label='Accent colour']{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));background:transparent;box-shadow:none;padding:0;margin:14px 0;gap:4px}
#appearance-panel .accent-choice{display:flex;flex-direction:column;align-items:center;gap:5px;font-size:10px;padding:4px 0;background:transparent;color:var(--ink);box-shadow:none;min-width:0}
.accent-choice::before{content:'';width:26px;height:26px;border-radius:50%;background:var(--gradient);box-shadow:var(--control-shadow)}
#appearance-panel .accent-choice::after{content:' ';height:12px;line-height:12px}#appearance-panel .accent-choice[aria-pressed=true]::after{content:'✓'}
#appearance-panel .appearance-live{min-height:0;padding:14px;margin-top:12px}.appearance-live h3{margin:0;font-size:15px}.appearance-live p{font-size:12px;margin:6px 0}.appearance-live .preview-button{padding:8px 14px;font-size:12px}
.settings-links{grid-template-columns:1fr;gap:10px;margin-bottom:10px}.settings-links a{display:flex;align-items:center;gap:14px;padding:16px 20px;min-height:72px}.settings-links a>span{flex:1;color:var(--ink);font-size:15px;margin:0}.settings-links small{display:block;font-size:13px;font-weight:500;color:var(--muted)}
#settings-page>details>summary{min-height:56px}#shopping-form{padding:16px;margin-bottom:12px;display:flex;flex-wrap:wrap;align-items:center;gap:12px}#shopping-form label{width:100%;margin:0}#shopping-links{flex:1;min-width:160px;resize:none}#shopping-form button{margin:0}#refresh-shopping,#refresh-wardrobe{font-size:12px;float:right}
.empty-state{text-align:center;grid-column:1/-1;padding:28px!important}.empty-state h3{margin-top:0}.empty-state p{max-width:42ch;margin:12px auto}
#photo-upload{display:flex;flex-wrap:wrap;padding:14px;gap:12px;border:0}#photo-upload .photo-choice{display:inline-flex;align-items:center;min-height:44px;padding:10px 18px;border-radius:999px;background:var(--quiet-fill);box-shadow:var(--control-shadow);cursor:pointer}#item-photo{width:100%;padding:0;border:0;background:transparent;box-shadow:none;font-size:12px}#item-photo::file-selector-button{display:none}#photo-upload button{margin:0}
#devices-page>details{margin:12px 0;padding:0;background:transparent;border:0;box-shadow:none}#devices-page>details summary{min-height:44px;font-size:13px}#add-phone{background:var(--gradient);color:var(--on-accent)}#devices li{padding:16px;gap:12px}.revoke-device{font-size:12px}#everywhere{background:var(--quiet-fill);color:var(--destructive-a);margin-top:20px}
.conversation-list{padding:12px;background:var(--glass-fill);border-radius:18px;margin-bottom:12px}.conversation-list h3{font-size:13px;margin:0 0 8px}.conversation-list a{display:block;padding:10px;border-radius:12px;background:var(--quiet-fill);text-decoration:none}.conversation-list small{display:block;font-size:12px;color:var(--muted)}
body[data-page=chat] #ask-dock{display:none!important}
@media(min-width:1024px){body[data-page=chat][data-signed-in=true]{grid-template-columns:210px minmax(0,1fr)}#chat-page{position:relative;margin-left:220px;width:calc(100% - 220px)}.conversation-list{position:absolute;right:calc(100% + 16px);top:0;width:204px}}
.home-bento article{min-height:150px}.home-bento article:nth-child(2){grid-column:span 2}.home-bento .today-tile{min-height:200px}.home-links{display:none}
@container(min-width:760px){.home-bento .today-tile{grid-column:span 2;grid-row:span 2}.home-bento article:nth-child(2){grid-column:span 2}.home-bento article:last-child{grid-column:span 2}}
@media(max-width:599px){header{position:relative;display:flex;align-items:center;justify-content:space-between}#signout{position:static;flex-shrink:0}.home-bento article{min-height:140px;padding:14px}.home-bento article:nth-child(2){min-height:150px}.home-bento article:nth-child(3),.home-bento article:nth-child(4){grid-column:span 1}.settings-links a{padding-inline:16px}#appearance-panel[open]{padding-inline:12px}.conversation-list h3{display:none}.conversation-list{padding:6px;margin:0 0 8px}.conversation-list a{padding:6px 10px}.conversation-list small{display:none}}
#photo-upload,#shopping-form{clear:both}#photo-upload{display:grid;grid-template-columns:minmax(0,1fr) auto}#photo-upload label{grid-column:auto}#photo-upload #item-photo{grid-column:1/-1;grid-row:2}#photo-upload button{grid-column:2;grid-row:1}#wardrobe-page>details{padding:8px 14px;margin:12px 0;background:transparent;box-shadow:none;border:0}#wardrobe-page>details summary{min-height:44px;font-size:13px}#shopping-form{display:grid;grid-template-columns:minmax(0,1fr) auto}#shopping-form label{grid-column:1/-1}#shopping-links{width:100%;min-width:0}#shopping-form button{font-size:12px;padding:12px}#wardrobe-page:has(.empty-state)>h2:not(.sr-only),#wardrobe-page:has(.empty-state)>#today-outfit{display:none}
@container(min-width:760px){.home-bento article:last-child{grid-column:span 4}}
#shopping-form label::before{content:'↗';display:inline-block;margin-right:8px;color:var(--accent)}


.empty-state>img{display:block;margin:0 auto 14px}
.empty-state>img{width:40px!important;height:40px!important;max-width:40px;object-fit:contain;border-radius:0;background:transparent}
#appearance-panel .segmented[aria-label='Accent colour']{--swatch-ink:var(--ink)}#appearance-panel .accent-choice{color:var(--swatch-ink)}
#everywhere,#delete-health{color:var(--error)}
