:root{--paper: #f1eef4;--paper-raised: #f8f6fa;--ink: #261b2e;--ink-faded: #6b5e73;--rule: #d9d2df;--ribbon: #a3264f;--ribbon-tint: #f5dce5;--ribbon-ink: #ffffff;--focus: #a3264f;--serif: "Literata", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--sans: "Hanken Grotesk", -apple-system, "Segoe UI", system-ui, sans-serif;--t-small: .85rem;--t-body: 1.0625rem;--t-h3: 1.2rem;--t-h2: 1.5rem;--t-h1: 2.1rem;--t-display: clamp(2.3rem, 5.2vw, 3.6rem);--gutter: clamp(1rem, 4vw, 2.5rem);--measure: 38rem;--radius: 10px;color-scheme:light}@media(prefers-color-scheme:dark){:root{--paper: #1c1620;--paper-raised: #251d2a;--ink: #ece5f0;--ink-faded: #a597ad;--rule: #3a2f40;--ribbon: #e0628b;--ribbon-tint: #3f2230;--ribbon-ink: #1c1620;--focus: #e0628b;color-scheme:dark}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--t-body)/1.6 var(--sans);min-height:100vh;display:flex;flex-direction:column}#root{display:flex;flex-direction:column;min-height:100vh}#content{flex:1;display:flex;flex-direction:column}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.2;margin:0 0 .6em;letter-spacing:-.01em}h1{font-size:var(--t-h1)}h2{font-size:var(--t-h2)}h3{font-size:var(--t-h3)}p{margin:0 0 1em}a{color:var(--ribbon);text-underline-offset:.18em}button,input,select,textarea{font:inherit;color:inherit}img{max-width:100%}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip{position:absolute;left:-999px;top:.5rem;background:var(--ink);color:var(--paper);padding:.5rem 1rem;z-index:50}.skip:focus{left:.5rem}.fine{font-size:var(--t-small);color:var(--ink-faded)}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.75rem;padding:0 1.25rem;border-radius:999px;border:1px solid var(--rule);background:var(--paper-raised);font-family:var(--sans);font-weight:500;text-decoration:none;color:var(--ink);cursor:pointer;transition:background-color .12s,border-color .12s}.button:hover:not(:disabled){border-color:var(--ink-faded)}.button:disabled{opacity:.5;cursor:default}.button-primary{background:var(--ribbon);border-color:var(--ribbon);color:var(--ribbon-ink)}.button-primary:hover:not(:disabled){border-color:var(--ink)}.button-quiet{background:transparent;border-color:transparent;color:var(--ink-faded);padding:0 .5rem;min-height:2.25rem}.button-quiet:hover:not(:disabled){color:var(--ink);border-color:transparent}.field{display:grid;gap:.3rem;margin-bottom:1rem}.field>span{font-size:var(--t-small);color:var(--ink-faded)}.field input,.field select,.composer textarea{width:100%;border:1px solid var(--rule);border-radius:8px;background:var(--paper-raised);padding:.6rem .75rem;min-height:2.75rem}.form-error{color:var(--ribbon);font-size:var(--t-small);margin:.5rem 0}.notice{background:var(--ribbon-tint);border-radius:var(--radius);padding:.75rem 1rem;max-width:var(--measure)}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem var(--gutter);border-bottom:1px solid var(--rule)}.wordmark{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--ink);font-family:var(--serif);font-size:1.25rem;font-weight:600;letter-spacing:-.015em}.wordmark-mark{width:.9rem;height:1.25rem;fill:var(--ribbon)}.header-right{display:flex;align-items:center;gap:.75rem}.header-link{color:var(--ink);text-decoration:none;font-weight:500}.header-link:hover{color:var(--ribbon)}.credit-pill{font-size:var(--t-small);color:var(--ink-faded);text-decoration:none;border:1px solid var(--rule);border-radius:999px;padding:.25rem .7rem;white-space:nowrap}.credit-pill:hover{color:var(--ink);border-color:var(--ink-faded)}.account{position:relative}.avatar-button{width:2.5rem;height:2.5rem;border-radius:50%;border:1px solid var(--rule);background:var(--paper-raised);padding:0;overflow:hidden;cursor:pointer;display:grid;place-items:center;font-family:var(--serif)}.avatar-button img{width:100%;height:100%;object-fit:cover}.account-menu{position:absolute;right:0;top:calc(100% + .5rem);z-index:20;min-width:15rem;background:var(--paper-raised);border:1px solid var(--rule);border-radius:var(--radius);padding:.5rem;display:grid;box-shadow:0 10px 30px -12px #261b2e59}.account-menu a,.account-menu button{text-align:left;padding:.55rem .6rem;border-radius:6px;color:var(--ink);text-decoration:none;background:none;border:0;cursor:pointer}.account-menu a:hover,.account-menu button:hover{background:var(--ribbon-tint)}.account-name{margin:.3rem .6rem 0;font-weight:600}.account-email{margin:0 .6rem .4rem;font-size:var(--t-small);color:var(--ink-faded);overflow-wrap:anywhere}.google-button{min-height:40px}.site-footer{display:flex;flex-wrap:wrap;gap:1.25rem;padding:1.5rem var(--gutter);border-top:1px solid var(--rule);font-size:var(--t-small);color:var(--ink-faded)}.site-footer a{color:var(--ink-faded)}.footer-version{margin-left:auto}.script{display:grid;gap:1.15rem}.line{display:grid;grid-template-columns:9.5rem minmax(0,1fr);gap:1.25rem;align-items:baseline}.speaker{font-family:var(--serif);font-weight:600;font-size:.95rem;color:var(--ribbon);text-align:right;line-height:1.4}.said{font-family:var(--serif);font-size:1.08rem;line-height:1.7}.said p{margin:0 0 .6em}.said p:last-child{margin-bottom:0}.line-reader .speaker{color:var(--ink-faded);font-weight:500}.line-reader .said{font-style:italic;color:var(--ink-faded)}.line-narrator .speaker{color:var(--ink);font-style:italic;font-weight:500}.line-narrator .said{font-family:var(--sans);font-size:1rem}.addressed{display:block;font-family:var(--sans);font-style:normal;font-size:var(--t-small);color:var(--ink-faded);margin-bottom:.1rem}.landing{padding:0 var(--gutter)}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(2rem,6vw,5rem);align-items:center;padding:clamp(2.5rem,7vw,5.5rem) 0;max-width:72rem;margin:0 auto}.hero h1{font-size:var(--t-display);line-height:1.05;letter-spacing:-.025em;font-weight:500;margin-bottom:.5em}.lede{font-family:var(--serif);font-size:1.15rem;line-height:1.65;max-width:32rem;color:var(--ink)}.hero-action{margin-top:1.75rem;display:grid;gap:.6rem;justify-items:start}.hero-sample{position:relative;margin:0;background:var(--paper-raised);border:1px solid var(--rule);border-radius:4px;padding:3rem clamp(1.25rem,3vw,2.25rem) 1.5rem;box-shadow:0 1px 0 var(--rule),0 24px 48px -32px #261b2e66}.hero-sample .line{grid-template-columns:7.5rem minmax(0,1fr)}.hero-sample figcaption{margin-top:1.5rem;padding-top:.75rem;border-top:1px solid var(--rule);font-size:var(--t-small);color:var(--ink-faded);font-style:italic;font-family:var(--serif)}.ribbon{position:absolute;top:-10px;right:2.25rem;width:1.6rem;height:7.5rem;background:var(--ribbon);clip-path:polygon(0 0,100% 0,100% 100%,50% 84%,0 100%);transform-origin:top center;animation:ribbon-settle 1.4s cubic-bezier(.2,.8,.2,1) both}@keyframes ribbon-settle{0%{transform:translateY(-40%) scaleY(.6)}60%{transform:translateY(0) scaleY(1.03)}to{transform:none}}.how,.pricing{max-width:72rem;margin:0 auto;padding:clamp(2rem,5vw,3.5rem) 0;border-top:1px solid var(--rule)}.steps{list-style:none;counter-reset:step;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.25rem,4vw,3rem)}.steps li{counter-increment:step}.steps li:before{content:counter(step);display:block;font-family:var(--serif);font-size:2.6rem;line-height:1;color:var(--ribbon);margin-bottom:.6rem}.steps p,.pricing-body p{color:var(--ink-faded);max-width:30rem}.pricing{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:2rem}.pricing-body p{font-family:var(--serif);font-size:1.1rem;color:var(--ink)}.page{width:100%;max-width:72rem;margin:0 auto;padding:clamp(1.5rem,4vw,3rem) var(--gutter)}.page-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.prose{max-width:44rem;font-family:var(--serif)}.prose h2{font-size:var(--t-h3);margin-top:1.75rem}.empty{color:var(--ink-faded);font-family:var(--serif);font-style:italic;margin-top:1.5rem}.shelf{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:2rem 1.5rem;align-items:start}.book{display:grid;gap:.2rem;text-decoration:none;color:var(--ink)}.cover{aspect-ratio:2 / 3;border-radius:3px 6px 6px 3px;padding:1rem .9rem;display:flex;flex-direction:column;justify-content:space-between;color:#f4eef6;box-shadow:inset 6px 0 #0000002e,0 14px 24px -16px #261b2e8c;margin-bottom:.6rem;transition:transform .16s ease}.book:hover .cover{transform:translateY(-3px)}.cover-title{font-family:var(--serif);font-size:1.15rem;line-height:1.2;font-weight:500;overflow-wrap:anywhere}.cover-author{font-size:var(--t-small);opacity:.8}.book-title{font-family:var(--serif);font-weight:500;line-height:1.3}.book-author,.book-status{font-size:var(--t-small);color:var(--ink-faded)}.status-analyzing,.status-error{color:var(--ribbon)}.add-book{aspect-ratio:2 / 3;border:1.5px dashed var(--rule);border-radius:6px;background:transparent;cursor:pointer;display:grid;place-content:center;justify-items:center;gap:.4rem;color:var(--ink-faded);font-weight:500}.add-book:hover{border-color:var(--ribbon);color:var(--ribbon)}.add-book-plus{font-family:var(--serif);font-size:2.4rem;line-height:1}.add-form{grid-column:1 / -1;max-width:34rem;background:var(--paper-raised);border:1px solid var(--rule);border-radius:var(--radius);padding:1.5rem}.dropzone{position:relative;border:1.5px dashed var(--rule);border-radius:8px;margin-bottom:1rem}.dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer}.dropzone label{display:grid;gap:.2rem;padding:1.5rem;text-align:center}.dropzone:focus-within,.dropzone-active{border-color:var(--ribbon);background:var(--ribbon-tint)}.form-actions{display:flex;gap:.5rem;align-items:center;margin:.5rem 0 1rem}.book-page{display:grid;grid-template-columns:19rem minmax(0,1fr);flex:1;max-width:80rem;width:100%;margin:0 auto}.book-side{padding:1.75rem var(--gutter) 2rem;border-right:1px solid var(--rule);position:sticky;top:0;align-self:start;max-height:100vh;overflow:auto}.back{font-size:var(--t-small);color:var(--ink-faded);text-decoration:none}.back:before{content:"\2039  "}.back:hover{color:var(--ink)}.book-heading{font-size:1.6rem;margin:.75rem 0 .2rem}.book-byline{color:var(--ink-faded);font-family:var(--serif);font-style:italic;margin-bottom:1.5rem}.chapter-field{margin-bottom:1.5rem}.cast{display:grid;gap:.15rem;margin:0 -.75rem}.cast-member{position:relative;display:grid;gap:.1rem;text-align:left;background:none;border:0;border-radius:8px;padding:.6rem .75rem .6rem 1.6rem;cursor:pointer}.cast-member:hover{background:var(--paper-raised)}.cast-name{font-family:var(--serif);font-weight:500}.cast-intro{font-size:var(--t-small);color:var(--ink-faded);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cast-member.is-current{background:var(--ribbon-tint)}.cast-member.is-current:before{content:"";position:absolute;left:.45rem;top:0;width:.6rem;height:2.4rem;background:var(--ribbon);clip-path:polygon(0 0,100% 0,100% 100%,50% 80%,0 100%)}.cast-member.is-current .cast-intro{-webkit-line-clamp:unset}.cast-member.is-narrator .cast-name{font-style:italic}.start-over{margin-top:1rem;font-size:var(--t-small)}.book-main{display:flex;flex-direction:column;padding:1.75rem var(--gutter) 0;min-width:0}.book-main .script-chat{max-width:46rem;width:100%;padding-bottom:1.5rem}.earlier{justify-self:center}.first-words{max-width:40rem;font-family:var(--serif);font-size:1.1rem;border-left:3px solid var(--ribbon);padding:.2rem 0 .2rem 1rem;margin:.5rem 0 2rem}.composer{position:sticky;bottom:0;margin-top:auto;background:linear-gradient(to bottom,transparent,var(--paper) 1.25rem);padding:1.5rem 0 calc(1rem + env(safe-area-inset-bottom));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem .75rem;align-items:end;max-width:46rem;width:100%}.composer .form-error{grid-column:1 / -1;margin:0}.composer textarea{resize:vertical;min-height:3.2rem;max-height:14rem;font-family:var(--serif);font-size:1.05rem;line-height:1.5}.composer-credit{grid-column:1 / -1;font-size:var(--t-small);color:var(--ink-faded);display:none}.thinking{display:inline-block;width:2.4rem;height:.5rem;background:radial-gradient(circle,var(--ink-faded) 40%,transparent 42%) 0 50% / .8rem .5rem repeat-x;animation:thinking 1.2s steps(3) infinite}@keyframes thinking{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}.state-panel{max-width:34rem;margin:2rem 0}.state-panel h2{margin-bottom:.5rem}.estimate{font-weight:500}.reading-indicator{width:1.2rem;height:4.5rem;background:var(--ribbon);clip-path:polygon(0 0,100% 0,100% 100%,50% 84%,0 100%);animation:reading 2.4s ease-in-out infinite;transform-origin:top;margin-bottom:1.25rem}@keyframes reading{50%{transform:scaleY(.82)}}.balance-line{font-family:var(--serif);font-size:1.3rem;max-width:var(--measure)}.add-credit{margin:2rem 0 2.5rem}.packs{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem}.pack{min-width:8rem}.history{border-collapse:collapse;width:100%;max-width:40rem;font-size:.95rem}.history th{text-align:left;font-weight:500;color:var(--ink-faded);font-size:var(--t-small);border-bottom:1px solid var(--rule);padding:.4rem .5rem .4rem 0}.history td{border-bottom:1px solid var(--rule);padding:.6rem .5rem .6rem 0}.history .num{text-align:right;font-variant-numeric:tabular-nums}@media(max-width:860px){.hero,.steps{grid-template-columns:1fr}.pricing{grid-template-columns:1fr;gap:.5rem}.book-page{grid-template-columns:1fr}.book-side{position:static;max-height:none;border-right:0;border-bottom:1px solid var(--rule);padding-bottom:1rem}.book-heading{font-size:1.35rem;margin-top:.5rem}.book-byline{margin-bottom:1rem}.chapter-field{margin-bottom:.9rem}.cast{display:flex;overflow-x:auto;gap:.4rem;margin:0 calc(-1 * var(--gutter));padding:.25rem var(--gutter) .5rem;scrollbar-width:none}.cast-member{flex:none;padding:.45rem .9rem .45rem 1.4rem;border:1px solid var(--rule);border-radius:999px}.cast-member.is-current{border-color:var(--ribbon)}.cast-member.is-current:before{left:.45rem;width:.5rem;height:1.6rem}.cast-intro{display:none}}@media(max-width:560px){.line,.hero-sample .line{grid-template-columns:1fr;gap:.1rem}.speaker{text-align:left}.credit-pill{display:none}.composer-credit{display:block}.header-link{display:none}.hero-sample .ribbon{right:1.25rem;height:5.5rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.greeting{position:relative;margin:.5rem 0 2rem;padding:0 0 1.5rem 1.25rem;border-bottom:1px solid var(--rule)}.greeting:before{content:"";position:absolute;left:0;top:.35rem;bottom:1.6rem;width:4px;border-radius:2px;background:var(--ribbon)}.greeting-eyebrow{margin:0 0 .25rem;font-size:var(--t-small);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faded)}.greeting-title{display:flex;align-items:center;gap:.6rem;margin:0;font-family:Literata,Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(2.2rem,6vw,3.4rem);line-height:1.1;color:var(--ink)}.greeting-heart{width:.7em;height:.7em;flex:none;fill:var(--ribbon)}.greeting-sub{margin:.6rem 0 0;font-family:Literata,Georgia,serif;font-size:1.1rem;color:var(--ink-faded)}@media(prefers-reduced-motion:no-preference){.greeting-heart{animation:heartbeat 2.4s ease-in-out .6s 2;transform-origin:center}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.18)}30%{transform:scale(1)}45%{transform:scale(1.12)}}}.checkout-panel{margin:1rem 0;padding:1.25rem;border:1px solid var(--rule);border-radius:10px;background:#fff;color:#30313d;max-width:34rem}.checkout-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.checkout-head p{margin:0}.checkout-panel .fine,.checkout-panel .button-quiet{color:#6b7280}.checkout-panel .button-quiet:hover:not(:disabled){color:#30313d}.cover-photo{padding:0;overflow:hidden;background:var(--rule);position:relative}.cover-photo img{display:block;width:100%;height:100%;object-fit:cover}.cover-photo:after{content:"";position:absolute;inset:0;box-shadow:inset 6px 0 #0000002e;border-radius:inherit;pointer-events:none}.side-cover{width:7.5rem;margin:1rem 0 .25rem}.side-cover .cover{margin-bottom:0}.side-cover .cover-title{font-size:.85rem}.side-cover .cover-author{font-size:.7rem}.cover-editor{margin:.5rem 0 1rem;font-size:var(--t-small)}.cover-editor summary{cursor:pointer;color:var(--ink-faded);width:fit-content}.cover-editor summary:hover{color:var(--ink)}.cover-editor-form{margin-top:.75rem;display:grid;gap:.5rem}.cover-editor-form .fine{margin:0}.cover-editor-actions{display:flex;flex-wrap:wrap;gap:.25rem .5rem;align-items:center}@media(max-width:860px){.side-cover{width:5rem}}@media(max-width:560px){.side-cover{display:none}}.shelf-tools{display:flex;flex-wrap:wrap;align-items:end;gap:.75rem 1rem;margin:-.5rem 0 1.75rem;padding-bottom:1.25rem;border-bottom:1px solid var(--rule)}.tool{display:grid;gap:.25rem;font-size:var(--t-small);color:var(--ink-faded)}.tool select{font:inherit;font-size:.95rem;color:var(--ink);background:var(--paper-raised);border:1px solid var(--rule);border-radius:6px;padding:.45rem 2rem .45rem .65rem;min-height:2.5rem;max-width:14rem}.tool select:focus-visible{outline:2px solid var(--ribbon);outline-offset:1px}.tool-clear{align-self:end;min-height:2.5rem}.shelf-group{margin-top:2.25rem}.shelf-group-title{font-family:var(--serif);font-weight:500;font-size:1.35rem;margin:0 0 1rem;padding-bottom:.4rem;border-bottom:1px solid var(--rule)}.shelf-group-count{font-family:var(--sans, inherit);font-size:var(--t-small);color:var(--ink-faded);font-weight:400;margin-left:.35rem}.link-button{background:none;border:0;padding:0;font:inherit;color:var(--ribbon);text-decoration:underline;cursor:pointer}@media(max-width:560px){.shelf-tools{display:grid;grid-template-columns:1fr 1fr}.tool select{max-width:none;width:100%}}.book-facts{font-size:var(--t-small);color:var(--ink-faded);margin:-.25rem 0 .5rem}.add-row{margin-bottom:.5rem}.add-row .add-form{max-width:34rem}.add-book-compact .add-book-plus{font-size:1.2rem;margin-right:.35rem}@media(max-width:560px){.shelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 1rem}.cover-title{font-size:1rem}}.chat-scroll{display:flex;flex-direction:column}@media(max-width:860px){html[data-chat] body{overflow:hidden;overscroll-behavior:none}html[data-chat] #root{height:var(--vvh, 100dvh);min-height:0;overflow:hidden}html[data-chat] #content{min-height:0}html[data-chat] .site-footer{display:none}.book-page.is-chat{flex:1;min-height:0;display:flex;flex-direction:column}.is-chat .book-side{flex:none;padding:.6rem var(--gutter) .6rem;border-bottom:1px solid var(--rule);overflow:visible;max-height:none}.is-chat .back{display:none}.compact-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.compact-head .book-heading{font-size:1.15rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.book-about{flex:none;font-size:var(--t-small)}.book-about>summary{cursor:pointer;color:var(--ink-faded);list-style:none;padding:.25rem 0}.book-about>summary::-webkit-details-marker{display:none}.book-about>summary:after{content:" \25be"}.book-about[open]>summary:after{content:" \25b4"}.is-chat .book-side{position:relative}.about-panel{position:absolute;left:var(--gutter);right:var(--gutter);top:2.6rem;z-index:5;background:var(--paper-raised);border:1px solid var(--rule);border-radius:10px;padding:.75rem 1rem 1rem;box-shadow:0 16px 32px -20px #261b2e99;max-height:70vh;overflow:auto}.book-about .side-cover{display:block;width:5rem}.book-about .book-byline{margin-bottom:.4rem}.compact-pickers{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:.6rem}.compact-pickers .field{margin:0;gap:.15rem}.compact-pickers .field>span{font-size:.75rem}.compact-pickers select{min-height:2.5rem;padding:.4rem .6rem;font-size:1rem}.is-chat .book-main{flex:1;min-height:0;padding:0}.is-chat .chat-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:1rem var(--gutter) .5rem}.is-chat .first-words{margin:.25rem 0 1.25rem;font-size:1rem}.is-chat .script-chat{padding-bottom:.5rem}.is-chat .composer{position:static;flex:none;max-width:none;margin:0;background:var(--paper);border-top:1px solid var(--rule);padding:.6rem var(--gutter) calc(.6rem + env(safe-area-inset-bottom))}.is-chat .composer textarea{min-height:2.75rem;max-height:8rem;resize:none;font-size:1rem}}@media(max-width:860px)and (min-width:561px){.compact-pickers{max-width:40rem}}.site-notice{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.4rem .75rem;padding:.6rem var(--gutter);font-size:.95rem;text-align:center;border-bottom:1px solid var(--rule)}.site-notice.notice-out{background:#f9dede;color:#6e1023}.site-notice.notice-low{background:#fbefd9;color:#5c3a06}.site-notice.notice-hers{background:var(--ribbon-tint);color:var(--ink);font-family:var(--serif);font-style:italic;font-size:1.05rem}.notice-heart{width:1.05em;height:1.05em;fill:var(--ribbon);flex:none}.notice-link{font-weight:600;color:inherit}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .site-notice.notice-out{background:#4a1820;color:#ffd9de}:root:not([data-theme=light]) .site-notice.notice-low{background:#43320f;color:#fbe6bf}}.reminder-backdrop{position:fixed;inset:0;z-index:50;background:#1c162073;display:grid;place-items:center;padding:var(--gutter);animation:fade-in .2s ease}.reminder{width:min(24rem,100%);background:var(--paper-raised);border-radius:18px;padding:1.75rem 1.5rem 1.4rem;text-align:center;box-shadow:0 30px 60px -30px #261b2eb3;border-top:6px solid var(--ribbon);animation:pop-in .26s cubic-bezier(.2,.9,.3,1.2)}.reminder-art{width:3.25rem;height:3.25rem;fill:var(--ribbon);margin-bottom:.5rem}.reminder-water .reminder-art{fill:#4b8fd6}.reminder-text{font-family:var(--serif);font-style:italic;font-size:1.3rem;line-height:1.4;margin:0 0 1.25rem;color:var(--ink)}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(12px) scale(.96)}}.admin{max-width:72rem}.admin-card{background:var(--paper-raised);border:1px solid var(--rule);border-radius:12px;padding:1.25rem 1.25rem 1rem;margin-bottom:1.5rem}.admin-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.admin-card-head h2{margin:0;font-size:1.35rem}.admin-card h3{font-size:1rem;margin:1.25rem 0 .5rem;font-family:var(--sans);font-weight:600}.pill{font-size:var(--t-small);padding:.2rem .7rem;border-radius:999px;border:1px solid var(--rule)}.pill-good{background:#ddf1e3;color:#145a2b;border-color:transparent}.pill-warn{background:#fbefd9;color:#6b4306;border-color:transparent}.pill-bad{background:#f9dede;color:#7a1020;border-color:transparent}.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.75rem}.stat{display:grid;gap:.15rem;padding:.8rem .9rem;border-radius:10px;background:var(--paper);border-left:4px solid var(--rule)}.stat-good{border-left-color:#2f9a55}.stat-warn{border-left-color:#d99623}.stat-bad{border-left-color:#c3283f}.stat-label{font-size:var(--t-small);color:var(--ink-faded)}.stat-value{font-family:var(--serif);font-size:1.5rem;line-height:1.2;font-variant-numeric:tabular-nums}.stat-sub{font-size:.8rem;color:var(--ink-faded);line-height:1.35}.admin-form{display:flex;flex-wrap:wrap;gap:.5rem .75rem;align-items:end;margin:1.25rem 0 .5rem}.admin-form .field{margin:0;min-width:9rem}.admin-form .field.grow{flex:1;min-width:12rem}.admin-split{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem}.admin-table th{text-align:left;font-weight:500;color:var(--ink-faded);font-size:.8rem;border-bottom:1px solid var(--rule);padding:.35rem .5rem .35rem 0;white-space:nowrap}.admin-table td{border-bottom:1px solid var(--rule);padding:.5rem .5rem .5rem 0;vertical-align:top}.admin-table .num{text-align:right;font-variant-numeric:tabular-nums}.admin-table .mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;word-break:break-all}.table-scroll{overflow-x:auto;margin:0 -.25rem;padding:0 .25rem}.users-table{min-width:44rem}.user-name{display:block;font-weight:500}.user-email{display:block;font-size:.8rem;color:var(--ink-faded)}.tags{display:flex;gap:.3rem;margin-top:.25rem;flex-wrap:wrap}.tag{font-size:.7rem;padding:.05rem .45rem;border-radius:999px;background:var(--paper);border:1px solid var(--rule);color:var(--ink-faded)}.tag-ribbon{background:var(--ribbon-tint);border-color:transparent;color:var(--ribbon)}@media(max-width:760px){.admin-split{grid-template-columns:1fr}.admin-card{padding:1rem .9rem .75rem}}
