/* The same room, paper, and product UI share one light source. */
:root{
  color-scheme:light;
  --paper:#faf7f2;--surface:#f4f1ee;--surface-raised:#fffcf7;--surface-soft:#eef0f6;
  --line-soft:#dcdbe2;--accent-mint:#7c85a8;--accent-blue:#738fab;
  --chart-mint:#8d8cac;--chart-blue:#819fb6;--chart-apricot:#c98d5d;
  --chart-line:#7d98b0;--chart-point:#bfcad9;--chart-highlight:#8685ad;
  --chart-muted:#d4d5df;--chart-track:#e4e4eb;
  --ui-muted:#6d6972;--ui-quiet:#77737c;--inverse:#fffdf9;
  --surface-shadow:#37364c14;--surface-shine:#fff9;
  --phone-edge:#45413b;--phone-rim:#8f8b81;
}
:root[data-theme=evening]{
  color-scheme:dark;
  --paper:#252630;--ink:#f2ecdf;--muted:#c2bdc9;--rule:#51505e;
  --blue:#adc4dc;--surface:#32333f;--surface-raised:#3a3c49;--surface-soft:#303240;
  --line-soft:#56596b;--accent-mint:#b7bce0;--accent-blue:#adc6e2;
  --chart-mint:#b9b4d9;--chart-blue:#aac5df;--chart-apricot:#e2b089;
  --chart-line:#aac5df;--chart-point:#8b96b1;--chart-highlight:#b9b4d9;
  --chart-muted:#62687d;--chart-track:#454959;
  --ui-muted:#c2c2d0;--ui-quiet:#b7b8c9;--inverse:#252630;
  --surface-shadow:#12121e55;--surface-shine:#dddff915;
  --phone-edge:#737687;--phone-rim:#a4a8bb;
}
body{transition:color .22s ease}
.hero-support,.arrival .download-block>span{transition:color .22s ease}
.site-header,main,.site-footer{position:relative;z-index:1}
.night-stars{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .85s ease,visibility 0s linear .85s}
[data-theme=evening] .night-stars{opacity:.62;visibility:visible;transition:opacity .85s ease}
.night-stars i{position:absolute;left:var(--x);top:var(--y);width:var(--star-size);height:var(--star-size);opacity:.32;transform:rotate(var(--star-tilt)) scale(.7);animation:nook-twinkle var(--twinkle) ease-in-out var(--delay) infinite;animation-play-state:paused}
[data-theme=evening] .night-stars i{animation-play-state:running}
.night-stars i:before,.night-stars i:after{content:'';position:absolute;inset:0;margin:auto;border-radius:70% 35%;background:#f4deb0;box-shadow:0 0 7px #dfc89166}
.night-stars i:before{width:1.5px;height:100%}
.night-stars i:after{width:100%;height:1.5px}
@keyframes nook-twinkle{0%,100%{opacity:.22;transform:rotate(var(--star-tilt)) scale(.65)}45%{opacity:.9;transform:rotate(var(--star-tilt)) scale(1.08)}62%{opacity:.48;transform:rotate(var(--star-tilt)) scale(.86)}}
::selection{background:#c9d4e8;color:#2f3549}
[data-theme=evening] :is(a,button,summary,[tabindex]):focus-visible{outline-color:#b8d2e7}
.skip{color:var(--inverse)}
.room,.hero-room{mix-blend-mode:normal}
.hero-room .room picture{transition:none}
.hero-room.is-evening.has-evening-image .room picture{opacity:0}
.evening-layer{transition:none}
[data-theme=evening] .hero-room .evening-layer{mix-blend-mode:lighten}
[data-theme=evening] .arrival-art{isolation:auto}
.room-epilogue .room{mix-blend-mode:normal}
.scene-error{color:#854028}
[data-theme=evening] .scene-error{color:#f0bb9f}

/* A small ceramic plate and hinged rocker, with a generous touch target. */
.arrival-art figcaption{min-height:64px}
.light-toggle{gap:13px;padding:8px 4px;min-height:64px;border-radius:8px;background:none;line-height:1.3;color:var(--ink)}
.light-toggle .switch-label{font:400 14px/1.4 var(--sans);color:var(--ink);min-width:86px;text-align:left}
.light-toggle .switch-plate{display:block;flex:0 0 106px;width:106px;height:48px;position:relative;border:1px solid #d5cfc3;border-radius:10px;background:linear-gradient(160deg,#fffcf4,#e5e0d4);box-shadow:inset 0 1px 1px #fff,0 2px 2px #65584022,0 5px 10px #6558400b;color:#80796c;perspective:170px;transition:background .8s,border-color .8s,box-shadow .8s}
.switch-plate:before,.switch-plate:after{content:'';position:absolute;left:3px;top:21px;width:3px;height:3px;border-radius:50%;background:#b0aa9e;box-shadow:0 1px 0 #fff8}
.switch-plate:after{left:auto;right:3px}
.switch-rocker{display:block;position:absolute;left:31px;top:6px;width:42px;height:34px;border:1px solid #bdb7aa;border-radius:5px;background:linear-gradient(180deg,#fffdf6 0%,#f1eddf 42%,#e6e0d1 49%,#efebdf 52%,#f7f4e9 100%);box-shadow:0 3px 2px #55483240,inset 0 1px 0 #fff;transform:rotateX(-15deg);transition:transform .35s cubic-bezier(.2,.9,.3,1),background .8s,box-shadow .35s}
.switch-rocker:after{content:'';position:absolute;width:10px;height:2px;background:#c5bead;border-radius:2px;left:15px;top:8px;box-shadow:0 1px 0 #fff9}
.switch-sun,.switch-moon{position:absolute;top:15px;width:17px;text-align:center;font:400 17px/1 var(--sans);transition:color .6s,text-shadow .6s}
.switch-sun{left:9px;color:#8e662c}.switch-moon{right:8px;color:#7b786e}
.light-toggle:hover .switch-rocker{box-shadow:0 4px 3px #55483250,inset 0 1px 0 #fff}
.light-toggle:active .switch-rocker{transform:rotateX(0) translateY(1px)}
.light-toggle[aria-pressed=true] .switch-plate{border-color:#555a70;background:linear-gradient(160deg,#666c83,#454a60);box-shadow:inset 0 1px 1px #ffffff25,0 2px 2px #1014294d,0 5px 12px #12182d22;color:#e9e1cf}
.light-toggle[aria-pressed=true] .switch-rocker{border-color:#303549;background:linear-gradient(180deg,#777f99 0%,#656e88 45%,#515b75 50%,#616d89 100%);transform:rotateX(15deg);box-shadow:0 -2px 2px #131c3566,inset 0 -1px 1px #dce3ff4d}
.light-toggle[aria-pressed=true] .switch-rocker:after{background:#dcca8b;box-shadow:0 0 7px #e8bd6f4d}
.light-toggle[aria-pressed=true] .switch-sun{color:#c8cdde}
.light-toggle[aria-pressed=true] .switch-moon{color:#ffdda2;text-shadow:0 0 8px #ffdda244}
.light-toggle[aria-pressed=true] .switch-label{color:var(--ink)}
.light-toggle[aria-busy=true] .switch-label{opacity:.65}

/* Product paper shifts with the page, while familiar UI remains readable. */
.device{background:var(--phone-edge);box-shadow:0 0 0 1px var(--phone-rim),inset 0 0 0 2px #a7a399,0 28px 38px -23px var(--surface-shadow),6px 9px 24px var(--surface-shadow);transition:background-color .85s,box-shadow .85s,transform .15s ease-out}
.device-screen,.voice-screen{background:var(--surface);color:var(--ink);transition:background-color .85s,color .85s,opacity .65s}
.device-screen:after{content:'';position:absolute;inset:0;z-index:9;border-radius:inherit;pointer-events:none;box-shadow:inset 1px 1px 1px #fff8,inset -1px -1px 1px #00000015;background:linear-gradient(128deg,#ffffff0a 0%,transparent 37%);transition:box-shadow .85s,background .85s}
[data-theme=evening] .device-screen:after{box-shadow:inset 1px 1px 1px #eee0b92b,inset -1px -1px 1px #bfd1f11a;background:linear-gradient(128deg,#eccc920d 0%,transparent 37%)}
.product-surface{background:linear-gradient(145deg,var(--surface-soft),var(--surface) 72%);border-color:var(--line-soft);box-shadow:0 24px 46px -33px var(--surface-shadow),inset 0 1px 0 var(--surface-shine);transition:background .85s,color .85s,border-color .85s,box-shadow .85s,opacity .7s,transform .7s}
.app-pill{border-color:var(--line-soft)}
.app-pill.filled{background:var(--ink);border-color:var(--ink);color:var(--inverse)}
.app-week small,.entry-date>span,.daily-reflection>span,.voice-identity>small,.voice-line>span,.voice-actions small,.context-note>span,.follow-identity>span,.memory-choice,.source-dates span,.app-composer,.weekly-heading>span{color:var(--ui-muted)}
.app-week b{border-color:var(--line-soft)}
.app-week>span:nth-child(5) b{background:var(--ink);border-color:var(--ink);color:var(--inverse)}
.app-week>span:nth-child(6) b{color:#95582f;border-color:var(--chart-apricot)}
[data-theme=evening] .app-week>span:nth-child(6) b{color:var(--chart-apricot)}
.daily-lines p:before{color:var(--ui-quiet)}
.daily-reflection,.follow-up{border-color:var(--line-soft)}
.app-tabs{background:var(--surface-raised);border-color:var(--surface-shine);box-shadow:0 9px 17px var(--surface-shadow),inset 0 1px 0 var(--surface-shine);transition:background-color .85s,border-color .85s,box-shadow .85s}
.app-tabs>span{color:var(--ui-quiet)}
.app-tabs>span.active{color:var(--ink);background:var(--surface);box-shadow:0 2px 5px var(--surface-shadow),inset 0 1px 1px var(--surface-shine)}
.voice-wave i{background:var(--accent-mint)}
.voice-actions svg{border-color:var(--ui-quiet)}
.goal-mark{color:var(--accent-mint)}
.context-note{border-color:var(--accent-mint)}
.follow-reply,.history-question{background:var(--surface-raised);border-color:var(--line-soft);transition:background-color .85s,border-color .85s,opacity .6s,transform .6s}
.source-dates span{border-color:var(--line-soft)}
.app-composer{background:var(--surface-raised);border-color:var(--line-soft);transition:background-color .85s,border-color .85s}
.app-composer svg{background:var(--accent-mint);color:var(--inverse)}
.thinking-dots i{background:var(--accent-mint)}
.plan li:before{color:var(--accent-mint)}
.plans,.plan+.plan,details,.site-footer{transition:border-color .85s}

/* New conversational memory and editorial insights inherit the same materials. */
.spoken-detail,.named-memory,.follow-card{color:var(--ink);border-color:var(--line-soft)}
.spoken-detail{background:none}
.follow-card{background:var(--surface-raised)}
.named-memory{background:var(--surface-soft);box-shadow:0 12px 24px -20px var(--surface-shadow)}
.memory-story :is(small,.memory-date,.memory-source,.memory-label),.week-editorial :is(small,.chart-label,.week-day,.insight-source){color:var(--ui-muted)}
.week-editorial{color:var(--ink)}
.week-observation{color:var(--ink)}
.week-rhythm{--rhythm-active:var(--chart-mint);--rhythm-inactive:var(--chart-track)}
.insight-chart{--chart-fill:var(--chart-track)}
.insight-chart :is(text,.chart-key){fill:var(--ui-muted);color:var(--ui-muted)}
.insight-chart :is(.chart-line,.sparkline){stroke:var(--chart-line)}
.insight-chart :is(.chart-point,.data-point){fill:var(--chart-line)}
.insight-chart :is(.chart-track,.chart-baseline){stroke:var(--chart-track)}
.history-demo{transition:background .85s,color .85s,border-color .85s,box-shadow .85s,transform .16s ease-out}
.named-memory{transition:background-color .85s,border-color .85s,opacity .65s,transform .9s cubic-bezier(.22,.61,.36,1),clip-path .8s}
.follow-card{transition:background-color .85s,border-color .85s,opacity .7s,transform .9s,clip-path .9s}
.week-editorial{transition:background-color .85s,color .85s}
.chart-line{transition:stroke .85s,stroke-dashoffset 1.8s cubic-bezier(.33,0,.2,1)}
.clarity-points circle{transition:fill .85s,stroke .85s,opacity .7s,transform .7s}
.call-stage:before{background:radial-gradient(ellipse at center,#dfe5f1 0%,#e8e5ef65 38%,transparent 68%)}
.ring-screen{background:radial-gradient(ellipse at 50% 23%,#62738c,#4b5a73 60%,#38465f)}
.answer-track>i{color:#526782}
[data-theme=evening] .call-stage:before{background:radial-gradient(ellipse at center,#767caa33 0%,#555d8823 40%,transparent 70%)}
[data-theme=evening] .ring-screen{background:radial-gradient(ellipse at 50% 23%,#4b5273,#383f5b 60%,#292e47)}
[data-theme=evening] .ios-island{background:#171a29}
[data-theme=evening] .answer-track{background:#d9e2ff26;box-shadow:inset 0 1px 1px #e1e9ff38}
[data-theme=evening] .answer-track>i{background:#f5eddf;color:#48577e}
[data-theme=evening] .ring-identity>.flat-nook{background:#eee9c910}

@media(max-width:767px){
  .arrival-art figcaption{min-height:64px;margin-top:0}
  .light-toggle{gap:11px;min-height:64px;padding:8px 2px}
  .light-toggle .switch-label{font-size:14px;min-width:80px}
}
@media(prefers-reduced-motion:reduce){
  body,.hero-room .room picture,.evening-layer,.light-toggle *,.device,.device-screen,.voice-screen,.product-surface,.app-tabs,.follow-reply,.history-question,.app-composer{transition:none!important}
  .night-stars i{animation:none;opacity:.55;transform:rotate(var(--star-tilt))}
}
/* Keep the night layer in front of the decorative image-error fallback. */
.evening-layer{z-index:2}
.hero-room.is-evening.has-evening-image .room-fallback{opacity:0}
.room-epilogue{width:100%;max-width:none;margin:55px 0 0;padding:32px 24px 58px;background:var(--paper);color:var(--ink)}
.room-epilogue .room{width:min(680px,100%);margin:auto}
.room-epilogue h2{color:var(--ink)}
.site-footer{margin-top:0;border-top:0;padding-block:33px}
@media(max-width:767px){.room-epilogue{padding:30px 10px 42px;margin-top:38px}.room-epilogue h2{margin-top:12px}.site-footer{margin-top:0}}

/* The familiar Nook face, with a simple spoken name. */
.site-header .wordmark,.site-footer .wordmark{font-family:var(--sans);font-size:30px;font-weight:400;line-height:1;letter-spacing:-.8px;gap:9px;align-items:center;white-space:nowrap}
.site-header .wordmark .flat-nook{width:40px;height:40px;flex-shrink:0}
.site-header .wordmark>span{padding-bottom:1px}
.footer-brand{display:flex;align-items:center;gap:7px;position:relative;flex-shrink:0}
.footer-brand .footer-friend{margin:0;gap:0}
.footer-brand .nook-wave{display:grid;place-items:center;width:44px;height:50px;padding:0}
.footer-brand .nook-wave .flat-nook{width:40px;height:40px}
.footer-brand .nook-hello{position:absolute;left:0;bottom:calc(100% + 8px);margin:0;max-width:none;width:max-content;padding:10px 14px;background:var(--surface-raised);border:1px solid var(--line-soft);border-radius:15px 15px 15px 4px;color:var(--ink);font:400 14px/1.4 var(--sans);box-shadow:0 5px 15px var(--surface-shadow)}
@media(max-width:767px){
  .site-header{justify-content:space-between}
  .site-header nav,.site-header .header-download{display:none}
  .site-header .wordmark,.site-footer .wordmark{font-size:28px;letter-spacing:-.6px}
  .site-header .wordmark{gap:8px}
  .site-header .wordmark .flat-nook{width:38px;height:38px}
  .site-header .header-light{margin-left:auto;margin-right:0}
  .footer-brand{gap:6px}
}

/* The closing room belongs to the same daylight/evening page. */
.closing-copy>p{color:var(--muted)}
.closing-art{position:relative}
.closing-day,.closing-night{transition:opacity .85s ease}
.closing-night{position:absolute;inset:0;opacity:0;pointer-events:none}
[data-theme=evening] .closing-day{opacity:0}
[data-theme=evening] .closing-night{opacity:1}
@media(prefers-reduced-motion:reduce){.closing-day,.closing-night{transition:none}}

.room-epilogue{margin-top:104px}
@media(max-width:767px){.room-epilogue{margin-top:80px}}
