@font-face{font-family:DM Sans;src:url(../assets/dm-sans-latin.woff2) format("woff2");font-style:normal;font-weight:400 600;font-display:swap}@font-face{font-family:"DM Serif Display";src:url(../assets/dm-serif-display-latin.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}:root{color-scheme:dark;--forest-950: #0c1210;--forest-925: #101713;--forest-900: #141e18;--forest-850: #1b2921;--forest-800: #25372c;--cream-100: #f0eee5;--sage-300: #b0baad;--sage-400: #9aa799;--jade-300: #9ed4ae;--jade-400: #86c59d;--jade-600: #315c43;--gold-300: #dfc28b;--violet-300: #c4afdf;--ember-300: #e4b08c;--rose-300: #f2ac9f;--bg: var(--forest-950);--surface: var(--forest-900);--surface-raised: var(--forest-850);--surface-hover: var(--forest-800);--text: var(--cream-100);--text-secondary: var(--sage-300);--text-muted: var(--sage-400);--line: #28352b;--accent: var(--jade-400);--accent-hover: var(--jade-300);--accent-ink: #102719;--focus: #d9eab2;--warning: var(--gold-300);--danger: var(--rose-300);--nature: var(--jade-300);--fire: var(--ember-300);--storm: var(--violet-300);--font-body: "DM Sans", Arial, sans-serif;--font-display: "DM Serif Display", Georgia, serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.375rem;--text-xl: 2rem;--text-display: 4rem;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--sidebar: 220px;font-family:var(--font-body);font-size:16px;color:var(--text);background:var(--bg);font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:280px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{opacity:.48}svg{flex-shrink:0;vertical-align:middle}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;text-wrap:balance}p{text-wrap:pretty;line-height:1.6}h1:focus,main:focus{outline:none}h1{scroll-margin-top:24px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--focus);outline-offset:4px}::selection{background:var(--accent);color:var(--accent-ink)}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted{color:var(--text-muted)}.icon{display:inline-block}.skip-link{position:fixed;z-index:100;inset-block-start:8px;inset-inline-start:8px;transform:translateY(-150%);background:var(--accent);color:var(--accent-ink);padding:12px 20px;border-radius:6px}.skip-link:focus{transform:translateY(0)}.sidebar{width:var(--sidebar);position:fixed;inset-block:0;inset-inline-start:0;display:flex;flex-direction:column;background:var(--forest-925);border-inline-end:1px solid var(--line);padding:29px 18px 0;z-index:20}.brand{display:flex;align-items:center;gap:10px;padding-inline:8px;margin-block-end:48px;font-family:var(--font-display);font-size:var(--text-lg);line-height:1.02}.brand>span{display:flex;gap:4px;align-items:baseline}.brand-second{color:var(--accent)}.nav-group{display:grid;gap:9px}.nav-item{width:100%;display:flex;align-items:center;gap:12px;min-height:46px;text-align:start;padding:11px 14px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-size:var(--text-sm);font-weight:400;transition:background-color .15s,color .15s}.nav-item.active{background:#20382a;color:var(--nature);box-shadow:inset 3px 0 0 var(--accent)}.nav-item .nav-count{margin-inline-start:auto;min-width:20px;min-height:20px;padding:1px 5px;border-radius:4px;background:#2d4936;color:#c8e5c9;text-align:center;font-size:var(--text-xs)}.sidebar-secondary{margin-block-start:24px;padding-block-start:20px;border-block-start:1px solid var(--line)}.sidebar-secondary .nav-item{font-size:var(--text-xs);padding-inline:14px;gap:10px}.sidebar-secondary .nav-item>.icon:last-child{margin-inline-start:auto}.sidebar-bottom{margin-block-start:auto;padding-block-start:48px}.rank-panel{text-align:center;padding:16px 10px 23px}.rank-emblem{width:59px;height:61px;margin:0 auto 12px;display:grid;place-items:center;color:var(--gold-300);background:linear-gradient(140deg,#48432c,#262d20);clip-path:polygon(50% 0,100% 24%,91% 73%,50% 100%,9% 73%,0 24%)}.rank-heading{display:grid;gap:5px;font-size:var(--text-sm)}.rank-heading .muted{font-size:var(--text-xs)}.rank-progress{background:#26352a;height:4px;margin-block:17px 8px;border-radius:3px;overflow:hidden}.rank-progress>span{height:100%;display:block;background:var(--gold-300)}.rank-xp{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.profile-button{display:flex;align-items:center;gap:10px;background:transparent;border:0;border-block-start:1px solid var(--line);padding:20px 0;width:100%;text-align:start;min-height:80px;font-size:var(--text-xs)}.profile-copy{display:grid;gap:3px;overflow-wrap:anywhere}.profile-button>.icon{margin-inline-start:auto}.avatar{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;color:var(--gold-300);background:#303a2b}.profile-copy>.muted{font-size:var(--text-xs)}.page-shell{margin-inline-start:var(--sidebar)}.topbar{min-height:80px;padding:16px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-block-end:1px solid #202c24}.breadcrumb{display:flex;align-items:center;gap:16px;font-size:var(--text-sm)}.breadcrumb>span:first-child{color:var(--text-muted)}.breadcrumb>.icon{color:#637361}.topbar-utilities{display:flex;align-items:center;gap:24px;font-size:var(--text-xs)}.practice-label{display:flex;align-items:center;gap:7px;color:var(--text-secondary)}.status-dot{width:5px;height:5px;background:var(--accent);border-radius:50%;display:inline-block;flex-shrink:0}.header-xp{display:flex;align-items:center;gap:7px;color:var(--gold-300);border-inline-start:1px solid var(--line);padding-inline-start:22px;font-variant-numeric:tabular-nums}.icon-button{display:grid;place-items:center;min-width:40px;min-height:40px;background:transparent;border:0;border-radius:6px;color:var(--text-secondary)}.topbar .help-button{margin-inline-end:-8px}.mobile-profile,.mobile-brand,.mobile-nav{display:none}main{max-width:1560px;margin-inline:auto;padding:26px 32px 0}.welcome-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-block-end:21px;font-size:var(--text-sm)}.welcome-row p{color:var(--text-muted)}.welcome-row p>span{color:var(--text);font-weight:500}.welcome-row>span{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-size:var(--text-xs)}.hero{position:relative;isolation:isolate;border-radius:var(--radius-lg);background:#0b1c13;min-height:348px;overflow:hidden;outline:1px solid #ffffff0d}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-image{object-fit:cover;object-position:center 34%}.hero-shade{z-index:-1;background:linear-gradient(90deg,#0b1712,#0b1712ed 21%,#0b17128c 43%,#0b171200 67%)}.hero-content{padding:33px 36px 29px;max-width:530px}.hero h1{font-family:var(--font-display);font-size:var(--text-display);font-weight:400;letter-spacing:-.025em;line-height:1.06;text-wrap:initial;overflow-wrap:anywhere}.hero h1 span{color:#b9d5a9}.hero p{font-size:var(--text-sm);color:#c4cebd;margin-block-start:16px;max-width:320px}.hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-block-start:25px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:11px 17px;min-height:44px;border:1px solid #3c5140;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;background:transparent;line-height:1.4;transition:background-color .15s,color .15s,transform .15s}.button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.button.quiet{border-color:transparent;color:var(--text-secondary)}.button.danger{background:#733c32;border-color:#ac6c5d;color:#fff0e7}.button:active:not(:disabled){transform:scale(.96)}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;background:none;padding:10px 0;min-height:44px;font-size:var(--text-xs);font-weight:500;line-height:1.5}.hero-actions .text-button{color:#d5dfcd}.hero-footnote{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);color:#acbba8;margin-block-start:16px}.hero-corner{position:absolute;inset-inline-end:20px;inset-block-end:19px;display:flex;align-items:center;gap:8px;color:#d6e3bfaa}.hero-corner span{width:35px;height:1px;background:currentColor}.stats-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:27px 6px;margin-block-end:4px;border-block-end:1px solid var(--line)}.stat{display:flex;align-items:center;gap:15px}.stat-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:10px;background:#1a2820;color:#9cb998}.stat:nth-child(3) .stat-icon{background:#2b2c20;color:var(--gold-300)}.stat:nth-child(4) .stat-icon{background:#252530;color:var(--violet-300)}.stat>div{display:grid;gap:4px}.stat-value{font-size:var(--text-lg);font-weight:500;line-height:1;font-variant-numeric:tabular-nums}.stat-label{font-size:var(--text-xs);color:var(--text-muted)}.home-grid{display:grid;grid-template-columns:minmax(0,2.16fr) minmax(0,1fr);gap:26px;margin-block-start:24px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;margin-block-end:15px}.section-heading h2{font-family:var(--font-display);font-size:var(--text-lg);font-weight:400}.section-heading a{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-height:32px;font-size:var(--text-xs);color:var(--text-secondary)}.section-heading>.icon{color:var(--text-muted)}.egg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.egg-card{position:relative;background:var(--surface);border-radius:var(--radius);min-width:0;outline:1px solid #263a2d;outline-offset:-1px;overflow:hidden}.egg-card.fire{outline-color:#3d3326;background:#1d2019}.egg-card.storm{outline-color:#373044;background:#1b1e20}.egg-top{display:flex;align-items:center;justify-content:space-between;padding:15px 15px 0;gap:8px}.egg-top>.icon{color:var(--nature)}.fire .egg-top>.icon{color:var(--fire)}.storm .egg-top>.icon{color:var(--storm)}.rarity{font-size:var(--text-xs);line-height:1.5;padding:2px 7px;border-radius:4px;color:#b5d9b4;background:#263b2a}.rarity.rare{background:#413523;color:var(--gold-300)}.rarity.epic{background:#362b44;color:var(--violet-300)}.egg-art{display:block;width:100%;height:164px;margin-block:-2px -4px}.egg-details{padding:4px 16px 14px}.egg-details h3{font-size:var(--text-base);font-weight:500;margin-block-end:4px}.egg-details>.muted{font-size:var(--text-xs)}.hatch-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-block-start:12px;border-block-start:1px solid #ffffff0b;padding-block-start:10px}.ready{display:flex;align-items:center;gap:5px;color:var(--text-secondary);font-size:var(--text-xs)}.hatch-button{min-width:34px;min-height:34px;display:grid;place-items:center;border:1px solid #435c43;border-radius:5px;background:#2c4531;color:var(--nature);transition:background-color .15s}.fire .hatch-button{background:#3b3424;border-color:#665338;color:var(--gold-300)}.storm .hatch-button{background:#352d40;border-color:#574667;color:var(--violet-300)}.arena-promo{background:var(--surface);border-radius:var(--radius);overflow:hidden;min-height:321px}.arena-art{width:100%;height:147px;object-fit:cover;display:block}.arena-promo-copy{padding:3px 22px 15px;position:relative;margin-block-start:-2px;background:linear-gradient(0deg,var(--surface) 90%,transparent)}.arena-promo h3{font-family:var(--font-display);font-size:var(--text-lg);font-weight:400}.arena-promo p{font-size:var(--text-xs);color:var(--text-secondary);margin-block:8px 13px}.arena-promo .button{width:100%;min-height:39px;padding-block:9px;font-size:var(--text-xs);justify-content:space-between}.arena-note{display:flex;align-items:center;justify-content:center;gap:5px;font-size:var(--text-xs);color:var(--text-muted);margin-block-start:12px;line-height:1.5}.roster-quest-grid{display:grid;grid-template-columns:minmax(0,2.16fr) minmax(0,1fr);gap:26px;margin-block-start:28px}.home-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dragon-card{width:100%;min-width:0;display:flex;align-items:center;gap:13px;border:0;background:var(--surface);border-radius:var(--radius);padding:14px;text-align:start;min-height:108px;transition:background-color .15s}.dragon-art{position:relative;isolation:isolate;overflow:hidden;border-radius:8px;background:#183426;min-width:0}.dragon-art img{width:100%;height:100%;object-fit:cover;object-position:73% 27%;max-width:none;transform:scale(1.7);transform-origin:72% 30%;filter:saturate(.85)}.dragon-art.fire img{filter:hue-rotate(305deg) saturate(.8)}.dragon-art.storm img{filter:hue-rotate(125deg) saturate(.65)}.dragon-card>.dragon-art{width:64px;height:76px;flex-shrink:0}.dragon-card-copy{display:flex;flex-direction:column;gap:7px;min-width:0}.dragon-name{font-size:var(--text-base);font-weight:500;display:block}.element-label{display:flex;align-items:center;gap:5px;font-size:var(--text-xs);color:var(--text-secondary);flex-wrap:wrap}.element-label.nature{color:var(--nature)}.element-label.fire{color:var(--fire)}.element-label.storm{color:var(--storm)}.dot-divider{padding-inline:2px;color:var(--text-muted)}.dragon-power{font-size:var(--text-xs);color:var(--text-muted);display:flex;align-items:center;gap:4px}.dragon-card-end{margin-inline-start:auto;align-self:flex-start}.selected-mark{display:grid;place-items:center;border-radius:50%;width:21px;height:21px;background:#294532;color:var(--nature)}.roster-empty{background:transparent;border:1px dashed #3b4a3d;border-radius:var(--radius);padding:15px;display:flex;align-items:center;gap:12px;text-align:start;min-height:108px;color:var(--text-secondary);font-size:var(--text-xs)}.roster-empty>span{display:grid;gap:7px}.roster-empty>span>span{color:var(--text-muted);line-height:1.5}.roster-empty>.icon:last-child{margin-inline-start:auto}.quest-list a{display:flex;align-items:center;gap:10px;min-height:52px;font-size:var(--text-xs)}.quest-list a+a{border-block-start:1px solid var(--line)}.quest-list a>.muted{margin-inline-start:auto}.quest-check{width:26px;height:26px;display:grid;place-items:center;border:1px solid #3a473a;border-radius:50%;color:var(--text-muted)}.quest-check.complete{color:var(--nature);border-color:#466c4b;background:#1c3525}.footer{margin-block-start:39px;padding-block:22px;display:flex;justify-content:space-between;align-items:center;gap:16px;border-block-start:1px solid var(--line);font-size:var(--text-xs);color:var(--text-muted)}.footer>span{display:flex;align-items:center;gap:8px}.footer>span:first-child{gap:7px}.footer>span:first-child svg{opacity:.55;width:19px;height:19px}.footer button{display:flex;align-items:center;gap:6px;border:0;background:transparent;font-size:var(--text-xs);min-height:32px;padding:4px 0;color:var(--text-secondary)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-block:9px 32px}.page-heading h1{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.2;font-weight:400;letter-spacing:-.02em}.page-heading p{font-size:var(--text-sm);color:var(--text-secondary);margin-block-start:10px;max-width:60ch}.page-heading-icon{width:60px;height:60px;background:var(--surface-raised);border-radius:var(--radius);display:grid;place-items:center;color:var(--nature)}.collection-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-block-end:24px}.collection-toolbar>.muted{font-size:var(--text-xs)}.filter-buttons{display:flex;gap:8px;flex-wrap:wrap}.filter-button{display:flex;align-items:center;justify-content:center;gap:8px;font-size:var(--text-sm);min-height:42px;padding:9px 15px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary)}.filter-button.active{border-color:#45654c;background:#233729;color:var(--nature)}.filter-button>span{font-size:var(--text-xs);background:#314c37;min-width:18px;border-radius:3px;padding:1px 4px}.full-egg-grid{max-width:1100px;gap:24px}.full-egg-grid .egg-card{min-height:365px}.full-egg-grid .egg-art{height:240px}.full-egg-grid .egg-details{padding:0 22px 20px}.full-egg-grid .egg-top{padding:18px 22px 0}.full-egg-grid .hatch-button{min-height:40px;min-width:44px}.empty-state{min-height:310px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:17px;padding:36px 24px;background:var(--surface);border-radius:var(--radius)}.empty-state>.icon{color:var(--accent)}.empty-state h2,.empty-state h3{font-family:var(--font-display);font-size:var(--text-lg)}.empty-state p{max-width:46ch;font-size:var(--text-sm);color:var(--text-secondary)}.empty-state.compact{min-height:321px}.info-banner{margin-block-start:32px;background:#17251b;padding:24px;display:flex;align-items:center;gap:20px;border-radius:var(--radius)}.info-banner>.icon{color:var(--nature)}.info-banner h2{font-family:var(--font-display);font-size:var(--text-lg);margin-block-end:7px}.info-banner p{font-size:var(--text-sm);color:var(--text-secondary);max-width:65ch}.info-banner>.text-button{margin-inline-start:auto;flex-shrink:0}.dragon-toolbar{justify-content:flex-start}.search-field{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid #3d4b3d;border-radius:6px;padding-inline:12px;width:320px;max-width:100%}.search-field label{display:flex;align-items:center;color:var(--text-muted);min-height:44px}.search-field input{border:0;min-width:0;width:100%;background:transparent;padding:11px 0;font-size:var(--text-base);color:var(--text)}input::placeholder{color:var(--text-muted)}.select-field{display:flex;align-items:center;gap:12px;font-size:var(--text-sm);color:var(--text-secondary)}select{border:1px solid #3d4b3d;border-radius:6px;background:var(--surface);color:var(--text);font-size:var(--text-base);padding:10px 32px 10px 12px;min-height:46px;max-width:100%}.dragon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.collection-dragon{border-radius:var(--radius);background:var(--surface);overflow:hidden}.collection-dragon-art{position:relative;height:200px}.collection-dragon-art .dragon-art{width:100%;height:100%;border-radius:0}.collection-dragon-art .dragon-art img{transform:scale(1.05);object-position:70% 40%}.collection-dragon-art>.rarity{position:absolute;inset-block-start:15px;inset-inline-start:15px}.collection-dragon .dragon-card{border-radius:0;padding:18px;min-height:100px}.collection-dragon .dragon-card>.dragon-art{display:none}.dragon-stats{display:flex;gap:24px;padding:0 18px 20px;font-size:var(--text-sm);color:var(--text-secondary)}.dragon-stats>span{display:flex;align-items:center;gap:6px}.practice-badge{display:flex;align-items:center;gap:7px;padding:10px 13px;background:var(--surface-raised);color:var(--text-secondary);font-size:var(--text-xs);border-radius:5px;white-space:nowrap}.arena-setup{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px}.arena-choose{padding:28px;background:var(--surface);border-radius:var(--radius)}.arena-choose h2,.arena-entry h2{font-family:var(--font-display);font-size:var(--text-lg);font-weight:400}.arena-choose>p{font-size:var(--text-sm);margin-block:8px 24px}.champion-options{display:grid;gap:12px}.champion-option{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid #344435;border-radius:var(--radius-sm);cursor:pointer;position:relative}.champion-option.selected{background:#203326;border-color:#63916a}.champion-option>input{position:absolute;inset-inline-start:18px;opacity:0;width:20px;height:20px}.champion-option:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:3px}.champion-option>.dragon-art{width:64px;height:68px;flex-shrink:0}.champion-option>span:not(.radio-indicator){display:flex;flex-direction:column;gap:8px}.champion-option .muted{font-size:var(--text-xs);line-height:1.5}.radio-indicator{width:18px;height:18px;border:1px solid #678365;border-radius:50%;display:grid;place-items:center;margin-inline-start:auto;flex-shrink:0}.radio-indicator>span{width:10px;height:10px;background:var(--accent);border-radius:50%}.inline-link{display:inline-flex;gap:8px;align-items:center;font-size:var(--text-sm);min-height:44px;margin-block-start:18px;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#66795e}.arena-entry{background:var(--surface);border-radius:var(--radius);overflow:hidden}.arena-entry>.arena-art{height:212px}.arena-entry-copy{padding:0 28px 24px}.arena-entry-copy>p{font-size:var(--text-sm);margin-block-start:7px}.difficulty-field{border:0;padding:0;margin:24px 0}.difficulty-field legend{font-size:var(--text-sm);margin-block-end:12px}.difficulty-field>div{display:flex;gap:12px}.difficulty-field label{cursor:pointer;position:relative;flex:1;border:1px solid #3d513e;padding:13px 12px;border-radius:6px;display:grid;gap:5px;font-size:var(--text-sm)}.difficulty-field label.active{background:#233a2b;border-color:#63916a;color:var(--nature)}.difficulty-field input{position:absolute;opacity:0;width:1px;height:1px}.difficulty-field label:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:3px}.difficulty-field label>span{font-size:var(--text-xs);color:var(--text-muted)}.arena-entry .button{width:100%}.arena-disclosure{display:flex;align-items:center;gap:10px;margin-block-start:24px;color:var(--text-muted);font-size:var(--text-xs)}.arena-disclosure>.text-button{margin-inline-start:auto;color:var(--text-secondary);flex-shrink:0}.battle-board{background:var(--surface);border-radius:var(--radius);padding:24px}.battle-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:var(--text-sm);padding-block-end:20px;border-block-end:1px solid var(--line)}.battle-heading>span:first-child{display:flex;align-items:center;gap:8px}.battle-heading>.muted{font-size:var(--text-xs)}.fighters{display:grid;grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr);gap:24px;align-items:center;padding:24px 0 28px}.fighter-name{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-block-end:13px}.fighter-name h2{font-family:var(--font-display);font-size:var(--text-lg)}.fighter-name>span{font-size:var(--text-xs);color:var(--text-secondary)}.fighter>.dragon-art{width:100%;height:210px;outline:1px solid #ffffff1a}.fighter>.dragon-art img{transform:scale(1.1);object-position:75% 35%}.fighter>.rival-art img{transform:scale(1.1) scaleX(-1);filter:saturate(.5)}.versus{font-family:var(--font-display);font-size:var(--text-xl);text-align:center;color:var(--gold-300)}.health-block{margin-block-start:14px}.health-label{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:var(--text-xs);font-variant-numeric:tabular-nums;margin-block-end:8px;color:var(--text-secondary)}.health-label>span:first-child{display:flex;align-items:center;gap:6px}.health-track{height:7px;background:#2e3c2d;border-radius:4px;overflow:hidden}.health-track>span{display:block;height:100%;background:var(--accent);transition:width .15s}.health-track.rival>span{background:#bda57e}.turn-hint{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:var(--text-sm);padding-block:2px 18px}.turn-hint>span{display:flex;align-items:center;gap:7px}.turn-hint .charge{font-size:var(--text-xs);color:var(--gold-300);white-space:nowrap}.warning-text{color:var(--warning)}.move-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,6rem),1fr));gap:14px}.move-buttons .button{flex-wrap:wrap;padding-block:15px;gap:8px;font-size:var(--text-base)}.move-buttons .button>span{width:100%;font-size:var(--text-xs);font-weight:400}.battle-log{padding-block-start:24px}.battle-log h3{font-size:var(--text-sm);margin-block-end:12px}.battle-log ol{list-style:none;margin:0;padding:0;font-size:var(--text-xs);color:var(--text-secondary);line-height:1.7;max-height:180px;overflow:auto;overscroll-behavior:contain}.battle-log li{padding:4px 0;border-block-end:1px solid #ffffff08}.battle-log li:last-child{color:var(--text)}.battle-result{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;padding-block:10px 18px}.battle-result>.icon{color:var(--gold-300)}.battle-result h2{font-family:var(--font-display);font-size:var(--text-xl)}.battle-result p{font-size:var(--text-sm);color:var(--text-secondary)}.button-row{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-block-start:12px}.modal{background:#17211a;color:var(--text);border:1px solid #41513e;border-radius:var(--radius-lg);padding:25px;width:min(480px,calc(100% - 32px));max-height:calc(100dvh - 40px);overscroll-behavior:contain;margin:auto;box-shadow:none}.modal.wide{width:min(620px,calc(100% - 32px))}.modal::backdrop{background:#020805d9;backdrop-filter:blur(5px)}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-block-end:19px}.modal-heading h2{font-family:var(--font-display);font-size:var(--text-lg);font-weight:400;align-self:center}.modal-heading .icon-button{margin:-5px -8px -5px 0;flex-shrink:0}.modal-description{font-size:var(--text-sm);color:var(--text-secondary);margin-block-end:24px}.hatch-dialog,.dragon-dialog{display:flex;align-items:center;flex-direction:column;text-align:center}.hatch-dialog>.egg-art{height:235px;width:260px;margin-block:-16px 4px}.hatch-dialog h3,.dragon-dialog h3{font-family:var(--font-display);font-size:var(--text-xl);font-weight:400;margin-block-end:10px}.hatch-dialog>p,.dragon-dialog>p{font-size:var(--text-sm);color:var(--text-secondary);margin-block:19px 22px;max-width:44ch}.hatch-dialog>.button,.dragon-dialog>.button{width:100%}.dragon-dialog>.dragon-art{width:100%;height:220px;margin-block-end:22px}.dragon-dialog>.dragon-art img{transform:scale(1.05);object-position:70% 36%}.detail-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;width:100%;padding-block:2px 25px}.detail-stats>div{display:flex;flex-direction:column;align-items:center;gap:9px}.detail-stats .icon{color:var(--nature)}.detail-stats>div>span:first-of-type{font-size:var(--text-lg);font-variant-numeric:tabular-nums}.detail-stats>div>span:last-of-type{font-size:var(--text-xs);color:var(--text-muted)}.help-content{font-size:var(--text-sm)}.help-content>p{color:var(--text-secondary);margin-block-end:18px}.guide-steps{list-style:none;padding:0;margin:24px 0;display:grid;gap:24px}.guide-steps li{display:flex;gap:15px;align-items:flex-start}.guide-icon{background:#26382a;color:var(--nature);width:40px;height:40px;display:grid;place-items:center;border-radius:8px;flex-shrink:0}.guide-steps h3{font-size:var(--text-base);margin-block:2px 7px}.guide-steps p{color:var(--text-secondary)}.guide-note{display:flex;gap:12px;align-items:flex-start;padding:16px;background:#253327;border-radius:8px;margin-block-end:22px}.guide-note>.icon{margin-block-start:4px;color:var(--nature)}.field-label{display:block;font-size:var(--text-sm);margin-block-end:10px}.modal input:not([type=radio]){width:100%;background:#101a13;border:1px solid #51684e;border-radius:6px;color:var(--text);padding:12px;font-size:var(--text-base);min-height:46px}.field-hint,.error-text{font-size:var(--text-xs);margin-block:9px 21px;color:var(--text-muted)}.error-text{color:var(--danger)}.modal form>.button{width:100%}.profile-actions{display:flex;flex-direction:column;gap:12px;margin-block-start:26px;padding-block-start:24px;border-block-start:1px solid var(--line)}.storage-warning{display:flex;align-items:center;gap:12px;padding:14px 18px;background:#353022;color:var(--gold-300);border-radius:6px;margin-block-end:22px;font-size:var(--text-sm)}@media(hover:hover){.nav-item:hover{background:#203025;color:var(--text)}.button.secondary:hover{background:#2a3c2d}.button.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.button.quiet:hover,.text-button:hover{color:var(--accent-hover)}.icon-button:hover{background:#243128;color:var(--text)}.section-heading a:hover,.footer button:hover,.inline-link:hover{color:var(--nature)}.hatch-button:hover{background:#42614a}.dragon-card:hover{background:var(--surface-hover)}.roster-empty:hover{background:var(--surface)}.filter-button:hover:not(.active){background:var(--surface)}.quest-list a:hover{color:var(--nature)}}@media(min-width:1600px){main{padding-inline:44px}.hero{min-height:380px}.hero-content{padding:42px}.hero-image{object-position:center 32%}.egg-art{height:190px}.arena-promo{min-height:347px}.arena-art{height:173px}}@media(max-width:1250px){:root{--sidebar: 200px}.sidebar{padding-inline:12px}.brand{gap:7px;padding-inline:5px}.topbar{padding-inline:26px}main{padding-inline:26px}.home-grid,.roster-quest-grid{gap:20px;grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.egg-grid{gap:10px}.egg-top,.egg-details{padding-inline:12px}.egg-art{height:148px}.arena-promo-copy{padding-inline:16px}.ready{font-size:var(--text-xs);gap:4px}.hatch-row{flex-wrap:wrap}.arena-promo{min-height:305px}.home-roster{grid-template-columns:1fr}.home-roster>.roster-empty{display:none}.topbar-utilities{gap:16px}.hero-actions{gap:12px}.hero-content{padding-inline:30px}.hero-actions .text-button{padding-inline:0}.full-egg-grid .egg-art{height:210px}.dragon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fighter>.dragon-art{height:180px}.fighters{gap:18px;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr)}.arena-setup{gap:24px}.arena-choose,.arena-entry-copy{padding-inline:22px}.champion-option{gap:10px}.champion-option>.dragon-art{width:50px;height:65px}}@media(max-width:1060px){.home-grid{grid-template-columns:1fr}.arena-promo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:210px}.arena-promo>.arena-art{height:100%;min-height:210px}.arena-promo-copy{padding:24px 20px;margin:0;background:none}.arena-section .section-heading{margin-block-end:12px}.egg-art{height:185px}.hatch-row{flex-wrap:nowrap}.roster-quest-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.welcome-row>span{display:none}.hero{min-height:355px}.hero-content{padding:30px 26px}.hero-actions{flex-direction:column;align-items:flex-start;gap:2px;margin-block-start:22px}.hero-footnote{margin-block-start:8px}.hero h1{font-size:var(--text-display)}.stats-strip{gap:12px;padding-inline:0}.stat{gap:9px}.stat-icon{width:34px;height:38px;background:none!important}.stat-icon>.icon{width:21px}.stat-label{max-width:85px;line-height:1.4}.breadcrumb>span:first-child,.breadcrumb>.icon{display:none}.topbar-utilities{gap:14px}.header-xp{padding-inline-start:14px}.collection-toolbar{align-items:flex-start;flex-wrap:wrap}.full-egg-grid{gap:14px}.full-egg-grid .egg-art{height:190px}.full-egg-grid .egg-card{min-height:335px}.info-banner{flex-wrap:wrap}.info-banner>div{flex:1}.info-banner>.text-button{margin-inline-start:44px}.arena-setup{grid-template-columns:1fr}.arena-entry{display:grid;grid-template-columns:1fr 1fr}.arena-entry>.arena-art{height:100%;min-height:310px}.arena-entry-copy{padding:24px}.battle-board{padding:20px}.turn-hint{font-size:var(--text-xs)}.footer{align-items:flex-start;flex-direction:column;gap:5px}.page-heading{flex-wrap:wrap;gap:18px}}@media(max-width:760px){:root{--sidebar: 0px;--text-display: 2.75rem}.sidebar{display:none}.page-shell{margin:0}.topbar{padding:11px 20px;min-height:68px}.mobile-brand{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:var(--text-lg);min-width:0;white-space:normal}.breadcrumb{display:none}.topbar-utilities{gap:8px}.topbar .help-button{margin:0}.mobile-profile{display:grid}.header-xp{display:none}.practice-label{font-size:var(--text-xs);margin-inline-end:2px}.mobile-nav{display:flex;flex-wrap:wrap;position:fixed;inset-inline:0;inset-block-end:0;z-index:30;background:#101a14fa;border-block-start:1px solid #354437;min-height:70px;padding:6px 8px calc(6px + env(safe-area-inset-bottom))}.mobile-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1 1 4.5rem;gap:5px;min-height:56px;font-size:var(--text-xs);color:var(--text-muted);border-radius:6px}.mobile-nav a.active{color:var(--nature);background:#22372999}.mobile-nav a.active .icon{fill:#9ed4ae18}main{padding:20px 20px calc(4rem + 44px)}.welcome-row{margin-block-end:17px;font-size:var(--text-sm)}.hero{min-height:345px}.hero-image{object-position:65% 30%;opacity:.88}.hero-shade{background:linear-gradient(90deg,#0b1712f2,#0b1712d1 45%,#0b171266),linear-gradient(0deg,#0b1712bb,transparent 60%)}.hero-content{padding:26px 24px;max-width:390px}.hero h1{line-height:1.08}.hero p{font-size:var(--text-sm);max-width:230px;margin-block-start:14px}.hero-actions{margin-block-start:21px;gap:2px}.hero-actions .button{min-height:46px}.hero-footnote{margin-block-start:8px}.hero-corner{inset-inline-end:16px;inset-block-end:16px}.hero-corner span{width:18px}.stats-strip{grid-template-columns:repeat(auto-fit,minmax(min(100%,4rem),1fr));padding-block:24px;gap:8px}.stat{flex-direction:column;align-items:flex-start;gap:9px;padding-inline:2px}.stat-icon{display:none}.stat>div{gap:8px}.stat-value{font-size:var(--text-lg)}.stat-label{font-size:var(--text-xs);max-width:100%}.home-grid{margin-block-start:23px;gap:24px}.section-heading{gap:10px;margin-block-end:14px}.section-heading h2{font-size:var(--text-lg)}.section-heading a{font-size:var(--text-xs)}.egg-grid{gap:12px}.egg-art{height:170px}.egg-top{padding:14px 14px 0}.egg-details{padding-inline:14px}.hatch-row{gap:5px}.roster-quest-grid{grid-template-columns:1fr;gap:24px}.home-roster{grid-template-columns:repeat(2,minmax(0,1fr))}.home-roster>.roster-empty{display:flex}.arena-promo{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.arena-promo-copy{padding:23px 18px}.quest-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.quest-list a{flex-wrap:wrap;align-content:center;gap:8px}.quest-list a+a{border:0}.quest-list a>.muted{margin-inline-start:34px;width:100%}.footer{margin-block-start:26px;padding-block:20px;gap:4px}.page-heading{margin-block:5px 26px}.page-heading h1{font-size:var(--text-xl)}.collection-toolbar>.muted{width:100%}.full-egg-grid{gap:16px}.full-egg-grid .egg-card{min-height:340px}.full-egg-grid .egg-art{height:190px}.full-egg-grid .egg-details,.full-egg-grid .egg-top{padding-inline:16px}.page-heading-icon{display:none}.info-banner{padding:20px;gap:14px}.info-banner>div{min-width:200px}.info-banner>.text-button{margin-inline-start:38px}.dragon-toolbar{flex-wrap:wrap;gap:14px}.search-field{width:100%}.select-field{width:100%;justify-content:space-between}.dragon-grid{gap:16px}.collection-dragon-art{height:195px}.page-heading .practice-badge{display:none}.arena-choose{padding:22px}.arena-entry{grid-template-columns:1fr 1fr}.battle-board{padding:18px}.fighters{gap:14px;grid-template-columns:minmax(0,1fr) 25px minmax(0,1fr);padding-block:20px}.fighter>.dragon-art{height:180px}.fighter-name{flex-wrap:wrap;gap:3px;min-height:52px;align-content:center}.fighter-name h2{width:100%;font-size:var(--text-lg)}.versus{font-size:var(--text-lg)}.turn-hint{flex-wrap:wrap;row-gap:12px}.move-buttons{gap:8px}.move-buttons .button{padding:13px 7px;font-size:var(--text-sm);min-height:92px}.move-buttons .button>.icon{width:18px}.arena-disclosure{flex-wrap:wrap;align-items:flex-start;gap:8px}.arena-disclosure>p{flex:1;min-width:230px}.arena-disclosure>.text-button{margin-inline-start:25px}.battle-result h2{font-size:var(--text-lg)}}@media(max-width:520px){.practice-label{display:none}.topbar{padding-inline:16px}.topbar-utilities{gap:0}.mobile-brand{font-size:var(--text-lg)}main{padding-inline:16px}.hero{min-height:343px}.hero-content{padding:25px 22px}.hero-image{object-position:65% 20%}.hero h1{letter-spacing:-.025em}.hero-corner{display:none}.stats-strip{padding-inline:4px}.stat-label{max-width:100%}.section-heading h2{font-size:var(--text-lg)}.egg-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr));gap:12px}.home-grid .egg-card:last-child:nth-child(odd){grid-column:1/-1;display:grid;grid-template-columns:42% 1fr;align-items:center;min-height:164px}.home-grid .egg-card:last-child:nth-child(odd) .egg-top{grid-column:2;grid-row:1;align-self:start;padding:15px 15px 0}.home-grid .egg-card:last-child:nth-child(odd) .egg-art{grid-column:1;grid-row:1/3;height:170px;margin:0}.home-grid .egg-card:last-child:nth-child(odd) .egg-details{grid-column:2;grid-row:2;padding:10px 15px 15px;align-self:end}.egg-top,.egg-details{padding-inline:12px}.egg-top>.icon{width:15px}.egg-art{height:170px}.hatch-row{margin-block-start:12px;gap:3px}.hatch-button{min-width:34px;min-height:34px}.ready{font-size:var(--text-xs);gap:4px}.arena-promo{grid-template-columns:1fr;min-height:0}.arena-promo>.arena-art{height:190px;min-height:0}.arena-promo-copy{padding:1px 23px 22px}.arena-promo h3{font-size:var(--text-lg)}.arena-promo p{margin-block:9px 15px}.arena-promo p br{display:none}.arena-promo .button{min-height:44px;font-size:var(--text-sm)}.arena-note{margin-block-start:13px}.home-roster{grid-template-columns:1fr}.home-roster>.roster-empty{display:none}.home-roster .dragon-card{min-height:112px}.quest-list{grid-template-columns:1fr;gap:0}.quest-list a{min-height:55px;flex-wrap:nowrap}.quest-list a+a{border-block-start:1px solid var(--line)}.quest-list a>.muted{width:auto;margin-inline-start:auto}.footer>span:last-child{flex-wrap:wrap}.page-heading{margin-block-end:24px;gap:16px}.page-heading h1{max-width:330px}.collection-toolbar{gap:14px;margin-block-end:20px}.filter-buttons{gap:4px;width:100%;justify-content:space-between}.filter-button{padding-inline:10px;font-size:var(--text-sm);min-height:44px}.filter-button>span{display:none}.full-egg-grid{gap:12px}.full-egg-grid .egg-card{min-height:0}.full-egg-grid .egg-art{height:170px}.full-egg-grid .egg-top{padding:13px 12px 0}.full-egg-grid .egg-details{padding:5px 12px 14px}.full-egg-grid .hatch-button{min-width:34px;min-height:34px}.info-banner{margin-block-start:24px;align-items:flex-start}.info-banner>.icon{margin-block-start:3px}.info-banner>div{min-width:0}.info-banner p{font-size:var(--text-sm)}.info-banner>.text-button{margin-inline-start:38px}.dragon-grid{grid-template-columns:1fr}.collection-dragon-art{height:215px}.collection-dragon .dragon-card{min-height:95px}.dragon-stats{font-size:var(--text-sm)}.arena-entry{display:block}.arena-entry>.arena-art{min-height:0;height:190px}.arena-entry-copy{padding:0 22px 22px}.champion-option{padding:11px}.champion-option>.dragon-art{width:52px;height:66px}.arena-choose{padding:20px 16px}.champion-option .muted{font-size:var(--text-xs)}.battle-board{padding:16px 12px}.battle-heading{font-size:var(--text-xs);gap:8px}.battle-heading>span:first-child{gap:6px}.battle-heading .icon{width:17px}.fighters{gap:10px;grid-template-columns:minmax(0,1fr) 19px minmax(0,1fr)}.fighter>.dragon-art{height:140px}.fighter-name h2{font-size:var(--text-lg)}.health-label{flex-wrap:wrap;gap:5px}.health-label>span:first-child{display:none}.health-label>span:last-child{width:100%}.turn-hint{font-size:var(--text-xs);padding-block-end:14px}.move-buttons .button{font-size:var(--text-xs);padding-inline:4px;gap:5px;min-height:100px}.move-buttons .button>.icon{width:16px}.move-buttons .button>span{line-height:1.5}.battle-log{padding-block-start:21px}.battle-result .button-row{width:100%}.battle-result .button{flex:1;font-size:var(--text-xs);padding-inline:10px}.modal{padding:22px 20px;max-height:calc(100dvh - 28px)}.modal-description{font-size:var(--text-sm)}.hatch-dialog>.egg-art{height:210px;width:235px}.dragon-dialog>.dragon-art{height:185px}.dragon-dialog h3,.hatch-dialog h3{font-size:var(--text-lg)}.guide-steps{gap:20px}.guide-steps li{gap:12px}.guide-icon{width:32px;height:34px}.guide-note{padding:13px;gap:10px}.guide-note>.icon{width:18px}.storage-warning{padding:12px;font-size:var(--text-xs);align-items:flex-start}}@media(max-width:350px){:root{--text-display: 2.75rem}.topbar{padding-inline:12px}main{padding-inline:12px}.hero-content{padding-inline:19px}.hero h1{font-size:var(--text-display);line-height:1.1}.hero p{max-width:220px}.hero-actions .button{padding-inline:14px}.egg-details,.egg-top{padding-inline:10px}.egg-art{height:150px}.ready .status-dot{display:none}.hatch-row{gap:2px;flex-wrap:wrap}.hatch-button{min-width:32px;min-height:32px}.section-heading a{gap:4px}.section-heading a>.icon{width:14px}.section-heading h2{font-size:var(--text-lg)}.section-heading{gap:7px}.stat-label{max-width:100%}.arena-choose{padding:18px 12px}.champion-option{gap:9px;padding:10px}.champion-option>.dragon-art{width:42px}.fighter-name h2{font-size:var(--text-base)}.filter-button{padding-inline:8px}.health-label{font-size:var(--text-xs)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.button:active:not(:disabled){transform:none}}.arena-modes{margin-block-end:24px;justify-content:flex-start}.local-rival-field{margin-block:24px}.local-rival-field select{width:100%;font-size:var(--text-sm)}.local-rival-field .field-hint{margin-block-end:0}.duel-board .fighters{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.duel-turn{display:flex;align-items:center;gap:12px;margin-block-end:18px;padding:16px;background:#223728;border-radius:6px}.duel-turn>.icon{color:var(--nature)}.duel-turn h3{font-size:var(--text-base);font-weight:500;margin-block-end:5px}.duel-turn p{font-size:var(--text-xs);color:var(--text-secondary)}.duel-turn .charge{font-size:var(--text-sm);color:var(--gold-300);white-space:nowrap;margin-inline-start:auto}.active-fighter>.dragon-art{outline:2px solid var(--accent);outline-offset:3px}@media(max-width:520px){.duel-board .fighters{gap:20px}.duel-turn{padding:12px;gap:8px;flex-wrap:wrap}.duel-turn h3{font-size:var(--text-sm)}.duel-turn .charge{font-size:var(--text-xs)}.local-rival-field select{font-size:var(--text-base)}}@media(forced-colors:active){button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-color:Highlight}.button,.nav-item.active,.filter-button.active{border:1px solid ButtonText}.health-track>span,.rank-progress>span{background:Highlight}}
