@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Noto+Sans+SC:wght@400;500;600;700;800&display=swap";:root{font-family:Inter,Noto Sans SC,Microsoft YaHei,sans-serif;color:#111318;background:#050608;font-synthesis:none;text-rendering:optimizeLegibility;--black: #050608;--ink: #111318;--muted: #6e7480;--line: rgba(17, 19, 24, .1);--paper: #f5f5f7;--white: #ffffff;--cyan: #5ee7f7;--blue: #147ce5}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--black)}body{margin:0;min-width:320px;background:var(--black)}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}main{overflow:hidden;background:var(--paper)}.site-header{position:absolute;z-index:20;top:0;left:50%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:min(1240px,calc(100% - 48px));min-height:72px;transform:translate(-50%);border-bottom:1px solid rgba(255,255,255,.12);color:#ffffffeb}.brand,.nav-links,.hero-actions,.hero-signals,.player-card-top,.card-stats,.card-achievements{display:flex;align-items:center}.brand{gap:10px;width:max-content;font-size:.98rem;font-weight:700}.brand-mark{display:grid;width:28px;height:28px;place-items:center;border:1px solid rgba(255,255,255,.34);border-radius:50%;color:#fff;font-size:.78rem;font-weight:800}.nav-links{gap:34px;color:#ffffff9e;font-size:.88rem;font-weight:600}.nav-links a,.header-action,.footer-links a{transition:color .18s ease,opacity .18s ease}.nav-links a:hover,.header-action:hover{color:#fff}.header-action{justify-self:end;min-height:36px;padding:0 16px;border:1px solid rgba(255,255,255,.28);border-radius:999px;font-size:.84rem;font-weight:700}.hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.72fr);gap:64px;min-height:min(900px,100svh);padding:154px max(24px,calc((100% - 1240px)/2)) 96px;align-items:center;overflow:hidden;color:#fff;background:#020407}.hero:before{position:absolute;z-index:-2;inset:0;content:"";background:url(/earthol-orbit-hero.png) center / cover no-repeat}.hero:after{position:absolute;z-index:-1;inset:0;content:"";background:linear-gradient(90deg,#020407fa,#020407c7 34%,#0204070f 67%),linear-gradient(180deg,#02040726 56%,#020407)}.hero-copy{z-index:2;max-width:710px}.eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 26px;color:var(--cyan);font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.hero h1,.section-heading h2,.contact-section h2{margin:0;letter-spacing:0;text-wrap:balance}.hero h1{max-width:750px;font-size:clamp(4.6rem,9vw,8.7rem);font-weight:700;line-height:.84}.hero h1 span{color:#ffffff7a;font-size:.44em;font-weight:600}.hero-lede{max-width:590px;margin:32px 0 0;color:#ffffffad;font-size:clamp(1.04rem,1.5vw,1.24rem);line-height:1.75}.hero-signals{flex-wrap:wrap;gap:18px;margin-top:25px;color:#ffffff80;font-size:.78rem;font-weight:600}.hero-signals span{display:flex;align-items:center;gap:7px}.hero-signals span:first-child svg{color:#6ee7a7;fill:#6ee7a7}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:38px}.primary-button,.secondary-button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;gap:9px;padding:0 22px;border-radius:999px;font-weight:700;transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease}.primary-button{border:1px solid #fff;color:var(--ink);background:#fff}.secondary-button{border:1px solid rgba(255,255,255,.24);color:#fff;background:#00000029;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.primary-button:hover,.secondary-button:hover{transform:translateY(-2px)}.hero .primary-button:hover{background:var(--cyan);border-color:var(--cyan)}.hero .secondary-button:hover{border-color:#ffffff94}.inline-note,.share-status{margin:13px 0 0;color:#ffffff73;font-size:.82rem}.hero-card{position:relative;z-index:2;min-height:570px;align-self:end}.hero-brand-art,.card-orbit{display:none}.player-card{position:relative;overflow:hidden;color:var(--card-ink, #172126);background:linear-gradient(145deg,color-mix(in srgb,var(--card-surface, #fffaf2) 96%,white),#eef3edf5)}.player-card:before{position:absolute;inset:0;content:"";opacity:.7;background:linear-gradient(90deg,color-mix(in srgb,var(--card-accent, #0f766e) 12%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--card-accent, #0f766e) 12%,transparent) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:linear-gradient(180deg,#000,transparent 75%);mask-image:linear-gradient(180deg,#000,transparent 75%);pointer-events:none}.player-card>*{position:relative}.player-card.mini{width:min(100%,380px);min-height:445px;margin:78px auto 0;padding:28px;transform:rotate(2.5deg);border:1px solid rgba(255,255,255,.45);border-radius:24px;box-shadow:0 44px 100px #0000006b}.player-card.large{min-height:690px;padding:36px;border:1px solid rgba(17,19,24,.08);border-radius:26px;box-shadow:0 32px 90px #1113181f}.player-card-top{justify-content:space-between;color:var(--card-accent, #0f766e);font-size:.72rem;font-weight:800;letter-spacing:.1em}.player-card h2,.player-card h3{margin:46px 0 10px;color:var(--card-ink, #172126);font-size:clamp(2.7rem,4vw,4rem);line-height:1.02}.player-card h3{margin-top:22px}.player-card p{margin:0;color:color-mix(in srgb,var(--card-ink, #172126) 68%,transparent);line-height:1.6}.player-card ul{display:grid;gap:10px;margin:30px 0 0;padding:0;list-style:none}.player-card li,.card-achievements span{padding:12px 14px;border:1px solid color-mix(in srgb,var(--card-accent, #0f766e) 18%,transparent);border-radius:10px;background:#fff9;font-size:.86rem;font-weight:700}.xp-bar{overflow:hidden;height:7px;margin-top:25px;border-radius:999px;background:#1113181a}.xp-bar span{display:block;height:100%;border-radius:inherit;background:var(--card-accent, #0f766e)}.metric-card{position:absolute;right:-8px;bottom:34px;width:184px;padding:17px;border:1px solid rgba(255,255,255,.16);border-radius:14px;color:#fff;background:#04080e9e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 20px 44px #0000003d}.metric-card strong{display:block;color:var(--cyan);font-size:1.7rem}.metric-card span{display:block;margin-top:4px;color:#ffffff8a;font-size:.76rem}.section{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:120px 0}.band{width:100%;padding-right:max(20px,calc((100% - 1120px)/2));padding-left:max(20px,calc((100% - 1120px)/2));background:#fff}.section-heading{display:grid;gap:17px;max-width:860px;margin-bottom:52px}.section-kicker{color:var(--blue);font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.section-heading h2,.contact-section h2{font-size:clamp(2.5rem,5vw,5rem);font-weight:700;line-height:1.06}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.service-card{min-height:230px;padding:32px 34px 28px 0;border-right:1px solid var(--line);background:transparent}.service-card+.service-card{padding-left:34px}.service-card:last-child{border-right:0}.service-card svg{color:var(--blue)}.service-card h3{margin:50px 0 12px;font-size:1.35rem}.service-card p{margin:0;color:var(--muted);line-height:1.7}.generator-section{width:100%;padding-right:max(20px,calc((100% - 1120px)/2));padding-left:max(20px,calc((100% - 1120px)/2));background:var(--paper)}.generator-grid{display:grid;grid-template-columns:minmax(340px,.92fr) minmax(440px,1.08fr);gap:30px;align-items:start}.generator-form{display:grid;gap:18px;padding:30px;border:1px solid rgba(17,19,24,.08);border-radius:20px;background:#fff;box-shadow:0 18px 50px #1113180d}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.generator-form label{display:grid;gap:8px;color:#333842;font-size:.86rem;font-weight:700}.generator-form input,.generator-form select,.generator-form textarea{width:100%;border:1px solid rgba(17,19,24,.1);border-radius:10px;color:var(--ink);background:var(--paper);outline:none;transition:border-color .16s ease,box-shadow .16s ease}.generator-form input,.generator-form select{height:47px;padding:0 13px}.generator-form select{appearance:none;background:linear-gradient(45deg,transparent 50%,#717784 50%) calc(100% - 17px) 21px / 6px 6px no-repeat,linear-gradient(135deg,#717784 50%,transparent 50%) calc(100% - 12px) 21px / 6px 6px no-repeat,var(--paper)}.generator-form textarea{min-height:100px;padding:13px;resize:vertical;line-height:1.55}.generator-form input:focus,.generator-form select:focus,.generator-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px #147ce51a}.control-block{display:grid;gap:12px;padding-top:5px}.control-block>strong{font-size:.86rem}.theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.theme-option{display:flex;min-height:42px;align-items:center;justify-content:center;gap:7px;padding:0 9px;border:1px solid var(--line);border-radius:9px;color:#414751;background:#fff;font-size:.78rem;font-weight:700}.theme-option.active{border-color:var(--blue);box-shadow:0 0 0 3px #147ce514}.theme-option span{width:11px;height:11px;border-radius:50%}.attribute-list{display:grid;gap:14px}.attribute-control{display:grid;gap:8px}.attribute-control span,.attribute-preview div span{display:flex;align-items:center;justify-content:space-between;gap:12px}.attribute-control b,.attribute-preview b{color:var(--card-accent, var(--blue))}.attribute-control input[type=range]{height:6px;padding:0;border:0;border-radius:999px;accent-color:var(--blue);background:#e2e5e9}.generator-form .primary-button{width:100%;border:0;color:#fff;background:var(--ink)}.generator-form .primary-button:hover{background:var(--blue)}.generator-form .share-status{color:var(--muted)}.form-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.form-actions .secondary-button{min-height:43px;border-color:var(--line);border-radius:10px;color:#414751;background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;font-size:.82rem}.avatar{display:grid;width:86px;height:86px;place-items:center;margin-top:34px;border-radius:22px;color:#fff;background:var(--card-accent, #0f766e)}.card-stats{flex-wrap:wrap;gap:8px;margin-top:22px}.card-stats span{min-height:34px;padding:8px 11px;border-radius:8px;color:#fff;background:var(--card-deep, #172126);font-size:.78rem;font-weight:700}.quest-box{display:grid;gap:8px;margin-top:28px;padding:18px;border-radius:14px;background:color-mix(in srgb,var(--card-accent, #0f766e) 10%,white)}.quest-box small,.dungeon-box{color:var(--card-accent, #0f766e);font-weight:800}.quest-box strong{font-size:1.05rem;line-height:1.5}.dungeon-box{display:flex;align-items:center;gap:8px;margin-top:17px;font-size:.9rem}.motto{margin-top:18px!important;color:var(--card-ink, #172126)!important;font-weight:700}.attribute-preview{display:grid;grid-template-columns:repeat(2,1fr);gap:13px 18px;margin-top:24px}.attribute-preview div{display:grid;gap:7px}.attribute-preview div span{font-size:.8rem;font-weight:700}.attribute-preview i{display:block;overflow:hidden;height:6px;border-radius:999px;background:#1113181a}.attribute-preview em{display:block;height:100%;border-radius:inherit;background:var(--card-accent, #0f766e)}.card-achievements{flex-wrap:wrap;gap:8px;margin-top:24px}.achievement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:#ffffff1a}#achievements.band{color:#fff;background:#080a0d}#achievements .section-kicker{color:var(--cyan)}.achievement-card{display:grid;grid-template-columns:auto 1fr;gap:11px 13px;min-height:188px;padding:25px;border:0;color:#fff;background:#0e1116;text-align:left;transition:background .18s ease}.achievement-card:hover{background:#151a21}.achievement-card.selected{background:#121d20}.achievement-check{display:grid;width:32px;height:32px;place-items:center;border:1px solid rgba(94,231,247,.22);border-radius:50%;color:var(--cyan)}.achievement-card strong{align-self:center;font-size:1rem}.achievement-card small{grid-column:1 / -1;color:#ffffff7a;line-height:1.65}.achievement-card em{grid-column:1 / -1;color:var(--cyan);font-size:.8rem;font-style:normal;font-weight:700}.contact-section{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.7fr);gap:64px;width:100%;padding:120px max(20px,calc((100% - 1120px)/2));color:var(--ink);background:#fff}.contact-section .eyebrow{color:var(--blue)}.contact-copy{max-width:620px;margin:22px 0 0;color:var(--muted);font-size:1.02rem;line-height:1.75}.message-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:34px}.message-item{min-height:126px;padding:17px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.message-item strong{display:block;color:var(--blue);font-size:.84rem}.message-item p{margin:9px 0 0;color:#555c67;font-size:.84rem;line-height:1.55}.signup-form{display:grid;gap:13px;padding:26px;border:1px solid var(--line);border-radius:20px;background:var(--paper)}.signup-form label{display:grid;gap:7px;color:#414751;font-size:.84rem;font-weight:700}.signup-form input,.signup-form textarea{width:100%;border:1px solid rgba(17,19,24,.1);border-radius:10px;color:var(--ink);background:#fff;outline:none}.signup-form input{height:45px;padding:0 12px}.signup-form textarea{min-height:94px;padding:12px;resize:vertical}.signup-form .consent-row{display:flex;align-items:flex-start;gap:9px;font-size:.76rem;font-weight:500;line-height:1.5}.signup-form .consent-row input{width:16px;height:16px;margin-top:1px;accent-color:var(--blue);flex:0 0 auto}.signup-form .primary-button{border:0;color:#fff;background:var(--ink)}.signup-form .primary-button:hover{background:var(--blue)}.signup-form .primary-button:disabled{cursor:wait;opacity:.6}.signup-form p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.5}.export-button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:9px;color:#59606b;background:#fff;font-size:.8rem;font-weight:700}.site-footer{display:grid;grid-template-columns:1fr auto;gap:28px 40px;width:100%;padding:62px max(20px,calc((100% - 1120px)/2));color:#ffffff7a;background:var(--black)}.site-footer .brand{color:#fff}.site-footer .brand img{width:30px;height:30px;border-radius:50%;object-fit:cover}.site-footer p{margin:10px 0 0}.footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:24px;color:#ffffffb3;font-size:.84rem;font-weight:600}.footer-links a:hover{color:#fff}.privacy-note{max-width:720px;font-size:.78rem;line-height:1.7}.site-footer small{text-align:right}@media(max-width:980px){.site-header{grid-template-columns:1fr auto}.nav-links{display:none}.hero{grid-template-columns:1fr;min-height:auto;padding-top:148px}.hero:after{background:linear-gradient(90deg,#020407f5,#020407a3 60%,#0204071f),linear-gradient(180deg,#0204071a 45%,#020407)}.hero-card{min-height:440px}.player-card.mini{margin:0 0 0 auto}.generator-grid,.contact-section{grid-template-columns:1fr}.player-card.large{min-height:650px}.service-grid,.achievement-grid{grid-template-columns:1fr}.service-card,.service-card+.service-card{min-height:160px;padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}.service-card:last-child{border-bottom:0}.service-card h3{margin-top:28px}.message-list,.site-footer{grid-template-columns:1fr}.footer-links{justify-content:flex-start}.site-footer small{text-align:left}}@media(max-width:620px){.site-header{width:calc(100% - 32px)}.brand{font-size:.88rem}.header-action{padding:0 13px}.hero{padding:126px 20px 64px}.hero:before{background-position:61% center}.hero:after{background:linear-gradient(180deg,#02040747,#020407e0 52%,#020407)}.hero h1{font-size:clamp(4.2rem,22vw,6rem)}.hero-lede{margin-top:24px}.hero-card{min-height:430px}.player-card.mini{width:calc(100% - 10px);min-height:410px;margin:0 auto;padding:24px;transform:rotate(1.5deg)}.metric-card{right:0}.section,.generator-section,.contact-section{padding-top:84px;padding-bottom:84px}.section-heading{margin-bottom:36px}.section-heading h2,.contact-section h2{font-size:2.7rem}.generator-form,.player-card.large,.signup-form{padding:22px;border-radius:16px}.form-row,.form-actions,.attribute-preview,.theme-options{grid-template-columns:1fr}.player-card h3{font-size:2.65rem}.primary-button,.secondary-button{min-height:48px}.hero-actions .primary-button,.hero-actions .secondary-button{width:100%}.contact-section{gap:42px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important}}
