:root{--bg: #efe8dd;--ink: #2b2119;--ink-soft: #5c4d42;--accent: #5a3e2b;--accent-deep: #5a3e2b;--accent-ink: #4a3222;--sticker: #b4532a;--sticker-deep: #9a4420;--on-fill: #ffffff;--photo-bg: #ffffff;--tile-1: #e3d5bf;--tile-2: #d9c2a3;--tile-3: #d3cbbe;--tile-4: #f8f3ea;--accent-rgb: 90 62 43;--accent-tint: rgb(var(--accent-rgb) / .2);--shadow-rgb: 43 33 25;--wash-rgb: 255 255 255;--scrim: rgb(var(--shadow-rgb) / .26);--overlay-rgb: 43 33 25;--overlay-min: .72;--overlay-max: .88;--overlay-fade: 40px;--overlay-scrim: linear-gradient( to top, rgb(var(--overlay-rgb) / var(--overlay-max)) 0%, rgb(var(--overlay-rgb) / var(--overlay-min)) calc(100% - var(--overlay-fade)), rgb(var(--overlay-rgb) / 0) 100% );--on-overlay: #fbf7f0;--on-overlay-soft: #efe8dd;--glass: rgb(var(--wash-rgb) / .82);--logo-disc: #ffffff;--logo-ring: rgb(var(--wash-rgb) / .9);--logo-ring-light: rgb(var(--accent-rgb) / .25);--font-display: "Ranga", "Arial Narrow", sans-serif;--font-body: "Fustat", ui-rounded, system-ui, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-md: 1rem;--text-lg: 1.25rem;--text-xl: 2rem;--text-hero: clamp(2.75rem, 1.6rem + 4vw, 5rem);--tracking-label: .08em;--radius-pill: 999px;--radius-panel: 20px;--radius-tile: 14px;--radius-photo: 14px;--stroke: 1.5px;--stroke-thin: 1px;--rule: 1.5px dashed rgb(var(--accent-rgb) / .4);--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 64px;--lift: 0 8px 20px -12px rgb(var(--shadow-rgb) / .22);--pop: 0 16px 36px -16px rgb(var(--shadow-rgb) / .3);--spring: cubic-bezier(.34, 1.56, .64, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--z-popover: 5;--z-sticky: 10;--z-sheet: 30;--z-modal: 40}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100dvh;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--text-md);line-height:1.5;-webkit-font-smoothing:antialiased}body.scroll-locked{overflow:hidden}h1,h2,h3,p,ul{margin:0}ul{padding:0;list-style:none}img{display:block;max-width:100%}a{color:inherit}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--accent-ink);outline-offset:3px}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.rule{border:0;border-top:var(--rule);margin:var(--s-5) 0}.pill-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:40px;padding:0 var(--s-4);border:var(--stroke) solid var(--accent);border-radius:var(--radius-pill);background:var(--tile-1);color:var(--accent-ink);font-size:.8125rem;font-weight:700;letter-spacing:var(--tracking-label);text-transform:uppercase;white-space:nowrap;transition:transform .25s var(--spring),background-color .2s ease}.pill-button:hover:not(:disabled){transform:translateY(-1px) rotate(-1deg)}.pill-button:active:not(:disabled){transform:translateY(1px) scale(.98)}.pill-button:disabled{border-style:dashed;background:transparent;color:var(--accent-ink);cursor:not-allowed}.pill-button-quiet{background:transparent}.pill-button-solid{background:var(--accent-deep);border-color:var(--accent-deep);color:var(--on-fill)}.round-button{position:relative;display:inline-grid;place-items:center;flex:none;width:40px;height:40px;border:var(--stroke) solid var(--accent);border-radius:50%;background:var(--tile-1);color:var(--accent-ink);font-size:16px;transition:transform .3s var(--spring)}.round-button:before{content:"";position:absolute;top:50%;left:50%;width:max(100%,44px);height:max(100%,44px);border-radius:50%;transform:translate(-50%,-50%)}.round-button:hover{transform:rotate(-12deg) scale(1.06)}.form-error{color:var(--accent-ink);font-size:var(--text-sm);font-weight:600}.wordmark-dot{display:inline-block;width:.2em;height:.2em;margin-left:.08em;border-radius:50%;background:var(--sticker);vertical-align:baseline}@media(prefers-reduced-motion:no-preference){.wordmark-dot{animation:bounce 1.6s var(--ease-out) infinite}}@keyframes bounce{0%,to{transform:translateY(0)}40%{transform:translateY(-.35em)}60%{transform:translateY(0)}}.login{position:relative;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:var(--s-7);max-width:1200px;margin:0 auto;padding:var(--s-8) var(--s-6);overflow:hidden}.login-rule{position:absolute;inset:var(--s-6) var(--s-6) auto;border-top:var(--rule)}.login-brand{display:grid;justify-items:start;gap:var(--s-5)}.login-logo{width:120px;height:120px;border-radius:50%;box-shadow:var(--lift);transform:rotate(-6deg)}.login-wordmark{font-family:var(--font-display);font-weight:700;font-size:clamp(4rem,2.4rem + 7vw,8.5rem);line-height:.82;letter-spacing:-.01em;color:var(--accent);text-transform:uppercase;transform:rotate(-3deg)}.login-panel{position:relative;display:grid;gap:var(--s-3);padding:var(--s-6);border:var(--stroke) solid var(--accent);border-radius:var(--radius-panel);background:var(--tile-1);box-shadow:var(--pop)}.login-lede{margin-bottom:var(--s-3);font-size:var(--text-lg);line-height:1.35;color:var(--ink);max-width:30ch}.field-label{font-size:var(--text-xs);font-weight:700;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--accent-ink)}.field-input{min-height:48px;padding:0 var(--s-5);border:var(--stroke) solid var(--accent);border-radius:var(--radius-pill);background:var(--tile-4);font-size:var(--text-lg)}.field-input:focus-visible{outline:none;box-shadow:0 0 0 4px var(--accent-tint)}.login-panel .pill-button{justify-self:start;margin-top:var(--s-2)}.login-sticker{position:absolute;top:-44px;right:-28px;display:grid;place-items:center;width:100px;height:100px;border-radius:50%;background:var(--tile-2);border:var(--stroke) solid var(--accent);color:var(--accent-ink);font-family:var(--font-display);font-size:1.35rem;line-height:.9;text-align:center;text-transform:uppercase;transform:rotate(14deg)}@media(max-width:767px){.login{grid-template-columns:1fr;align-content:center;gap:var(--s-6);padding:var(--s-8) var(--s-4) var(--s-7)}.login-rule{inset:var(--s-5) var(--s-4) auto}.login-panel{padding:var(--s-5)}.login-lede{padding-right:64px}.login-sticker{width:80px;height:80px;font-size:1rem;top:-36px;right:-6px}}.closet{max-width:1680px;margin:0 auto;padding:0 var(--s-6) var(--s-8)}.topbar{position:sticky;top:0;z-index:var(--z-sticky);display:flex;align-items:center;gap:var(--s-4);height:72px;background:var(--bg)}.wordmark{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:2.25rem;line-height:1;color:var(--accent);text-decoration:none;text-transform:uppercase;white-space:nowrap}.wordmark-text{padding-top:.12em}.brand-logo{flex:none;width:40px;height:40px;border-radius:50%}.topbar-error{position:absolute;top:calc(100% - var(--s-2));right:0;padding:var(--s-2) var(--s-4);border:var(--stroke) solid var(--accent);border-radius:var(--radius-pill);background:var(--tile-3);color:var(--accent-ink);font-size:var(--text-sm);font-weight:700;box-shadow:var(--lift)}.topbar-rule{flex:1;border-top:var(--rule)}.menu-button{display:none}.closet-body{display:grid;grid-template-columns:220px minmax(0,1fr);gap:var(--s-6);align-items:start}.sidebar-wrap{position:sticky;top:88px;max-height:calc(100dvh - 104px);overflow-y:auto;padding:var(--s-2) var(--s-1) var(--s-4) 0}.sidebar .rule{margin:var(--s-4) 0}.sidebar-heading{margin:var(--s-5) 0 var(--s-2) var(--s-3);font-size:var(--text-xs);font-weight:700;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--accent-ink)}.chip-list{display:grid;gap:6px}.chip{display:flex;align-items:center;gap:var(--s-2);width:100%;min-height:38px;padding:0 var(--s-2) 0 var(--s-3);border:var(--stroke) solid rgb(var(--accent-rgb) / .55);border-radius:var(--radius-pill);background:transparent;color:var(--accent-ink);font-size:.8125rem;font-weight:700;letter-spacing:.01em;text-align:left;text-decoration:none;transition:transform .25s var(--spring),background-color .15s ease}.chip:hover{background:rgb(var(--wash-rgb) / .55);transform:translate(2px)}.chip.is-active{border-color:var(--accent);background:var(--tile-1);box-shadow:2px 2px 0 var(--accent)}.chip-emoji{font-size:.95rem;line-height:1}.chip-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--accent-deep);color:var(--on-fill);font-size:.6875rem;font-weight:700;font-variant-numeric:tabular-nums}.chip-new{border-style:dashed;padding-left:var(--s-3)}.closet-main{min-width:0;padding-top:var(--s-2)}.view-head{display:flex;align-items:center;gap:var(--s-4);min-height:4.75rem}.view-title{display:flex;align-items:center;gap:.15em;min-width:0;font-family:var(--font-display);font-weight:700;font-size:var(--text-hero);line-height:.9;padding-top:.08em;color:var(--accent);text-transform:uppercase;overflow-wrap:anywhere}.view-title:focus{outline:none}.view-edit{margin-left:auto}.view-date{display:flex;align-items:center;gap:var(--s-2);margin-top:var(--s-2);color:var(--accent-ink);font-size:var(--text-sm);font-weight:700;letter-spacing:var(--tracking-label);text-transform:uppercase}.view-emoji{font-size:.6em;transform:rotate(-8deg)}.count-sticker{display:grid;place-items:center;align-content:center;flex:none;width:60px;height:60px;border-radius:50%;background:var(--tile-1);border:var(--stroke) solid var(--accent);color:var(--accent-ink);font-size:.5625rem;font-weight:700;letter-spacing:var(--tracking-label);text-transform:uppercase;line-height:1;transform:rotate(10deg)}.count-sticker b{font-family:var(--font-display);font-size:1.5rem;letter-spacing:0}.closet-main>.rule{margin:var(--s-2) 0 var(--s-5)}.masonry{columns:2;column-gap:var(--s-4)}@media(min-width:900px){.masonry{columns:3;column-gap:var(--s-5)}}@media(min-width:1240px){.masonry{columns:4}}@media(min-width:1560px){.masonry{columns:5}}.masonry-cell{break-inside:avoid;padding:0 0 var(--s-4)}.tile{position:relative;border-radius:var(--radius-tile);background:var(--tile-fill, var(--tile-4));transition:transform .4s var(--spring),box-shadow .3s ease}.tile[data-popover-open]{z-index:var(--z-popover)}.tile-link{display:block;border-radius:var(--radius-tile);color:var(--on-overlay);text-decoration:none}.tile-photo{position:relative;overflow:hidden;border-radius:var(--radius-tile);background:var(--photo-bg)}.tile-photo>img{width:100%;height:auto;transition:transform .6s var(--ease-out)}.tile-placeholder{display:grid;place-items:center;padding-bottom:28%;background-color:var(--tile-fill, var(--tile-4));background-image:radial-gradient(var(--accent-tint) 1.6px,transparent 1.8px);background-size:11px 11px;font-size:2.75rem}.tile-placeholder span{display:grid;place-items:center;width:80px;height:80px;border-radius:50%;background:rgb(var(--wash-rgb) / .6)}.tile-overlay{position:absolute;inset:auto 0 0;display:grid;gap:1px;padding:var(--overlay-fade) var(--s-3) var(--s-3);background:var(--overlay-scrim);color:var(--on-overlay)}.tile-brand{font-size:.6875rem;font-weight:700;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--accent-ink)}.tile-overlay .tile-brand{display:flex;align-items:center;gap:6px;min-width:0;color:var(--on-overlay-soft);font-size:.6875rem;letter-spacing:.12em}.tile-brand-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tile-logo,.tile-shop-logo,.detail-logo,.shop-logo{flex:none;box-sizing:border-box;border-radius:50%;background:var(--logo-disc);object-fit:contain}.tile-logo{width:18px;height:18px;padding:2px;box-shadow:0 0 0 var(--stroke) var(--logo-ring)}.tile-shop{display:flex;align-items:center;gap:5px;min-width:0;margin-top:3px;color:var(--on-overlay-soft);font-size:.6875rem;font-weight:600;letter-spacing:.02em}.tile-shop-logo{width:14px;height:14px;padding:1px;box-shadow:0 0 0 var(--stroke-thin) var(--logo-ring)}.tile-shop-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tile-name{font-size:.875rem;font-weight:600;line-height:1.25;color:var(--on-overlay);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tile-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 var(--s-2);margin-top:2px}.tile-price-now{font-size:.9375rem;font-weight:800;color:var(--on-overlay)}.tile-price-unknown{padding:1px var(--s-2);border:var(--stroke-thin) dashed var(--accent);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:700;color:var(--accent-ink)}.tile-overlay .tile-price-unknown{border-color:rgb(var(--wash-rgb) / .55);color:var(--on-overlay-soft);font-size:.6875rem}.line-through{text-decoration:line-through;text-decoration-color:var(--sticker);text-decoration-thickness:2px}.tile-price-was{font-size:var(--text-sm);font-weight:600;color:var(--accent-ink)}.tile-overlay .tile-price-was{color:var(--on-overlay-soft);font-size:.75rem;font-weight:500}.sale-pill{position:absolute;top:var(--s-2);left:var(--s-2);padding:2px var(--s-2);border-radius:var(--radius-pill);background:var(--sticker-deep);color:var(--on-fill);font-size:.6875rem;font-weight:800;line-height:1.45;font-variant-numeric:tabular-nums;letter-spacing:.02em}.sale-sticker{position:absolute;top:-10px;left:-8px;display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:var(--sticker-deep);color:var(--on-fill);font-family:var(--font-display);font-size:1.3rem;font-weight:700;line-height:1;padding-top:.12em;transform:rotate(-14deg);box-shadow:inset 0 0 0 4px var(--sticker),0 0 0 3px var(--tile-1);pointer-events:none}.collect{position:absolute;top:var(--s-2);right:var(--s-2)}.collect-button{position:relative;display:inline-grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:var(--glass);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--accent-ink);font-size:15px;box-shadow:var(--lift);transition:opacity .2s ease,transform .3s var(--spring),background-color .15s ease}.collect-button:before{content:"";position:absolute;top:50%;left:50%;width:max(100%,44px);height:max(100%,44px);border-radius:50%;transform:translate(-50%,-50%)}.collect-button:hover,.collect-button[aria-expanded=true]{background:var(--tile-1)}.collect-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.collect-panel{position:absolute;top:calc(100% + var(--s-2));right:0;width:236px;max-height:300px;overflow-y:auto;padding:var(--s-2);border:var(--stroke) solid var(--accent);border-radius:16px;background:var(--tile-4);box-shadow:var(--pop);transform-origin:top right}.collect-option{position:relative;display:flex;align-items:center;gap:var(--s-2);min-height:40px;padding:0 var(--s-3);border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:600;cursor:pointer}.collect-option:hover{background:rgb(var(--wash-rgb) / .65)}.collect-option input{position:absolute;opacity:0;pointer-events:none}.collect-check{display:grid;place-items:center;flex:none;width:22px;height:22px;border:var(--stroke) solid var(--accent);border-radius:7px;background:var(--tile-4);color:var(--on-fill);font-size:14px;transition:background-color .15s ease}.collect-option input:checked+.collect-check{background:var(--accent-deep);border-color:var(--accent-deep)}.collect-option input:focus-visible+.collect-check{outline:3px solid var(--accent-ink);outline-offset:2px}.collect-empty,.collect-error{padding:var(--s-2) var(--s-3);font-size:var(--text-sm)}.collect-error{color:var(--accent-ink);font-weight:600}@media(hover:hover){.tile .collect-button{opacity:0;transform:translateY(-4px)}.tile:hover .collect-button,.tile:focus-within .collect-button,.tile[data-popover-open] .collect-button{opacity:1;transform:none}}.tile-skeleton{opacity:.6}.notice{display:grid;justify-items:start;gap:var(--s-3);max-width:520px;padding:var(--s-6);border:var(--stroke) dashed var(--accent);border-radius:var(--radius-panel);background:rgb(var(--wash-rgb) / .45)}.notice-title{font-family:var(--font-display);font-size:var(--text-xl);line-height:1;color:var(--accent);text-transform:uppercase}@media(prefers-reduced-motion:no-preference){.masonry-cell>.tile:not(.tile-skeleton){animation:tile-in .6s var(--ease-out) backwards;animation-delay:var(--enter-delay, 0ms)}.sale-sticker{animation:wiggle .9s var(--spring) .5s 1 both}.collect-panel{animation:pop-in .28s var(--spring) both}.tile-skeleton{animation:breathe 1.4s ease-in-out infinite alternate}}@media(prefers-reduced-motion:no-preference)and (hover:hover){.tile:hover{transform:translateY(-4px) rotate(var(--tilt, 0deg));box-shadow:var(--pop)}.tile:hover .tile-photo>img{transform:scale(1.03)}.tile[data-popover-open]{transform:translateY(-4px)}}@keyframes tile-in{0%{opacity:0;transform:translateY(18px) scale(.97)}}@keyframes wiggle{0%{transform:rotate(-14deg) scale(.6)}40%{transform:rotate(6deg) scale(1.08)}70%{transform:rotate(-20deg)}to{transform:rotate(-14deg)}}@keyframes pop-in{0%{opacity:0;transform:scale(.9)}}@keyframes breathe{0%{opacity:.35}to{opacity:.7}}@media(max-width:899px){.closet{padding:0 var(--s-4) var(--s-7)}.topbar{height:60px;gap:var(--s-2)}.topbar-rule{min-width:var(--s-2)}.wordmark{gap:var(--s-2);font-size:1.6rem}.brand-logo{width:30px;height:30px}.menu-button{display:inline-flex;min-height:36px;padding:0 var(--s-3);font-size:var(--text-xs)}.round-button{width:36px;height:36px}.closet-body{display:block}.sidebar-wrap{position:fixed;top:0;left:0;right:0;z-index:var(--z-sheet);max-height:85dvh;padding:68px var(--s-4) var(--s-5);border-bottom:var(--stroke) solid var(--accent);border-radius:0 0 var(--radius-panel) var(--radius-panel);background:var(--bg);box-shadow:var(--pop);transform:translateY(-105%);visibility:hidden;transition:transform .45s var(--ease-out),visibility 0s linear .45s}.sidebar-wrap[data-open]{transform:none;visibility:visible;transition:transform .45s var(--spring)}.sidebar-wrap[data-open]~.sheet-backdrop{display:block}.sheet-open .topbar{z-index:calc(var(--z-sheet) + 1)}.sheet-backdrop{position:fixed;inset:0;z-index:calc(var(--z-sheet) - 1);border:0;background:var(--scrim)}.view-head{min-height:0;gap:var(--s-3);justify-content:space-between}.view-title{font-size:clamp(2rem,1.2rem + 5vw,3.25rem)}.count-sticker{width:50px;height:50px;font-size:.5rem}.count-sticker b{font-size:1.2rem}.closet-main>.rule{margin:var(--s-2) 0 var(--s-4)}.masonry-cell{padding-bottom:var(--s-3)}.tile-overlay{padding:calc(var(--overlay-fade) - var(--s-2)) 10px 10px}.tile-name{font-size:.8125rem}.collect-button{width:30px;height:30px;font-size:14px}.tile-price-now{font-size:.875rem}.collect-panel{position:fixed;top:auto;left:var(--s-4);right:var(--s-4);bottom:var(--s-4);width:auto;max-height:60dvh;padding:var(--s-3);transform-origin:bottom center}.collect-option{min-height:48px;font-size:var(--text-md)}.tile-placeholder span{width:64px;height:64px;font-size:2.25rem}}@media(min-width:900px){.sheet-backdrop{display:none}}.overlay{position:fixed;inset:0;z-index:var(--z-modal)}.overlay-confirm{z-index:calc(var(--z-modal) + 1)}.overlay-backdrop{position:absolute;inset:0;background:var(--scrim)}.field{display:grid;gap:6px;min-width:0}.field-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-3);align-items:start}.detail .field-input,.dialog .field-input{width:100%;min-height:42px;padding:0 var(--s-4);font-size:var(--text-md)}.field-input[aria-invalid]{border-style:dashed;background:var(--tile-3)}.field-input::placeholder{color:var(--ink-soft);opacity:.7}.field-textarea{padding:var(--s-3) var(--s-4)!important;border-radius:var(--radius-photo);line-height:1.45;resize:vertical}.field-hint{font-size:var(--text-sm);color:var(--ink-soft)}.field-error{color:var(--accent-ink);font-size:var(--text-sm);font-weight:700}.check-row{position:relative;display:flex;align-items:center;gap:var(--s-2);min-height:44px;font-size:var(--text-sm);font-weight:700;cursor:pointer}.check-row input{position:absolute;opacity:0;pointer-events:none}.check-row input:checked+.collect-check{background:var(--accent-deep);border-color:var(--accent-deep)}.check-row input:focus-visible+.collect-check{outline:3px solid var(--accent-ink);outline-offset:2px}.check-row[data-disabled]{opacity:.55;cursor:not-allowed}.text-button{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 var(--s-2);border:0;background:none;color:var(--accent-ink);font-size:var(--text-sm);font-weight:700;text-decoration:underline 1.5px dashed rgb(var(--accent-rgb) / .6);text-underline-offset:5px}.detail{--tile-fill: var(--tile-4);position:absolute;top:var(--s-4);right:var(--s-4);bottom:var(--s-4);width:min(500px,calc(100vw - 2 * var(--s-4)));overflow-y:auto;overscroll-behavior:contain;padding:0 var(--s-6) var(--s-6);border:var(--stroke) solid var(--accent);border-radius:var(--radius-panel);background:var(--tile-1);box-shadow:var(--pop)}.detail-bar{position:sticky;top:0;z-index:3;display:flex;justify-content:flex-end;height:0}.detail-bar .round-button{margin:var(--s-4) calc(-1 * var(--s-3)) 0 0;box-shadow:var(--lift)}.detail-photo{position:relative;margin-top:var(--s-6)}.detail-photo img{width:100%;max-height:58vh;object-fit:contain;border-radius:var(--radius-photo);background:var(--photo-bg)}.detail-placeholder{aspect-ratio:4 / 3;border-radius:var(--radius-photo)}.state-stamp{position:absolute;right:-10px;bottom:-22px;display:grid;place-items:center;width:84px;height:84px;padding-top:.12em;border:var(--stroke) solid var(--accent);border-radius:50%;background:var(--tile-4);box-shadow:0 0 0 4px var(--tile-1);color:var(--accent-ink);font-family:var(--font-display);font-size:1.3rem;line-height:.9;text-align:center;text-transform:uppercase;transform:rotate(12deg)}.state-stamp-bought{background:var(--tile-2)}.state-stamp-needs_review{background:var(--tile-3)}.detail-intro{display:grid;gap:6px;margin-top:var(--s-5)}.detail-name{padding-top:.08em;color:var(--accent);font-family:var(--font-display);font-size:clamp(2rem,1.6rem + 1vw,2.5rem);font-weight:700;line-height:.9;text-transform:uppercase;overflow-wrap:anywhere}.detail-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s-3);font-size:var(--text-lg)}.detail-price b{font-weight:800}.shop-link{justify-self:start;text-decoration:none;margin-top:var(--s-3);background:var(--tile-4)}.detail-intro .tile-brand{display:flex;align-items:center;gap:var(--s-2)}.detail-logo{width:22px;height:22px;padding:2px;box-shadow:0 0 0 var(--stroke-thin) var(--logo-ring-light)}.shop-logo{width:20px;height:20px;margin-left:calc(-1 * var(--s-1));padding:2px;box-shadow:0 0 0 var(--stroke-thin) var(--logo-ring-light)}.detail-actions{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-5)}.detail-status{min-height:1.5em;margin-top:var(--s-3);font-size:var(--text-sm);font-weight:700}.detail-error{margin-top:var(--s-1)}.detail .rule{margin:var(--s-4) 0 var(--s-5)}.detail-form{display:grid;gap:var(--s-4)}.detail-save{justify-self:start}.review-note{display:grid;gap:var(--s-1);padding:var(--s-4);border:var(--stroke) dashed var(--accent);border-radius:var(--radius-photo);background:var(--tile-3)}.review-note-title{color:var(--accent-ink);font-family:var(--font-display);font-size:1.5rem;line-height:.95;text-transform:uppercase}.detail-collections .sidebar-heading{margin:0 0 var(--s-2)}.detail-collections .collect-option{margin-left:calc(-1 * var(--s-3))}.detail-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-2);margin-top:var(--s-5)}.detail-meta{color:var(--ink-soft);font-size:var(--text-xs);font-weight:700;letter-spacing:var(--tracking-label);text-transform:uppercase}.overlay-center{display:grid;place-items:center;padding:var(--s-4)}.dialog{position:relative;display:grid;gap:var(--s-4);width:min(460px,100%);max-height:calc(100dvh - 2 * var(--s-4));overflow-y:auto;overscroll-behavior:contain;padding:var(--s-6);border:var(--stroke) solid var(--accent);border-radius:var(--radius-panel);background:var(--tile-1);box-shadow:var(--pop)}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-4)}.dialog-title{padding-top:.08em;color:var(--accent);font-family:var(--font-display);font-size:2.1rem;font-weight:700;line-height:.9;text-transform:uppercase}.dialog .rule{margin:0}.dialog-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--s-3)}.dialog-actions .text-button{margin-right:auto}.editor-name-row{display:grid;grid-template-columns:80px minmax(0,1fr);gap:var(--s-3)}.dialog .editor-emoji{padding:0;font-size:1.4rem;text-align:center}.confirm{width:min(400px,100%)}.confirm .dialog-title{font-size:2rem}@media(max-width:767px){.detail{top:var(--s-2);right:0;bottom:0;left:0;width:auto;padding:0 var(--s-4) var(--s-7);border-width:var(--stroke) 0 0;border-radius:var(--radius-panel) var(--radius-panel) 0 0}.detail-bar .round-button{margin:var(--s-3) calc(-1 * var(--s-2)) 0 0}.detail-photo{margin-top:var(--s-5)}.detail-photo img{max-height:48vh}.state-stamp{width:80px;height:80px;font-size:1.2rem;right:-4px}.overlay-center{align-items:end;padding:var(--s-2)}.dialog{width:100%;padding:var(--s-5)}}@media(prefers-reduced-motion:no-preference){.overlay-backdrop{animation:fade-in .25s ease both}.detail{animation:drawer-in .5s var(--ease-out) both}.dialog{animation:pop-in .3s var(--spring) both}.state-stamp{animation:stamp-in .55s var(--spring) both}}@media(prefers-reduced-motion:no-preference)and (max-width:767px){.detail{animation-name:sheet-up}.dialog{animation:sheet-up .4s var(--ease-out) both}}@keyframes fade-in{0%{opacity:0}}@keyframes drawer-in{0%{opacity:0;transform:translate(48px)}}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes stamp-in{0%{opacity:0;transform:rotate(-20deg) scale(1.8)}}
