@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/instrument-serif-latin-ext-400-normal-C2je3j2s.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-20C0,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(/assets/instrument-serif-latin-400-normal-DnYpCC2O.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;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/instrument-serif-latin-ext-400-italic-C9HzH3YL.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/instrument-serif-latin-400-italic-DKMiL14s.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:Geist;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/geist-cyrillic-400-normal-DXusLSnH.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/geist-latin-ext-400-normal-CND6cjiG.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/geist-latin-400-normal-B40WzpMT.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:Geist;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/geist-cyrillic-500-normal-NWpm63d5.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/geist-latin-ext-500-normal-BovoTgeE.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/geist-latin-500-normal-CTWBw9NS.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:Geist;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/geist-cyrillic-600-normal-BeW5VFD_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/geist-latin-ext-600-normal-CVFbg5dS.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/geist-latin-600-normal-CSETrqM2.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:Geist;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/geist-cyrillic-700-normal-BSHy2ewF.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/geist-latin-ext-700-normal-BnofTsEi.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/geist-latin-700-normal-CFi8mLqe.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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.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}:root{--bg:oklch(97.2% .01 80);--surface:oklch(94.8% .014 78);--surface-2:oklch(92.8% .016 78);--ink:oklch(17% .012 65);--ink-soft:oklch(30% .012 65);--ink-muted:oklch(50% .012 70);--ink-faint:oklch(70% .012 78);--hairline:oklch(85% .012 75);--hairline-strong:oklch(78% .012 72);--accent:oklch(42% .16 30);--accent-soft:oklch(94% .04 30);--serif:"Instrument Serif", "Times New Roman", Georgia, serif;--sans:"Geist", -apple-system, "Helvetica Neue", Arial, sans-serif;--mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--max-width:1480px;--gutter:clamp(20px, 4vw, 56px);--hairline-w:1px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg:oklch(16% .012 70);--surface:oklch(20% .012 70);--surface-2:oklch(24% .014 70);--ink:oklch(94% .01 80);--ink-soft:oklch(82% .012 80);--ink-muted:oklch(62% .012 75);--ink-faint:oklch(40% .012 70);--hairline:oklch(30% .012 70);--hairline-strong:oklch(40% .012 70);--accent:oklch(72% .18 30);--accent-soft:oklch(28% .06 30);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.55;overflow-x:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}input,select{font:inherit;color:inherit}em{font-style:italic}::selection{background:var(--accent);color:var(--bg)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mono{font-family:var(--mono)}.app-shell{flex-direction:column;min-height:100vh;display:flex}.main{flex:1}.top-nav{z-index:50;background:color-mix(in oklch, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:var(--hairline-w) solid var(--hairline);position:sticky;top:0}.top-nav-inner{max-width:var(--max-width);padding:14px var(--gutter);grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;margin:0 auto;display:grid}.wordmark{text-align:left;align-items:center;gap:12px;text-decoration:none;display:flex}.wordmark-mark{font-family:var(--serif);color:var(--accent);font-size:28px;line-height:1;display:inline-block;transform:rotate(-12deg)}.wordmark-text{flex-direction:column;line-height:1.05;display:flex}.wordmark-text span{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);font-size:10px}.wordmark-text em{font-family:var(--serif);color:var(--ink);font-size:22px;font-style:italic;line-height:1}.nav-links{justify-content:center;gap:28px;display:flex}.nav-link{font-family:var(--sans);color:var(--ink-muted);border-bottom:1px solid #0000;align-items:baseline;gap:6px;padding:6px 0;font-size:14px;font-weight:500;text-decoration:none;transition:color .15s,border-color .15s;display:inline-flex}.nav-link:hover{color:var(--ink)}.nav-link.is-active{color:var(--ink);border-bottom-color:var(--ink)}.nav-count{font-family:var(--mono);color:var(--ink-faint);border:1px solid var(--hairline);border-radius:999px;padding:2px 5px;font-size:10px}.nav-trailing{justify-content:flex-end;gap:8px;display:flex}.theme-toggle{border:1px solid var(--hairline);width:32px;height:32px;color:var(--ink-soft);border-radius:999px;transition:border-color .15s,color .15s}.theme-toggle:hover{color:var(--ink);border-color:var(--hairline-strong)}.burger{display:none}@media (width>=701px){.mobile-menu,.mobile-menu-backdrop{display:none}}.reco-image-wrap{aspect-ratio:1;background:var(--surface);position:relative;overflow:hidden}.reco-top-badge{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--accent);z-index:1;border-radius:2px;padding:4px 8px;font-size:10px;position:absolute;top:10px;left:10px}.reco-image-wrap img{object-fit:cover;object-position:center 65%;height:175%}.collection-page,.detail-page{max-width:var(--max-width);padding:0 var(--gutter);margin:0 auto}.page-head{border-bottom:var(--hairline-w) solid var(--hairline);padding-top:clamp(40px,7vw,50px);padding-bottom:clamp(32px,4vw,18px)}.page-head-meta{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);align-items:center;gap:14px;margin-bottom:28px;font-size:11px;display:flex}.kicker-divider{color:var(--ink-faint)}.page-title{font-family:var(--serif);letter-spacing:-.02em;color:var(--ink);margin:0;font-size:112px;font-weight:400;line-height:.95}.page-title em{color:var(--accent);font-style:italic}.page-head-foot{grid-template-columns:1fr 1fr;align-items:end;gap:clamp(24px,4vw,64px);margin-top:clamp(32px,5vw,56px);display:grid}.page-lead{font-family:var(--serif);color:var(--ink-soft);text-wrap:pretty;margin:clamp(28px,4vw,28px) 0 0;font-size:clamp(18px,1.6vw,24px);line-height:1.35}.page-counts{border-top:var(--hairline-w) solid var(--hairline);grid-template-columns:repeat(4,1fr);gap:24px;margin:clamp(24px,3vw,40px) 0 0;padding-top:18px;display:grid}.page-counts>div{flex-direction:column;gap:6px;display:flex}.page-counts dt{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);font-size:10px}.page-counts dd{font-family:var(--serif);color:var(--ink);margin:0;font-size:clamp(28px,3vw,44px);line-height:1}.filter-bar{border-bottom:var(--hairline-w) solid var(--hairline);flex-direction:column;gap:18px;padding:24px 0;display:flex}.filter-bar-row{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.filter-bar-row.filter-bar-pills{align-items:flex-start;gap:24px}.search-wrap{border-bottom:var(--hairline-w) solid var(--hairline-strong);flex:1;align-items:center;min-width:280px;padding:0;display:flex;position:relative}.search-icon{width:18px;height:18px;color:var(--ink-muted);margin-right:10px}.search-input{font-family:var(--serif);color:var(--ink);background:0 0;border:0;flex:1;padding:10px 0;font-size:20px;font-style:italic}.search-input:focus{outline:none}.search-wrap:focus-within{border-bottom-color:var(--accent);box-shadow:0 1px 0 var(--accent)}.search-input::placeholder{color:var(--ink-faint)}.search-clear{background:var(--surface);width:22px;height:22px;color:var(--ink-muted);border-radius:999px;font-size:18px;line-height:1}.sort-wrap{border-bottom:var(--hairline-w) solid var(--hairline-strong);align-self:stretch;align-items:center;gap:10px;display:flex}.sort-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-muted);font-size:10px}.sort-select{font-family:var(--sans);color:var(--ink);cursor:pointer;background:0 0;border:0;font-size:14px;font-weight:500}.filter-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-group-label{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);margin-right:4px;font-size:10px}.filter-pill{font-family:var(--sans);color:var(--ink-soft);border:var(--hairline-w) solid var(--hairline-strong);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .15s}.filter-pill:hover{color:var(--ink);border-color:var(--ink)}.filter-pill.is-active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.filter-pill:disabled{opacity:.55;cursor:default}.filter-pill:disabled:hover{color:var(--ink-soft);border-color:var(--hairline-strong)}.filter-pill.is-active:disabled:hover{color:var(--bg);border-color:var(--ink)}.filter-pill.is-done:disabled{opacity:1}.filter-pill.btn-danger{background:var(--accent);border-color:var(--accent);color:var(--bg)}.filter-pill.btn-danger:hover:not(:disabled){opacity:.85;color:var(--bg);border-color:var(--accent)}.grid{grid-template-columns:repeat(4,1fr);gap:clamp(24px,3vw,44px) clamp(20px,2.4vw,36px);padding:clamp(32px,4vw,56px) 0;display:grid}@media (width<=1100px){.grid{grid-template-columns:repeat(3,1fr)}}@media (width<=800px){.grid{grid-template-columns:repeat(2,1fr);gap:16px 12px}}.empty-state{text-align:center;font-family:var(--serif);color:var(--ink-muted);grid-column:1/-1;padding:80px 0;font-size:22px;font-style:italic}.btn-text{font-family:var(--sans);color:var(--ink);border-bottom:1px solid var(--ink);margin-top:12px;padding-bottom:1px;font-size:13px;font-style:normal;font-weight:500}.card{cursor:pointer;color:inherit;outline:none;flex-direction:column;gap:14px;text-decoration:none;display:flex}.card:focus-visible .card-image-wrap{outline:2px solid var(--accent);outline-offset:4px}.card-image-wrap{aspect-ratio:1;background:var(--surface);transition:transform .3s;position:relative;overflow:hidden}.card:hover .card-image-wrap{transform:translateY(-2px)}.card-index{font-family:var(--mono);letter-spacing:.12em;color:var(--ink-muted);background:color-mix(in oklch, var(--bg) 84%, transparent);border-radius:2px;padding:4px 8px;font-size:10px;position:absolute;top:12px;left:12px}.card-priority-badge{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;background:color-mix(in oklch, var(--bg) 84%, transparent);color:var(--ink-muted);border-radius:2px;padding:4px 10px;font-size:10px;font-weight:600;position:absolute;top:12px;left:12px}.card-priority-badge.priority-grail{background:var(--accent);color:#fff}.card-priority-badge.priority-want{background:color-mix(in oklch, var(--ink) 80%, transparent);color:var(--bg)}.card-priority-badge.priority-nice{background:color-mix(in oklch, var(--bg) 84%, transparent);color:var(--ink-muted)}.card-palette-edge{height:6px;position:absolute;bottom:0;left:0;right:0}.card-body{flex-direction:column;gap:8px;display:flex}.card-meta-top{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);justify-content:space-between;font-size:10px;display:flex}.card-title{font-family:var(--sans);letter-spacing:-.01em;color:var(--ink);margin:0;font-size:17px;font-weight:500;line-height:1.2}.card-colorway{font-family:var(--serif);color:var(--ink-soft);margin:0;font-size:18px;font-style:italic;line-height:1.25}.card-foot{border-top:var(--hairline-w) solid var(--hairline);justify-content:space-between;align-items:center;margin-top:4px;padding-top:12px;display:flex}.card-meta-right{font-family:var(--mono);color:var(--ink-soft);align-items:center;gap:6px;font-size:11px;display:flex}.card-dot{color:var(--ink-faint)}.mini-palette{align-items:center;gap:6px;display:inline-flex}.mini-palette-dot{border:var(--hairline-w) solid color-mix(in oklch, var(--ink) 8%, transparent);border-radius:999px;width:14px;height:14px}.mini-palette-more{font-family:var(--mono);color:var(--ink-faint);margin-left:2px;font-size:10px}.page-foot{border-top:var(--hairline-w) solid var(--hairline);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);justify-content:space-between;align-items:center;gap:24px;padding:28px 0 56px;font-size:11px;display:flex}.page-foot-em{font-family:var(--serif);text-transform:none;letter-spacing:0;color:var(--ink-soft);font-size:16px;font-style:italic}.detail-topbar{border-bottom:var(--hairline-w) solid var(--hairline);grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:24px 0;display:grid}.detail-topbar-left{align-items:center;gap:12px;display:flex}.detail-topbar-center{justify-content:center;align-items:center;gap:16px;display:flex}.detail-topbar-right{justify-content:flex-end;display:flex}.back-link{font-family:var(--sans);color:var(--ink-soft);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;font-size:13px;font-weight:500;transition:color .15s;display:inline-flex}.back-link:hover{color:var(--ink)}.detail-pager{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);align-items:center;gap:16px;font-size:11px;display:flex}.pager-btn{color:var(--ink-soft);align-items:center;gap:6px;transition:color .15s;display:inline-flex}.pager-btn:hover{color:var(--ink)}.pager-label{letter-spacing:.12em}.pager-index{border-left:var(--hairline-w) solid var(--hairline);border-right:var(--hairline-w) solid var(--hairline);color:var(--ink);padding:0 14px}.detail-hero{border-bottom:var(--hairline-w) solid var(--hairline);grid-template-columns:1.2fr 1fr;gap:clamp(32px,5vw,80px);padding:clamp(40px,6vw,80px) 0;display:grid}@media (width<=900px){.detail-hero{grid-template-columns:1fr}}.detail-hero-image{aspect-ratio:1;background:var(--surface);position:relative;overflow:hidden}.detail-hero-tags{flex-wrap:wrap;gap:8px;display:flex;position:absolute;top:16px;left:16px;right:16px}.tag{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);background:color-mix(in oklch, var(--bg) 84%, transparent);border:var(--hairline-w) solid var(--hairline);padding:5px 9px;font-size:10px}.tag-cat{background:var(--accent-soft);color:var(--accent);border-color:#0000}.detail-hero-info{flex-direction:column;align-items:flex-start;padding-top:12px;display:flex}.detail-kicker{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);align-items:center;gap:12px;margin-bottom:24px;font-size:11px;display:flex}.detail-title{font-family:var(--serif);letter-spacing:-.02em;color:var(--ink);margin:0;font-size:clamp(40px,5.4vw,88px);font-weight:400;line-height:.98}.detail-title em{color:var(--accent);font-style:italic}.detail-description{font-family:var(--serif);color:var(--ink-soft);text-wrap:pretty;margin:28px 0 0;font-size:clamp(18px,1.4vw,22px);line-height:1.4}.detail-specs{border-top:var(--hairline-w) solid var(--hairline);grid-template-columns:1fr 1fr;gap:0;width:100%;margin:clamp(32px,4vw,48px) 0 0;display:grid}.detail-specs>div{border-bottom:var(--hairline-w) solid var(--hairline);flex-direction:column;gap:4px;padding:18px 0;display:flex}.detail-specs>div:nth-child(odd){padding-right:16px}.detail-specs>div:nth-child(2n){border-left:var(--hairline-w) solid var(--hairline);padding-left:16px}.detail-specs dt{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);font-size:10px}.detail-specs dd{font-family:var(--serif);color:var(--ink);margin:0;font-size:22px}.detail-specs dd.mono{font-family:var(--mono);font-size:15px}.section-palette,.section-pants,.section-personal{border-bottom:var(--hairline-w) solid var(--hairline);padding:clamp(48px,6vw,28px) 0}.section-head{grid-template-columns:1.2fr 1fr;align-items:end;gap:clamp(24px,4vw,80px);margin-bottom:clamp(32px,4vw,36px);display:grid}@media (width<=900px){.section-head{grid-template-columns:1fr}}.section-head-left{flex-direction:column;gap:10px;display:flex}.section-kicker{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);font-size:11px}.section-title{font-family:var(--serif);letter-spacing:-.02em;color:var(--ink);margin:0;font-size:clamp(36px,4vw,60px);font-weight:400;line-height:1}.section-title em{color:var(--accent);font-style:italic}.section-intro{font-family:var(--serif);color:var(--ink-soft);text-wrap:pretty;max-width:50ch;margin:0;font-size:clamp(16px,1.2vw,19px);line-height:1.45}.palette-strip{flex-direction:column;gap:24px;display:flex}.palette-strip-bar{border:var(--hairline-w) solid var(--hairline);width:100%;height:clamp(140px,18vw,220px);display:flex;overflow:hidden}.palette-strip-seg{cursor:crosshair;border:none;flex:1;padding:0;transition:flex-grow .4s,opacity .2s}.palette-strip-bar:hover .palette-strip-seg{opacity:.7}.palette-strip-bar:hover .palette-strip-seg.is-hovered{opacity:1;flex-grow:6!important}.palette-strip-legend{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px;display:grid}.palette-legend-item{border:var(--hairline-w) solid var(--hairline);cursor:default;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.palette-legend-item.is-hovered{border-color:var(--ink);background:var(--surface)}.palette-legend-chip{border:var(--hairline-w) solid color-mix(in oklch, var(--ink) 10%, transparent);border-radius:4px;width:28px;height:28px}.palette-legend-hex{font-family:var(--mono);letter-spacing:.04em;color:var(--ink);flex:1;font-size:13px}.palette-legend-pct{font-family:var(--mono);color:var(--ink-muted);font-size:11px}.pants-grid{border-top:var(--hairline-w) solid var(--hairline);border-left:var(--hairline-w) solid var(--hairline);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0;display:grid}.pants-card{border-right:var(--hairline-w) solid var(--hairline);border-bottom:var(--hairline-w) solid var(--hairline);background:var(--bg);flex-direction:column;gap:22px;padding:28px 28px 32px;transition:background .2s;display:flex}.pants-card:hover{background:var(--surface)}.pants-card-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.pants-rank{font-family:var(--mono);letter-spacing:.12em;color:var(--ink-muted);padding-top:6px;font-size:11px}.pants-swatch-wrap{flex-direction:column;align-items:center;gap:6px;display:flex}.pants-swatch{justify-content:center;align-items:center;width:84px;height:110px;display:flex}.pants-shape{width:100%;height:100%}.pants-hex{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-muted);font-size:10px}.pants-card-body{flex-direction:column;gap:8px;display:flex}.pants-label{font-family:var(--serif);color:var(--ink);letter-spacing:-.01em;margin:0;font-size:26px;font-style:italic;font-weight:400;line-height:1.05}.pants-reason{font-family:var(--sans);color:var(--ink-soft);text-wrap:pretty;margin:0;font-size:14px;line-height:1.5}.personal-grid{border-top:var(--hairline-w) solid var(--hairline);border-left:var(--hairline-w) solid var(--hairline);grid-template-columns:repeat(4,1fr);gap:0;display:grid}@media (width<=900px){.personal-grid{grid-template-columns:repeat(2,1fr)}}.personal-card{border-right:var(--hairline-w) solid var(--hairline);border-bottom:var(--hairline-w) solid var(--hairline);flex-direction:column;gap:10px;padding:24px 24px 28px;display:flex}.personal-card dt{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);font-size:10px}.personal-card dd{font-family:var(--serif);color:var(--ink);margin:0;font-size:22px}.personal-card dd.big-num{font-size:clamp(28px,3vw,40px);line-height:1}.personal-delta{font-family:var(--mono);color:var(--ink-muted);font-size:11px}.personal-card-notes{grid-column:span 4}@media (width<=900px){.personal-card-notes{grid-column:span 2}}.notes-text{max-width:60ch;font-style:italic;line-height:1.35;font-family:var(--serif)!important;color:var(--ink-soft)!important;font-size:clamp(20px,1.6vw,26px)!important}.detail-foot{grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,80px);padding:clamp(40px,6vw,80px) 0 80px;display:grid}.big-pager{text-align:left;border-top:var(--hairline-w) solid var(--hairline-strong);flex-direction:column;gap:10px;padding:28px 0;transition:opacity .15s;display:flex}.big-pager:hover{opacity:.7}.big-pager-right{text-align:right;align-items:flex-end}.big-pager-kicker{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);font-size:11px}.big-pager-title{font-family:var(--serif);color:var(--ink);margin-top:4px;font-size:clamp(28px,3.4vw,48px);line-height:1}.big-pager-color{font-family:var(--serif);color:var(--ink-soft);margin-top:6px;font-size:clamp(18px,1.4vw,22px);font-style:italic}.card-image-wrap img,.detail-hero-image img{object-fit:scale-down;width:100%;height:100%;display:block}.stats-charts{flex-direction:column;display:flex}.stats-charts .section-palette{border-bottom:var(--hairline-w) solid var(--hairline)}.stats-grid-2col{grid-template-columns:1fr 1fr;gap:0;display:grid}.stats-grid-2col>:nth-child(odd){border-right:var(--hairline-w) solid var(--hairline);padding-right:clamp(16px,3vw,40px)}.stats-grid-2col>:nth-child(2n){padding-left:clamp(16px,3vw,40px)}@media (width<=900px){.stats-grid-2col{grid-template-columns:1fr}.stats-grid-2col>:nth-child(odd){border-right:none;padding-right:0}.stats-grid-2col>:nth-child(2n){padding-left:0}}.recharts-tooltip-wrapper{font-family:var(--sans)!important;font-size:13px!important}.pairing-bar{border-bottom:var(--hairline-w) solid var(--hairline);flex-direction:column;gap:16px;padding:24px 0;display:flex}.pairing-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.pairing-title{font-family:var(--serif);color:var(--ink);margin:0;font-size:20px;font-style:italic}.pairing-subtitle{font-family:var(--sans);color:var(--ink-muted);font-size:13px}.pairing-pants-grid{flex-wrap:wrap;gap:10px;display:flex}.pairing-swatch{border:var(--hairline-w) solid var(--hairline);cursor:pointer;border-radius:6px;flex-direction:column;align-items:center;gap:6px;min-width:70px;padding:8px 12px 10px;transition:all .15s;display:flex}.pairing-swatch:hover{border-color:var(--ink-muted);background:var(--surface)}.pairing-swatch.is-active{border-color:var(--accent);background:var(--accent-soft)}.pairing-swatch-dot{border:var(--hairline-w) solid color-mix(in oklch, var(--ink) 10%, transparent);border-radius:4px;width:28px;height:28px}.pairing-swatch-label{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:72px;font-size:9px;overflow:hidden}.pairing-custom{border:var(--hairline-w) solid var(--hairline);border-radius:6px;align-items:center;gap:10px;min-width:70px;padding:8px 12px;display:flex}.pairing-color-input{cursor:pointer;background:0 0;border:none;border-radius:4px;width:28px;height:28px;padding:0}.pairing-color-input::-webkit-color-swatch-wrapper{padding:0}.pairing-color-input::-webkit-color-swatch{border:var(--hairline-w) solid color-mix(in oklch, var(--ink) 10%, transparent);border-radius:4px}.pairing-match-count{font-family:var(--mono);color:var(--accent);margin-left:auto;font-size:11px}.dialog-backdrop{z-index:200;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dialog{background:var(--bg);color:var(--ink);border:var(--hairline-w) solid var(--hairline);width:100%;max-width:440px;max-height:calc(100vh - 32px);padding:32px;overflow-y:auto}.dialog:focus{outline:none}.dialog-title{font-family:var(--serif);color:var(--ink);margin:0 0 12px;font-size:26px;font-weight:400;line-height:1.1}.dialog-text{font-family:var(--sans);color:var(--ink-soft);margin:0 0 20px;font-size:14px;line-height:1.5}.dialog-text p{margin:0}.dialog-text strong{color:var(--ink);font-weight:500}.dialog-actions{flex-wrap:wrap;gap:12px;display:flex}.dialog-actions .filter-pill{padding:10px 20px}.dialog-dismiss{margin-top:18px;display:inline-block}.loading-text{font-family:var(--serif);color:var(--ink-muted);font-size:22px;font-style:italic}.form-message{font-family:var(--sans);color:var(--ink-soft);margin:8px 0 0;font-size:13px}.form-message.is-error{color:var(--accent)}.form-hint{font-family:var(--sans);color:var(--ink-muted);font-size:12px}.count-note{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-muted);font-size:10px}.icon-btn{width:22px;height:22px;font-family:var(--mono);color:var(--accent);border-radius:999px;margin-left:4px;font-size:14px;line-height:1}.icon-btn:hover{background:var(--accent-soft)}.link-btn{font-family:var(--mono);color:var(--accent);padding:2px 6px;font-size:10px}.link-btn:hover{text-decoration:underline}.admin-result{border:var(--hairline-w) solid var(--hairline);background:var(--bg);text-align:left;align-items:center;gap:14px;padding:10px 14px;transition:background .15s;display:flex}.admin-result:hover{background:var(--surface)}.trash-list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.trash-item{border:var(--hairline-w) solid var(--hairline);align-items:center;gap:12px;padding:10px 14px;display:flex}.history-list{margin:0 0 16px;padding:0;list-style:none}.history-item{border-bottom:var(--hairline-w) solid var(--hairline);align-items:center;gap:14px;min-height:48px;padding:8px 0;display:flex}.history-when{font-family:var(--mono);color:var(--ink-muted);flex:0 0 150px;font-size:11px}.history-summary{min-width:0;font-family:var(--sans);color:var(--ink);overflow-wrap:anywhere;flex:1;font-size:14px}.history-item.is-undone .history-summary{color:var(--ink-muted)}.history-item .filter-pill{flex-shrink:0}.history-badge,.history-note{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);flex-shrink:0;font-size:10px}.history-badge{border:var(--hairline-w) solid var(--hairline-strong);border-radius:999px;padding:3px 10px}a.filter-pill{text-decoration:none;display:inline-block}.palette-chip{border:var(--hairline-w) solid var(--hairline);border-radius:6px;width:44px;height:44px;display:block}.palette-chip-removable{cursor:pointer}.palette-chip-removable:hover{outline:2px solid var(--accent);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.nav-alert{font-family:var(--mono);color:var(--bg);background:var(--accent);border-radius:999px;padding:3px 6px;font-size:10px;font-weight:600;line-height:1}.home-alerts{flex-direction:column;gap:10px;padding-top:20px;display:flex}.alert-banner{border:var(--hairline-w) solid var(--hairline);border-left:3px solid var(--accent);background:var(--surface);flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 16px;display:flex}.alert-banner-mark{text-align:center;width:22px;font-family:var(--serif);color:var(--accent);flex-shrink:0;font-size:22px;line-height:1}.alert-banner-text{min-width:0;font-family:var(--sans);color:var(--ink-soft);flex:220px;margin:0;font-size:14px}.alert-banner-text strong{color:var(--ink);font-weight:600}.alert-banner-action{flex-shrink:0;font-size:12px}.alert-banner-close{flex-shrink:0;margin-left:auto}.rotation-section{scroll-margin-top:88px}.rotation-intro{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.rotation-intro .btn-text{margin-top:0}.rotation-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.rotation-item{border:var(--hairline-w) solid var(--hairline);align-items:flex-start;gap:14px;min-width:0;padding:10px 14px 12px 10px;display:flex}.rotation-thumb{background:var(--surface);flex-shrink:0;width:72px;height:72px;overflow:hidden}.rotation-thumb img{object-fit:contain;width:100%;height:100%}.rotation-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.rotation-title{font-family:var(--sans);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;text-decoration:none;overflow:hidden}.rotation-title:hover{text-decoration:underline}.rotation-colorway{font-family:var(--serif);color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.rotation-days{font-family:var(--mono);color:var(--ink-muted);font-size:11px}.rotation-wear{align-self:flex-start;margin-top:6px;padding:5px 12px;font-size:12px}.weather-strip{border:var(--hairline-w) solid var(--hairline);background:var(--surface);flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:0 0 20px;padding:12px 16px;display:flex}.weather-emoji{align-self:center;font-size:22px;line-height:1}.weather-now{font-family:var(--serif);color:var(--ink);font-size:26px;line-height:1}.weather-label{font-family:var(--sans);color:var(--ink);font-size:14px;font-weight:500}.weather-meta{font-family:var(--mono);color:var(--ink-muted);font-size:11px}.weather-credit{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-muted);margin-left:auto;font-size:10px}.weather-credit:hover{color:var(--ink)}.reason-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.reason-chip{font-family:var(--sans);color:var(--ink-soft);border:var(--hairline-w) solid var(--hairline-strong);background:var(--bg);border-radius:999px;padding:3px 9px;font-size:11px;line-height:1.3}.reason-chip.is-minus{color:var(--accent);border-color:color-mix(in oklch, var(--accent) 45%, transparent)}.card.is-below-target .card-image-wrap{outline:2px solid var(--accent);outline-offset:3px}.card-target-badge{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--bg);background:var(--accent);border-radius:2px;padding:4px 10px;font-size:10px;font-weight:600;position:absolute;top:12px;right:12px}.card-target{font-family:var(--sans);color:var(--ink-soft);margin:0;font-size:13px}.card-target strong{color:var(--accent);font-weight:600}.card-target-note{font-family:var(--mono);color:var(--ink-muted);margin:0;font-size:10px}.page-counts dd.is-alert,.personal-card.is-goal-reached dd{color:var(--accent)}.goal-summary{flex-wrap:wrap;align-items:baseline;gap:8px 14px;margin-bottom:28px;display:flex}.goal-share{font-family:var(--serif);color:var(--ink);font-size:clamp(40px,5vw,64px);line-height:1}.goal-share-text{font-family:var(--sans);color:var(--ink-soft);font-size:14px}.goal-meter{background:var(--accent-soft);border-radius:4px;min-width:0;height:8px;display:block;overflow:hidden}.goal-meter-fill{background:var(--accent);border-radius:4px;height:100%;display:block}.goal-meter-wide{flex:1 0 100%;max-width:640px}.goal-list-title{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 12px;font-size:10px;font-weight:400}.goal-list{margin:0 0 12px;padding:0;list-style:none}.goal-row{border-bottom:var(--hairline-w) solid var(--hairline);grid-template-columns:minmax(0,2fr) minmax(80px,1.4fr) auto;align-items:center;gap:8px 18px;padding:10px 0;display:grid}.goal-name{min-width:0;font-family:var(--sans);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.goal-name em{font-family:var(--serif);color:var(--ink-soft);font-size:15px}.goal-count{font-family:var(--mono);color:var(--ink-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.goal-count strong{color:var(--ink);font-weight:600}.settings-block{flex-direction:column;gap:10px;max-width:720px;margin-bottom:24px;display:flex}.settings-city{font-family:var(--serif);color:var(--ink);margin:0;font-size:22px}.settings-search{align-items:center;gap:12px;display:flex}.settings-search .search-wrap{flex:1;min-width:0}.settings-places{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.settings-place{flex-wrap:wrap;gap:4px 14px;width:100%}.settings-place-name{font-family:var(--sans);color:var(--ink);font-size:14px;font-weight:500}.settings-place-meta{font-family:var(--mono);color:var(--ink-muted);font-size:11px}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px 24px;max-width:720px;display:grid}.settings-grid input{width:100%;min-width:0}.settings-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;display:flex}@media (width<=700px){.nav-links{display:none}.top-nav-inner{grid-template-columns:1fr auto}.nav-trailing{gap:10px}.burger{flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;padding:6px 4px;display:flex}.burger span{background:var(--ink);transform-origin:50%;border-radius:1px;height:1.5px;transition:transform .25s,opacity .2s;display:block}.burger.is-open span:first-child{transform:translateY(6.5px)rotate(45deg)}.burger.is-open span:nth-child(2){opacity:0}.burger.is-open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.mobile-menu{background:var(--bg);z-index:100;width:50vw;padding:80px var(--gutter) 40px;border-left:var(--hairline-w) solid var(--hairline);transition:transform .3s;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.mobile-menu.is-open{transform:translate(0)}.mobile-menu-nav{flex-direction:column;gap:4px;display:flex}.mobile-menu-link{font-family:var(--serif);color:var(--ink-muted);border-bottom:var(--hairline-w) solid var(--hairline);text-align:left;align-items:center;gap:10px;padding:14px 8px;font-size:22px;font-style:italic;transition:color .15s;display:flex}.mobile-menu-link:hover,.mobile-menu-link.is-active{color:var(--ink)}.mobile-menu-backdrop{z-index:99;background:#0000004d;position:fixed;inset:0}.collection-page,.detail-page{padding:0 12px;overflow-x:hidden}.page-head{padding-top:clamp(24px,7vw,96px);padding-bottom:clamp(16px,4vw,48px)}.page-head-meta{margin-bottom:16px}.page-title{font-size:clamp(36px,11vw,168px)}.page-lead{margin-top:12px;font-size:clamp(16px,4vw,24px)}.page-counts{gap:16px}.page-counts dt{font-size:8px}.page-counts dd{font-size:clamp(22px,3vw,44px)}.section-palette,.section-pants,.section-personal{padding:clamp(24px,6vw,88px) 0}.card{gap:8px;min-width:0}.card-body{gap:4px;min-width:0}.card-title,.card-colorway{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.card-image-wrap{aspect-ratio:3/2}.card-image-wrap img{object-fit:cover;object-position:center 60%}.card-foot{padding-top:8px;overflow:hidden}.card-meta-right{flex-shrink:1;font-size:10px;overflow:hidden}.card-index{padding:3px 6px;font-size:9px;top:8px;left:8px}.filter-bar-row{gap:10px}.filter-bar-row.filter-bar-pills{flex-direction:column;gap:12px}.filter-group{flex-wrap:wrap}.search-wrap{min-width:0}.search-input{font-size:16px}.reco-image-wrap img{width:auto;height:170%}.detail-topbar{grid-template-columns:1fr}.detail-topbar-center{justify-content:space-between}.detail-topbar-right{display:none}.page-foot{flex-wrap:wrap;font-size:10px}.dialog{padding:24px 20px}.trash-list{grid-template-columns:1fr}.history-item{flex-wrap:wrap;gap:4px 12px}.history-when{flex-basis:100%}.alert-banner{padding:10px 12px}.rotation-list{grid-template-columns:1fr}.rotation-thumb{width:56px;height:56px}.weather-credit{flex-basis:100%;margin-left:0}.goal-row{grid-template-columns:minmax(0,1fr) auto}.goal-row .goal-meter{grid-area:2/1/auto/-1}.card-target-badge{padding:3px 6px;font-size:9px;top:8px;right:8px}}.admin-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}@media (width<=720px){.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=460px){.admin-form-grid{grid-template-columns:minmax(0,1fr)}}.admin-form-grid input,.admin-form-grid select,.admin-form-grid textarea{box-sizing:border-box;width:100%;min-width:0}
