@import"https://fonts.googleapis.com/css2?family=Cardo:ital,wght@0,400;0,700;1,400&family=Pinyon+Script&family=Great+Vibes&family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=Crimson+Pro:ital,wght@0,200..900;1,200..900&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap";.navbar{bottom:0;left:0;right:0;height:var(--app-nav-height);display:flex;justify-content:space-around;align-items:flex-start;padding-top:10px;z-index:100;background:var(--vic-bg-parchment);box-shadow:0 -2px 10px #8d6e630d;border-top:none;position:absolute}.navbar:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--vic-gold),var(--vic-gold-dim));box-shadow:0 0 10px #d4af374d}.navbar:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% -18px,rgba(var(--active-tab-aura-rgb),var(--active-tab-aura-alpha)),rgba(var(--active-tab-aura-rgb),0) 64%),linear-gradient(180deg,rgba(255,255,255,.26) 0%,rgba(255,255,255,.06) 34%,transparent 100%),radial-gradient(circle at 50% 0%,rgba(255,255,255,.18),transparent 64%);opacity:.5;transition:background var(--duration-slow) var(--ease-standard),opacity var(--duration-slow) var(--ease-standard)}body.theme-dark .navbar{background:var(--vic-bg-card);box-shadow:0 -2px 15px #0006}body.theme-dark .navbar:after{background:radial-gradient(circle at 50% -20px,rgba(var(--active-tab-aura-rgb),var(--active-tab-aura-alpha)),rgba(var(--active-tab-aura-rgb),0) 66%),linear-gradient(180deg,rgba(255,239,209,.11) 0%,rgba(255,239,209,.03) 40%,transparent 100%),radial-gradient(circle at 50% -16%,rgba(255,223,165,.12),transparent 64%);opacity:.38}body.theme-night-sky .navbar{background:var(--color-surface);box-shadow:0 -6px 20px #010206b3}body.theme-night-sky .navbar:after{background:radial-gradient(circle at 50% -22px,rgba(var(--active-tab-aura-rgb),var(--active-tab-aura-alpha)),rgba(var(--active-tab-aura-rgb),0) 68%),linear-gradient(180deg,rgba(228,236,255,.13) 0%,rgba(228,236,255,.03) 42%,transparent 100%),radial-gradient(circle at 50% -14%,rgba(169,191,238,.18),transparent 66%);opacity:.42}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#aeaeb2;font-size:10px;font-weight:500;gap:4px;width:60px;text-decoration:none;transition:color .18s ease,transform .18s ease,opacity .18s ease;position:relative;opacity:.92}.nav-item.active{color:var(--vic-text-main);opacity:1;transform:translateY(-1px)}@supports (-webkit-touch-callout: none){@media(hover:none)and (pointer:coarse){.navbar{height:var(--app-nav-height);align-items:flex-start;padding-top:12px}.nav-item,.nav-item.active{transform:translateY(0)}}}.nav-active-indicator{position:absolute;bottom:-5px;width:25px;height:1.5px;background:var(--vic-text-main);opacity:.6;border-radius:1px}.nav-icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center;transition:transform .18s ease}.nav-icon{transition:transform .26s var(--ease-standard),filter .26s var(--ease-standard),fill .26s var(--ease-standard),stroke-width .26s var(--ease-standard),opacity .26s var(--ease-standard);transform-origin:center;fill:transparent}.nav-item.active .nav-icon{transform:translateY(-.5px) scale(1.03);fill:color-mix(in srgb,currentColor 26%,transparent);stroke-width:2.15;filter:drop-shadow(0 0 6px rgba(var(--active-tab-aura-rgb),.28))}.nav-item.active .nav-icon-wrapper:before{content:"";position:absolute;width:34px;height:34px;border-radius:50%;background:radial-gradient(circle,rgba(var(--active-tab-aura-rgb),.2),rgba(var(--active-tab-aura-rgb),0) 68%);opacity:.8;animation:navIconMorphPulse 3.2s ease-in-out infinite;pointer-events:none}.nav-item:hover .nav-icon-wrapper{transform:translateY(-1px)}.nav-item:active .nav-icon-wrapper{transform:scale(.93)}.nav-badge{position:absolute;top:-5px;right:-8px;background-color:var(--vic-status-danger);color:#fff;font-size:10px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--vic-bg-parchment);animation:navBadgeIn .22s cubic-bezier(.22,1,.36,1)}:is(body.theme-dark,body.theme-night-sky) body:not(.theme-light):not(.theme-night-sky) .nav-item.active{color:var(--vic-gold)}:is(body.theme-dark,body.theme-night-sky) body:not(.theme-light):not(.theme-night-sky) .nav-active-indicator{background:var(--vic-gold)}:is(body.theme-dark,body.theme-night-sky) body:not(.theme-light):not(.theme-night-sky) .nav-badge{border-color:var(--vic-bg-card)}body.theme-dark .nav-item.active{color:var(--vic-gold)}body.theme-dark .nav-active-indicator{background:var(--vic-gold)}body.theme-dark .nav-badge{border-color:var(--vic-bg-card)}body.theme-night-sky .nav-item.active{color:var(--vic-gold)}body.theme-night-sky .nav-active-indicator{background:var(--vic-gold)}body.theme-night-sky .nav-badge{border-color:#0a101c}.nav-item.presence-active .nav-chat-icon{color:var(--vic-status-danger);animation:soft-presence-pulse 2s infinite ease-in-out}.nav-item.presence-typing .nav-chat-icon{color:#c44572;animation:typing-presence-pulse 1.1s infinite ease-in-out}:is(body.theme-dark,body.theme-night-sky) body:not(.theme-light):not(.theme-night-sky) .nav-item.presence-active .nav-chat-icon{color:var(--vic-crimson)}body.theme-dark .nav-item.presence-active .nav-chat-icon{color:var(--vic-crimson)}@keyframes soft-presence-pulse{0%{opacity:.82}50%{opacity:1}to{opacity:.82}}@keyframes typing-presence-pulse{0%{opacity:.75}40%{opacity:1}to{opacity:.75}}@keyframes navIconMorphPulse{0%,to{transform:scale(.96);opacity:.52}50%{transform:scale(1.06);opacity:.86}}@media(prefers-reduced-motion:reduce){.nav-item,.nav-icon-wrapper,.nav-active-indicator,.nav-badge{transition:none;animation:none}.navbar:after{transition:none}.nav-item.active .nav-icon-wrapper:before{animation:none}.nav-item:hover .nav-icon-wrapper,.nav-item:active .nav-icon-wrapper{transform:none}.nav-item.presence-active .nav-chat-icon,.nav-item.presence-typing .nav-chat-icon{animation:none;opacity:1}}body.theme-light .navbar{background:#fdfaf7!important;box-shadow:0 -2px 10px #8d6e630d!important}body.theme-light .nav-item.active{color:#5d4037!important}body.theme-light .nav-active-indicator{background:#5d4037!important}body.theme-light .nav-badge{border-color:#fdfaf7!important}.passkey-lock-overlay{position:fixed;inset:0;background-color:var(--bg-primary);z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.passkey-lock-content{width:100%;max-width:320px;display:flex;flex-direction:column;align-items:center;gap:40px}.passkey-header{text-align:center}.passkey-header h2{font-size:24px;font-weight:600;margin-bottom:8px;color:var(--text-primary)}.passkey-header p{font-size:14px;color:var(--text-secondary)}.passkey-dots-container{display:flex;gap:20px}.passkey-dot{width:14px;height:14px;border-radius:50%;border:1.5px solid var(--color-border);transition:all .2s cubic-bezier(.18,.89,.32,1.28)}.passkey-dot.active{background-color:var(--text-primary);border-color:var(--text-primary);transform:scale(1.1)}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;width:100%}.keypad button{aspect-ratio:1;border-radius:50%;background-color:var(--color-surface);color:var(--text-primary);font-size:28px;font-weight:500;display:flex;align-items:center;justify-content:center;transition:background-color .1s;border:none;-webkit-tap-highlight-color:transparent}.keypad button:active{background-color:var(--color-border)}.keypad .delete-btn{background:none;font-size:14px;color:var(--text-secondary)}.keypad .delete-btn:active{background:none;color:var(--color-danger)}.shake{animation:shake .4s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;overflow:hidden}.confetti-piece{position:absolute;width:10px;height:10px;top:-10px;opacity:0;animation:confetti-fall linear forwards}.confetti-piece:nth-child(odd){border-radius:50%}.confetti-piece:nth-child(3n){width:8px;height:12px}.confetti-piece:nth-child(4n){width:12px;height:8px}.streak-modal-overlay{position:fixed;inset:0;background:#2e211b66;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;transition:opacity .3s ease}.streak-modal-overlay.animate{opacity:1}.streak-modal{background:#fffcf5;border:3px double var(--vic-gold);border-radius:4px;width:90%;max-width:480px;max-height:85vh;overflow-y:auto;box-shadow:0 15px 50px #0003,inset 0 0 100px #d4af370d;position:relative;transform:translateY(30px);opacity:0;transition:all .5s cubic-bezier(.4,0,.2,1);font-family:var(--font-body)}.streak-modal.animate{transform:translateY(0);opacity:1}.streak-close-btn{position:absolute;top:15px;right:15px;background:transparent;border:1px solid var(--vic-border-subtle);border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--vic-text-meta);z-index:10;transition:all .2s}.streak-close-btn:active{transform:scale(.9)}.streak-close-btn:hover{background:var(--vic-bg-parchment);border-color:var(--vic-gold)}.streak-header{padding:40px 20px 20px;text-align:center;border-bottom:1px solid #eee8d5}.streak-header h2{margin:0;font-family:var(--font-script-readable);font-size:42px;color:var(--vic-crimson);font-weight:400}.streak-header-subtitle{font-size:13px;text-transform:uppercase;letter-spacing:2px;color:var(--vic-text-meta);margin-top:5px;font-weight:700}.streak-content{padding:30px}.streak-user-row{margin-bottom:25px}.streak-user-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.streak-user-name{font-size:15px;font-weight:700;color:#4e342e;text-transform:uppercase;letter-spacing:1px}.streak-count{font-size:22px;font-weight:700;color:var(--vic-crimson)}.streak-icon{font-size:18px;margin-left:2px}.streak-progress-container{display:flex;align-items:center;gap:15px}.streak-progress-bar{flex:1;height:14px;background:#f0ede4;border:1px solid #ddd6c1;border-radius:2px;overflow:visible;position:relative;box-shadow:inset 0 2px 4px #0000000d}.streak-progress-fill{height:100%;border-radius:0;transition:width 1.2s cubic-bezier(.4,0,.2,1);position:relative}.streak-progress-fill.current-user{background:var(--vic-crimson);border-right:2px solid var(--vic-gold)}.streak-progress-fill.partner{background:var(--vic-status-success);border-right:2px solid var(--vic-gold)}.milestone-marker{position:absolute;top:50%;transform:translate(-50%,-50%);width:10px;height:10px;border-radius:50%;background:#fff;border:1.5px solid var(--vic-gold);transition:all .3s ease}.milestone-marker.achieved{background:var(--vic-gold);box-shadow:0 0 10px #d4af3766}.streak-milestone-label{font-family:var(--font-body);font-size:14px;font-style:italic;color:var(--vic-text-meta);min-width:45px;text-align:right}.milestones-list{display:flex;align-items:center;gap:10px;margin:30px 0 20px;flex-wrap:wrap;justify-content:center}.milestones-label{font-size:12px;font-weight:700;color:var(--vic-text-meta);text-transform:uppercase;letter-spacing:1px;width:100%;text-align:center;margin-bottom:5px}.milestone-chip{font-size:12px;padding:5px 12px;background:#fff;border:1px solid var(--vic-border-subtle);border-radius:20px;color:var(--vic-text-meta);font-weight:600;transition:all .4s ease}.milestone-chip.achieved{background:var(--vic-gold);color:#fff;border-color:#b8860b;box-shadow:0 2px 8px #d4af374d;text-shadow:0 1px 1px rgba(0,0,0,.1)}.streak-message{background:#fffdf9;border:1px solid #eee8d5;border-radius:4px;padding:20px;text-align:center;font-size:15px;font-style:italic;color:#4e342e;margin:20px 0;position:relative;line-height:1.6}.streak-message:before{content:"❝";position:absolute;top:-10px;left:20px;font-family:serif;font-size:30px;color:var(--vic-gold);background:#fffcf5;padding:0 5px}.streak-cta-btn{width:100%;padding:16px;background:var(--vic-crimson);color:#fff9f0;border:none;border-radius:4px;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:2px;cursor:pointer;box-shadow:0 4px 15px #a6445233;transition:all .3s}.streak-cta-btn:active{transform:scale(.98);background:#8e3a46}:is(body.theme-dark,body.theme-night-sky) .streak-modal{background:#2a2220;color:#fdfaf7;border-color:#8a6d3b}:is(body.theme-dark,body.theme-night-sky) .streak-message{background:#ffffff0d;color:#eee8d5}:is(body.theme-dark,body.theme-night-sky) .streak-progress-bar{background:#3a302e}:is(body.theme-dark,body.theme-night-sky) .streak-close-btn{border-color:#ece2d433;color:#c8b4a3}:is(body.theme-dark,body.theme-night-sky) .streak-header{border-bottom-color:#ece2d424}:is(body.theme-dark,body.theme-night-sky) .streak-header h2{color:#f0dfbf}:is(body.theme-dark,body.theme-night-sky) .streak-header-subtitle,:is(body.theme-dark,body.theme-night-sky) .streak-milestone-label,:is(body.theme-dark,body.theme-night-sky) .milestones-label{color:#c8b4a3}:is(body.theme-dark,body.theme-night-sky) .streak-user-name{color:#ece2d4}:is(body.theme-dark,body.theme-night-sky) .milestone-chip{background:#312925;border-color:#ece2d42e;color:#d6c3b5}:is(body.theme-dark,body.theme-night-sky) .streak-message:before{background:#2a2220}.xp-popup{position:fixed;top:30px;left:50%;background:var(--vic-bg-card);border-radius:4px;padding:10px 24px;box-shadow:0 4px 15px #0000001a;z-index:10000;pointer-events:none;min-width:160px;text-align:center;border:1px solid var(--vic-border-subtle);font-family:var(--font-body)}.xp-popup:before{content:"";position:absolute;inset:4px;border:1px solid rgba(212,175,55,.3);pointer-events:none}.xp-odometer-container{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:6px;font-size:20px;font-weight:700;letter-spacing:.5px;background:#0000000a;border:1px solid rgba(0,0,0,.1);box-shadow:inset 0 2px 6px #00000026,0 1px #ffffff80;border-radius:4px;padding:6px 12px;position:relative;overflow:hidden}:is(body.theme-dark,body.theme-night-sky) .xp-odometer-container{background:#0000004d;border:1px solid rgba(255,255,255,.05);box-shadow:inset 0 2px 10px #000c,0 1px #ffffff0d}.xp-amount{display:flex;align-items:center}.xp-amount.difference{opacity:.8;font-size:16px;font-family:Playfair Display,serif;font-style:italic}.xp-amount.difference.loss{color:var(--vic-crimson)}.xp-amount.difference.gain{color:var(--vic-gold)}.xp-sparks-container{position:absolute;top:50%;left:50%;width:0;height:0;pointer-events:none;z-index:-1}.xp-spark{position:absolute;width:4px;height:4px;background:#d4af37;border-radius:50%;box-shadow:0 0 6px 2px #d4af3799}.odometer-drum-window{position:relative;background:#f4eee1;color:#2c2622;padding:2px 6px;border-radius:2px;border:1px solid var(--vic-border-subtle);box-shadow:inset 0 3px 5px #0000004d,inset 0 -3px 5px #0003,0 0 0 1px #d4af3766;font-variant-numeric:tabular-nums;font-family:Courier New,Courier,monospace;font-weight:800;font-size:22px;letter-spacing:2px;min-width:50px;text-align:center;overflow:hidden;display:flex;justify-content:center;line-height:1}:is(body.theme-dark,body.theme-night-sky) .odometer-drum-window{background:#1a1714;color:#e6dec9;border:1px solid #000;box-shadow:inset 0 4px 8px #000c,inset 0 -4px 8px #0009,0 0 0 1px #d4af3733}.odometer-digits-container{display:flex;z-index:2}.digit-column-wrapper{height:1em;overflow:hidden;position:relative;width:.6em}.digit-column{display:flex;flex-direction:column}.digit-slot{height:1em;display:flex;justify-content:center;align-items:center;text-shadow:0 1px 0 rgba(255,255,255,.4)}:is(body.theme-dark,body.theme-night-sky) .digit-slot{text-shadow:0 1px 0 rgba(0,0,0,.8)}.odometer-drum-overlay{position:absolute;inset:0;z-index:5;pointer-events:none;background:linear-gradient(to bottom,#0003,#ffffff1a 20%,#fff0,#0000001a 80%,#0000004d)}:is(body.theme-dark,body.theme-night-sky) .odometer-drum-overlay{background:linear-gradient(to bottom,#0009,#ffffff0d 20%,#fff0,#0000004d 80%,#000000b3)}.xp-currency-icon{vertical-align:middle}.xp-emblem-wrap{display:flex;justify-content:center;margin-bottom:4px}.xp-currency-icon.featured{filter:drop-shadow(0 2px 1px rgba(0,0,0,.3)) drop-shadow(0 4px 10px rgba(0,0,0,.32))}.xp-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;opacity:.9;font-style:italic}.xp-popup.positive{background:var(--vic-bg-card);color:var(--vic-text-primary);border-color:var(--vic-gold)}.xp-popup.negative{background:var(--vic-bg-card);color:var(--vic-text-primary);border-color:var(--vic-crimson)}.xp-emblem-wrap.crimson .xp-currency-icon{filter:sepia(100%) hue-rotate(310deg) saturate(200%) drop-shadow(0 2px 1px rgba(0,0,0,.3))}.xp-burst-ring{position:absolute;width:34px;height:34px;border-radius:999px;border:2px solid rgba(255,255,255,.6);z-index:-1;opacity:0;transform:scale(.5);animation:xpBurstRing var(--duration-slow) var(--ease-page) 60ms forwards}.xp-burst-lines{position:absolute;width:52px;height:52px;border-radius:50%;z-index:-1;opacity:0;background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.95) 0 2px,transparent 3px),radial-gradient(circle at 100% 50%,rgba(255,255,255,.9) 0 2px,transparent 3px),radial-gradient(circle at 50% 100%,rgba(255,255,255,.95) 0 2px,transparent 3px),radial-gradient(circle at 0% 50%,rgba(255,255,255,.9) 0 2px,transparent 3px),radial-gradient(circle at 82% 18%,rgba(255,255,255,.85) 0 2px,transparent 3px),radial-gradient(circle at 18% 18%,rgba(255,255,255,.85) 0 2px,transparent 3px),radial-gradient(circle at 82% 82%,rgba(255,255,255,.85) 0 2px,transparent 3px),radial-gradient(circle at 18% 82%,rgba(255,255,255,.85) 0 2px,transparent 3px);animation:xpBurstLines var(--duration-slow) var(--ease-decelerate) 40ms forwards}:is(body.theme-dark,body.theme-night-sky) .xp-popup{background:var(--vic-bg-card);border-color:var(--vic-border-subtle);box-shadow:0 10px 30px #00000080}:is(body.theme-dark,body.theme-night-sky) .xp-popup{box-shadow:0 4px 20px #0006}@keyframes xpBurstRing{0%{opacity:0;transform:scale(.5)}22%{opacity:.75}to{opacity:0;transform:scale(1.36)}}@keyframes xpBurstLines{0%{opacity:0;transform:scale(.75) rotate(-8deg)}26%{opacity:.95}to{opacity:0;transform:scale(1.22) rotate(8deg)}}body.theme-night-sky .xp-popup{background:#131a28f2;border-color:#d8d1b33d;box-shadow:0 10px 30px #00000080;color:#e6ecf8}body.theme-night-sky .xp-odometer-container{background:#00000080;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 2px 10px #000000e6,0 1px #ffffff0d}body.theme-night-sky .odometer-drum-window{background:#141c2b;color:#e6ecf8;border:1px solid #000;box-shadow:inset 0 4px 8px #000000e6,inset 0 -4px 8px #000000b3,0 0 0 1px #d8d1b34d}body.theme-night-sky .digit-slot{text-shadow:0 2px 2px rgba(0,0,0,.9)}body.theme-night-sky .odometer-drum-overlay{background:linear-gradient(to bottom,#000c,#ffffff0d 20%,#fff0,#0006 80%,#000000e6)}.currency-icon{display:inline-block;vertical-align:middle;object-fit:contain;flex:0 0 auto}.level-up-modal-overlay{position:fixed;inset:0;background:#1a1614d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.level-up-modal-content.victorian-modal{background-color:var(--vic-bg-card);background-image:radial-gradient(circle at 50% 50%,rgba(255,255,255,.05) 0%,transparent 100%),url(https://www.transparenttextures.com/patterns/paper-fibers.png);border-radius:var(--radius-md);padding:60px 40px;text-align:center;width:100%;max-width:440px;position:relative;border:1px solid var(--vic-gold);box-shadow:0 30px 90px #0009,inset 0 0 40px #d4af370d;animation:victorianPopIn .6s cubic-bezier(.18,.89,.32,1.25);overflow:visible}.victorian-frame-border{position:absolute;inset:8px;border:1px solid rgba(212,175,55,.2);border-radius:var(--radius-xs);pointer-events:none}.level-up-flourish{font-size:24px;color:var(--vic-gold);margin:10px 0;opacity:.6}.level-up-icon-wrapper{position:relative;margin-bottom:25px;display:flex;justify-content:center;color:var(--vic-gold)}.level-up-premium-icon{filter:drop-shadow(0 0 20px rgba(212,175,55,.3));z-index:2}.level-up-title-script{font-family:var(--font-script-readable);font-size:72px;color:var(--vic-crimson);margin:0;font-weight:400;line-height:.8}.victorian-divider{height:1px;width:70%;margin:20px auto 30px;background:linear-gradient(90deg,transparent 0%,var(--vic-gold) 50%,transparent 100%);position:relative}.victorian-divider:after{content:"❦";position:absolute;top:-11px;left:50%;transform:translate(-50%);background:var(--vic-bg-card);padding:0 12px;color:var(--vic-gold);font-size:14px}.level-up-subtitle{font-family:var(--font-body);color:var(--vic-text-meta);font-size:13px;font-weight:500;margin-bottom:12px;text-transform:uppercase;letter-spacing:2px;opacity:.8}.level-up-new-title{font-family:var(--font-display);color:var(--vic-text-main);font-size:42px;font-weight:700;margin:0;line-height:1.1;letter-spacing:-.5px}.level-up-rank{font-family:var(--font-body);color:var(--vic-gold);font-size:14px;font-weight:700;margin-top:10px;text-transform:uppercase;letter-spacing:4px}.level-up-close-btn-refined{margin-top:40px;padding:16px 40px;border-radius:var(--radius-sm);background-color:var(--vic-crimson);color:#fff9f0;border:1px solid var(--vic-gold);font-family:var(--font-body);font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:2px;cursor:pointer;box-shadow:0 8px 30px #0000004d;transition:all .3s ease;position:relative}.level-up-close-btn-refined:hover{transform:translateY(-2px);filter:brightness(1.1);box-shadow:0 12px 40px #0006}body.theme-night-sky .level-up-modal-overlay{background:#080a18e6}body.theme-night-sky .level-up-modal-content.victorian-modal{background-color:#0d1127;background-image:radial-gradient(circle at 50% 0%,rgba(100,116,255,.15) 0%,transparent 70%),url(https://www.transparenttextures.com/patterns/dust.png);border-color:var(--vic-gold);box-shadow:0 40px 100px #000c,inset 0 0 30px #6474ff1a}body.theme-night-sky .victorian-divider:after{background:#0d1127}body.theme-night-sky .level-up-title-script{color:var(--vic-gold);text-shadow:0 0 20px rgba(212,175,55,.3)}body.theme-night-sky .level-up-premium-icon{color:var(--vic-gold);filter:drop-shadow(0 0 15px rgba(212,175,55,.5))}@keyframes victorianPopIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.bounce{animation:victorianBounce 3s infinite ease-in-out}@keyframes victorianBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.bonus-xp-container-left{position:absolute;top:calc(75px + env(safe-area-inset-top,0px));left:20px;z-index:1001;display:flex;align-items:center;justify-content:center;animation:medalAppear 1s cubic-bezier(.175,.885,.32,1.275) forwards}.gilded-medal{width:54px;height:54px;border-radius:50%;background:var(--vic-bg-parchment);border:2px solid var(--vic-gold);box-shadow:inset 0 0 10px #d4af3733,0 4px 12px #00000026;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;cursor:default}.gilded-medal:before{content:"";position:absolute;inset:3px;border:.5px solid rgba(141,110,99,.2);border-radius:50%}.medal-multiplier{font-family:Playfair Display,serif;font-size:18px;font-weight:800;color:var(--vic-text-main);line-height:1;margin-top:2px}.medal-label{font-family:var(--font-body);font-size:10px;font-weight:700;color:var(--vic-gold);text-transform:uppercase;letter-spacing:1px;line-height:1}@keyframes medalAppear{0%{opacity:0;transform:scale(.5) rotate(-15deg)}to{opacity:1;transform:scale(1) rotate(0)}}body.theme-dark .gilded-medal{background:#1c1c1e;border-color:#d4af37;box-shadow:inset 0 0 15px #d4af371a,0 8px 24px #0006}body.theme-dark .medal-multiplier{color:#fdfaf7;text-shadow:0 1px 2px rgba(0,0,0,.5)}body.theme-night-sky .gilded-medal{background:linear-gradient(135deg,#0d1221,#07090f);border-color:#d8d1b3;box-shadow:inset 0 0 12px #d8d1b326,0 0 20px #87ceeb1a,0 8px 32px #01040cb3}body.theme-night-sky .gilded-medal:before{border-color:#e0e6f426}body.theme-night-sky .medal-multiplier{color:#edf0f7;text-shadow:0 0 8px rgba(216,209,179,.4)}body.theme-night-sky .medal-label{color:#d8d1b3}.syncing-indicator{position:absolute;top:15px;right:20px;background:var(--vic-bg-card, #fdfaf7);border:1px solid var(--vic-gold, #d4af37);color:var(--vic-text-meta, #8d6e63);padding:8px 18px;border-radius:4px;display:flex;align-items:center;gap:12px;font-family:var(--font-body);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:2px;z-index:9999;box-shadow:0 8px 30px #00000014,inset 0 0 20px #d4af370d;animation:slideIn .3s cubic-bezier(.175,.885,.32,1.275);pointer-events:none;border-left:5px solid var(--vic-gold, #d4af37)}.syncing-indicator:after{content:"";position:absolute;inset:2px;border:1px solid rgba(212,175,55,.2);pointer-events:none}.syncing-indicator.reconnecting{color:var(--vic-crimson, #a64452);border-color:var(--vic-crimson, #a64452);border-left-color:var(--vic-crimson, #a64452);animation:slideIn .3s,pulseReconnect 2s ease-in-out infinite}.syncing-indicator.reconnecting .gear-icon{color:var(--vic-crimson, #a64452)}.gears-container{position:relative;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.gear-icon{position:absolute;color:var(--vic-gold, #d4af37)}.gear-large{width:20px;height:20px;animation:gearSpin 3s linear infinite}.gear-small{width:14px;height:14px;bottom:-2px;left:-4px;animation:gearSpinCounter 2s linear infinite}@keyframes pulseReconnect{0%{opacity:1}50%{opacity:.7;transform:scale(1.02)}to{opacity:1}}@keyframes gearSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes gearSpinCounter{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.toast-container{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none;width:90%;max-width:400px}.toast{background:var(--vic-bg-card);color:var(--vic-text-main);padding:12px 20px;border-radius:var(--radius-md);box-shadow:var(--shadow-deep);border:1px solid var(--vic-gold);font-family:var(--font-display);font-style:italic;display:flex;align-items:center;gap:12px;animation:toast-in-spring var(--duration-normal) var(--ease-spring);pointer-events:auto;position:relative;overflow:hidden}.toast:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--vic-gold)}.toast.error{border-color:var(--vic-crimson)}.toast.error:before{background:var(--vic-crimson)}.toast.success{border-color:var(--color-success)}.toast.success:before{background:var(--color-success)}.toast.upload{border-color:var(--vic-gold);background:linear-gradient(135deg,var(--vic-gold-dim),var(--vic-bg-card))}.toast.upload:before{background:var(--vic-gold)}.toast.upload .toast-icon{animation:toast-upload-pulse 1.2s ease-in-out infinite}.toast-closing{animation:toast-out-up var(--duration-normal) var(--ease-accelerate) forwards}.toast-closing-side{animation-name:toast-out-side}@keyframes toast-in-spring{0%{transform:translateY(-20px) scale(.94);opacity:0}60%{transform:translateY(2px) scale(1.01);opacity:1}to{transform:translateY(0);opacity:1}}@keyframes toast-out-up{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(-14px) scale(.96);opacity:0}}@keyframes toast-out-side{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(26px) scale(.96);opacity:0}}@keyframes toast-upload-pulse{0%{transform:scale(1);opacity:.85}50%{transform:scale(1.08);opacity:1}to{transform:scale(1);opacity:.85}}.toast-icon{font-size:1.2rem;flex-shrink:0}.toast-content{flex-grow:1;font-size:.95rem;line-height:1.4}.milestone-overlay{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(.8);width:600px;max-width:90vw;z-index:3000;pointer-events:none;opacity:0;transition:all .5s cubic-bezier(.175,.885,.32,1.275);font-family:var(--font-body)}.milestone-overlay.visible{opacity:1;transform:translate(-50%,-50%) scale(1);pointer-events:auto}.milestone-card{background:var(--vic-bg-card, #fdfaf7);border-radius:8px;padding:40px;text-align:center;position:relative;border:4px double var(--vic-gold, #d4af37);box-shadow:0 0 0 8px #d4af371a,0 20px 60px #0006;overflow:hidden;color:var(--vic-text-main, #3e2723)}.milestone-card:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(212,175,55,.1) 0%,transparent 70%);animation:rotate 20s linear infinite;z-index:0;opacity:.5}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.milestone-icon-wrapper{position:relative;display:inline-block;margin-bottom:20px;z-index:1}.milestone-trophy{color:var(--vic-gold);filter:drop-shadow(0 0 10px rgba(255,215,0,.5));animation:bounce 2s infinite ease-in-out}.milestone-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100px;height:100px;background:radial-gradient(circle,rgba(212,175,55,.4) 0%,transparent 70%);z-index:-1}.milestone-label-group{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:5px;opacity:1;transform:translateY(0);animation:slideUp .6s cubic-bezier(.2,.8,.2,1) backwards .2s}.milestone-flourish{font-size:24px;color:var(--vic-crimson, #a64452);opacity:.8}.milestone-label{font-family:var(--font-body);color:var(--vic-text-meta, #8d6e63);font-size:14px;margin:0;text-transform:uppercase;letter-spacing:3px;font-weight:700}.milestone-title{font-family:var(--font-body);font-size:2.5rem;font-weight:700;margin:15px 0;color:var(--vic-gold, #d4af37);text-shadow:1px 1px 0px rgba(0,0,0,.1);opacity:0;transform:scale(.95);animation:slideUp .6s cubic-bezier(.2,.8,.2,1) forwards .4s;text-transform:uppercase;letter-spacing:1px}.milestone-description{font-family:var(--font-body);font-size:1.2rem;font-style:italic;color:var(--vic-text-main, #3e2723);margin-bottom:30px;opacity:1;animation:slideUp .6s cubic-bezier(.2,.8,.2,1) backwards .6s}.milestone-footer{display:flex;align-items:center;justify-content:center;gap:10px;color:#666;font-size:.9rem;text-transform:uppercase;letter-spacing:2px;opacity:0;animation:fadeIn 1s forwards 1s}@keyframes fadeIn{to{opacity:1}}@keyframes shine{to{background-position:200% center}}.milestone-particles{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1}.particle{position:absolute;color:var(--vic-gold);opacity:0;animation:particleFade 3s infinite ease-in-out}@keyframes particleFade{0%,to{opacity:0;transform:scale(.5)}50%{opacity:.8;transform:scale(1.2)}}@media(max-width:600px){.milestone-overlay{width:90%}.milestone-title{font-size:2rem}}:is(body.theme-dark,body.theme-night-sky) .milestone-footer{color:#c8b4a3}.oracle-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;min-height:100dvh;background:radial-gradient(circle at center,var(--vic-oracle-purple-deep) 0%,var(--vic-oracle-purple-base) 100%);z-index:1000;display:flex;justify-content:center;align-items:center;font-family:var(--font-body);color:var(--vic-oracle-lavender-light);animation:fadeIn .5s ease-out;overflow:hidden}body.theme-night-sky .oracle-overlay:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 12% 15%,rgba(255,255,255,.15) 1px,transparent 1px),radial-gradient(circle at 85% 25%,rgba(255,255,255,.12) 1px,transparent 1px),radial-gradient(circle at 50% 50%,rgba(255,255,255,.1) 1px,transparent 1px),radial-gradient(circle at 25% 85%,rgba(255,255,255,.15) 1px,transparent 1px),radial-gradient(circle at 75% 75%,rgba(255,255,255,.12) 1px,transparent 1px);background-size:150px 150px,220px 220px,300px 300px,180px 180px,250px 250px;opacity:.5;pointer-events:none;z-index:0}body.theme-night-sky .oracle-overlay{background:radial-gradient(circle at 20% 30%,rgba(100,149,237,.12),transparent 40%),radial-gradient(circle at 80% 70%,rgba(147,112,219,.12),transparent 40%),radial-gradient(circle at center,var(--vic-oracle-purple-deep) 0%,var(--vic-oracle-purple-base) 100%)}.oracle-content{width:100%;max-width:900px;height:80vh;display:flex;flex-direction:column;align-items:center;position:relative}.oracle-close{position:absolute;top:20px;right:20px;color:#d4af3780;background:none;border:none;cursor:pointer;transition:color .3s;z-index:1001}.oracle-close:hover{color:var(--vic-gold)}.oracle-header{text-align:center;margin-bottom:80px;z-index:10}.oracle-card-front.flare{box-shadow:inset 0 0 50px #ffd70066,0 0 30px #ffa5004d}.flare-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:5;overflow:hidden}.flare-sparkle{position:absolute;color:var(--vic-gold);filter:drop-shadow(0 0 5px #ff8c00);animation:flareFloat 3s infinite ease-in-out;opacity:.8}.flare-sparkle.s1{top:20%;left:20%;animation-delay:0s}.flare-sparkle.s2{top:60%;left:70%;animation-delay:1s}.flare-sparkle.s3{top:30%;left:75%;animation-delay:2s}@keyframes flareFloat{0%,to{transform:translateY(0) scale(1);opacity:.8}50%{transform:translateY(-15px) scale(1.2);opacity:1}}.tag-flare-icon{display:inline-block;vertical-align:middle;margin:0 5px;color:var(--vic-gold);animation:pulseFlare 1.5s infinite}@keyframes pulseFlare{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.3);opacity:1}}.oracle-header h2{font-family:var(--font-display);font-size:2.5rem;color:var(--vic-gold);text-shadow:0 2px 10px rgba(212,175,55,.3);margin-bottom:5px}.oracle-quote-container{display:flex;align-items:center;justify-content:center;gap:15px;margin:20px auto;max-width:600px;padding:0 20px}.oracle-quote{font-family:var(--font-body);font-style:italic;font-size:1.3rem;color:var(--vic-oracle-lavender);line-height:1.5;text-shadow:0 1px 3px rgba(0,0,0,.5);margin:0!important}.quote-flourish{color:var(--vic-gold);font-size:1.5rem;opacity:.8}.oracle-status-text{font-style:italic;color:var(--vic-oracle-mystic);font-size:1.1rem;margin-top:15px;text-transform:uppercase;letter-spacing:2px;opacity:.7}.oracle-table{position:relative;width:100%;height:400px;display:flex;justify-content:center;perspective:1200px}.oracle-card-wrapper{position:absolute;width:180px;height:300px;transition:all .6s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d;cursor:pointer;bottom:50px}.oracle-card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1)}.revealed .oracle-card-inner{transform:rotateY(180deg)}.oracle-card-back,.oracle-card-front{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:8px;box-shadow:0 15px 35px #0006;overflow:hidden;background:transparent;border:none}.oracle-card-front{transform:rotateY(180deg);display:flex;flex-direction:column;align-items:center;justify-content:center}.card-back-img,.card-artwork-img img{width:100%;height:100%;object-fit:contain;display:block}.card-artwork-img{width:100%;height:100%;display:flex;z-index:2}.oracle-prize-tag-container{position:absolute;bottom:-100px;left:50%;transform:translate(-50%) translateY(20px);width:100%;max-width:220px;opacity:0;transition:all .6s .5s cubic-bezier(.34,1.56,.64,1);z-index:5;pointer-events:none}.revealed .oracle-prize-tag-container{opacity:1;transform:translate(-50%) translateY(0);pointer-events:auto}.oracle-prize-tag-container.miss{max-width:168px;bottom:-88px}.oracle-prize-tag-container.miss .oracle-prize-tag{padding:8px 10px}.oracle-prize-tag{background:var(--vic-bg-parchment)!important;border:1px solid var(--vic-border-subtle, #edddd4);border-radius:12px;padding:12px 15px;display:flex;flex-direction:column;align-items:center;gap:4px;box-shadow:0 10px 30px #0009;position:relative;opacity:1!important;visibility:visible!important}.oracle-prize-tag.is-winner{background:#fff!important;border-color:var(--vic-gold, #d4af37);box-shadow:0 5px 25px #d4af3780}.tag-prefix{font-size:.65rem;text-transform:uppercase;letter-spacing:1.5px;color:#000;font-weight:600}.is-winner .tag-prefix{font-weight:700}.tag-prize{font-family:Playfair Display,serif;font-weight:800;font-size:1.1rem;color:#000;text-align:center;line-height:1.2}.tag-desc{font-size:.85rem;color:#000;line-height:1.4;text-align:center;margin:8px 0;font-style:italic;max-width:180px}.oracle-controls{margin-top:40px;z-index:20}.oracle-action-panel{margin-top:50px;display:flex;flex-direction:column;align-items:center;gap:20px;width:100%}.loki-input-container{width:100%;text-align:center;margin-bottom:20px}.loki-input-container label{display:block;margin-bottom:10px;font-family:var(--font-body);font-style:italic;color:var(--vic-gold)}:is(body.theme-dark,body.theme-night-sky) .oracle-prize-tag{background:var(--vic-bg-parchment)!important;border-color:var(--vic-border-subtle);box-shadow:0 12px 30px #0000008c}:is(body.theme-dark,body.theme-night-sky) .oracle-prize-tag.is-winner{background:var(--vic-bg-card)!important;border-color:var(--vic-gold)}:is(body.theme-dark,body.theme-night-sky) .tag-prefix{color:var(--vic-text-meta)}:is(body.theme-dark,body.theme-night-sky) .tag-prize{color:var(--vic-gold)}:is(body.theme-dark,body.theme-night-sky) .tag-desc{color:var(--vic-text-main)}.loki-field{width:250px;padding:12px;background:#ffffff0d;border:1px solid var(--vic-gold);border-radius:2px;color:#fff;font-family:var(--font-body);text-align:center;font-size:1.1rem;outline:none}.oracle-buttons{display:flex;flex-direction:column;gap:8px;width:200px}.oracle-accept-btn{background:var(--vic-crimson);color:#fff;border:1px solid var(--vic-gold);padding:12px 20px;border-radius:2px;font-family:var(--font-body);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;cursor:pointer;transition:all .3s;box-shadow:0 4px 12px #a6445233;width:100%}.oracle-decline-btn{background:transparent;color:var(--vic-text-meta);border:1px solid var(--vic-border-subtle);padding:10px 20px;border-radius:2px;font-family:var(--font-body);font-size:.75rem;text-transform:uppercase;letter-spacing:1.5px;cursor:pointer;transition:all .3s;width:100%}.oracle-accept-btn:hover:not(:disabled){background:#7a2f39;transform:translateY(-1px);box-shadow:0 6px 15px #a644524d}.ritual-begin-btn{background:transparent;border:1px solid var(--vic-gold);color:var(--vic-gold);padding:12px 30px;border-radius:2px;font-family:var(--font-body);font-size:.9rem;text-transform:uppercase;letter-spacing:2px;cursor:pointer;transition:all .3s}.ritual-begin-btn:hover:not(:disabled){background:var(--vic-gold);color:var(--vic-oracle-purple-deep);box-shadow:0 0 20px #d4af3766}.oracle-table.idle .oracle-card-wrapper{transform:translateY(100px) rotateX(20deg) scale(.8);opacity:0;pointer-events:none}.oracle-prize-tag.compact .tag-prefix{font-size:.56rem;letter-spacing:1.1px;opacity:.8}.oracle-prize-tag.compact .tag-prize{font-size:.92rem}.oracle-table.choose .oracle-card-wrapper{transition:transform .22s ease,filter .22s ease,box-shadow .22s ease}.oracle-table.choose .oracle-card-wrapper:hover{transform:translateY(-10px) scale(1.03);filter:brightness(1.08)}.oracle-table.deal .oracle-card-wrapper{animation:dealIn .8s ease-out forwards}@keyframes dealIn{0%{transform:translateY(300px) rotateX(45deg);opacity:0}to{opacity:1}}.pos-0{left:calc(50% - 310px)}.pos-1{left:calc(50% - 90px)}.pos-2{left:calc(50% + 130px)}.oracle-table.shuffle .pos-0{animation:shufflePos0 2s infinite ease-in-out}.oracle-table.shuffle .pos-1{animation:shufflePos1 2s infinite ease-in-out}.oracle-table.shuffle .pos-2{animation:shufflePos2 2s infinite ease-in-out}@keyframes shufflePos0{0%,to{transform:translate(0) scale(1);z-index:10}33%{transform:translate(220px) scale(.9);z-index:5}66%{transform:translate(440px) scale(.8);z-index:1}}@keyframes shufflePos1{0%,to{transform:translate(0) scale(1);z-index:10}33%{transform:translate(220px) scale(.9);z-index:5}66%{transform:translate(-220px) scale(.8);z-index:1}}@keyframes shufflePos2{0%,to{transform:translate(0) scale(1);z-index:10}33%{transform:translate(-220px) scale(.9);z-index:5}66%{transform:translate(-440px) scale(.8);z-index:1}}.oracle-table .revealed:not(.chosen) .oracle-card-front{filter:grayscale(.8) brightness(.5)}.oracle-table .revealed:not(.chosen) img{filter:grayscale(.8) brightness(.5)}.revealed.chosen,.revealed.chosen .oracle-card-front{box-shadow:none}.revealed.chosen .card-artwork-img img{filter:drop-shadow(0 0 10px rgba(212,175,55,.45)) drop-shadow(0 0 18px rgba(212,175,55,.32))}.oracle-card-wrapper.lock-in{animation:oracleLockPulse .38s cubic-bezier(.22,1,.36,1)}@keyframes oracleLockPulse{0%{transform:translateY(0) scale(1);filter:brightness(1)}55%{transform:translateY(-12px) scale(1.05);filter:brightness(1.15)}to{transform:translateY(0) scale(1);filter:brightness(1)}}.fadeIn{animation:fadeIn .5s forwards}@media(max-width:768px){.oracle-header{margin-bottom:40px}.oracle-quote{font-size:1rem}.oracle-card-wrapper{width:100px;height:165px;bottom:10px}.pos-0{left:calc(50% - 160px)}.pos-1{left:calc(50% - 50px)}.pos-2{left:calc(50% + 60px)}.oracle-prize-tag-container{width:110px;bottom:-80px}.oracle-prize-tag-container.miss{width:100px;max-width:100px;bottom:-74px}.oracle-prize-tag.compact .tag-prize{font-size:.76rem;line-height:1.15}.tag-prize{font-size:.8rem}.tag-desc{font-size:.7rem}@keyframes shufflePos0{0%,to{transform:translate(0)}33%{transform:translate(110px)}66%{transform:translate(220px)}}@keyframes shufflePos1{0%,to{transform:translate(0)}33%{transform:translate(110px)}66%{transform:translate(-110px)}}@keyframes shufflePos2{0%,to{transform:translate(0)}33%{transform:translate(-110px)}66%{transform:translate(-220px)}}}.test-mode{background:radial-gradient(circle at center,#1b263b,#0d1b2a)}.test-badge{position:absolute;top:-25px;left:50%;transform:translate(-50%);background:var(--vic-gold);color:var(--vic-oracle-purple-deep);padding:2px 15px;font-size:.7rem;font-weight:900;letter-spacing:2px;border-radius:4px;box-shadow:0 4px 8px #0000004d;z-index:10}.oracle-intro-modal{background:var(--vic-oracle-purple-deep);border:1px solid var(--vic-gold, #d4af37);padding:40px;max-width:600px;width:90%;text-align:center;border-radius:4px;box-shadow:0 0 50px #000c,0 0 20px #d4af3733;position:relative;z-index:2000;animation:fadeIn .5s ease-out;max-height:calc(100dvh - 48px);display:flex;flex-direction:column;overflow:hidden}body.theme-night-sky .oracle-intro-modal{background:linear-gradient(135deg,var(--vic-oracle-purple-deep) 0%,var(--vic-oracle-purple-base) 100%);border-color:#e0e6f44d;box-shadow:0 0 50px #000c,0 0 20px #87ceeb26}.intro-mode .oracle-header{margin-bottom:20px}.oracle-intro-content{display:flex;flex-direction:column;gap:20px;font-size:1.1rem;line-height:1.6;color:#e1bee7;overflow-y:auto;padding-right:4px}.intro-card-types{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:20px 0;text-align:left}.intro-card-row{display:flex;align-items:flex-start;gap:12px;background:#ffffff0d;padding:10px;border-radius:4px;border:1px solid rgba(212,175,55,.2)}.card-icon{font-size:1.5rem;min-width:30px;text-align:center}.intro-card-row strong{color:var(--vic-gold, #d4af37);display:block;margin-bottom:4px;font-family:Playfair Display,serif}.intro-card-row p{font-size:.9rem;margin:0;opacity:.8;line-height:1.3}.intro-footer{font-style:italic;font-size:1rem;opacity:.7;margin-top:10px}.oracle-intro-content .ritual-begin-btn{position:sticky;bottom:0;z-index:2;margin-top:6px;background-color:var(--vic-oracle-purple-deep)}@media(max-width:768px){.oracle-overlay.intro-mode{align-items:flex-start;overflow-y:auto;padding-top:max(12px,env(safe-area-inset-top,0px));padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.oracle-intro-modal{width:min(94vw,620px);padding:18px 14px;margin:0 auto;max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}.oracle-intro-content{gap:14px;font-size:.98rem}.intro-card-types{grid-template-columns:1fr;gap:10px;margin:10px 0}}.oracle-fab-container{position:fixed;bottom:95px;right:20px;display:flex;flex-direction:column;align-items:center;gap:8px;z-index:100}@media(min-width:640px){.oracle-fab-container{right:calc(50% - 280px);left:auto}}.oracle-fab{width:80px;height:80px;border-radius:50%;background:transparent;border:none;cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center;outline:none;transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.oracle-fab:hover{transform:scale(1.1)}.oracle-fab:active{transform:scale(.9)}.crystal-ball-container{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center}.crystal-ball{width:65px;height:65px;background:transparent;border-radius:50%;position:relative;z-index:2;display:flex;align-items:center;justify-content:center;animation:mysticalSway 5s infinite ease-in-out}.ball-img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 12px rgba(103,58,183,.5));animation:heavenlyShine 4s infinite ease-in-out}.ball-glow{position:absolute;width:85px;height:85px;background:radial-gradient(circle,rgba(103,58,183,.2) 0%,transparent 70%);border-radius:50%;z-index:1;animation:crystalPulse 4s infinite ease-in-out}.ball-twinkle{position:absolute;width:4px;height:4px;background:#fff;border-radius:50%;top:25%;left:30%;z-index:3;box-shadow:0 0 10px 2px #fff;animation:twinkleMask 3s infinite ease-in-out;pointer-events:none}.fab-label{font-family:var(--font-body);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--vic-gold);text-shadow:0 2px 4px rgba(0,0,0,.5);opacity:.9}@keyframes mysticalSway{0%,to{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(3deg) translateY(-3px)}}@keyframes heavenlyShine{0%,to{filter:drop-shadow(0 0 12px rgba(103,58,183,.4)) brightness(1)}50%{filter:drop-shadow(0 0 18px rgba(212,175,55,.6)) brightness(1.15)}}@keyframes crystalPulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.3);opacity:.6}}@keyframes twinkleMask{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.notification-fab{position:fixed;right:18px;bottom:calc(var(--app-nav-safe-height) + 10px);width:56px;height:56px;border-radius:50%;border:1px solid rgba(212,175,55,.55);background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.35),transparent 45%),linear-gradient(160deg,var(--vic-bg-card),#f5ebd0);color:var(--vic-text-main);box-shadow:0 8px 18px #00000024,0 0 0 1px #d4af372e;display:flex;align-items:center;justify-content:center;z-index:var(--z-fab);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;animation:notificationFabPulse 2.4s ease-in-out infinite}.notification-fab:hover{transform:translateY(-1px);box-shadow:0 10px 22px #0000002e,0 0 0 1px #d4af3747}.notification-fab:active{transform:scale(.96)}.notification-fab.pulse-burst:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid rgba(212,175,55,.65);animation:notificationFabBurst .52s ease-out forwards;pointer-events:none}.notification-fab-badge{position:absolute;top:-4px;right:-2px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--vic-status-danger);color:#fff;border:2px solid var(--vic-bg-card);font-size:10px;font-weight:700;line-height:1;display:flex;align-items:center;justify-content:center}body.theme-night-sky .notification-fab{color:var(--vic-gold);border-color:#c1a35f73;background:radial-gradient(circle at 30% 20%,rgba(200,215,255,.3),transparent 44%),linear-gradient(165deg,#10182a,#172138);box-shadow:0 10px 22px #0102069e,0 0 0 1px #c1a35f59}body.theme-night-sky .notification-fab-badge{border-color:#10182a}@media(min-width:640px){.notification-fab{right:calc(50% - 282px)}}@keyframes notificationFabPulse{0%,to{filter:saturate(1)}50%{filter:saturate(1.1)}}@keyframes notificationFabBurst{0%{opacity:.8;transform:scale(.9)}to{opacity:0;transform:scale(1.2)}}@media(prefers-reduced-motion:reduce){.notification-fab{animation:none;transition:none}.notification-fab.pulse-burst:after{animation:none;opacity:0}}:root{--color-accent: var(--vic-gold);--color-danger: var(--vic-crimson);--color-success: #6e8c73;--color-warning: #cc9966;--color-ink: var(--vic-text-main);--color-ink-subtle: var(--vic-text-meta);--color-paper: var(--vic-bg-parchment);--color-surface: var(--vic-bg-card);--color-border: var(--vic-border-subtle);--font-serif: "Crimson Pro", serif;--font-display: "Playfair Display", serif;--font-script-ceremonial: "Pinyon Script", cursive;--font-script-readable: "Great Vibes", cursive;--font-body: "Crimson Pro", serif;--text-h1: clamp(2.5rem, 5vw + 1rem, 3.5rem);--text-h2: clamp(2rem, 4vw + 1rem, 2.75rem);--text-h3: clamp(1.5rem, 3vw + 1rem, 2rem);--text-h4: 1.5rem;--text-h5: 1.25rem;--text-h6: 1.125rem;--text-body: 1rem;--text-small: .875rem;--text-xs: .75rem;--text-accent: .9rem;--text-script-title: 2.25rem;--text-script-accent: 1.5rem;--bg-primary: #FFFFFF;--bg-secondary: #F2F2F7;--bg-tertiary: #FFFFFF;--text-primary: #000000;--text-secondary: #8E8E93;--text-tertiary: #C7C7CC;--separator: #C6C6C8;--nav-bar-bg: rgba(255, 255, 255, .9);--nav-bar-border: rgba(0, 0, 0, .3);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--app-nav-height: 69px;--app-nav-safe-height: calc(var(--app-nav-height) + env(safe-area-inset-bottom, 0px));--app-nav-clearance: calc(var(--app-nav-height) + 14px);--app-nav-clearance-roomy: calc(var(--app-nav-clearance) + 23px);--radius-xs: 6px;--radius-sm: 12px;--radius-md: 24px;--radius-lg: 40px;--radius-full: 999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-soft: 0 4px 24px rgba(0, 0, 0, .04);--shadow-deep: 0 12px 32px rgba(0, 0, 0, .08);--bg-gradient-subtle: linear-gradient(135deg, #F2F2F7 0%, #E5E5EA 100%);--vic-bg-parchment: #fdfaf7;--vic-bg-card: #ffffff;--vic-text-main: #3d2b1f;--vic-text-meta: #8d6e63;--vic-bronze: #8c7355;--vic-gold: #d4af37;--vic-crimson: #a64452;--vic-border-subtle: #edddd4;--vic-status-success: #6e8c73;--vic-status-pending: #8c7355;--vic-status-warning: #cc9966;--vic-status-danger: var(--vic-crimson);--vic-paper-texture: url(https://www.transparenttextures.com/patterns/linen.png);--vic-btn-radius: 12px;--vic-btn-shadow: 0 4px 12px rgba(0, 0, 0, .08);--vic-btn-shadow-active: 0 2px 4px rgba(0, 0, 0, .1);--ease-standard: cubic-bezier(.4, 0, .2, 1);--ease-decelerate: cubic-bezier(0, 0, .2, 1);--ease-accelerate: cubic-bezier(.4, 0, 1, 1);--ease-spring: cubic-bezier(.175, .885, .32, 1.275);--ease-page: cubic-bezier(.22, 1, .36, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--duration-instant: .1s;--duration-fast: .2s;--duration-normal: .3s;--duration-slow: .5s;--duration-dramatic: .8s;--duration-page-enter: .26s;--distance-page-enter: 6px;--shimmer-gradient: linear-gradient(90deg, rgba(141, 110, 99, .12) 0%, rgba(212, 175, 55, .24) 45%, rgba(141, 110, 99, .12) 100%);--shimmer-size: 220% 100%;--shimmer-duration: 1.3s;--z-nav: 100;--z-sticky: 150;--z-fab: 200;--z-overlay: 1000;--z-modal: 2000;--z-confirm: 2500;--z-toast: 3000;--z-notification: 4000;--z-popup: 5000;transition:background-color .4s ease,color .4s ease,border-color .4s ease,box-shadow .4s ease;--vic-oracle-purple-deep: #1a051d;--vic-oracle-purple-base: #2e0d36;--vic-oracle-lavender-light: #e1bee7;--vic-oracle-lavender: #ce93d8;--vic-oracle-mystic: #b39ddb}@media(prefers-reduced-motion:reduce){:root{--duration-instant: 1ms;--duration-fast: 1ms;--duration-normal: 1ms;--duration-slow: 1ms;--duration-dramatic: 1ms}}@layer base{:root,.theme-dark{--dark-bg-primary: #000000;--dark-bg-secondary: #1C1C1E;--dark-bg-tertiary: #2C2C2E;--dark-text-primary: #FFFFFF;--dark-text-secondary: #EBEBF5;--dark-text-tertiary: rgba(235, 235, 245, .6);--dark-separator: #38383A;--dark-nav-bar-bg: rgba(28, 28, 30, .9);--dark-nav-bar-border: rgba(255, 255, 255, .15);--dark-bg-gradient-subtle: linear-gradient(135deg, #1C1C1E 0%, #000000 100%);--dark-vic-bg-parchment: #1a1614;--dark-vic-bg-card: #2c2622;--dark-vic-text-main: #ece2d4;--dark-vic-text-meta: #a18e86;--dark-vic-bronze: #ac8d6b;--dark-vic-gold: #c1a35f;--dark-vic-crimson: #8e3a46;--dark-vic-crimson-dark: #7a2f39;--dark-vic-gold-dim: #ac8d6b;--dark-vic-border-subtle: #3a322d;--dark-vic-status-success: #7da184;--dark-vic-status-pending: #ac8d6b;--dark-vic-status-warning: #d7b971;--dark-vic-status-danger: var(--dark-vic-crimson);--dark-vic-paper-texture: url(https://www.transparenttextures.com/patterns/gray-linen.png);--color-accent: var(--dark-vic-gold);--color-danger: var(--dark-vic-crimson);--color-success: #7da184;--color-warning: #d7b971;--color-ink: var(--dark-vic-text-main);--color-ink-subtle: var(--dark-vic-text-meta);--color-paper: var(--dark-vic-bg-parchment);--color-surface: var(--dark-vic-bg-card);--color-border: var(--dark-vic-border-subtle)}:is(body.theme-dark,body.theme-night-sky) :root:not(.theme-light){--bg-primary: var(--dark-bg-primary);--bg-secondary: var(--dark-bg-secondary);--bg-tertiary: var(--dark-bg-tertiary);--text-primary: var(--dark-text-primary);--text-secondary: var(--dark-text-secondary);--text-tertiary: var(--dark-text-tertiary);--ios-gray-2: var(--dark-ios-gray-2);--ios-gray-3: var(--dark-ios-gray-3);--ios-gray-4: var(--dark-ios-gray-4);--ios-gray-5: var(--dark-ios-gray-5);--ios-gray-6: var(--dark-ios-gray-6);--separator: var(--dark-separator);--nav-bar-bg: var(--dark-nav-bar-bg);--nav-bar-border: var(--dark-nav-bar-border);--bg-gradient-subtle: var(--dark-bg-gradient-subtle);--vic-bg-parchment: var(--dark-vic-bg-parchment);--vic-bg-card: var(--dark-vic-bg-card);--vic-text-main: var(--dark-vic-text-main);--vic-text-meta: var(--dark-vic-text-meta);--vic-bronze: var(--dark-vic-bronze);--vic-gold: var(--dark-vic-gold);--vic-crimson: var(--dark-vic-crimson);--vic-crimson-dark: var(--dark-vic-crimson-dark);--vic-gold-dim: var(--dark-vic-gold-dim);--vic-status-success: var(--dark-vic-status-success);--vic-status-pending: var(--dark-vic-status-pending);--vic-status-warning: var(--dark-vic-status-warning);--vic-status-danger: var(--dark-vic-status-danger);--vic-border-subtle: var(--dark-vic-border-subtle);--vic-paper-texture: var(--dark-vic-paper-texture)}body.theme-dark{--bg-primary: var(--dark-bg-primary);--bg-secondary: var(--dark-bg-secondary);--bg-tertiary: var(--dark-bg-tertiary);--text-primary: var(--dark-text-primary);--text-secondary: var(--dark-text-secondary);--text-tertiary: var(--dark-text-tertiary);--ios-gray-2: var(--dark-ios-gray-2);--ios-gray-3: var(--dark-ios-gray-3);--ios-gray-4: var(--dark-ios-gray-4);--ios-gray-5: var(--dark-ios-gray-5);--ios-gray-6: var(--dark-ios-gray-6);--separator: var(--dark-separator);--nav-bar-bg: var(--dark-nav-bar-bg);--nav-bar-border: var(--dark-nav-bar-border);--bg-gradient-subtle: var(--dark-bg-gradient-subtle);--vic-bg-parchment: var(--dark-vic-bg-parchment);--vic-bg-card: var(--dark-vic-bg-card);--vic-text-main: var(--dark-vic-text-main);--vic-text-meta: var(--dark-vic-text-meta);--vic-bronze: var(--dark-vic-bronze);--vic-gold: var(--dark-vic-gold);--vic-crimson: var(--dark-vic-crimson);--vic-crimson-dark: var(--dark-vic-crimson-dark);--vic-gold-dim: var(--dark-vic-gold-dim);--vic-border-subtle: var(--dark-vic-border-subtle);--vic-paper-texture: var(--dark-vic-paper-texture)}}body.theme-night-sky{--bg-primary: #07090f;--bg-secondary: #0d111a;--bg-tertiary: #121827;--text-primary: #edf0f7;--text-secondary: #ccd3e4;--text-tertiary: rgba(204, 211, 228, .62);--separator: #2a3142;--nav-bar-bg: rgba(9, 12, 20, .9);--nav-bar-border: rgba(224, 230, 244, .2);--bg-gradient-subtle: linear-gradient(135deg, #0f1320 0%, #07090f 100%);--vic-bg-parchment: #0c101a;--vic-bg-card: #151b29;--vic-text-main: #edf0f7;--vic-text-meta: #aab2c3;--vic-bronze: #c5c0b0;--vic-gold: #d8d1b3;--vic-crimson: #c43e5c;--vic-crimson-dark: #a64452;--vic-gold-dim: #bfb79d;--vic-border-subtle: #2a3142;--vic-paper-texture: none;--vic-sky-blue: #87ceeb;--color-accent: var(--vic-sky-blue);--color-danger: #ff6b6b;--color-success: #81c784;--color-warning: #ffd54f;--color-ink: #edf0f7;--color-ink-subtle: #aab2c3;--color-paper: #07090f;--color-surface: #0d111a;--color-border: #2a3142;--vic-oracle-purple-deep: #07090f;--vic-oracle-purple-base: #0d111a;--vic-oracle-lavender-light: #edf0f7;--vic-oracle-lavender: #ccd3e4;--vic-oracle-mystic: #87ceeb}body.theme-light{--bg-primary: #ffffff;--bg-secondary: #f2f2f7;--bg-tertiary: #ffffff;--text-primary: #000000;--text-secondary: #8e8e93;--text-tertiary: #c7c7cc;--separator: #c6c6c8;--nav-bar-bg: rgba(255, 255, 255, .9);--nav-bar-border: rgba(0, 0, 0, .3);--bg-gradient-subtle: linear-gradient(135deg, #f2f2f7 0%, #e5e5ea 100%);--vic-bg-parchment: #fdfaf7;--vic-bg-card: #ffffff;--vic-text-main: #3d2b1f;--vic-text-meta: #8d6e63;--vic-bronze: #8c7355;--vic-gold: #d4af37;--vic-crimson: #a64452;--vic-crimson-dark: #8f3644;--vic-gold-dim: #ac8d6b;--vic-border-subtle: #edddd4;--vic-paper-texture: url(https://www.transparenttextures.com/patterns/linen.png)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.5)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-up{animation:slideUp .4s ease-out}.animate-pop-in{animation:popIn .3s cubic-bezier(.68,-.55,.265,1.55)}.animate-bounce{animation:bounce .6s ease-in-out}.animate-shake{animation:shake .4s ease-in-out}.animate-pulse{animation:pulse .6s ease-in-out infinite}.btn-press{transition:transform .1s ease}.btn-press:active{transform:scale(.95)}.ripple{position:relative;overflow:hidden}.ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff80;transform:translate(-50%,-50%);transition:width .6s,height .6s}.ripple:active:after{width:300px;height:300px}@keyframes victorianPopIn{0%{transform:scale(.85) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pagePanelIn{0%{opacity:0;transform:translateY(var(--distance-page-enter))}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes messageSlideIn{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes locketSwing{0%{transform:rotate(15deg);opacity:0}20%{transform:rotate(15deg);opacity:1}40%{transform:rotate(-10deg)}60%{transform:rotate(5deg)}80%{transform:rotate(-2deg)}to{transform:rotate(0)}}@keyframes typingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-8px)}}@keyframes quillWrite{0%,to{transform:rotate(0) translateY(0)}50%{transform:rotate(15deg) translateY(-5px)}}@keyframes inkDrop{0%{opacity:0;transform:translate(-50%) translateY(0) scale(1)}50%{opacity:1;transform:translate(-50%) translateY(5px) scale(1.5)}to{opacity:0;transform:translate(-50%) translateY(10px) scale(.5)}}@keyframes heart-beat{0%{transform:scale(1)}15%{transform:scale(1.3)}30%{transform:scale(1.1)}45%{transform:scale(1.4)}to{transform:scale(1)}}@keyframes waxPulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 5px rgba(166,68,82,.2))}50%{transform:scale(1.04);filter:drop-shadow(0 0 45px rgba(166,68,82,.4))}}@keyframes celestialDrift1{0%{transform:translate(0)}to{transform:translate(-100vw,-20vh)}}@keyframes celestialDrift2{0%{transform:translate(0)}to{transform:translate(-80vw,-10vh)}}@keyframes celestialDrift3{0%{transform:translate(0)}to{transform:translate(-60vw,-5vh)}}@keyframes sparkle{0%,to{opacity:.3;transform:scale(.9)}50%{opacity:1;transform:scale(1.15);filter:brightness(1.6) blur(.3px)}}@keyframes vic-spin{to{transform:rotate(360deg)}}@keyframes shoot{0%{transform:translate(0) rotate(215deg) scale(0);opacity:0}5%{opacity:1;transform:translate(0) rotate(215deg) scale(1)}70%{opacity:1}to{transform:translate(-300px,300px) rotate(215deg) scale(0);opacity:0}}@keyframes messageFloatIn{0%{opacity:0;transform:translateY(16px) scale(.93);filter:blur(2.5px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes typingFadeIn{0%{opacity:0}to{opacity:1}}@keyframes steamDriftA{0%{transform:translate3d(-2%,-1%,0) scale(1)}to{transform:translate3d(2.5%,1.5%,0) scale(1.03)}}@keyframes steamDriftB{0%{transform:translate3d(2%,-2%,0) scale(1.01)}to{transform:translate3d(-1.8%,2%,0) scale(1.04)}}@keyframes steamBloom{0%{filter:blur(4px);opacity:.3}50%{filter:blur(2px);opacity:.6}to{filter:blur(4px);opacity:.3}}.vic-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--vic-btn-radius);font-family:var(--font-body);font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all var(--duration-fast) var(--ease-standard);border:1px solid transparent;position:relative;overflow:hidden;white-space:nowrap}.vic-btn:active{transform:scale(.96)}.vic-btn-primary{background:var(--vic-crimson);color:#fff;box-shadow:0 4px 12px #a6445233}.vic-btn-primary:hover{background:var(--vic-crimson-dark);box-shadow:0 6px 16px #a644524d}.vic-btn-secondary{background:transparent;border-color:var(--vic-border-subtle);color:var(--vic-text-main)}.vic-btn-secondary:hover{background:#d4af370d;border-color:var(--vic-gold);color:var(--vic-gold)}.vic-btn-destructive{background:transparent;border-color:#a644524d;color:var(--vic-crimson)}.vic-btn-destructive:hover{background:#a6445214;border-color:var(--vic-crimson)}body.theme-night-sky .vic-btn-primary{background:var(--vic-crimson);box-shadow:0 4px 15px #c43e5c4d}body.theme-night-sky .vic-btn-secondary{border-color:#87ceeb4d;color:var(--vic-sky-blue)}body.theme-night-sky .vic-btn-secondary:hover{background:#87ceeb1a;border-color:var(--vic-sky-blue)}.vic-btn.is-success{animation:actionAckPulse .3s cubic-bezier(.175,.885,.32,1.275);border-color:var(--vic-gold)!important}@keyframes actionAckPulse{0%{transform:scale(1);box-shadow:0 0 #d4af3759}45%{transform:scale(1.04);box-shadow:0 0 0 12px #d4af3700}to{transform:scale(1);box-shadow:0 0 #d4af0000}}.vic-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 14px;border-radius:6px;font-family:var(--font-body);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all var(--duration-fast) var(--ease-standard);border:1px solid transparent;background:transparent;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.vic-action-btn.size-sm{padding:4px 8px;font-size:10px;gap:4px}.vic-action-btn.icon-only{padding:6px}.vic-action-btn.size-sm.icon-only{padding:4px}.vic-action-btn-edit{color:var(--vic-text-meta);border-color:var(--vic-border-subtle)}.vic-action-btn-edit:hover{color:var(--vic-gold);border-color:var(--vic-gold);background:#d4af370d}.vic-action-btn-delete{color:var(--vic-text-meta);border-color:var(--vic-border-subtle)}.vic-action-btn-delete:hover{color:var(--vic-crimson);border-color:var(--vic-crimson);background:#a644520d}body.theme-night-sky .vic-action-btn-edit{color:#ccd3e4;border-color:#87ceeb33}body.theme-night-sky .vic-action-btn-edit:hover{color:var(--vic-sky-blue);border-color:var(--vic-sky-blue)}body.theme-night-sky .vic-action-btn-delete{color:#ccd3e4;border-color:#87ceeb33}body.theme-night-sky .vic-action-btn-delete:hover{color:var(--vic-status-danger);border-color:var(--vic-status-danger)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body{height:100%;min-height:100%;min-height:-webkit-fill-available;overflow:hidden;width:100%;background-color:var(--color-paper);background-image:none;scrollbar-gutter:stable}body{font-family:var(--font-body);color:var(--text-primary);font-size:var(--text-body);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;user-select:none;overscroll-behavior:none;-webkit-overflow-scrolling:touch;--shadow-paper-surface: 0 0 20px rgba(0, 0, 0, .1);--shadow-moon-surface: 0 0 24px rgba(2, 3, 8, .8);--shadow-page-surface: var(--shadow-paper-surface);--shadow-segment-active: 0 3px 8px rgba(0, 0, 0, .12), 0 3px 1px rgba(0, 0, 0, .04);--shadow-segment-active-strong: 0 3px 8px rgba(0, 0, 0, .3);--active-tab-aura-rgb: 156, 122, 92;--active-tab-aura-alpha: .22;--status-success-rgb: 110, 140, 115;--status-warning-rgb: 204, 153, 102;--status-danger-rgb: 166, 68, 82;--status-pending-rgb: 140, 115, 85}body.theme-night-sky{--vic-night-sky-bg: var(--color-paper);--sky-parallax-y: 0px;--shadow-page-surface: var(--shadow-moon-surface);--shadow-segment-active: var(--shadow-segment-active-strong);background-color:var(--vic-night-sky-bg)!important;background-image:radial-gradient(ellipse at 84% 11%,rgba(157,176,238,.3) 0%,rgba(157,176,238,.1) 23%,transparent 52%),radial-gradient(ellipse at 16% 74%,rgba(101,118,188,.25) 0%,rgba(101,118,188,.08) 21%,transparent 49%),linear-gradient(180deg,var(--bg-secondary) 0%,var(--bg-primary) 100%)!important;background-size:100% 100%,100% 100%,100% 100%;background-attachment:fixed}@keyframes celestialDriftBefore{0%{transform:translateY(calc(var(--sky-parallax-y) * -.05)) rotate(0)}to{transform:translateY(calc(var(--sky-parallax-y) * -.05)) rotate(360deg)}}@keyframes celestialDriftAfter{0%{transform:translateY(calc(var(--sky-parallax-y) * -.02)) rotate(360deg)}to{transform:translateY(calc(var(--sky-parallax-y) * -.02)) rotate(0)}}@keyframes celestialTwinkle{0%,to{opacity:.7}50%{opacity:1}}.page-fade-in{animation:simpleFadeIn .4s ease-out forwards;will-change:opacity;transform:translateZ(0)}@keyframes simpleFadeIn{0%{opacity:0}to{opacity:1}}body.theme-night-sky .container{background:transparent!important;box-shadow:var(--shadow-page-surface);overflow:hidden;position:relative}body.theme-night-sky .container:before{content:"";position:absolute;inset:-20%;width:140%;height:140%;pointer-events:none;z-index:0;background-repeat:repeat;background-image:radial-gradient(circle at 18% 14%,rgba(255,255,255,.95) 0 1px,transparent 1.6px),radial-gradient(circle at 74% 30%,rgba(255,255,255,.85) 0 .9px,transparent 1.5px),radial-gradient(circle at 42% 78%,rgba(255,255,255,.75) 0 .8px,transparent 1.4px),radial-gradient(circle at 88% 56%,rgba(255,255,255,.65) 0 .7px,transparent 1.3px),radial-gradient(circle at 12% 45%,rgba(255,255,255,.55) 0 .6px,transparent 1.2px);background-size:180px 180px,220px 220px,260px 260px,310px 310px,140px 140px;will-change:transform;animation:celestialDriftBefore 120s linear infinite,celestialTwinkle 5s ease-in-out infinite alternate}body.theme-night-sky .container:after{content:"";position:absolute;inset:-20%;width:140%;height:140%;pointer-events:none;z-index:0;background-repeat:repeat;background-image:radial-gradient(circle at 35% 25%,rgba(200,215,255,.7) 0 .7px,transparent 1.2px),radial-gradient(circle at 85% 65%,rgba(200,215,255,.6) 0 .6px,transparent 1.1px),radial-gradient(circle at 55% 10%,rgba(255,255,255,.5) 0 .5px,transparent 1px),radial-gradient(circle at 25% 85%,rgba(200,215,255,.4) 0 .5px,transparent 1px);background-size:300px 300px,350px 350px,200px 200px,280px 280px;will-change:transform;animation:celestialDriftAfter 200s linear infinite}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--vic-text-main);line-height:1.2}h1{font-size:var(--text-h1)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}h4{font-size:var(--text-h4)}h5{font-size:var(--text-h5)}h6{font-size:var(--text-h6)}a{text-decoration:none;color:inherit}button{background:none;border:none;font:inherit;cursor:pointer;color:inherit}img{max-width:100%;display:block}.rich-text-content p{margin-bottom:.8em}.rich-text-content h1,.rich-text-content h2,.rich-text-content h3,.rich-text-content h4{font-family:var(--font-display);color:var(--vic-gold);margin-top:1rem;margin-bottom:.5rem;font-style:italic}.rich-text-content h1{font-size:var(--text-h3)}.rich-text-content h2{font-size:var(--text-h4)}.rich-text-content h3{font-size:var(--text-h5)}.rich-text-content h4{font-size:var(--text-h6)}.rich-text-content ul,.rich-text-content ol{padding-left:1.5rem;margin-bottom:1rem}.rich-text-content li{margin-bottom:.2rem}.rich-text-content blockquote{border-left:3px solid var(--vic-crimson);padding-left:1rem;font-style:italic;color:var(--vic-text-meta);margin:1rem 0}.container{max-width:600px;margin:0 auto;height:100vh;height:-webkit-fill-available;height:100dvh;background-color:var(--color-paper);display:flex;flex-direction:column;position:relative;box-shadow:var(--shadow-page-surface);overflow:hidden;overflow-x:hidden}.container.wide{max-width:100%}.content{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative;isolation:isolate;backface-visibility:hidden;transform:translateZ(0);will-change:filter,transform,opacity}.content.page-transition{will-change:opacity,transform}.content.page-transition.page-enter-fade{animation:pageEnterFade .22s cubic-bezier(.22,1,.36,1)}.content.page-transition.page-enter-left{animation:pageEnterLeft .26s cubic-bezier(.22,1,.36,1)}.content.page-transition.page-enter-right{animation:pageEnterRight .26s cubic-bezier(.22,1,.36,1)}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pageEnterFade{0%{opacity:.72}to{opacity:1}}@keyframes pageEnterLeft{0%{opacity:.78;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes pageEnterRight{0%{opacity:.78;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.loki-glitch{color:var(--vic-loki-green)!important;text-shadow:0 0 5px rgba(76,175,80,.3)}.animate-slide-in{animation:slideIn .3s ease-out}.animate-spin{animation:codexSpin 1s linear infinite}@keyframes codexSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.segmented-control{background-color:var(--bg-secondary);padding:2px;border-radius:var(--radius-sm);display:flex;position:relative;z-index:10;border:1px solid rgba(0,0,0,.05)}body.theme-dark html,body.theme-dark body{background-color:var(--color-paper)!important;background-image:none!important}body.theme-dark .container{background-color:var(--color-paper)!important;--shadow-page-surface: var(--shadow-moon-surface);--shadow-segment-active: var(--shadow-segment-active-strong)}body.theme-dark .segmented-control{border:1px solid rgba(255,255,255,.05)}body.theme-light{background-color:var(--vic-bg-parchment)!important;background-image:none!important}body.theme-light .container{background-color:var(--bg-primary)!important}.segmented-control.page-nav{background-color:var(--vic-bg-parchment);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);position:absolute;top:calc(85px + env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);width:220px;border:1px solid var(--vic-border-subtle);transition:all .3s ease}.segmented-control.page-nav.header-hidden{top:calc(10px + env(safe-area-inset-top,0px));transform:translate(-50%);margin-top:5px}body.theme-dark .segmented-control.page-nav,body.theme-night-sky .segmented-control.page-nav{background-color:var(--vic-bg-parchment);border:1px solid var(--vic-border-subtle)}.segment{flex:1;padding:8px 0;text-align:center;font-size:13px;font-weight:500;border-radius:var(--radius-sm);color:var(--vic-text-meta);opacity:1;transition:all .2s cubic-bezier(.4,0,.2,1);border:none;background:none;cursor:pointer;position:relative}.segment:not(:last-child):not(.active):not(+.active):after{content:"";position:absolute;right:0;top:25%;bottom:25%;width:1px;background-color:var(--separator);opacity:.5}.segment.active{color:#fff;box-shadow:var(--shadow-segment-active);font-weight:600}.segment-active-pill{position:absolute;inset:0;border-radius:var(--radius-sm);background-color:var(--vic-crimson);z-index:-1}body.theme-dark .segment.active{box-shadow:var(--shadow-segment-active)}body.theme-dark .segment-active-pill{background-color:var(--vic-crimson)}body.theme-night-sky .segment.active{box-shadow:var(--shadow-segment-active)}body.theme-night-sky .segment-active-pill{background-color:var(--vic-crimson)}input,textarea,select{color:var(--text-primary);background-color:var(--bg-secondary);border:1px solid var(--separator);font-family:inherit;-webkit-appearance:none;appearance:none}input::placeholder,textarea::placeholder{color:var(--text-tertiary);opacity:1}input:focus,textarea:focus{outline:none;border-color:var(--color-accent)}.ios-input{width:100%;padding:12px 16px;border-radius:var(--radius-sm);border:none;background-color:var(--bg-secondary);font-size:17px;transition:all .2s ease;color:var(--text-primary)!important}.ios-input:focus{background-color:var(--color-paper);box-shadow:0 0 0 1px var(--color-accent)}.victorian-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--vic-text-meta);font-family:var(--font-body);animation:romanticFade 1s ease-out}.empty-state-icon{margin-bottom:20px;color:var(--vic-gold);opacity:.6;filter:drop-shadow(0 0 10px rgba(212,175,55,.2))}.empty-state-title{font-size:24px;font-weight:400;color:var(--vic-text-main);margin-bottom:12px;letter-spacing:1px}.empty-state-message{font-size:16px;font-style:italic;max-width:300px;line-height:1.6;margin-bottom:25px;opacity:.8}.empty-state-flourish{font-size:28px;color:var(--vic-gold);opacity:.4}@media(prefers-reduced-motion:reduce){.content.page-transition,.content.page-transition.page-enter-fade,.content.page-transition.page-enter-left,.content.page-transition.page-enter-right{animation:none!important;transform:none!important}}
