:root{--ground: #12151f;--surface: #1b1f2e;--surface-2: #242a3c;--ink: #f4f1ec;--quiet: #a9b2c8;--line: #2f3549;--edge: #646d90;--accent: #ffa176;--accent-soft: rgba(255, 161, 118, .14);--on-accent: #2b1206;--cool: #7fe3cb;--cool-soft: rgba(127, 227, 203, .13);--focus: #ffd479;--shadow: 0 1px 2px rgba(0, 0, 0, .35), 0 12px 30px -12px rgba(0, 0, 0, .6);--shadow-lift: 0 2px 4px rgba(0, 0, 0, .35), 0 20px 44px -16px rgba(0, 0, 0, .7);--font-display: ui-rounded, "SF Pro Rounded", "Segoe UI Variable Display", system-ui, sans-serif;--font-body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, monospace;--size-caption: .8125rem;--size-small: .9375rem;--size-body: 1.0625rem;--size-read: 1.125rem;--size-lead: 1.25rem;--size-h2: 1.5rem;--size-h1: clamp(2rem, 5.5vw, 2.75rem);--size-display: clamp(2.375rem, 8.5vw, 3.5rem);--r-sm: .5rem;--r: .875rem;--r-lg: 1.25rem;--r-xl: 1.75rem;--r-pill: 999px;--tap: 44px;--measure: 36rem;--page: 42rem;--page-read: 42rem;color-scheme:dark light}@media (prefers-color-scheme: light){:root{--ground: #faf6f0;--surface: #ffffff;--surface-2: #f3ede4;--ink: #191c26;--quiet: #575f78;--line: #e9e1d5;--edge: #8b8172;--accent: #b3420d;--accent-soft: rgba(179, 66, 13, .09);--on-accent: #ffffff;--cool: #0b6b5f;--cool-soft: rgba(11, 107, 95, .1);--focus: #7a3208;--shadow: 0 1px 2px rgba(60, 40, 20, .06), 0 10px 26px -14px rgba(60, 40, 20, .28);--shadow-lift: 0 2px 4px rgba(60, 40, 20, .08), 0 18px 40px -16px rgba(60, 40, 20, .34);color-scheme:light dark}}*{box-sizing:border-box}body{margin:0;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--ground);color:var(--ink);font-family:var(--font-body);font-size:var(--size-body);font-weight:400;line-height:1.6;overflow-x:clip;touch-action:manipulation;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;line-height:1.15;text-wrap:balance}p{text-wrap:pretty}main,.session{margin:0 auto;padding:1.75rem 1.25rem 5rem}main{max-width:var(--page)}.session{max-width:var(--page-read)}button,select,textarea,input[type=file]{font:inherit;min-height:var(--tap);color:inherit}button{min-width:var(--tap);padding:.625rem 1.125rem;border:1px solid var(--edge);border-radius:var(--r-pill);background:transparent;color:inherit;font-family:var(--font-display);font-weight:600;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,transform 90ms ease}button:hover{background:var(--surface-2)}button:active{transform:translateY(1px)}.button-primary{min-height:3.25rem;padding:.875rem 1.75rem;border:none;background:var(--accent);color:var(--on-accent);font-size:var(--size-read);font-weight:700;letter-spacing:-.01em;box-shadow:var(--shadow)}.button-primary:hover{background:var(--accent);filter:brightness(1.06);box-shadow:var(--shadow-lift)}.button-quiet{padding:.5rem 1.125rem;font-size:var(--size-small);color:var(--ink);background:var(--surface)}.button-back{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.125rem .5rem .875rem;font-size:var(--size-small);color:var(--quiet);border-color:var(--line);background:var(--surface)}.button-back:hover{color:var(--ink);border-color:var(--edge)}.button-back-arrow{width:.5rem;height:.5rem;border-left:2px solid currentcolor;border-bottom:2px solid currentcolor;transform:rotate(45deg);margin-left:.125rem}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.invite-eyebrow,.session-eyebrow,.block-label-word,.promise-word{font-family:var(--font-display);font-size:var(--size-caption);font-weight:700;letter-spacing:.1em;text-transform:uppercase}.section-heading{font-size:var(--size-h2);margin:0 0 1rem}.learner-surface:before{content:"";position:absolute;inset:0 0 auto;height:28rem;z-index:-1;pointer-events:none;background:radial-gradient(38rem 20rem at 30% 0%,var(--accent-soft),transparent 70%),radial-gradient(32rem 18rem at 78% 12%,var(--cool-soft),transparent 70%)}.who{display:flex;justify-content:flex-end;margin-bottom:1.5rem}.who-name{padding:.375rem .875rem;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--quiet);font-family:var(--font-display);font-size:var(--size-caption);font-weight:600;letter-spacing:.02em}.masthead{margin-bottom:2.75rem}.masthead-title{margin:0;font-size:var(--size-display);letter-spacing:-.035em}.masthead-tagline{margin:.625rem 0 0;max-width:28rem;color:var(--quiet);font-size:var(--size-lead);line-height:1.4}.rail{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem;list-style:none;margin:1.75rem 0 0;padding:0}.rail-dot{width:.5rem;height:.5rem;border-radius:var(--r-pill);background:var(--edge)}.rail-dot[data-standing=finished]{background:var(--cool)}.rail-dot[data-lead=yes]{width:1.5rem;background:var(--accent)}.invite{position:relative;padding:1.75rem;border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}.invite:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--accent)}.invite-eyebrow{margin:0 0 .625rem;color:var(--accent)}.invite-title{margin:0;font-size:var(--size-h1)}.invite-facts{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 1.5rem}.invite-facts>span{padding:.3125rem .75rem;border-radius:var(--r-pill);background:var(--surface-2);color:var(--quiet);font-size:var(--size-small)}.invite-standing{background:var(--accent-soft);color:var(--accent);font-weight:600}.promise,.tally,.course-map{margin-top:3rem}.promise-lead{margin:0;max-width:var(--measure);font-size:var(--size-lead);line-height:1.55}.promise-facts{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));list-style:none;margin:1.75rem 0 0;padding:0}.promise-facts li{display:flex;flex-direction:column;gap:.25rem;padding:1.125rem;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line)}.promise-figure{font-family:var(--font-display);font-size:2.25rem;font-weight:700;line-height:1;letter-spacing:-.03em;color:var(--cool);font-variant-numeric:tabular-nums}.promise-figure-words{font-size:var(--size-lead);line-height:1.25;letter-spacing:-.01em}.promise-word{color:var(--quiet);letter-spacing:.06em}.promise-ending{justify-content:flex-start;gap:.5rem}.promise-note{margin:1.25rem 0 0;max-width:var(--measure);color:var(--quiet);font-size:var(--size-small)}.readings{list-style:none;margin:0;padding:0;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));align-items:start}.reading{display:flex;flex-direction:column;gap:.125rem;padding:1.125rem 1.25rem;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line)}.reading-count{font-family:var(--font-display);font-size:2.75rem;font-weight:700;line-height:1.05;letter-spacing:-.04em;color:var(--cool);font-variant-numeric:tabular-nums;transform-origin:left center}.reading-label{font-family:var(--font-display);font-size:var(--size-read);font-weight:650}.reading-ceiling,.reading-explanation{color:var(--quiet);font-size:var(--size-small)}.reading-clamp{margin-top:.625rem;padding:.625rem .75rem;border-radius:var(--r-sm);background:var(--accent-soft);color:var(--ink);font-size:var(--size-small);line-height:1.45}.reading-withheld .reading-label{color:var(--quiet)}.reading-bumped .reading-count{animation:count-up .9s cubic-bezier(.22,1,.36,1)}@keyframes count-up{0%{transform:scale(1)}28%{transform:scale(1.16);color:var(--accent)}to{transform:scale(1)}}.session-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.session-row{display:grid;grid-template-columns:2.5rem 1fr auto;align-items:center;gap:.875rem;padding:.75rem 1rem .75rem .75rem;border-radius:var(--r);border:1px solid transparent}.session-row-open,.session-row-notFinished,.session-row-finished{background:var(--surface);border-color:var(--line)}.session-row-lead{border-color:var(--accent);background:var(--surface)}.session-seq{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:var(--r-pill);border:1px solid var(--line);color:var(--quiet);font-family:var(--font-display);font-size:var(--size-small);font-weight:700;font-variant-numeric:tabular-nums}.session-row-finished .session-seq{background:var(--cool-soft);border-color:transparent;color:var(--cool)}.session-row-lead .session-seq{background:var(--accent);border-color:transparent;color:var(--on-accent)}.session-main{display:flex;flex-direction:column;gap:.0625rem;min-width:0}.session-title{font-family:var(--font-display);font-weight:650;letter-spacing:-.01em}.session-row-waiting,.session-row-paused{padding-top:.5rem;padding-bottom:.5rem}.session-row-waiting .session-title,.session-row-paused .session-title{font-weight:500;color:var(--quiet)}.session-row-waiting .session-seq,.session-row-paused .session-seq{width:2rem;height:2rem;justify-self:center;font-size:var(--size-caption)}.session-standing{color:var(--quiet);font-size:var(--size-small)}.session-row-waiting .session-standing,.session-row-paused .session-standing{font-size:var(--size-caption)}.session-time{color:var(--quiet)}@media (max-width: 30rem){.session-row{grid-template-columns:2.5rem 1fr;row-gap:.625rem}.session-row>button{grid-column:2;justify-self:start}}.session-missing{margin:1rem auto;max-width:var(--measure);padding:0 1.25rem;color:var(--quiet)}.saving{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;margin:1.25rem auto;max-width:var(--measure);padding:.625rem .875rem;border:1px solid var(--line);border-radius:var(--r);font-size:var(--size-caption);line-height:1.45}.saving-headline{font-family:var(--font-display);font-weight:600;letter-spacing:.01em}.saving-detail{color:var(--quiet)}.saving-saved{color:var(--quiet);border-color:color-mix(in srgb,var(--line) 60%,transparent)}.saving-waiting{color:var(--ink);border-color:var(--edge);background:var(--accent-soft)}.saving-waiting .saving-headline{color:var(--accent)}.saving-stuck{color:var(--ink);border-color:var(--edge);background:var(--surface-2)}.session-nav .saving{margin:.5rem 0 0;padding:0;border:0;background:none}.session-nav{position:sticky;top:0;z-index:2;padding:.75rem 1.25rem;background:color-mix(in srgb,var(--ground) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.session{padding-top:2.5rem}.session:before{content:"";position:absolute;inset:0 0 auto;height:18rem;z-index:-1;pointer-events:none;background:radial-gradient(34rem 15rem at 34% 0%,var(--accent-soft),transparent 72%)}.session-header{margin-bottom:3rem}.session-eyebrow{margin:0 0 .75rem;color:var(--accent)}.session-header h1{margin:0;font-size:var(--size-h1);max-width:var(--measure)}.session-meta{display:inline-block;margin:1rem 0 0;padding:.3125rem .75rem;border-radius:var(--r-pill);background:var(--surface-2);color:var(--quiet);font-size:var(--size-small)}.session-finish{margin:3.5rem 0 1rem;padding-top:2rem;border-top:1px solid var(--line);text-align:center}.session-finish-note{margin:0 auto 1.25rem;max-width:var(--measure);color:var(--quiet);font-size:var(--size-small)}.session-finish-done{margin:3.5rem 0 1rem;padding-top:2rem;border-top:1px solid var(--line);text-align:center;font-family:var(--font-display);font-size:var(--size-lead);color:var(--cool)}.block{margin:2.5rem 0;padding:1.5rem;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line)}.block-prose{margin:0;padding:0;border:none;background:none;max-width:var(--measure);font-size:var(--size-read);line-height:1.7}.block-prose p{margin:1.25rem 0}.block-prose strong{font-weight:650}.block :where(p,ul,ol){max-width:var(--measure)}.block-body{font-size:var(--size-read);line-height:1.65}.block-body>:first-child{margin-top:0}.block-body>:last-child{margin-bottom:0}.block-label{display:flex;flex-wrap:wrap;align-items:center;gap:.625rem;margin:0 0 1.125rem;font-size:var(--size-caption)}.block-label-word{color:var(--quiet)}.block[data-block-type=demo] .block-label-word,.block[data-block-type=editorCell] .block-label-word{color:var(--accent)}.block[data-block-type=checkpoint] .block-label-word,.block[data-block-type=quiz] .block-label-word{color:var(--cool)}.block-scores{display:inline-flex;align-items:center;gap:.375rem;padding:.1875rem .625rem;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--size-caption);font-weight:700;letter-spacing:0;text-transform:none}.block-scores:before{content:"";width:.4375rem;height:.4375rem;border-radius:var(--r-pill);background:currentcolor}.block-state,.block-note{color:var(--quiet);font-size:var(--size-small)}.block-state{margin:-.5rem 0 1.125rem}.block-state-done{color:var(--cool);font-weight:600}.block-note{margin:1.25rem 0 0;padding-top:1rem;border-top:1px solid var(--line)}.block-prompt{margin:1.25rem 0 .75rem;font-family:var(--font-display);font-size:var(--size-read);font-weight:650;color:var(--ink)}.question+.question{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--line)}.question-prompt{margin:0 0 1rem;font-size:var(--size-read);line-height:1.5}.question-options{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.question-options button{width:100%;min-height:3rem;padding:.75rem 1rem;text-align:left;border-radius:var(--r);border-color:var(--line);background:var(--surface-2);font-family:var(--font-body);font-weight:400;line-height:1.45}.question-options button:hover{border-color:var(--edge)}.question-option-yes button{border-color:var(--cool);background:var(--cool-soft);font-weight:600}.question-option-not-yet button{border-color:var(--edge);background:var(--surface)}.question-verdict{margin:.875rem 0 0;font-weight:650;font-family:var(--font-display)}.question-verdict-yes{color:var(--cool)}.question-verdict-not-yet{color:var(--quiet)}.question-note{margin:.75rem 0 0;color:var(--quiet);font-size:var(--size-small)}.log-entry-field textarea{width:100%;padding:.875rem 1rem;border:1px solid var(--edge);border-radius:var(--r);background:var(--surface-2);color:var(--ink);line-height:1.5;resize:vertical}.log-entry-field textarea::placeholder{color:var(--quiet)}.log-entry-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.875rem}.log-entry-controls button:not(:disabled){background:var(--accent);border-color:transparent;color:var(--on-accent)}.log-entry-controls button:disabled{color:var(--quiet);cursor:default}.log-entry-note{color:var(--quiet);font-size:var(--size-small)}.log-entry-list{counter-reset:entry;list-style:none;margin:1.25rem 0 0;padding:0;display:grid;gap:.5rem}.log-entry-list li{counter-increment:entry;display:grid;grid-template-columns:1.75rem 1fr;gap:.75rem;padding:.75rem 1rem;border-radius:var(--r);background:var(--surface-2);font-size:var(--size-small)}.log-entry-list li:before{content:counter(entry);color:var(--cool);font-family:var(--font-display);font-weight:700;font-variant-numeric:tabular-nums}.editor-rows{list-style:none;margin:1.25rem 0 0;padding:1rem;border:1px solid var(--line);border-radius:var(--r);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--size-small);line-height:1.9;overflow-x:auto}.segment-blank,.segment-choice{display:inline-block;padding:0 .4rem;border-radius:var(--r-sm);background:var(--accent-soft);color:var(--accent)}.editor-hints{margin-top:1rem}.editor-hint{margin:0 0 .75rem;padding:.75rem 1rem;border-radius:var(--r);background:var(--surface-2);font-size:var(--size-small)}.editor-unavailable,.demo-unavailable,.upload-terms{margin:1rem 0 0;color:var(--quiet);font-size:var(--size-small);line-height:1.5}.demo-host{min-height:9rem;margin-top:1.25rem;display:grid;place-items:center;padding:1.25rem;border-radius:var(--r);background-color:var(--surface-2);background-image:radial-gradient(color-mix(in srgb,var(--quiet) 34%,transparent) 1px,transparent 1px);background-size:14px 14px;background-position:center;border:1px solid var(--line);color:var(--quiet)}.runtime-host{width:100%;display:grid;gap:.75rem;color:var(--ink)}.host-progress{display:grid;gap:.35rem;margin:0;color:var(--quiet);font-size:var(--size-small)}.host-bar{width:100%;height:.5rem;accent-color:var(--accent)}.host-lines{list-style:none;margin:0;padding:0;display:grid;gap:.25rem;font-size:var(--size-small)}.host-controls{display:flex;flex-wrap:wrap;gap:.5rem}.host-outcome{display:grid;gap:.5rem;justify-items:start}.host-outcome p{margin:0}.host-outcome-failed,.host-outcome-ok{border-left:3px solid var(--line);padding-left:.75rem}.host-outcome-unavailable{border-left:3px solid var(--line);padding-left:.75rem;color:var(--quiet)}.host-reason{color:var(--quiet);font-size:var(--size-small)}.upload-field{display:block;margin-top:1rem}.upload-field input[type=file]{width:100%;padding:.75rem;border:1px dashed var(--edge);border-radius:var(--r);background:var(--surface-2)}.upload-chosen{margin:.75rem 0 0;color:var(--cool);font-size:var(--size-small);font-weight:600}.gallery-nav{margin-bottom:1.25rem}.gallery-head h1{margin:0 0 .75rem}.gallery-head .gallery-note+.gallery-note{margin-top:.5rem}.gallery-items{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:1rem}.holdings{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.gallery-item{display:flex;flex-direction:column;gap:.375rem;padding:.75rem;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line)}.gallery-frame{display:flex;align-items:center;justify-content:center;aspect-ratio:1;overflow:hidden;border-radius:var(--r);background:var(--surface-2);padding:.75rem;text-align:center}.gallery-picture{width:100%;height:100%;object-fit:cover;border-radius:var(--r)}.gallery-plate{margin:0;font-family:var(--font-display);font-size:var(--size-lead);font-weight:650;color:var(--quiet);overflow-wrap:anywhere}.gallery-gone,.gallery-elsewhere{margin:0;color:var(--quiet);font-size:var(--size-caption)}.gallery-what{display:flex;flex-wrap:wrap;gap:.125rem .5rem;align-items:baseline;margin:.25rem 0 0}.gallery-when{color:var(--quiet);font-size:var(--size-small);font-variant-numeric:tabular-nums}.gallery-type{font-family:var(--font-display);font-weight:650;overflow-wrap:anywhere}.gallery-where{margin:0;font-family:var(--font-display);font-size:var(--size-caption);font-weight:700;letter-spacing:.04em;color:var(--cool)}.gallery-item[data-durability=device] .gallery-where{color:var(--accent)}.gallery-actions{display:flex;flex-wrap:wrap;gap:.375rem;margin:.375rem 0 0}.gallery-actions button{padding:.375rem .75rem;font-size:var(--size-caption)}.gallery-item-erased{background:transparent;border-style:dashed;color:var(--quiet)}.gallery-item-erased .gallery-frame{background:transparent;border:1px dashed var(--line)}.gallery-confirm{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.375rem;padding:.75rem;border-radius:var(--r);background:var(--surface-2);font-size:var(--size-caption)}.gallery-consequence{margin:0;flex:1 1 100%}.gallery-yes{border-color:var(--accent);color:var(--accent);padding:.375rem .75rem;font-size:var(--size-caption)}.gallery-empty{margin-top:2rem;padding:2.5rem 1.5rem;border-radius:var(--r-xl);border:1px dashed var(--line);text-align:center}.gallery-empty-lead{margin:0 0 .5rem;font-family:var(--font-display);font-size:var(--size-lead);font-weight:650}.gallery-empty-more{margin:0 auto 1.5rem;max-width:var(--measure);color:var(--quiet)}.gallery-away{margin-top:2.5rem}.gallery-away-items{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.gallery-away-item{display:flex;flex-wrap:wrap;gap:.625rem;align-items:center;padding:.75rem 1rem;border-radius:var(--r);border:1px dashed var(--line)}.gallery-away-item .gallery-type{flex:1 1 8rem}.gallery-away-item .gallery-gone{flex:1 1 100%;order:1}.gallery-all-away,.gallery-way-in{margin:1.5rem 0 0}.gallery-note,.holdings-range,.holdings-note{color:var(--quiet);font-size:var(--size-small);max-width:var(--measure)}.gallery-trouble{color:var(--ink);border-left:3px solid var(--accent);padding-left:.75rem}.holdings li{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border-radius:var(--r);background:var(--surface);border:1px solid var(--line)}.guardian-switcher{display:inline-flex;align-items:center;gap:.625rem;margin-top:.75rem;color:var(--quiet);font-size:var(--size-small)}.guardian-switcher select{padding:.5rem .75rem;border:1px solid var(--edge);border-radius:var(--r-sm);background:var(--surface);color:var(--ink)}.guardian-view h1,.empty h1{font-size:var(--size-h1);margin:0 0 .5rem}.session-override{padding:.1875rem .625rem;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--size-caption);font-weight:600}.empty p{max-width:var(--measure);color:var(--quiet)}.device:before,.household:before{content:"";position:absolute;inset:0 0 auto;height:24rem;z-index:-1;pointer-events:none;background:radial-gradient(36rem 18rem at 28% 0%,var(--accent-soft),transparent 70%),radial-gradient(30rem 16rem at 80% 10%,var(--cool-soft),transparent 70%)}.device-header{margin-bottom:2.5rem}.device-header h1{margin:0;font-size:var(--size-h1)}.device-lead{margin:.75rem 0 0;max-width:var(--measure);color:var(--quiet);font-size:var(--size-lead);line-height:1.45}.device-group{margin-top:2.75rem}.device-empty,.device-note,.child-note,.erasure-lead,.field-hint{max-width:var(--measure);color:var(--quiet);font-size:var(--size-small);line-height:1.5}.device-note,.child-note{margin:.875rem 0 0}.pick-list{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr))}.pick{display:flex;align-items:center;gap:.875rem;width:100%;min-height:4rem;padding:.75rem 1rem;border-radius:var(--r-lg);border-color:var(--line);background:var(--surface);text-align:left}.pick:hover{border-color:var(--edge);background:var(--surface);box-shadow:var(--shadow)}.pick-name{font-family:var(--font-display);font-size:var(--size-read);font-weight:650;letter-spacing:-.01em}.pick-avatar,.child-avatar{display:grid;place-items:center;width:2.5rem;height:2.5rem;flex:none;border-radius:var(--r-pill);background:var(--surface-2);font-size:1.375rem;line-height:1}.pick-mark{width:2.5rem;height:2.5rem;flex:none;border-radius:var(--r-pill);background:var(--accent-soft);border:1px solid var(--accent)}.stack-form,.inline-form{display:grid;gap:1.25rem;max-width:var(--measure);margin-top:1.25rem}.inline-form{gap:.75rem}.field{display:grid;gap:.375rem;border:none;margin:0;padding:0}.field-label{font-family:var(--font-display);font-size:var(--size-small);font-weight:650}.field-input{width:100%;min-height:var(--tap);padding:.75rem .875rem;border:1px solid var(--edge);border-radius:var(--r);background:var(--surface-2);color:var(--ink);font:inherit}.field-input-year{max-width:8rem}.field-input-code{max-width:12rem;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase}.field-refusal{color:var(--accent);font-size:var(--size-small);font-weight:600}.inline-form-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.avatar-field{gap:.625rem}.avatar-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.avatar-choice{width:var(--tap);height:var(--tap);min-width:var(--tap);padding:0;display:grid;place-items:center;border-radius:var(--r-pill);border-color:var(--line);background:var(--surface);font-size:1.375rem}.avatar-choice-picked{border-color:var(--accent);background:var(--accent-soft)}.child-list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.child{display:grid;grid-template-columns:2.5rem 1fr auto;align-items:center;gap:.875rem;padding:1rem;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line)}.child-main{display:flex;flex-direction:column;gap:.0625rem;min-width:0}.child-name{font-family:var(--font-display);font-size:var(--size-read);font-weight:650;letter-spacing:-.01em}.child-doing{color:var(--quiet);font-size:var(--size-small)}.child-controls{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.child-panel{grid-column:1 / -1;margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--line)}.child-code-line{margin:0}.join-code{display:inline-block;padding:.375rem .875rem;border-radius:var(--r-sm);background:var(--surface-2);color:var(--ink);font-family:var(--font-mono);font-size:var(--size-lead);font-weight:600;letter-spacing:.18em}@media (max-width: 34rem),(min-width: 64rem){.child{grid-template-columns:2.5rem 1fr}.child-controls{grid-column:2;justify-content:flex-start}}.assign{display:grid;gap:1rem}.warnings{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.warning{padding:.75rem .875rem;border-left:3px solid var(--accent);border-radius:var(--r-sm);background:var(--accent-soft);font-size:var(--size-small);line-height:1.5}.household-add{margin-top:3rem}.plain-note{margin-top:3.5rem;padding:1.25rem 1.375rem;border-radius:var(--r-lg);border:1px dashed var(--edge);background:transparent;max-width:var(--measure)}.plain-note-heading{margin:0 0 .75rem;font-size:var(--size-read)}.plain-note-list{margin:0;padding-left:1.125rem;display:grid;gap:.625rem;color:var(--quiet);font-size:var(--size-small);line-height:1.55}.plain-note-list strong{color:var(--ink);font-weight:650}.plain-note-where{margin:.875rem 0 0;color:var(--quiet);font-size:var(--size-small)}.erasure{margin-top:3rem}.erasure-lead{margin:0 0 1rem}.erasure-choices{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.erasure-choice{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.75rem 1rem;padding:1rem;border-radius:var(--r);background:var(--surface);border:1px solid var(--line)}.erasure-label{font-family:var(--font-display);font-weight:650}.erasure-count{grid-column:1;color:var(--quiet);font-size:var(--size-small);font-variant-numeric:tabular-nums}.erasure-choice>button:disabled{color:var(--quiet);border-color:var(--line);cursor:default}.erasure-confirm{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.875rem 1rem;border-radius:var(--r);background:var(--surface-2);font-size:var(--size-small);line-height:1.5}.erasure-consequence,.erasure-remaining{flex:1 1 100%}.erasure-remaining{color:var(--quiet)}.erasure-other{max-width:var(--measure);margin:0 0 1.25rem}.erasure-other-heading{margin:0 0 .25rem;font-family:var(--font-display);font-size:var(--size-read);font-weight:650}.erasure-other-note{margin:0;color:var(--quiet);font-size:var(--size-small);line-height:1.5}.entitlement,.devices{margin-top:2.75rem}.entitlement-standing{max-width:var(--measure);margin:0 0 .25rem;font-family:var(--font-display);font-size:var(--size-read);font-weight:650}.entitlement-pressing{padding-left:.75rem;border-left:3px solid var(--accent)}.entitlement-detail{max-width:var(--measure);margin:0 0 .75rem;font-variant-numeric:tabular-nums}.entitlement-redeem{margin-top:1.5rem;padding:1.25rem;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}.entitlement-redeem-heading{margin:0 0 .5rem;font-family:var(--font-display);font-size:var(--size-read);font-weight:650}.device-list{list-style:none;margin:1rem 0 1.25rem;padding:0;display:grid;gap:.5rem}.device-row{display:grid;grid-template-columns:1fr auto;align-items:start;gap:.5rem 1rem;padding:1rem;border-radius:var(--r);background:var(--surface);border:1px solid var(--line)}.device-row-retired{background:none;color:var(--quiet)}.device-who{font-family:var(--font-display);font-weight:650}.device-what,.device-since{grid-column:1;color:var(--quiet);font-size:var(--size-small);line-height:1.5}.device-confirm{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.875rem 1rem;border-radius:var(--r);background:var(--surface-2);font-size:var(--size-small);line-height:1.5}.device-consequence{flex:1 1 100%}.guardian-nav{margin-bottom:1.5rem}.guardian-view h2,.household h2,.device h2{font-size:var(--size-h2)}.who{align-items:center;gap:.75rem}.landing{padding-bottom:2rem}.landing:before{content:"";position:absolute;inset:0 0 auto;height:36rem;z-index:-1;pointer-events:none;background:radial-gradient(40rem 22rem at 22% 0%,var(--accent-soft),transparent 70%),radial-gradient(34rem 20rem at 82% 14%,var(--cool-soft),transparent 70%)}.landing-hero{margin-bottom:3.5rem}.landing-hero .invite-eyebrow{margin:0 0 .75rem;color:var(--accent)}.landing-title{margin:0;font-size:var(--size-display);letter-spacing:-.035em}.landing-lead{margin:1rem 0 0;max-width:var(--measure);font-size:var(--size-lead);line-height:1.5}.landing-facts{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));list-style:none;margin:2rem 0 2.25rem;padding:0}.landing-facts>li{display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.125rem;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.landing-figure{font-family:var(--font-display);font-size:var(--size-h2);font-weight:700;letter-spacing:-.02em;line-height:1.1}.landing-facts .promise-word{color:var(--quiet)}.landing-cta-note{margin:1rem 0 0;max-width:var(--measure);color:var(--quiet);font-size:var(--size-small)}.landing-section{margin-top:3rem}.landing-section-lead{margin:0 0 1.25rem;max-width:var(--measure);font-size:var(--size-read)}.landing-points{display:grid;gap:1rem;list-style:none;margin:0;padding:0;max-width:var(--measure)}.landing-points>li{padding-left:1rem;border-left:2px solid var(--line);line-height:1.55}.landing-points strong{font-weight:600;color:var(--ink)}.landing-empty{margin:0;max-width:var(--measure);color:var(--quiet)}.landing-courses{display:grid;gap:1.25rem;list-style:none;margin:0;padding:0}.landing-course{max-width:40rem;padding:1.5rem;border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow)}.landing-course-title{margin:0;font-size:var(--size-h2)}.landing-course-tagline{margin:.375rem 0 0;color:var(--quiet);font-size:var(--size-read);line-height:1.4}.landing-course-blurb{margin:1rem 0 0;max-width:var(--measure);line-height:1.55}.landing-course-facts{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:1.25rem 0 0;padding:0}.landing-course-facts>li{padding:.3125rem .75rem;border-radius:var(--r-pill);background:var(--surface-2);color:var(--quiet);font-size:var(--size-small)}.landing-course-after{margin:1rem 0 0;color:var(--quiet);font-size:var(--size-small)}.landing-course-ready{margin:1rem 0 0;padding-top:1rem;border-top:1px solid var(--line);font-size:var(--size-small);font-weight:600}.landing-foot{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;max-width:var(--page);margin:0 auto;padding:2rem 1.25rem 4rem;border-top:1px solid var(--line)}.landing-foot-line{flex:1 1 16rem;margin:0;color:var(--quiet);font-size:var(--size-small)}.recovery .device-header{margin-bottom:2rem}.phrase-list{list-style:none;margin:0;padding:1.25rem;display:grid;gap:.625rem;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));max-width:var(--page-read);border:1px solid var(--edge);border-radius:var(--r-lg);background:var(--surface)}.phrase-word{display:flex;align-items:baseline;gap:.625rem;min-height:var(--tap);padding:.5rem .75rem;border-radius:var(--r-sm);background:var(--surface-2)}.phrase-number{min-width:1.5rem;color:var(--quiet);font-family:var(--font-mono);font-size:var(--size-caption);font-variant-numeric:tabular-nums;text-align:right}.phrase-text{font-family:var(--font-mono);font-size:var(--size-read);letter-spacing:.04em;overflow-wrap:anywhere}.recovery-say{max-width:var(--measure);margin-top:1.75rem}.recovery-line{margin:0 0 .875rem;font-size:var(--size-read);line-height:1.55}.recovery-line strong{font-family:var(--font-display);font-weight:700}.recovery-actions{margin:1.75rem 0}.recovery-note{max-width:var(--measure);margin:.75rem 0 0;color:var(--quiet);font-size:var(--size-small);line-height:1.5}.field-input-word{max-width:16rem;font-family:var(--font-mono);letter-spacing:.04em}.household-recovery{margin-top:2.75rem}.recovery-lede{max-width:var(--measure);margin:0 0 1.25rem;font-size:var(--size-lead);line-height:1.5}.recovery-card{max-width:var(--measure);margin:0 0 2rem;padding:1.25rem;border:1px solid var(--accent);border-radius:var(--r-lg);background:var(--accent-soft)}.recovery-card-title{margin:0 0 1rem;font-family:var(--font-display);font-size:var(--size-read)}.recovery-card-label{margin:0;color:var(--quiet);font-size:var(--size-small)}.recovery-card-value{margin:.25rem 0 1rem;font-family:var(--font-mono);font-size:var(--size-read);font-weight:600;overflow-wrap:break-word}.recovery-card-value:last-child{margin-bottom:0}.recovery-card-code{font-size:var(--size-small);letter-spacing:.06em;font-variant-numeric:tabular-nums;line-height:1.7}.recovery-remove{max-width:var(--measure);margin-top:3rem;padding-top:1.75rem;border-top:1px solid var(--line)}.recovery-remove .recovery-card-title{margin-bottom:.5rem}.household-pair{margin-top:2.75rem}.field-input-phrase{max-width:var(--measure);font-family:var(--font-mono);letter-spacing:.02em;line-height:1.6;resize:vertical}.field-input-pin{max-width:10rem;font-family:var(--font-mono);font-size:var(--size-read);letter-spacing:.24em}.pair-pick{display:flex;align-items:center;gap:.875rem;min-height:3.5rem;padding:.75rem 1rem;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);cursor:pointer}.pair-pick:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.pair-offer{max-width:var(--measure)}.pair-square{display:block;width:100%;max-width:15rem;height:auto;margin:1.25rem 0;border-radius:var(--r-sm);background:#fff}.pair-typed{display:flex;align-items:center;gap:.75rem;margin:0 0 1.5rem}.pair-typed-label{color:var(--quiet);font-size:var(--size-small)}.pair-secret{padding:1.25rem;border:1px solid var(--accent);border-radius:var(--r-lg);background:var(--accent-soft)}.pair-secret-label{margin:0;color:var(--quiet);font-size:var(--size-small)}.pair-secret-number{margin:.375rem 0 .75rem;font-family:var(--font-mono);font-size:2rem;font-weight:700;letter-spacing:.22em;font-variant-numeric:tabular-nums}.pair-secret-note{margin:0;color:var(--quiet);font-size:var(--size-small);line-height:1.5}.device.lock .field-input-pin{max-width:7.5rem}.device.lock .stack-form .field+.field{margin-top:1.25rem}.device.lock .device-lead+.button-primary,.device.lock .device-lead+.button-quiet{margin-top:1.75rem}.notice-nav{margin-bottom:1.5rem}.notice-tenses{margin-top:1.5rem;padding-left:1rem;border-left:2px solid var(--edge);color:var(--quiet)}.notice-later{display:block;margin-bottom:.375rem;font-size:var(--size-small);font-weight:650;letter-spacing:.02em;color:var(--accent)}.notice-points>li[data-tense=later]{border-left-color:var(--accent)}.notice-closing{margin-top:3rem}.household-notice{margin-top:2.75rem}.household-notice .child-note+button{margin-top:.875rem}.install{margin-top:2.75rem}.install-installed{margin-top:1.75rem}.install-steps{max-width:var(--measure);margin:.875rem 0 0;padding-left:1.5rem;color:var(--quiet);font-size:var(--size-small);line-height:1.5}.install-step+.install-step{margin-top:.375rem}.install-steps+.child-note,.install .child-note+button{margin-top:.875rem}.device .install{margin-top:2.25rem;text-align:left}.configuration-refused{max-width:var(--measure);margin:4rem auto;padding:0 1.25rem}.configuration-refused p{color:var(--quiet);overflow-wrap:anywhere;white-space:pre-wrap}@media (min-width: 64rem){:root{--page: 56rem;--page-read: 50rem}.session-nav{padding-inline:max(1.25rem,(100% - var(--page-read)) / 2 + 1.25rem)}.masthead-title,.landing-title,.invite-title{max-width:var(--measure)}.child-list{grid-template-columns:repeat(auto-fill,minmax(26rem,1fr));align-items:start}.device-list{grid-template-columns:repeat(auto-fill,minmax(22rem,1fr));align-items:start}.gallery-away-items{grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));align-items:start}.landing-courses{grid-template-columns:repeat(auto-fit,minmax(22rem,1fr))}.holdings{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}.landing-points{grid-template-columns:repeat(auto-fit,minmax(26rem,1fr));align-items:start;max-width:none}.landing-points>li{max-width:var(--measure)}.session-list{max-width:var(--page-read)}.erasure-choices,.entitlement-redeem{max-width:var(--measure)}}@media (min-width: 80rem){:root{--page: 66rem}.gallery-items{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))}}@media (min-width: 100rem){:root{--page: 78rem}}@media print{:root{--ground: #ffffff;--surface: #ffffff;--surface-2: #ffffff;--ink: #000000;--quiet: #333333;--line: #999999;--edge: #666666;--shadow: none;--shadow-lift: none}.device:before,.household:before,.learner-surface:before,.landing:before{display:none}button,.recovery-actions,.recovery-note,.pair-secret{display:none}.phrase-list{grid-template-columns:repeat(4,1fr);break-inside:avoid}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
