@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/playfair-display-latin-400-normal-CFtfchNt.woff2) format("woff2"),url(/assets/playfair-display-latin-400-normal-DHYHbkg3.woff) format("woff")}@font-face{font-family:Playfair Display;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/playfair-display-latin-400-italic-LeeEXsx5.woff2) format("woff2"),url(/assets/playfair-display-latin-400-italic-hIeePEuE.woff) format("woff")}@font-face{font-family:Playfair Display;font-style:italic;font-display:swap;font-weight:600;src:url(/assets/playfair-display-latin-600-italic-Bvp5b4iR.woff2) format("woff2"),url(/assets/playfair-display-latin-600-italic-BFV_U8S6.woff) format("woff")}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/raleway-latin-400-normal-C5eIEfLm.woff2) format("woff2"),url(/assets/raleway-latin-400-normal-sMcq1OIP.woff) format("woff")}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/raleway-latin-500-normal-D-8sZNrj.woff2) format("woff2"),url(/assets/raleway-latin-500-normal-tXW-zgej.woff) format("woff")}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/raleway-latin-600-normal-Dim-CLtL.woff2) format("woff2"),url(/assets/raleway-latin-600-normal-BYS3Hyhk.woff) format("woff")}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/raleway-latin-700-normal-BVpQLp0x.woff2) format("woff2"),url(/assets/raleway-latin-700-normal-JVwBSLev.woff) format("woff")}:root{--bg: #1c1418;--surface: #2a1f26;--line: #33262e;--line-strong: #4a3842;--gold: #d9b26f;--on-gold: #1c1418;--text: #f1e6d6;--muted: #b9a99a;--placeholder: #9a8a90;--danger: #e0907f;--font-display: "Playfair Display", "Iowan Old Style", Georgia, serif;--font-body: "Raleway", -apple-system, "Segoe UI", sans-serif;--tab-h: 64px;--col: 480px;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:4px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app{max-width:var(--col);margin:0 auto;min-height:100vh;min-height:100dvh;position:relative}.page{padding:20px 20px calc(var(--tab-h) + 110px + env(safe-area-inset-bottom))}.page.bare{padding-bottom:calc(var(--tab-h) + 32px + env(safe-area-inset-bottom))}.tabbar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--col);height:calc(var(--tab-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(5,1fr);background:var(--bg);border-top:1px solid var(--line);z-index:20}.tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:44px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.tab svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.tab.active{color:var(--gold)}.pill{position:fixed;z-index:15;bottom:calc(var(--tab-h) + env(safe-area-inset-bottom) + 16px);right:max(16px,calc((100vw - var(--col)) / 2 + 16px));min-height:44px;padding:0 20px;display:inline-flex;align-items:center;background:var(--gold);color:var(--on-gold);border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 6px 20px #00000073}.nudge{position:fixed;z-index:18;left:50%;transform:translate(-50%);bottom:calc(var(--tab-h) + env(safe-area-inset-bottom) + 12px);width:calc(100% - 32px);max-width:calc(var(--col) - 32px);background:var(--surface);border:1px solid var(--line-strong);border-radius:4px 22px 22px;padding:14px 16px;display:flex;gap:12px;align-items:center;justify-content:space-between}.nudge p{font-size:13px}.label{font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.title{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:44px;line-height:1.05;margin-top:4px}.title.sm{font-size:34px}.sub{color:var(--muted);margin-top:6px}.empty{color:var(--placeholder)}.section{margin-top:30px}.section>.label{display:block;margin-bottom:10px}.section-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.section-head .label{margin:0}.link{color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.06em;min-height:44px;display:inline-flex;align-items:center}.head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.head-nav{display:flex;gap:4px;align-items:center}.arrow{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;color:var(--gold);font-size:20px;border:1px solid var(--line-strong)}.card{background:var(--surface);border-radius:4px 22px 22px;padding:18px}.card.link-card{display:block}.card+.card{margin-top:12px}.prompt-text{font-family:var(--font-display);font-style:italic;font-size:21px;line-height:1.35}.field.word-input{font-family:var(--font-display);font-style:italic;font-size:30px;color:var(--gold);border-bottom-color:transparent;padding:2px 0}.field.word-input::placeholder{color:var(--gold);opacity:.32}.field.word-input:focus{border-bottom-color:var(--gold)}.closing{font-family:var(--font-display);font-style:italic;font-size:20px;text-align:center;color:var(--muted);margin-top:36px}.list{list-style:none;margin:0;padding:0}.row{display:flex;align-items:center;gap:10px;min-height:48px;border-bottom:1px solid var(--line)}.row:last-child{border-bottom:0}.row .grow{flex:1;min-width:0}.row-btn{width:100%;text-align:left;display:flex;align-items:center;gap:12px;min-height:48px;border-bottom:1px solid var(--line)}.row-btn:last-child{border-bottom:0}.num{font-family:var(--font-display);font-style:italic;color:var(--gold);font-size:20px;width:22px;text-align:center}.check{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;cursor:pointer}.check input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;margin:0;cursor:pointer}.check i{width:22px;height:22px;border:1.5px solid var(--line-strong);border-radius:50%;display:grid;place-items:center;transition:background .15s}.check input:checked+i{background:var(--gold);border-color:var(--gold)}.check input:checked+i:after{content:"";width:5px;height:10px;border:solid var(--on-gold);border-width:0 2px 2px 0;transform:rotate(45deg) translate(-1px,-1px)}.check input:focus-visible+i{outline:2px solid var(--gold);outline-offset:2px}.done{text-decoration:line-through;color:var(--placeholder)}.x{width:44px;height:44px;flex:none;color:var(--placeholder);font-size:20px;display:grid;place-items:center}.tag{font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);border:1px solid var(--line-strong);border-radius:999px;padding:2px 8px}.field,.area,.select{width:100%;min-height:44px;background:transparent;border:0;border-bottom:1px solid var(--line-strong);padding:8px 2px;border-radius:0}.field::placeholder,.area::placeholder{color:var(--placeholder)}.field:focus,.area:focus{outline:none;border-bottom-color:var(--gold)}.field.boxed,.area,.select{background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;padding:10px 12px}.area{min-height:160px;resize:vertical;line-height:1.5}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none}.form{display:grid;gap:14px}.form label>span{display:block;margin-bottom:4px}.add-row{display:flex;gap:8px;align-items:center;margin-top:8px}.btn{min-height:44px;padding:0 20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--gold);color:var(--on-gold);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.btn.ghost{background:transparent;color:var(--gold);border:1px solid var(--line-strong)}.btn.danger{background:transparent;color:var(--danger);border:1px solid var(--danger)}.btn[disabled]{opacity:.4;cursor:default}.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.timeline{position:relative;margin-left:6px;padding-left:22px;border-left:1px solid var(--line-strong)}.slot{position:relative;display:block;width:100%;text-align:left;padding:8px 0;min-height:44px}.slot:before{content:"";position:absolute;left:-28px;top:17px;width:11px;height:11px;border-radius:50%;background:var(--gold)}.slot.hour:before{background:var(--bg);border:1.5px solid var(--line-strong)}.slot.hour.has:before{background:var(--gold);border-color:var(--gold)}.slot .t{font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--gold);text-transform:uppercase}.slot .n{color:var(--muted);font-size:13px}.trackers{display:grid;gap:14px}.water{display:grid;grid-template-columns:repeat(8,1fr);gap:2px}.drop{min-width:0;height:44px;display:grid;place-items:center}@media (max-width: 359px){.water{grid-template-columns:repeat(4,1fr)}}.drop i{width:18px;height:24px;border:1.5px solid var(--line-strong);border-radius:50%/62% 62% 38% 38%}.drop.on i{background:var(--gold);border-color:var(--gold)}.stepper{display:flex;align-items:center;gap:4px}.stepper button{width:44px;height:44px;border:1px solid var(--line-strong);border-radius:50%;color:var(--gold);font-size:20px}.stepper output{min-width:64px;text-align:center;font-family:var(--font-display);font-style:italic;font-size:20px}.track{display:flex;align-items:center;justify-content:space-between;gap:8px}.strip{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:18px}.daypill{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:64px;border-radius:999px;border:1px solid var(--line-strong);position:relative}.daypill b{font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.daypill span{font-family:var(--font-display);font-size:18px}.daypill.today{background:var(--gold);color:var(--on-gold);border-color:var(--gold)}.daypill.today b{color:var(--on-gold)}.daypill .dot{position:absolute;bottom:6px;width:5px;height:5px;border-radius:50%;background:var(--gold)}.daypill.today .dot{background:var(--on-gold)}.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-top:18px}.cal .dow{text-align:center;font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--muted);padding:6px 0}.cal a{min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:12px;position:relative;font-family:var(--font-display)}.cal a.out{color:var(--placeholder)}.cal a.today{background:var(--gold);color:var(--on-gold)}.cal a .dot{width:5px;height:5px;border-radius:50%;background:var(--gold)}.cal a.today .dot{background:var(--on-gold)}.cal a .dot.none{background:transparent}.habit{padding:10px 0;border-bottom:1px solid var(--line)}.habit-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-top:4px}.habit-days button{min-height:44px;display:grid;place-items:center}.habit-days i{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--line-strong)}.habit-days .on i{background:var(--gold);border-color:var(--gold)}.habit-days small{font-size:9px;color:var(--muted);display:block;text-align:center;letter-spacing:.08em}.dinner{display:flex;align-items:baseline;gap:12px}.dinner .d{width:44px;flex:none}.aisle{margin-top:18px}.course+.course{margin-top:26px}.course h3{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:26px}.sc-item{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.sc-item:last-child{border-bottom:0}.sc-item .time{font-size:11px;color:var(--gold);font-weight:700;letter-spacing:.06em;white-space:nowrap}.sc-item .d{color:var(--muted);font-size:13px}.plus{width:44px;height:44px;flex:none;border:1px solid var(--line-strong);border-radius:50%;color:var(--gold);font-size:22px;display:grid;place-items:center}.plus.added{background:var(--gold);color:var(--on-gold);border-color:var(--gold);font-size:16px}.rules{border:1px solid var(--line-strong);border-radius:4px 22px 22px;padding:18px}.rules ul{margin:10px 0 0;padding-left:18px;color:var(--muted)}.rules li{margin:6px 0}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.tile{background:var(--surface);border-radius:4px 22px 22px;padding:16px;min-height:96px;display:flex;flex-direction:column;justify-content:space-between;gap:10px}.tile b{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:20px;line-height:1.15}.feature{display:block;background:var(--surface);border:1px solid var(--gold);border-radius:4px 22px 22px;padding:22px;margin-top:18px}.feature b{display:block;font-family:var(--font-display);font-style:italic;font-weight:400;font-size:30px;color:var(--gold)}.feature span{color:var(--muted)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0608b8;z-index:40;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:var(--col);max-height:92dvh;overflow:auto;background:var(--bg);border:1px solid var(--line-strong);border-bottom:0;border-radius:22px 22px 0 0;padding:20px 20px calc(24px + env(safe-area-inset-bottom))}.sheet-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.sheet-head h2{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:26px}.guide{min-height:100dvh;display:flex;flex-direction:column;padding:16px 24px calc(20px + env(safe-area-inset-bottom))}.guide-top{display:flex;justify-content:space-between;align-items:center;min-height:44px}.guide-body{flex:1;display:flex;flex-direction:column;justify-content:center;gap:20px;padding:24px 0}.guide-body .big{font-family:var(--font-display);font-style:italic;font-size:28px;line-height:1.3}.guide-body .thought{font-family:var(--font-display);font-style:italic;font-size:30px;line-height:1.3;color:var(--gold)}.guide-body .area{min-height:200px}.guide-foot{color:var(--placeholder);font-size:11.5px;line-height:1.5;text-align:center;padding-top:12px}.states{display:grid;gap:10px;margin-top:20px}.state{text-align:left;min-height:56px;padding:0 20px;background:var(--surface);border-radius:4px 22px 22px;font-family:var(--font-display);font-style:italic;font-size:19px;display:flex;align-items:center}.breath{display:grid;place-items:center;padding:20px 0}.orb-stage{width:230px;height:230px;display:grid;place-items:center}.orb{width:150px;height:150px;border-radius:50%;border:1.5px solid var(--gold);display:grid;place-items:center;background:#d9b26f1a;transition-property:transform;transition-timing-function:ease-in-out}.orb-label{text-align:center;margin-top:18px}.skip-link{align-self:center;min-height:44px;padding:0 12px;color:var(--muted);font-size:13px;text-decoration:underline;text-underline-offset:3px}.skip-link:hover,.skip-link:focus-visible{color:var(--gold)}.orb-label b{display:block;font-family:var(--font-display);font-style:italic;font-weight:400;font-size:28px}@media (prefers-reduced-motion: reduce){.orb{transition:none!important}}.prose p{margin-top:14px;color:var(--muted)}.prose p.lead{color:var(--text);font-family:var(--font-display);font-style:italic;font-size:22px;line-height:1.35}.back{display:inline-flex;align-items:center;min-height:44px;color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.06em}.notice{color:var(--gold);font-size:13px;margin-top:10px}.err{color:var(--danger);font-size:13px;margin-top:10px}.sort-item{margin-top:10px}.sort-item .prompt-text{font-size:24px}.sort-q{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:26px;margin:26px 0 14px}.sort-options{display:grid;gap:10px}.sort-options .states{margin-top:0}.sort-foot{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:22px}.sort-beat{min-height:60dvh;display:flex;flex-direction:column;justify-content:center;gap:24px}.sort-beat .prompt-text{font-size:28px;color:var(--gold)}.sort-summary{margin-top:16px}.sort-summary .row{font-family:var(--font-display);font-style:italic;font-size:20px}.sc-hint{font-size:13px;margin-top:4px}.row-tag{flex:none;white-space:nowrap;padding:2px 7px;letter-spacing:.08em}.field.wrap{display:block;resize:none;overflow:hidden;line-height:1.4;padding-top:11px;padding-bottom:11px;font:inherit;color:inherit}.row:has(.field.wrap){align-items:center;padding:2px 0}.reminder{margin-top:22px}.reminder-text{font-family:var(--font-display);font-style:italic;font-size:20px;line-height:1.3}.reminder-how{font-size:13px}.recipe-row{gap:14px}.thumb{width:44px;height:44px;border-radius:4px 12px 12px;object-fit:cover;flex:none}.empty-thumb{background:var(--surface)}.recipe-photo{display:block;width:100%;max-height:260px;object-fit:cover;border-radius:4px 22px 22px;margin:14px 0 6px}.ingredients .row{min-height:44px}.night-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.night-grid .btn{padding:0 6px}.picker{max-height:40dvh;overflow-y:auto;margin-top:6px}
