@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.0szrwpqb9mkwe.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}._9mH_6q_className{font-family:Inter,Inter Fallback;font-style:normal}._9mH_6q_variable{--font-sans:"Inter", "Inter Fallback"}
@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ccf27e5a7366fb23-s.1wwzpfhzaj2r0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e41d5df559864f9e-s.p.2rlzm4mj5kw8e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}.gWe_kG_className{font-family:Instrument Serif,Instrument Serif Fallback;font-style:normal;font-weight:400}.gWe_kG_variable{--font-serif:"Instrument Serif", "Instrument Serif Fallback"}
:root{--bg:#fafaf9;--fg:#1a1a1a;--muted:#8a8a88;--faint:#bdbdba;--hover:#f0f0ee;--line:#e7e7e4;--warn:#b4441f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#111110;--fg:#ededec;--muted:#8a8a87;--faint:#4a4a48;--hover:#1e1e1d;--line:#262625;--warn:#e0774f}}*{box-sizing:border-box;margin:0}body{background:var(--bg);color:var(--fg);font-family:var(--font-sans), system-ui, sans-serif;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.6}main{max-width:38rem;margin:0 auto;padding:12vh 1.5rem 6rem}h1{font-family:var(--font-serif), Georgia, serif;letter-spacing:-.01em;margin-bottom:.5rem;font-size:2.75rem;font-weight:400;line-height:1.05}header{margin-bottom:3rem}section{margin-bottom:2.75rem}h2{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.75rem;margin-bottom:.75rem;font-size:.75rem;font-weight:500;display:flex}h3{color:var(--muted);margin:1rem 0 .25rem;font-size:.8rem;font-weight:500}a{color:inherit;-webkit-text-decoration-color:var(--faint);text-decoration-color:var(--faint);text-underline-offset:3px}.muted{color:var(--muted);font-size:.875rem}.brief{white-space:pre-line;font-size:1.05rem}.rows{padding:0;list-style:none}.rows li{border-top:1px solid var(--line);align-items:baseline;gap:.875rem;padding:.6rem 0;display:flex}.rows li>div{flex:1;min-width:0}.rows li.past{opacity:.45}.time,.due{font-variant-numeric:tabular-nums;color:var(--muted);min-width:3.25rem;font-size:.875rem}.due.late{color:var(--warn)}.tag{text-transform:uppercase;letter-spacing:.06em;color:var(--warn);min-width:3.25rem;font-size:.7rem}.actions{gap:.25rem;display:flex}button{font:inherit;color:inherit;border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:6px;padding:.35rem .9rem}button:hover{background:var(--hover)}button.quiet{color:var(--muted);text-transform:none;letter-spacing:0;border:none;padding:.1rem .4rem;font-size:.8rem}button.quiet:hover{color:var(--fg)}button.check{border:1.5px solid var(--faint);border-radius:50%;width:1rem;height:1rem;padding:0;transform:translateY(2px)}button.check:hover{border-color:var(--fg)}input{font:inherit;color:inherit;border:none;border-bottom:1px solid var(--line);background:0 0;outline:none;padding:.4rem 0}input:focus{border-color:var(--muted)}.capture input{width:100%;margin-bottom:.25rem;font-size:1.05rem}details summary{cursor:pointer;list-style:none}details summary::-webkit-details-marker{display:none}.login{text-align:center;padding-top:30vh}.login h1{margin-bottom:2rem}.login p{margin-top:1rem}.late{color:var(--warn)}.cards{grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:.75rem;display:grid}.card{border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:.15rem;padding:1rem 1rem .9rem;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.card:hover{background:var(--hover);border-color:var(--faint)}.card .art{width:100%;height:6.5rem;color:var(--muted);margin-bottom:.5rem}.card:hover .art{color:var(--fg)}.card strong{font-weight:500}.card.new{border-style:dashed;justify-content:center;min-height:12rem}.card.new input{text-align:center;border:none}main.wide{max-width:52rem}.bag-head{align-items:flex-end;gap:1.25rem;display:flex}.bag-head .art{width:7rem;height:6rem;color:var(--muted);flex:none}.columns{grid-template-columns:1fr 1fr;gap:2.5rem;display:grid}@media (max-width:640px){.columns{grid-template-columns:1fr;gap:0}}.column .rows li{align-items:center}.column.missing{background:color-mix(in srgb, var(--warn) 8%, transparent);border-radius:14px;align-self:start;padding:1rem 1.25rem .5rem}.column.missing h2,.column.missing .rows li>div{color:var(--warn)}.column.missing .rows li{border-color:color-mix(in srgb, var(--warn) 25%, var(--line))}button.item{color:var(--faint);border:none;padding:0 .25rem;font-size:.9rem}button.item:hover{color:var(--fg);background:0 0}.column.missing button.item{color:var(--warn);opacity:.6}.column.missing button.item:hover{opacity:1}input.link{width:100%;color:var(--muted);padding:.15rem 0;font-size:.8rem}.column .capture input{margin-top:.5rem;font-size:.95rem}.ring{flex:none}.ring .track{fill:none;stroke:var(--line);stroke-width:2px}.ring .arc{fill:none;stroke:var(--muted);stroke-width:2.5px;stroke-linecap:round}.ring text{fill:var(--fg);font-family:var(--font-serif), Georgia, serif;font-size:24px}.ring.late .arc{stroke:var(--warn)}.ring.ready .arc{stroke:var(--fg)}.cards.people .card{min-height:11rem}.cards.people .ring{margin-bottom:.75rem}.about{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:.5rem 1.5rem;margin:-1rem 0 2.5rem;font-size:.875rem;display:flex}.about label{align-items:baseline;gap:.5rem;display:flex}.about .likes{flex:1;min-width:14rem}.about .likes input{flex:1}.about input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){.about input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial}}.board{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}@media (max-width:720px){.board{grid-template-columns:1fr}}.lane{background:var(--hover);border-radius:14px;align-self:start;margin:0;padding:1rem}.lane.given{border:1px dashed var(--line);background:0 0}.gift{background:var(--bg);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:.25rem;margin-bottom:.5rem;padding:.7rem .8rem .4rem;display:flex}.lane.given .gift{opacity:.7}.gift .actions{justify-content:flex-end;margin-right:-.4rem}.lane .capture input{font-size:.9rem}.gift-capture{margin-bottom:1.5rem}.reorder{background:color-mix(in srgb, var(--warn) 8%, transparent);border-radius:14px;padding:1rem 1.25rem}.reorder h2{color:var(--warn)}.reorder strong{margin-right:.25rem;font-weight:500}.day{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2.75rem;display:grid}@media (max-width:720px){.day{grid-template-columns:1fr}}.slot{border:1px solid var(--line);opacity:.55;border-radius:14px;align-self:start;margin:0;padding:1rem;transition:opacity .15s}.slot:hover{opacity:1}.slot.now{opacity:1;border-color:var(--faint);background:var(--hover)}.slot>.muted{margin:-.5rem 0 .5rem}.slot .tag{min-width:0}.recipe{margin-bottom:.5rem;font-size:.8rem}.pill{background:var(--bg);border:1px solid var(--line);border-radius:10px;margin-bottom:.4rem}.pill summary{flex-direction:column;padding:.5rem .75rem;display:flex}.pill strong{font-weight:500}.pill.optional strong{color:var(--muted);font-weight:400}.pill.low{border-color:color-mix(in srgb, var(--warn) 50%, var(--line))}.pill.low strong:after{content:" ●";color:var(--warn);vertical-align:.2em;font-size:.7em}.pill ul{color:var(--muted);padding:0 .75rem 0 1.75rem;font-size:.8rem}.pill-actions{justify-content:space-between;align-items:baseline;padding:.25rem .5rem .4rem .75rem;font-size:.8rem;display:flex}.rules p{margin-bottom:.25rem}main.wider{max-width:72rem}.tree-toolbar{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;margin-bottom:.75rem;font-size:.875rem;display:flex}.tree-toolbar select{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:6px;max-width:22rem;padding:.3rem .5rem}.tree-layout{grid-template-columns:1fr 20rem;gap:1rem;margin-bottom:2.75rem;display:grid}@media (max-width:900px){.tree-layout{grid-template-columns:1fr}}.f3.tree{border:1px solid var(--line);--background-color:var(--bg);--text-color:var(--fg);--female-color:var(--hover);--male-color:var(--hover);--genderless-color:var(--hover);border-radius:14px;height:min(72vh,760px);min-height:480px;overflow:hidden}.tree-card{background:var(--hover);border:1px solid var(--line);border-top:3px solid var(--warn);width:210px;height:92px;font-family:var(--font-sans), system-ui, sans-serif;color:var(--fg);text-align:left;border-radius:10px;flex-direction:column;gap:.1rem;padding:.6rem .75rem;display:flex}.tree-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:500;line-height:1.25;overflow:hidden}.tree-card span,.tree-card em{color:var(--muted);font-size:.75rem;font-style:normal}.tree-card em{margin-top:auto}.tree-card.in-law{border-top-color:var(--faint)}.tree-card.placeholder{background:0 0;border-style:dashed;border-top-width:1px}.f3 .card-main .tree-card{border-color:var(--fg);border-top-color:var(--warn)}.tree-detail{border:1px solid var(--line);border-radius:14px;align-self:start;max-height:min(72vh,760px);padding:1rem 1.25rem;font-size:.875rem;overflow:auto}.tree-detail .name{font-family:var(--font-serif), Georgia, serif;color:var(--fg);margin:0 0 .25rem;font-size:1.6rem;font-weight:400;line-height:1.15}.tree-detail ul{padding-left:1rem}.chips{flex-wrap:wrap;gap:.25rem;margin-top:.5rem;display:flex}.chip{color:var(--warn);background:color-mix(in srgb, var(--warn) 10%, transparent);border-radius:99px;padding:.1rem .5rem;font-size:.7rem}.family-facts{grid-template-columns:1fr 1fr;gap:2.5rem;display:grid}@media (max-width:900px){.family-facts{grid-template-columns:1fr}}.about select{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:6px;max-width:14rem;padding:.15rem .35rem}.centered{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:4rem 1.5rem;display:flex}.centered h1{margin-bottom:2rem}.centered p{max-width:30rem;color:var(--muted);margin-bottom:1rem}.centered .button{margin-top:1.5rem}.button{border:1px solid var(--faint);color:var(--fg);border-radius:999px;padding:.5rem 1rem;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-block}.button:hover{background:var(--hover);border-color:var(--muted)}.apps{grid-template-columns:repeat(auto-fill,minmax(4.75rem,1fr));gap:1.25rem .25rem;margin:-1rem 0 2.75rem;display:grid}.app{text-align:center;flex-direction:column;align-items:center;gap:.35rem;text-decoration:none;display:flex}.app .tile{background:var(--hover);border:1px solid var(--line);width:3.75rem;height:3.75rem;color:var(--fg);border-radius:1rem;place-items:center;transition:background .15s,border-color .15s,transform .15s;display:grid;position:relative}.app .tile svg{width:1.6rem;height:1.6rem}.app:hover .tile{border-color:var(--faint);transform:translateY(-1px)}.app .badge{background:var(--fg);min-width:1.25rem;height:1.25rem;color:var(--bg);border-radius:99px;padding:0 .35rem;font-size:.7rem;font-weight:600;line-height:1.25rem;position:absolute;top:-.4rem;right:-.4rem}.app .name{font-size:.75rem}.app .note{color:var(--muted);margin-top:-.3rem;font-size:.7rem}main{padding-left:max(1.5rem, env(safe-area-inset-left));padding-right:max(1.5rem, env(safe-area-inset-right));padding-bottom:max(6rem, env(safe-area-inset-bottom))}@media (max-width:640px){main{padding-top:max(2.5rem, env(safe-area-inset-top))}h1{font-size:2.4rem}header{margin-bottom:2rem}.bag-head{flex-direction:column;align-items:flex-start;gap:.5rem}.bag-head .art{width:5rem;height:4rem}.bag-head .ring{width:64px;height:64px}.slot.now{order:-1}.slot{opacity:.75}.tree-toolbar select{flex:100%;max-width:100%}.f3.tree{height:65vh;min-height:360px}.cards{grid-template-columns:repeat(2,1fr)}.card.new{min-height:8rem}}@media (pointer:coarse){input,select,textarea{font-size:16px!important}button.quiet,button.item{min-width:44px;min-height:44px}button.check{width:1.4rem;height:1.4rem;position:relative;transform:none}button.check:after{content:"";position:absolute;inset:-12px}.rows li{align-items:center}.app .tile{width:4rem;height:4rem}header .muted>a:only-child{padding:.7rem .75rem .7rem 0;display:inline-block}}@media (hover:none){.card:hover,.app:hover .tile{transform:none}}.add-media{flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;margin-bottom:2.5rem;display:flex}.add-media input[name=title]{flex:2 14rem;font-size:1.05rem}.add-media input[name=recommended_by]{flex:9rem}.add-media select,.media-form input[type=date]{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:.3rem .5rem}.chips-nav{flex-wrap:wrap;gap:.35rem;margin-bottom:1.25rem;font-size:.8rem;display:flex}.chips-nav a{border:1px solid var(--line);color:var(--muted);border-radius:99px;padding:.3rem .75rem;text-decoration:none}.chips-nav a.on{color:var(--bg);background:var(--fg);border-color:var(--fg)}.chips-nav .sep{width:.75rem}.shelf{grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr));gap:1.5rem 1rem;margin-bottom:1.5rem;display:grid}.tile-link{flex-direction:column;gap:.3rem;min-width:0;text-decoration:none;display:flex}.tile-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.85rem;line-height:1.3;display:-webkit-box;overflow:hidden}.tile-meta{text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.poster{aspect-ratio:2/3;background:var(--hover);border:1px solid var(--line);border-radius:8px;transition:transform .15s,border-color .15s;display:block;position:relative;overflow:hidden}.poster img{object-fit:cover;filter:grayscale()contrast(1.05);width:100%;height:100%;transition:filter .2s}.tile-link:hover .poster{border-color:var(--faint);transform:translateY(-2px)}.tile-link:hover .poster img,.poster.l img{filter:none}.poster .type{flex-direction:column;gap:.35rem;padding:.75rem .7rem;display:flex;position:absolute;inset:0}.poster .type em{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.6rem;font-style:normal}.poster .type strong{font-family:var(--font-serif), Georgia, serif;overflow-wrap:anywhere;font-size:1.25rem;font-weight:400;line-height:1.05}.poster .type span{color:var(--muted);margin-top:auto;font-size:.7rem}.poster.movie{background:color-mix(in srgb, var(--fg) 7%, var(--bg))}.poster.series{background:color-mix(in srgb, var(--fg) 4%, var(--bg));border-style:dashed}.poster.l{flex:none;width:11rem}.poster.l .type strong{font-size:1.6rem}.media-head{align-items:flex-start;gap:1.5rem;margin:1rem 0 2rem;display:flex}.media-head h1{font-size:2.2rem}.status-row{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.media-form{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:.75rem 1.5rem;font-size:.875rem;display:flex}.media-form label{align-items:baseline;gap:.5rem;display:flex}.media-form .wide-label{flex-direction:column;flex:100%;align-items:stretch}@media (max-width:640px){.media-head{flex-direction:column}.poster.l{width:9rem}.shelf{grid-template-columns:repeat(3,1fr);gap:1.25rem .75rem}.poster .type strong{font-size:1rem}.chips-nav .sep{flex-basis:100%;height:0}}.inbox .kind{letter-spacing:.04em;text-transform:uppercase;font-size:.7rem}.inbox .kind.promised{color:var(--fg)}.inbox a{text-decoration:none}.inbox a:hover{text-decoration:underline;-webkit-text-decoration-color:var(--faint);text-decoration-color:var(--faint)}
