:root{--bg-dark: #221710;--bg-panel: rgba(46, 33, 22, .78);--text-main: #f8fafc;--text-muted: #c2a884;--accent-primary: #e8745c;--accent-hover: #f0906f;--border-subtle: rgba(236, 203, 158, .16);--glass-blur: blur(12px);--wc-ink-title: #faf4e8;--wc-ink-body: #eee0c6;--wc-ink-soft: #e0cfb4;--wc-ink-mute: #c2a884;--wc-surface: rgba(40, 28, 18, .72);--wc-surface-strong: rgba(40, 28, 18, .92);--wc-surface-raised: rgba(56, 40, 26, .92);--wc-card-gradient: linear-gradient(145deg, rgba(40, 28, 18, .92), rgba(56, 40, 26, .84));--wc-border-faint: rgba(214, 178, 134, .14);--wc-border-soft: rgba(214, 178, 134, .18);--wc-border: rgba(214, 178, 134, .22);--wc-border-strong: rgba(214, 178, 134, .35);--wc-amber: #fbbf24;--wc-amber-ink: #fbd88d;--wc-amber-bg: rgba(251, 191, 36, .16);--wc-amber-border: rgba(251, 191, 36, .5);--wc-danger-ink: #fecaca;--wc-danger-bg: rgba(127, 29, 29, .22);--wc-danger-border: rgba(248, 113, 113, .35)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Sora,Avenir Next,system-ui,-apple-system,sans-serif;background-color:var(--bg-dark);color:var(--text-main);overflow:hidden;-webkit-font-smoothing:antialiased}#root{width:100vw;height:100vh;height:100dvh;position:relative}.vc-scrollable{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}.vc-page-scroll{height:100vh;height:100dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}.flex-center{display:flex;align-items:center;justify-content:center}.glass-panel{background:var(--bg-panel);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-subtle);border-radius:12px}.admin-button{border:1px solid var(--wc-border);background:var(--wc-surface);color:var(--wc-ink-body);border-radius:10px;padding:.65rem .9rem;font-weight:600;cursor:pointer;transition:transform .12s ease,border-color .12s ease,background .12s ease}.admin-button:hover:not(:disabled){transform:translateY(-1px)}.admin-button:disabled{opacity:.55;cursor:not-allowed}.admin-button.primary{background:var(--wc-amber-bg);border-color:var(--wc-amber-border);color:var(--wc-amber-ink);font-weight:700}.admin-button.secondary{background:var(--wc-surface)}.admin-button.danger{background:var(--wc-danger-bg);border-color:var(--wc-danger-border);color:var(--wc-danger-ink)}.admin-input{width:100%;border-radius:10px;border:1px solid var(--wc-border);background:#1a110a9e;color:var(--wc-ink-body);padding:.68rem .78rem}.admin-input:focus{outline:1px solid var(--wc-amber-border);border-color:var(--wc-amber-border)}.dir-page{height:100vh;height:100dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;background:radial-gradient(1200px 600px at 80% -10%,rgba(248,192,136,.5),transparent 60%),linear-gradient(180deg,#fdf6ec,#faf0e2);color:#4a2c14;font-family:Sora,system-ui,sans-serif;padding:2rem clamp(1rem,5vw,3.5rem) 4rem}.dir-header{display:flex;align-items:center;gap:1.2rem;max-width:1180px;margin:0 auto 1.6rem;flex-wrap:wrap}.dir-back{border:1px solid rgba(184,130,80,.3);background:#ffffffb3;color:#7a5436;border-radius:11px;padding:.55rem .85rem;font-family:inherit;font-size:.86rem;font-weight:500;cursor:pointer;transition:transform .12s ease,background .12s ease,border-color .12s ease}.dir-back:hover{transform:translateY(-1px);background:#fff;border-color:#f0a35e99}.dir-headline{flex:1 1 280px}.dir-title{font-size:1.9rem;font-weight:700;letter-spacing:-.02em;color:#4a2c14;line-height:1.1}.dir-sub{font-size:.95rem;color:#8a6244;margin-top:.25rem}.dir-enter{border:none;border-radius:12px;padding:.7rem 1.25rem;font-family:inherit;font-size:.92rem;font-weight:600;color:#3a2210;cursor:pointer;background:linear-gradient(135deg,#f7a64e,#ef8262 55%,#ec7a6c);box-shadow:0 10px 22px -10px #e06e46b3;transition:transform .14s ease,box-shadow .14s ease}.dir-enter:hover{transform:translateY(-2px);box-shadow:0 16px 30px -12px #e06e46cc}.dir-searchbar{position:relative;display:flex;align-items:center;gap:.6rem;max-width:1180px;margin:0 auto 1.8rem;background:#ffffffd9;border:1px solid rgba(184,130,80,.25);border-radius:15px;padding:.2rem 1rem;box-shadow:0 10px 30px -22px #783c1480}.dir-search-icon{width:19px;height:19px;color:#c08a52;flex:none}.dir-search-input{flex:1;border:none;background:transparent;outline:none;padding:.8rem 0;font-family:inherit;font-size:1rem;color:#4a2c14}.dir-search-input::placeholder{color:#9a7a52}.dir-count{font-size:.82rem;font-weight:500;color:#80532e;white-space:nowrap}.dir-state{max-width:1180px;margin:3rem auto;text-align:center;color:#7a5436;font-size:1rem}.dir-state-err{color:#b5483c}.dir-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.1rem}.dir-card{text-align:left;font-family:inherit;display:flex;flex-direction:column;gap:.7rem;padding:1.25rem;border-radius:18px;background:#ffffffeb;border:1px solid rgba(184,130,80,.16);box-shadow:0 14px 34px -24px #783c1480;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.dir-card:hover{transform:translateY(-3px);box-shadow:0 22px 44px -22px #783c148c;border-color:#f0a35e80}.dir-card-top{display:flex;align-items:center;gap:.85rem}.dir-avatar{flex:none;width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff7ea;font-weight:700;font-size:1.1rem;letter-spacing:.02em;box-shadow:inset 0 1px #fff6}.dir-avatar-lg{width:72px;height:72px;border-radius:20px;font-size:1.5rem}.dir-card-id{min-width:0}.dir-name{display:flex;align-items:center;gap:.35rem;font-weight:600;font-size:1.04rem;color:#3f2812}.dir-name-lg{font-size:1.3rem}.dir-verified{width:17px;height:17px;flex:none}.dir-card-title{font-size:.86rem;color:#7a5436;margin-top:.1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dir-meta{display:flex;flex-wrap:wrap;gap:.4rem}.dir-chip{font-size:.74rem;font-weight:500;color:#8a5a1e;background:#f7a64e26;border:1px solid rgba(247,166,78,.3);border-radius:999px;padding:.2rem .6rem}.dir-chip-year{color:#5e6b2c;background:#8faf6329;border-color:#8faf6357}.dir-card-bio{font-size:.88rem;line-height:1.5;color:#7c5a3c;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dir-card-cta{margin-top:auto;font-size:.83rem;font-weight:600;color:#c2512f}.dir-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#4a2c1466;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:dirFade .16s ease both}.dir-sheet{position:relative;width:100%;max-width:480px;background:#fffdf9;border:1px solid rgba(184,130,80,.2);border-radius:22px;padding:1.9rem;box-shadow:0 40px 80px -30px #4a2c148c;animation:dirSheetIn .24s cubic-bezier(.2,.8,.2,1) both}.dir-sheet-close{position:absolute;top:.9rem;right:1rem;width:32px;height:32px;border:none;border-radius:10px;background:#b882501a;color:#7a5436;font-size:1.3rem;line-height:1;cursor:pointer;transition:background .12s ease}.dir-sheet-close:hover{background:#b8825033}.dir-sheet-head{display:flex;align-items:center;gap:1rem;margin-bottom:1.1rem}.dir-sheet-title{font-size:.96rem;color:#7a5436;margin:.15rem 0 .4rem}.dir-sheet-bio{font-size:.96rem;line-height:1.6;color:#6f5236;margin-bottom:1.2rem}.dir-toast{font-size:.88rem;border-radius:11px;padding:.6rem .8rem;margin-bottom:1rem}.dir-toast.ok{color:#3f6624;background:#8faf6329;border:1px solid rgba(143,175,99,.4)}.dir-toast.err{color:#b5483c;background:#dc50461f;border:1px solid rgba(200,60,50,.35)}.dir-compose{display:flex;flex-direction:column;gap:.7rem}.dir-textarea{width:100%;resize:vertical;border-radius:12px;border:1px solid rgba(184,130,80,.35);background:#fff;padding:.7rem .8rem;font-family:inherit;font-size:.95rem;color:#4a2c14}.dir-textarea:focus{outline:none;border-color:#f0a35e;box-shadow:0 0 0 4px #f0a35e33}.dir-actions{display:flex;gap:.6rem;justify-content:flex-end}.dir-btn{border-radius:11px;padding:.62rem 1.1rem;font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.dir-btn:disabled{opacity:.6;cursor:not-allowed}.dir-btn.ghost{background:#b882501a;border:1px solid rgba(184,130,80,.3);color:#7a5436}.dir-btn.ghost:hover:not(:disabled){background:#b882502e}.dir-btn.primary{border:none;color:#3a2210;background:linear-gradient(135deg,#f7a64e,#ef8262 55%,#ec7a6c);box-shadow:0 10px 22px -10px #e06e46b3}.dir-btn.primary:hover:not(:disabled){transform:translateY(-1px)}@keyframes dirFade{0%{opacity:0}to{opacity:1}}@keyframes dirSheetIn{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.dir-overlay,.dir-sheet{animation:none!important}}@keyframes vcInboxShake{0%,to{transform:translate(0)}15%{transform:translate(-3px) rotate(-2deg)}30%{transform:translate(3px) rotate(2deg)}45%{transform:translate(-3px) rotate(-1.5deg)}60%{transform:translate(2px) rotate(1deg)}75%{transform:translate(-1px)}}@keyframes vcInboxPulse{0%,to{box-shadow:0 0 #f8717100}50%{box-shadow:0 0 0 5px #f8717147}}.vc-inbox-shake{animation:vcInboxShake .55s ease-in-out}.vc-inbox-pulse{animation:vcInboxPulse 2.2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.vc-inbox-shake,.vc-inbox-pulse{animation:none!important}}.dir-back:focus-visible,.dir-enter:focus-visible,.dir-search-input:focus-visible,.dir-card:focus-visible,.dir-textarea:focus-visible,.dir-btn:focus-visible,.dir-sheet-close:focus-visible{outline:2px solid #8a4a12;outline-offset:2px}:root{--avs-ink: #f4e9d6;--avs-ink-soft: #e0cfb4;--avs-ink-mute: #c2a884;--avs-line: rgba(214, 178, 134, .22);--avs-line-soft: rgba(214, 178, 134, .1);--avs-surface: rgba(40, 28, 18, .72);--avs-coral: var(--accent-primary);--avs-coral-soft: rgba(232, 116, 92, .42);--avs-coral-glow: rgba(232, 116, 92, .38)}.avatar-studio{display:grid;gap:.95rem;min-width:0;font-family:inherit;color:var(--avs-ink-soft)}.avs-overlay-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding:0 1rem 1rem}.avs-overlay-footer{flex:0 0 auto;padding:.7rem 1rem .9rem;border-top:1px solid var(--avs-line);background:#24190f99}.avs-header{display:grid;gap:.2rem}.avs-overlay-scroll .avs-header{position:sticky;top:0;z-index:2;margin:0 -1rem;padding:.9rem 1rem .55rem;background:linear-gradient(180deg,#291d12f7,#291d12e0);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-bottom:1px solid var(--avs-line-soft)}.avs-title{font-size:.98rem;font-weight:700;letter-spacing:.01em;color:var(--avs-ink)}.avs-hint{font-size:.77rem;line-height:1.5;color:var(--avs-ink-mute)}.avs-group{display:grid;gap:.5rem;min-width:0}.avs-group-label{font-size:.66rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--avs-ink-mute)}.avs-outfits{display:grid;grid-template-columns:repeat(auto-fit,minmax(58px,1fr));gap:.45rem}.avs-outfit{display:grid;justify-items:center;gap:.4rem;min-width:0;padding:.55rem .2rem .5rem;border:1px solid transparent;border-radius:14px;background:transparent;color:var(--avs-ink-soft);font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.avs-outfit:hover{background:var(--avs-line-soft);border-color:var(--avs-line);transform:translateY(-1px)}.avs-outfit:active{transform:translateY(0) scale(.97)}.avs-outfit[aria-pressed=true]{background:#e8745c17;border-color:var(--avs-coral-soft)}.avs-outfit-swatch{position:relative;display:inline-block;flex:none;border-radius:999px;transition:box-shadow .15s ease}.avs-outfit-swatch:after{content:"";position:absolute;inset:2px;border-radius:inherit;background:radial-gradient(circle at 32% 26%,#fff4db61,#fff4db00 55%);pointer-events:none}.avs-outfit[aria-pressed=true] .avs-outfit-swatch{box-shadow:0 0 0 2px var(--bg-dark),0 0 0 4px var(--avs-coral),0 4px 14px var(--avs-coral-glow)}.avs-outfit-check{position:absolute;right:-5px;bottom:-5px;z-index:1;display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:999px;background:var(--avs-coral);color:#2a1710;box-shadow:0 0 0 2px var(--bg-dark)}.avs-outfit-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:600;color:inherit}.avs-outfit[aria-pressed=true] .avs-outfit-label{color:var(--avs-ink)}.avs-styles{display:grid;grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:.45rem}.avs-style{display:grid;justify-items:center;gap:.4rem;min-width:0;padding:.55rem .2rem .5rem;border:1px solid transparent;border-radius:14px;background:transparent;color:var(--avs-ink-soft);font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.avs-style:hover{background:var(--avs-line-soft);border-color:var(--avs-line);transform:translateY(-1px)}.avs-style:active{transform:translateY(0) scale(.97)}.avs-style[aria-pressed=true]{background:#e8745c17;border-color:var(--avs-coral-soft)}.avs-style-figure{position:relative;display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:var(--avs-line-soft);color:var(--avs-ink-mute);transition:color .15s ease,background .15s ease,box-shadow .15s ease}.avs-style:hover .avs-style-figure{color:var(--avs-ink-soft)}.avs-style[aria-pressed=true] .avs-style-figure{color:var(--avs-coral);background:#e8745c1f;box-shadow:0 0 0 2px var(--bg-dark),0 0 0 4px var(--avs-coral),0 4px 14px var(--avs-coral-glow)}.avs-style-check{position:absolute;right:-5px;bottom:-5px;z-index:1;display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:999px;background:var(--avs-coral);color:#2a1710;box-shadow:0 0 0 2px var(--bg-dark)}.avs-style-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:600;color:inherit}.avs-style[aria-pressed=true] .avs-style-label{color:var(--avs-ink)}.avs-style--femme .avs-style-figure{background:#c49a9a24;color:#cfa9a4;box-shadow:inset 0 0 0 1px #c49a9a59}.avs-style--femme:hover .avs-style-figure{color:#e2bdb6}.avs-style--femme[aria-pressed=true] .avs-style-figure{background:#e8745c1f;color:var(--avs-coral);box-shadow:0 0 0 2px var(--bg-dark),0 0 0 4px var(--avs-coral),0 4px 14px var(--avs-coral-glow)}.avs-style-note{margin:.1rem 0 0;font-size:.74rem;line-height:1.45;color:var(--avs-ink-mute)}.avs-accents{display:flex;flex-wrap:wrap;gap:.4rem}.avs-accent{display:inline-flex;align-items:center;gap:.4rem;min-height:42px;padding:.3rem .75rem;border:1px solid var(--avs-line);border-radius:999px;background:var(--avs-surface);color:var(--avs-ink-soft);font-family:inherit;font-size:.76rem;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease}.avs-accent:hover{border-color:#d6b28673;color:var(--avs-ink);transform:translateY(-1px)}.avs-accent:active{transform:translateY(0) scale(.97)}.avs-accent[aria-pressed=true]{border-color:var(--avs-coral);background:#e8745c24;color:var(--avs-ink);box-shadow:0 2px 10px #e8745c40}.avs-accent-dot{flex:none;width:14px;height:14px;border-radius:999px;box-shadow:inset 0 0 0 1px #fff8e038}.avs-segments{display:flex;flex-wrap:wrap;gap:3px;padding:3px;border:1px solid var(--avs-line);border-radius:999px;background:var(--avs-surface)}.avs-segment{flex:1 1 auto;min-width:46px;min-height:40px;border:none;border-radius:999px;background:transparent;color:var(--avs-ink-soft);font-family:inherit;font-size:.74rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.avs-segment:hover{background:var(--avs-line-soft);color:var(--avs-ink)}.avs-segment[aria-pressed=true]{background:linear-gradient(135deg,var(--accent-hover),var(--accent-primary));color:#2a1710;font-weight:700;box-shadow:0 2px 10px var(--avs-coral-glow)}.avs-tone-row{display:flex;align-items:center;gap:.55rem;min-width:0}.avs-tone-tag{flex:none;width:2.1rem;font-size:.64rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--avs-ink-mute)}.avs-tone-dots{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.avs-tone{position:relative;flex:none;width:28px;height:28px;padding:0;border:1px solid rgba(255,248,224,.22);border-radius:999px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.avs-tone:before{content:"";position:absolute;inset:-7px;border-radius:999px}.avs-tone:after{content:"";position:absolute;inset:2px;border-radius:inherit;background:radial-gradient(circle at 32% 26%,#fff4db61,#fff4db00 55%);pointer-events:none}.avs-tone:hover{transform:scale(1.12)}.avs-tone:active{transform:scale(.97)}.avs-tone[aria-pressed=true]{box-shadow:0 0 0 2px var(--bg-dark),0 0 0 4px var(--avs-coral),0 4px 14px var(--avs-coral-glow)}.avs-tone--hair{width:22px;height:22px}.avs-tone-check{position:absolute;right:-5px;bottom:-5px;z-index:1;display:flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:999px;background:var(--avs-coral);color:#2a1710;box-shadow:0 0 0 2px var(--bg-dark)}.avs-tone-hint{font-size:.7rem;line-height:1.4;color:var(--avs-ink-mute)}.avs-tone:focus-visible{outline:2px solid var(--avs-coral);outline-offset:2px}@media(prefers-reduced-motion:reduce){.avs-tone{transition:none!important}}.avs-summary{display:flex;align-items:center;gap:.5rem;min-width:0;font-size:.75rem;color:var(--avs-ink-mute)}.avs-summary-swatch{flex:none;display:inline-block;border-radius:999px}.avs-summary-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avs-photo-card{display:grid;gap:.45rem;padding:.85rem;border:1px solid var(--avs-line);border-radius:14px;background:var(--avs-surface)}.avs-photo-hint{font-size:.77rem;line-height:1.5;color:var(--avs-ink-soft)}.avs-photo-slot [data-testid=world-photo-upload]>div:nth-child(1),.avs-photo-slot [data-testid=world-photo-upload]>div:nth-child(2){display:none}.avs-mini{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .65rem .25rem .3rem;border:1px solid var(--avs-line);border-radius:999px;background:var(--avs-surface);color:var(--avs-ink);font-size:.74rem;font-weight:600}.avs-mini-swatch{flex:none;display:inline-block;border-radius:999px}.avs-outfit:focus-visible,.avs-style:focus-visible,.avs-accent:focus-visible,.avs-segment:focus-visible{outline:2px solid var(--avs-coral);outline-offset:2px}@media(prefers-reduced-motion:reduce){.avs-outfit,.avs-outfit-swatch,.avs-style,.avs-style-figure,.avs-accent,.avs-segment{transition:none!important}}
