:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.relationship-skeleton{animation:pulse 1.5s ease-in-out infinite}.relationship-progress{transition:all .3s ease}.progress-bar-container{height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden;position:relative}.progress-bar-fill{height:100%;transition:width .8s cubic-bezier(.4,0,.2,1);box-shadow:0 0 10px #ffffff4d;position:relative;transform:translateZ(0);will-change:width}.progress-bar-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}.stage-icon{transition:transform .3s ease;animation:pulse 2s ease-in-out infinite}.stage-icon:hover{transform:scale(1.1)}.stage-emoji{display:inline-block;animation:float 3s ease-in-out infinite}.streak-badge{transition:all .3s ease}.streak-badge:hover{transform:scale(1.05)}.streak-emoji{display:inline-block;animation:flicker 1.5s ease-in-out infinite}.streak-count{transition:color .3s ease}.new-record{animation:bounce .5s ease-in-out infinite}.xp-notification{animation:slideInRight .3s ease-out,pulse .5s ease-out .3s}.xp-badge{animation:scaleIn .4s ease-out}.xp-amount{animation:countUp .5s ease-out}.xp-details{animation:fadeIn .4s ease-out .2s both}.level-up-modal{animation:scaleIn .5s ease-out}.level-up-animation{animation:float 2s ease-in-out infinite}.sparkles{animation:sparkle 1s ease-in-out infinite}.level-up-title{animation:fadeIn .6s ease-out .2s both}.new-stage{animation:glow 1.5s ease-in-out infinite,scaleIn .6s ease-out .3s both}.total-xp{animation:fadeIn .6s ease-out .5s both}.continue-btn{animation:fadeIn .6s ease-out .7s both}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.02);opacity:.9}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes flicker{0%,to{opacity:1}50%{opacity:.7}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}@keyframes glow{0%,to{text-shadow:0 0 20px rgba(255,255,255,.8)}50%{text-shadow:0 0 40px rgba(255,255,255,1),0 0 60px rgba(255,255,255,.6)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes countUp{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width:767px){.xp-notification{animation:slideInTop .3s ease-out,pulse .5s ease-out .3s}.level-up-modal{padding:1.5rem}.progress-bar-container{height:6px}}@keyframes slideInTop{0%{transform:translate(-50%,-100%);opacity:0}to{transform:translate(-50%);opacity:1}}@media(prefers-reduced-motion:reduce){.stage-icon,.stage-emoji,.streak-emoji,.level-up-animation,.sparkles,.new-stage{animation:none}.progress-bar-fill{transition:width .3s ease}.xp-notification,.level-up-modal{animation:fadeIn .3s ease-out}}.debug-section{background:#1a1a1a;border:1px solid #2A2A2A;border-radius:8px;overflow:hidden}.debug-section-header{padding:12px;background:#252525;border-bottom:1px solid #2A2A2A;cursor:pointer;transition:background .2s ease;display:flex;justify-content:space-between;align-items:center}.debug-section-header:hover{background:#2a2a2a}.debug-section-header>p:first-child{font-size:14px;font-weight:600;color:#fff;font-family:Courier New,monospace}.debug-subsection{background:#0d0d0d;border:1px solid #2A2A2A;border-radius:4px;padding:10px;cursor:pointer;transition:all .2s ease}.debug-subsection:hover{background:#1a1a1a;border-color:#3eb489}.debug-code-block{background:#000;border:1px solid #2A2A2A;border-radius:4px;padding:8px;overflow-x:auto;max-height:300px;overflow-y:auto}.debug-code-block pre{margin:0;font-family:Courier New,Consolas,Monaco,monospace;font-size:11px;line-height:1.4;color:#ccc;white-space:pre-wrap;word-break:break-all}.debug-metric{background:#0d0d0d;padding:8px;border-radius:4px;border:1px solid #2A2A2A}.debug-memory-result{background:#000;padding:8px;border-radius:4px;border-left:3px solid #3EB489}.debug-panel-scroll::-webkit-scrollbar{width:8px}.debug-panel-scroll::-webkit-scrollbar-track{background:#0d0d0d}.debug-panel-scroll::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:4px}.debug-panel-scroll::-webkit-scrollbar-thumb:hover{background:#3eb489}@media(max-width:1280px){.debug-code-block{max-height:200px}}
