/* UwU: obsidian surfaces and the orange brand identity. */
:root{color-scheme:dark;--bg:#0d0b0c;--panel:#191518;--panel2:#211a1b;--line:#423033;--text:#f7eee8;--muted:#b4a39e;--violet:#ff8a37;--purple:#e56c29;--mint:#f3b77e;--gold:#f2c080;--radius:13px;font-family:"Segoe UI",system-ui,sans-serif}
body{background:#0d0b0c;color:var(--text);background-image:none}
.landing,.shell{background-image:none}
h1,h2,h3{font-family:"Segoe UI Variable Display","Segoe UI",system-ui,sans-serif;letter-spacing:-.035em}h1{font-weight:800}h2,h3{font-weight:720}
p,.muted{color:var(--muted)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#ff983e}
.eyebrow,.accent,.text-button,.greeting-dot{color:#ff9855}.eyebrow{letter-spacing:.12em;font-weight:800}
.success{color:#f1c38b}.danger-text{color:#f2aaa4}
.wordmark,.panel-brand strong{color:#fff1e6}.wordmark>span,.brand-suffix{color:#ff772b}.dot{box-shadow:none}
.pill,.pill.green,.level-pill,.streak-label{background:#30201d;border-color:#644035;color:#f4c8a9}.pill.green{color:#f6bb8a}
.button{background:#f4772e;border:1px solid #fa914e;color:#1a0e09;border-radius:8px;box-shadow:none;font-weight:800;transition:background .15s,border-color .15s,transform .15s}
.button:hover:not(:disabled){background:#ff9b54;border-color:#ffb276;box-shadow:none;transform:translateY(-1px)}
.button.secondary{background:#2a2222;border-color:#65443a;color:#f4e5db}.button.secondary:hover:not(:disabled){background:#3b2926;border-color:#966041}
.button.ghost{background:transparent;border-color:#74504a;color:#ebd8ca}.button.ghost:hover:not(:disabled){background:#302121}
.button.danger{background:#522626;border-color:#98524c;color:#f5c6bd}
.icon-button{background:#251d1d;border:1px solid #59443c;border-radius:8px;color:#eed9c9}.icon-button:hover{background:#382727}
.panel,.stat-card,.item-card,.animal-card,.team-slot,.feature,.reward-panel,.journey-panel,.huntbot-summary,.battle-start,.battle-result,.battle-empty,.owner-player{background:#191518;border:1px solid #423033;border-top-color:#61403a;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:13px}
.panel-heading,.discoveries-panel .panel-heading,.journey-panel .panel-heading{border-color:#423033}
.panel-heading h2,.page-title h1{color:#fbf1e9}.page-title p{color:#b9a7a0}
.sidebar{background:#141113;border-right:1px solid #3b2b2c;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.sidebar .panel-brand{border-bottom:1px solid #45302d;padding-bottom:21px}.panel-brand img{border-radius:11px;box-shadow:0 0 0 1px #ff7b375c}.panel-brand small{color:#af958d}
.nav-label{color:#a78c85;letter-spacing:.12em}.nav-link{color:#c9b4a9;border-radius:8px}
.nav-link:hover{background:#2b1e1d;color:#fff0e5}.nav-link.active{background:#40231b;color:#ffd2ae;box-shadow:inset 3px 0 #ff7c31}.nav-link.active .icon{color:#ff9956}
.sidebar-status{color:#c9a993;border-top:1px solid #43302d}.sidebar-status .dot{background:#f0a868}
.topbar{background:#151214;border-bottom:1px solid #423030;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.breadcrumbs{color:#af9993}.breadcrumbs span{color:#f0e1d6;border-left-color:#55413b}
.balance-chip{color:#fff0de}.balance-chip .icon{color:#ff924a}.balance-chip>span{color:#c9ad99}
.profile-chip{border-left-color:#51403a}.profile-chip strong{color:#f7ebe1}.profile-chip small{color:#bca49a}
.avatar{border-color:#b2674266;background:#53301e;color:#ffcca4}
.sync-status{color:#e4ab7d}.sync-status .dot{background:#f2a262}
.page{background:transparent}.footnote{border-color:#493333;color:#aa9189}
.preview-ribbon{background:#362018;color:#f3cfad;border-color:#6a3b28}
.landing,.odyssey-landing{background:#0e0c0d;color:#f5eee8}
.odyssey-landing .landing-nav{border:0;border-bottom:1px solid #55352d;border-radius:0;background:#0e0c0d;backdrop-filter:none;-webkit-backdrop-filter:none}
.landing-links,.odyssey-landing .landing-links{color:#c7b3a8}.landing-links a:hover{color:#ffae72}
.landing-kicker{color:#ff9a58}.landing-kicker .dot{background:#ff8a3c}
.odyssey-landing .landing-hero{gap:48px;align-items:center}
.odyssey-landing h1{color:#fff3e8;font-weight:850;letter-spacing:-.06em}.odyssey-landing h1 span{background:none;color:#ff8235;-webkit-text-fill-color:currentColor}
.odyssey-landing .hero-copy>p{color:#c9b7ac}.odyssey-landing .hero-note{color:#b1988d}
.landing-world{overflow:hidden;border:1px solid #82432b;border-radius:14px;background:#090708;box-shadow:0 22px 55px #0009}
.odyssey-landing .landing-world{height:auto;position:relative;background:#090708}
.landing-brand-art{display:block;width:100%;height:auto}
.landing-world:before,.landing-world:after,.landing-world .world-dragon,.landing-world .world-bee{display:none}
.world-label{color:#ffddc2;background:#1b0e0ac9;border:1px solid #f2813e66;border-radius:5px;padding:7px 10px;letter-spacing:.1em}
.world-note{color:#f4d8bc;border-top-color:#e78a595e;text-shadow:0 1px 8px #130b09;background:#130b0970}.world-note .dot{background:#ff8b43}
.odyssey-landing .world-note{position:static;display:flex;padding:15px 20px;background:#1b1111}
.landing-highlights{border-color:#5a3a2f;background:#1a1211}.landing-highlights>div+div{border-color:#4c312a}
.landing-highlights strong{color:#ffe0c1}.landing-highlights span{color:#bda299}
.feature-section .eyebrow{color:#ff9550}.odyssey-landing .feature{background:#1d1515;border-color:#57362c;border-radius:10px;min-height:205px}
.feature-top .icon,.feature-top>span{color:#ff9955}.feature p,.odyssey-landing .feature p{color:#bca8a0}
.landing-cta{border-color:#62402e;background:#1d1412}.landing-cta p{color:#bfa99d}
.site-footer,.odyssey-landing .site-footer{color:#a18c83}
.expedition-card{background:radial-gradient(circle at 79% 40%,#a8472259,transparent 33%),linear-gradient(115deg,#231310 0%,#1a1113 63%,#120e11 100%);border:1px solid #81442d;border-radius:14px;box-shadow:none}
.expedition-copy h2{color:#fff2e6}.expedition-copy p{color:#dec4b1}.expedition-copy .eyebrow{color:#ffae72}.expedition-copy .dot{background:#ff8a43}
.expedition-actions>span,.expedition-caption{color:#dcb492}.expedition-dragon{filter:drop-shadow(0 17px 20px #ff74242b) drop-shadow(0 15px 20px #000b)}.expedition-bee{filter:drop-shadow(0 8px 12px #000b)}
.collection-facts{background:#1c1718;border-color:#483335}.collection-fact+.collection-fact{border-left-color:#493638}
.collection-fact span:not(.fact-icon){color:#baa7a0}.collection-fact strong{color:#f7e8d9}.collection-fact small{color:#a69088}.fact-icon{color:#f29a60}
.discovery-art{background:#251b1b;border-color:#503737}.discovery-art img{filter:drop-shadow(0 5px 7px #090607)}
.discovery-count,.discovery-rank{color:#d2a77e}.discovery-name{color:#f4e6d9}
.battle-invitation{background:#291b1a;border-color:#654033}.battle-invitation-icon{background:#4b2b20;color:#ffab70}
.battle-invitation small{color:#baa39a}.battle-invitation-action{color:#ffc08b}
.reward-panel{background:#271a17;border-color:#694431}.reward-top .eyebrow{color:#ffb175}.reward-body h2{color:#fff0e2}.reward-body p{color:#c5ada0}
.journey-label{color:#c0aca2}.journey-label strong{color:#f8e8d8}
.progress-bar{background:#49322c}.progress-bar>span{background:#f17e35}.progress-bar.sage>span{background:#e7b073}
.huntbot-summary{background:#22191a}.huntbot-summary-icon{background:#38251f}.huntbot-summary strong{color:#f8e9dd}.huntbot-summary small{color:#b5a09a}
.overview-gem{color:#c6b0a5}.overview-gem strong{color:#ffba84}
.stat-card .icon,.stat-top .icon{color:#f0a16c}.stat-top{color:#bca9a0}.stat-card strong{color:#f9e9da}.stat-card small{color:#a89188}
.tabs{background:#1c1617;border:1px solid #493333}.tabs button{color:#baa8a0}.tabs button.active{background:#4a2a1e;color:#ffe3c9;box-shadow:none}
.toolbar input,.toolbar select,input,textarea,select{background:#161112;border-color:#64413b;color:#f5e8df}
.toolbar input:focus,.toolbar select:focus,input:focus,select:focus,textarea:focus{border-color:#ff9958}
.field label{color:#d6c0b5}.field small{color:#a9948b}
.animal-card,.item-card,.team-slot{background:#21191a;border-color:#513838;box-shadow:none}
.animal-card:hover,.item-card:hover,.team-slot:hover{border-color:#d07140;transform:none}
.animal-card .count{color:#ffaf73}.animal-card h3,.item-card h3,.team-slot h3{color:#f8eee6}
.animal-card .zoo-meta,.animal-card .animal-footer,.item-card p{color:#b5a19b}
.animal-footer,.team-slot .weapon{border-color:#4c3835}.team-slot .weapon{background:#312222}.tier-badge{border-color:#75605b}
.gem-chip,.mini-animal,.discovery-card{background:#2b2020;border-color:#5b3f36}
.data-row,.leaderboard-row{border-color:#483233}.leaderboard-row.self{background:#3a231d;color:#ffd0a5}
.leaderboard-row .place{color:#d7a070}.leaderboard-row .score{color:#ffe4c9}
.notice,.panel .notice,.team-help{background:#2c1e1c;border-color:#674439;color:#e6c8b3}
.audit-table th{background:#2d2020;color:#e1c6b6}.audit-table td{border-color:#453233;color:#e3d0c2}
.hunt-stage{background:radial-gradient(circle at 80% 18%,#94401d40,transparent 38%),linear-gradient(115deg,#211310,#131012 73%);border-color:#754330}
.hunt-catch{background:#241918;border-color:#624133}.hunt-stage .hunt-note{color:#d5bbaa}
.hunt-meta{color:#d3b9a5}.hunt-meta strong{color:#ffd29b}
.box-reward,.huntbot-catch{background:#2b1d1b;border-color:#624134}
.battle-start,.battle-result,.battle-empty{background:#21191a;border-color:#4d3633}.battle-animal{background:#2d2020;border-color:#61453e}
.battle-health{background:#49332d}.battle-health>span{background:#f0a46a}
.battle-outcome.won{color:#ffc18b}.battle-outcome.lost{color:#efa8a2}.battle-outcome.draw{color:#ead092}
.battle-invitation-icon,.battle-result-mark,.battle-empty-icon{background:#4c2b20;color:#ffb47b}
.battle-versus{background:#432820;border-color:#78503e;color:#ffd1a6}
.owner-player-stats span{background:#2e2020;border-color:#60433b}.owner-player-stats strong{color:#f4e2d4}
.owner-player-details,.form-actions{border-color:#513a36}
dialog{background:#211719;border:1px solid #765040;box-shadow:0 26px 70px #050304b8}
dialog::backdrop{background:#070405d1;backdrop-filter:blur(3px)}#toast{background:#39241f;border-color:#966347;color:#f9e9dc}
.tour-card{background:#2c1c1a;border-color:#e58b4f;color:#f8e9dc}.tour-card p{color:#ddc5b7}.tour-focus{box-shadow:0 0 0 4px #ff934e,0 0 24px #ff934e77!important}
.hunt-experience.inline{background:#130c0def}.hunt-experience.inline .hunt-glass{background:#21171a;border-color:#754c41}
.hunt-experience.inline [data-hunt-tier]{color:#ffb779}
.hunt-experience.inline .hunt-viewport{width:100%;min-width:0}
.hunt-experience.inline .hunt-viewport canvas{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:fill}
@media(max-width:720px){.topbar{background:#151214}.odyssey-landing .landing-nav{background:#0e0c0d}.odyssey-landing .landing-hero{grid-template-columns:minmax(0,1fr)}.odyssey-landing .hero-copy,.odyssey-landing .landing-world{min-width:0}.landing-world{max-width:520px;border-radius:10px}.odyssey-landing h1{font-size:clamp(40px,10vw,58px)}.collection-facts{background:#1c1718}}
@media(max-width:440px){.odyssey-landing .landing-nav{padding:16px;gap:8px}.odyssey-landing .panel-brand{gap:7px}.odyssey-landing .panel-brand strong{font-size:18px}.odyssey-landing .landing-links .button{font-size:10px;padding:9px 10px}.odyssey-landing .landing-hero{padding-inline:25px}.odyssey-landing h1{font-size:36px;letter-spacing:-.045em}.odyssey-landing .hero-copy>p{max-width:100%}.landing-world{width:100%;max-width:100%}}
@media(prefers-reduced-motion:reduce){.button,.animal-card,.discovery-art img{transition:none}}

/* Ambient motion stays behind the interface; hunt and combat keep their own animations. */
body::before,body::after{content:"";position:fixed;inset:-8%;pointer-events:none;z-index:0}
body::before{
  background:
    radial-gradient(ellipse 43% 36% at 88% 7%,#9a371d55,transparent 77%),
    radial-gradient(ellipse 48% 43% at 15% 78%,#70271b40,transparent 80%),
    radial-gradient(ellipse 32% 44% at 48% 42%,#67251726,transparent 86%),
    repeating-linear-gradient(90deg,transparent 0 71px,#ff8a3218 72px 73px),
    repeating-linear-gradient(0deg,transparent 0 71px,#ff8a3212 72px 73px);
  animation:uwu-ambient 20s ease-in-out infinite alternate;
}
body::after{
  background:
    radial-gradient(circle at 9% 17%,#ff8c47a8 0 1px,transparent 2px),
    radial-gradient(circle at 29% 70%,#ffb0697d 0 1px,transparent 2px),
    radial-gradient(circle at 47% 26%,#ff8c4775 0 1px,transparent 2px),
    radial-gradient(circle at 63% 86%,#ffb06987 0 1px,transparent 2px),
    radial-gradient(circle at 83% 42%,#ff8c4799 0 1px,transparent 2px),
    radial-gradient(circle at 94% 72%,#ffb06978 0 1px,transparent 2px);
  opacity:.35;animation:uwu-embers 14s ease-in-out infinite alternate;
}
#app{position:relative;z-index:1}
.ambient-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.85}
.ambient-canvas[hidden]{display:none}
.cursor-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:40;pointer-events:none;mix-blend-mode:screen}
.cursor-canvas[hidden]{display:none}
.landing,.odyssey-landing{background:transparent}
.landing-world{position:relative}
.landing-world::after{content:"";display:block;position:absolute;inset:0;pointer-events:none;background:linear-gradient(108deg,transparent 35%,#fff0c918 50%,transparent 65%);transform:translateX(-140%);animation:uwu-glint 9s ease-in-out infinite}
.odyssey-landing .world-note{position:relative;z-index:1}
.landing-brand-art{animation:uwu-banner-breathe 10s ease-in-out infinite alternate;transform-origin:center}
.expedition-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 38%,#ffb77313 52%,transparent 66%);transform:translateX(-140%);animation:uwu-glint 8s ease-in-out infinite}
.expedition-animals{z-index:1}
.expedition-dragon{animation:uwu-dragon-float 6s ease-in-out infinite}
.expedition-bee{animation:uwu-bee-float 3.7s ease-in-out infinite}
.page-title,.odyssey-landing .hero-copy{animation:uwu-rise .55s cubic-bezier(.2,.75,.25,1) both}
.odyssey-landing .landing-world{animation:uwu-rise .65s .1s cubic-bezier(.2,.75,.25,1) both}
.overview-primary>*:not(:first-child),.overview-secondary>*,.stat-grid>*,.features>*,.catalog-grid>*{animation:uwu-rise .55s cubic-bezier(.2,.75,.25,1) both}
.overview-primary>*:nth-child(2),.overview-secondary>*:nth-child(2),.stat-grid>*:nth-child(2),.features>*:nth-child(2),.catalog-grid>*:nth-child(2){animation-delay:.07s}
.overview-primary>*:nth-child(3),.overview-secondary>*:nth-child(3),.stat-grid>*:nth-child(3),.features>*:nth-child(3),.catalog-grid>*:nth-child(3){animation-delay:.14s}
.overview-primary>*:nth-child(4),.overview-secondary>*:nth-child(4),.stat-grid>*:nth-child(4),.features>*:nth-child(4),.catalog-grid>*:nth-child(4){animation-delay:.21s}
.feature,.animal-card,.item-card,.team-slot,.hunt-catch,.discovery-art,.battle-invitation{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.feature:hover,.animal-card:hover,.item-card:hover,.team-slot:hover,.hunt-catch:hover,.battle-invitation:hover{transform:translateY(-4px);border-color:#d47846;box-shadow:0 12px 28px #0005}
.discovery-card:hover .discovery-art{border-color:#ca7044;box-shadow:0 8px 18px #0006}
.progress-bar>span{transform-origin:left;animation:uwu-progress .85s ease-out both}
.button:not(:disabled):active{transform:translateY(1px) scale(.985)}
@keyframes uwu-ambient{from{transform:translate3d(-1%,0,0)}to{transform:translate3d(1.5%,-1.5%,0)}}
@keyframes uwu-embers{from{transform:translate3d(0,18px,0);opacity:.21}to{transform:translate3d(0,-36px,0);opacity:.45}}
@keyframes uwu-glint{0%,22%{transform:translateX(-140%)}48%,100%{transform:translateX(140%)}}
@keyframes uwu-banner-breathe{from{transform:scale(1)}to{transform:scale(1.035)}}
@keyframes uwu-dragon-float{0%,100%{transform:translateY(0) rotate(-7deg)}50%{transform:translateY(-10px) rotate(-5deg)}}
@keyframes uwu-bee-float{0%,100%{transform:translateY(0) rotate(10deg)}50%{transform:translateY(-14px) rotate(14deg)}}
@keyframes uwu-rise{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@keyframes uwu-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:720px){body::before{opacity:.62}body::after{opacity:.3}}
@media(prefers-reduced-motion:reduce){
  body::before,body::after,.landing-world::after,.expedition-card::after{animation:none}
  .landing-brand-art,.expedition-dragon,.expedition-bee,.page-title,.odyssey-landing .hero-copy,.odyssey-landing .landing-world,.overview-primary>*,.overview-secondary>*,.stat-grid>*,.features>*,.catalog-grid>*,.progress-bar>span{animation:none}
  .feature,.animal-card,.item-card,.team-slot,.hunt-catch,.discovery-art,.battle-invitation{transition:none}
}

/* A readable, public privacy notice and a focused first-use choice. */
.privacy-page{position:relative;z-index:1;max-width:1040px;margin:auto;padding:24px 28px 44px}
.privacy-nav,.privacy-footer{display:flex;align-items:center;justify-content:space-between;gap:20px}
.privacy-nav{padding:15px 0 28px;border-bottom:1px solid #604035}
.privacy-document{max-width:780px;margin:52px auto 75px}
.privacy-document h1{font-size:clamp(35px,5vw,58px);line-height:1.08;margin:15px 0 20px}
.privacy-document h2{font-size:22px;line-height:1.25;margin-bottom:13px}
.privacy-document p,.privacy-document li{color:#d0bbb0;font-size:15px;line-height:1.8}
.privacy-document a,.privacy-footer a{color:#ffaf78;text-underline-offset:3px}
.privacy-document strong{color:#f8e8dc}
.privacy-document code{color:#ffd2a8;background:#36231e;border-radius:4px;padding:1px 5px}
.privacy-document section{border-top:1px solid #50352e;padding:27px 0 31px}
.privacy-document ul{padding-left:23px;margin:0}.privacy-document li+li{margin-top:12px}
.privacy-lead{font-size:18px!important;max-width:680px}.privacy-updated{font-size:12px!important;color:#a99084!important;margin:10px 0 48px}
.privacy-terms{background:#241713;border:1px solid #75462f!important;padding:28px!important;border-radius:13px}
.privacy-terms h2{margin-top:9px}.privacy-terms p{margin-bottom:0}
.privacy-footer{border-top:1px solid #50352e;padding-top:24px;color:#ae9387;font-size:12px}
.privacy-gate{min-height:100dvh;display:grid;place-items:center;padding:32px 20px}
.privacy-gate-card{width:min(100%,650px);background:#211717;border:1px solid #8b4e32;border-radius:16px;padding:34px 38px;box-shadow:0 28px 80px #0008}
.privacy-gate-card h1{font-size:clamp(28px,5vw,39px);margin:12px 0 13px;color:#fff0e3}
.privacy-gate-card p,.privacy-gate-card li{color:#d5bcb0;font-size:14px;line-height:1.7}
.privacy-gate-card ul{padding-left:20px;margin:16px 0}.privacy-gate-card li+li{margin-top:8px}
.privacy-gate-card a{color:#ffb47f;text-underline-offset:3px}
.privacy-gate-note{border-left:2px solid #de793d;padding-left:13px;margin:20px 0;color:#c6aa99!important}
.privacy-gate-actions{display:flex;justify-content:flex-end;gap:11px;flex-wrap:wrap;margin-top:25px}
@media(max-width:600px){.privacy-page{padding:17px 19px 32px}.privacy-document{margin:36px auto 55px}.privacy-document p,.privacy-document li{font-size:14px}.privacy-gate-card{padding:26px 23px}.privacy-gate-actions .button{flex:1 1 100%}.privacy-footer{align-items:flex-start;flex-direction:column}}
