@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#0c111a;--card:#111925;--card2:#17212f;--border:#283443;--muted:#92a0b0;--text:#edf1f5;--gold:#d3af76;--goldbright:#f0d4a0;--violet:#9179ed;--green:#67c79f;--red:#e37d7d;--blue:#79b9d8}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 45% -10%,#263046 0%,transparent 45%),radial-gradient(circle at 100% 90%,#191e37 0%,transparent 32%),var(--bg);color:var(--text);font-family:Manrope,system-ui,sans-serif;font-size:14px}.sky-noise{pointer-events:none;position:fixed;inset:0;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E")}.app-shell{max-width:1540px;margin:auto;min-height:100vh;display:flex;flex-direction:column;position:relative}.topbar{height:84px;padding:0 28px;display:flex;align-items:center;border-bottom:1px solid var(--border);gap:25px}.logo{display:flex;align-items:center;gap:12px;margin-right:auto}.logo-mark{font-size:44px;line-height:1;color:var(--gold);text-shadow:0 0 20px #d3af7655}.logo-text{display:flex;flex-direction:column;letter-spacing:3px}.logo-text strong{font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;line-height:24px}.logo-text small{color:var(--gold);font-size:9px;letter-spacing:2.5px}.top-tags{display:flex;gap:8px}.tag{border:1px solid #384451;border-radius:100px;padding:7px 11px;font-size:10px;letter-spacing:1px;color:#b2c0cb;white-space:nowrap}.tag-gold{color:var(--gold);border-color:#796747}.status-dot{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:5px}.top-help{margin-left:8px}.game-layout{display:grid;grid-template-columns:265px minmax(0,1fr) 270px;flex:1;min-height:700px}.left-sidebar{padding:24px 18px;border-right:1px solid var(--border)}.right-sidebar{padding:26px 18px;border-left:1px solid var(--border);background:#0c121b7a}.main-panel{padding:30px clamp(22px,4vw,52px) 65px;min-width:0}.block-label,.small-kicker{font-size:10px;color:var(--gold);letter-spacing:2px;font-weight:800}.block-label{display:flex;justify-content:space-between;margin:5px 0 18px}.block-label span{color:var(--green);font-size:9px}.character-avatar{height:76px;width:76px;border-radius:17px;background:radial-gradient(circle at 50% 30%,#586776,#25354a 65%,#151b27);border:1px solid #6c7380;display:flex;align-items:center;justify-content:center;font-size:36px;margin-bottom:14px;color:#f0d4a0}.char-head{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.char-name{font-family:'Cormorant Garamond',Georgia,serif;font-weight:700;font-size:27px}.char-meta{color:var(--muted);font-size:11px;margin-top:1px}.char-level{display:inline-flex;align-items:center;justify-content:center;border:1px solid #877052;color:var(--goldbright);border-radius:100px;font-size:10px;padding:4px 8px;margin-top:8px}.stat-list{margin:22px 0}.statline{margin-bottom:14px}.stat-labels{display:flex;justify-content:space-between;font-size:11px;font-weight:700;margin-bottom:6px}.stat-labels span:first-child{color:#b5c0cb}.bar{height:6px;border-radius:30px;background:#303c4b;overflow:hidden}.fill{height:100%;border-radius:30px;transition:width .3s}.fill.hp{background:linear-gradient(90deg,#ae5960,#e58a82)}.fill.mp{background:linear-gradient(90deg,#577abb,#82b5e6)}.fill.xp{background:linear-gradient(90deg,#a18951,#efd09b)}.char-numbers{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.num-box{padding:12px;border:1px solid var(--border);border-radius:9px;background:#17202a}.num-box small{color:var(--muted);display:block;font-size:10px}.num-box b{font-size:18px}.nav-link{width:100%;display:flex;align-items:center;gap:12px;border:0;border-left:2px solid transparent;background:transparent;color:#b7c4d2;padding:15px;text-align:left;border-radius:5px;margin:4px 0;cursor:pointer;font:inherit;font-weight:700;font-size:12px}.nav-link:hover,.nav-link.active{background:#1d2836;color:var(--goldbright);border-left-color:var(--gold)}.nav-link span{font-size:18px;min-width:18px}.nav-section{border-top:1px solid var(--border);margin-top:24px;padding-top:19px}.side-note{margin-top:28px;padding:16px;background:linear-gradient(140deg,#20263b,#121c28);border-radius:12px;border:1px solid #343a4a}.side-note p{line-height:1.75;color:#9caab7;font-size:11px;margin-bottom:0}.footer{font-size:9px;letter-spacing:1.2px;color:#738293;display:flex;justify-content:space-between;gap:15px;padding:17px 28px;border-top:1px solid var(--border)}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--gold);font-size:11px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;margin-bottom:11px}.eyebrow:before{content:'';height:1px;width:24px;background:var(--gold)}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:700}h1{font-size:clamp(42px,5vw,66px);line-height:1.04;letter-spacing:.2px;margin:6px 0 20px}h2{font-size:34px;margin:4px 0 11px}h3{font-size:23px;margin:0 0 8px}.intro-copy{line-height:2;color:#c4cdd6;font-size:14px;max-width:690px}.intro-copy em{font-style:normal;color:var(--goldbright)}.hero-scene{position:relative;min-height:230px;margin:20px 0 26px;border:1px solid #455164;border-radius:15px;overflow:hidden;background:radial-gradient(ellipse at 50% 80%,#46625c66 0,transparent 50%),linear-gradient(130deg,#273247,#161a2d 50%,#0d151f);display:flex;justify-content:center;align-items:center}.hero-scene:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(100deg,transparent 0 90px,#adb0a509 100px 105px,transparent 120px)}.hero-scene:after{content:'✧     ✦           ✧        ✧       ✦';position:absolute;top:25px;color:#dacba0a8;letter-spacing:32px;font-size:19px}.hero-art{font-size:110px;line-height:1;filter:drop-shadow(0 0 35px #4bd7a752);z-index:1}.hero-scene.slime{background:radial-gradient(ellipse at center bottom,#28605f 0%,transparent 50%),linear-gradient(135deg,#1b3041,#0e1522)}.hero-scene.portal{background:radial-gradient(ellipse at center,#8053c244 0%,transparent 50%),linear-gradient(140deg,#26213d,#0e1423)}.hero-scene.city{background:linear-gradient(150deg,#484331,#242b31,#121825)}.hero-scene.slime .hero-art{animation:wobble 2s ease-in-out infinite}.hero-scene.portal .hero-art{animation:throb 2.5s ease-in-out infinite}.hero-scene.city .hero-art{filter:drop-shadow(0 0 20px #dfb36d50)}@keyframes wobble{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-10px) rotate(3deg)}}@keyframes throb{0%,100%{transform:scale(.95)}50%{transform:scale(1.05)}}.hero-caption{position:absolute;bottom:15px;font-size:10px;letter-spacing:2px;color:#b3c2ce;z-index:1}.narrative{border-left:2px solid var(--gold);padding:3px 0 3px 20px;line-height:1.95;color:#c6ced7;margin:24px 0}.narrative p{margin:7px 0}.dialogue{color:var(--goldbright);font-family:'Cormorant Garamond',Georgia,serif;font-size:23px;font-weight:600;line-height:1.5;margin:20px 0}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:13px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.race-card,.choice-card,.item-card,.skill-card{border:1px solid var(--border);background:linear-gradient(145deg,#1b2635,#111a26);border-radius:11px;padding:18px;text-align:left;color:var(--text);font-family:inherit}.race-card{cursor:pointer;min-height:177px}.race-card:hover,.choice-card:hover,.choice-card:focus,.race-card:focus{border-color:#ceaa70;background:linear-gradient(140deg,#2d2c36,#1b2531);transform:translateY(-2px)}.race-icon{font-size:32px;margin-bottom:7px}.race-card h3{margin:5px 0 7px;font-size:24px}.race-card p,.small-desc{color:#a3b1be;line-height:1.6;font-size:11px;margin:0}.race-perk{color:var(--gold);font-size:10px;margin-top:12px}.section-head{margin:27px 0 12px;display:flex;align-items:center;justify-content:space-between}.section-head b{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#e6d1af}.section-head small{font-size:11px;color:var(--muted)}button{cursor:pointer;transition:background-color .16s,border-color .16s,transform .16s}button:disabled{opacity:.38;cursor:not-allowed;transform:none!important}button.primary,button.secondary,button.ghost,button.choice-card{font-family:inherit}.primary{background:linear-gradient(130deg,#d9b982,#ad8756);color:#17202a;border:1px solid #e6c997;font-weight:800;border-radius:7px;padding:13px 20px;font-size:12px;letter-spacing:.2px}.primary:hover{background:linear-gradient(135deg,#edd09c,#d1ac78)}.secondary{background:#1b2c3c;border:1px solid #485466;border-radius:7px;color:#d6e1eb;font-size:12px;font-weight:700;padding:12px 17px}.secondary:hover{background:#304054;border-color:#8999a8}.ghost{border:1px solid var(--border);border-radius:7px;background:transparent;color:#b5bfca;padding:8px 11px;font-size:12px;font-weight:700}.ghost:hover{background:#1c2736}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:23px 0}.choice-card{cursor:pointer;width:100%;display:flex;gap:14px;align-items:flex-start;min-height:102px}.choice-glyph{font-size:26px;color:var(--gold)}.choice-title{display:block;font-size:13px;font-weight:800;margin-bottom:6px}.choice-desc{display:block;font-size:11px;color:#abb6c3;line-height:1.65}.note-card{border:1px solid #45465c;background:#1b2033;padding:17px;border-radius:10px;line-height:1.85;color:#c1ccd8;font-size:12px;margin-top:20px}.note-card strong{color:var(--goldbright)}.battle-top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.enemy-panel{border:1px solid #59454e;background:#2a1e2a87;padding:16px 18px;border-radius:10px;margin:15px 0}.enemy-head{display:flex;justify-content:space-between;font-size:12px;font-weight:700;margin-bottom:10px}.enemy-head small{color:#ffb8b5}.battle-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.battle-grid button{min-height:73px}.battle-feed{background:#111b27;border:1px solid var(--border);padding:12px 14px;border-radius:8px;font-size:11px;line-height:1.75;color:#adbccc;max-height:145px;overflow:auto}.battle-feed p{margin:4px 0}.flash{color:var(--goldbright)}.damage{color:var(--red)}.reward{color:var(--green)}.meta-row{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.pill{border:1px solid #435062;padding:7px 11px;border-radius:99px;font-size:10px;color:#bbc7d2}.pill.good{color:var(--green);border-color:#49665a}.pill.bad{color:var(--red);border-color:#704d50}.muted{color:var(--muted)}.skill-card,.item-card{padding:15px}.skill-card strong,.item-card strong{font-size:12px}.skill-card p,.item-card p{font-size:11px;color:#9eadbb;line-height:1.6;margin:8px 0}.skill-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.skill-tags span{font-size:10px;background:#293447;color:#d1dce5;padding:5px 8px;border-radius:5px}.selected-card{border-color:#aa8d5d!important}.item-icon{font-size:26px;margin-bottom:9px}.activity-entry{margin-bottom:18px;border-left:1px solid #445263;padding:0 0 0 13px;color:#a7b5c2;font-size:11px;line-height:1.7}.activity-entry .time{font-size:9px;color:#77899b;letter-spacing:1px}.activity-entry strong{color:#dae2e8}.social-teaser{border:1px solid #313b4b;border-radius:11px;background:linear-gradient(145deg,#1b2432,#141b2b);padding:14px;margin-top:22px}.social-head{display:flex;gap:11px;align-items:center}.social-head strong{display:block;font-size:12px}.social-head small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.social-icon{font-size:24px;color:var(--gold)}.social-teaser p{font-size:10px;line-height:1.85;color:#93a2b0;margin-bottom:0}.store-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid var(--border);background:#182330;padding:16px;border-radius:9px;margin:10px 0}.store-row p{font-size:11px;color:var(--muted);margin:5px 0 0;line-height:1.6}.store-row button{flex-shrink:0}.input-row{display:flex;align-items:center;gap:9px;margin:20px 0 8px}.input-row input{background:#121d2a;border:1px solid #405061;color:#f6f7f9;padding:13px 15px;border-radius:8px;max-width:340px;width:100%;font:inherit;outline:none}.input-row input:focus{border-color:var(--gold)}.progress-track{height:7px;border-radius:20px;background:#324054;overflow:hidden}.progress-track div{height:100%;background:linear-gradient(90deg,#9076c5,#d4b7ee)}.step-list{display:flex;gap:6px;flex-wrap:wrap}.step{font-size:10px;border:1px solid var(--border);color:#99a7b5;padding:7px 11px;border-radius:6px}.step.done{border-color:#58836c;color:#83d3ad}.step.current{border-color:#b8a06f;color:#e5c78f;background:#353021}.disabled-panel{opacity:.6}.inset{padding:18px;border-radius:10px;background:#131e2b;border:1px solid var(--border)}.text-link{border:0;background:transparent;color:var(--gold);padding:6px 0;font:inherit;text-decoration:underline}#toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:20;background:#27384a;border:1px solid #a18a6b;color:#fff;padding:13px 19px;border-radius:9px;box-shadow:0 12px 45px #0008;transition:.25s;max-width:90vw;text-align:center;font-size:12px}#toast.visible{opacity:1;transform:translate(-50%,0)}dialog{width:min(520px,95vw);background:#142032;color:var(--text);border:1px solid #8a7e6a;border-radius:12px;box-shadow:0 20px 100px #000b;padding:0}dialog::backdrop{background:#000b}.dialog-inner{padding:27px}.dialog-inner p{line-height:1.8;color:#bec9d5}dialog button{margin-top:12px}.sep{height:1px;background:var(--border);margin:18px 0}.empty-state{padding:35px 18px;text-align:center;border:1px dashed #455164;border-radius:12px;color:#b8c3cd}.empty-state span{font-size:35px}.empty-state p{font-size:12px;line-height:1.8}.mini-status{font-size:10px;color:var(--muted)}.world-badge{display:inline-block;color:#d5c5a4;border:1px solid #6d6554;border-radius:6px;padding:5px 9px;font-size:10px;margin-bottom:8px}
@media(max-width:1120px){.game-layout{grid-template-columns:235px minmax(0,1fr)}.right-sidebar{display:none}.left-sidebar{padding:20px 13px}.main-panel{padding:25px 25px 45px}}
@media(max-width:700px){.topbar{height:72px;padding:0 15px}.top-tags{display:none}.top-help span{display:none}.logo-text strong{font-size:23px}.game-layout{display:flex;flex-direction:column}.left-sidebar{border-right:0;border-bottom:1px solid var(--border);padding:13px 16px}.left-sidebar .character-avatar{width:47px;height:47px;font-size:25px;margin:0}.char-head{flex-wrap:nowrap}.char-name{font-size:23px}.char-level{margin:0}.left-sidebar .stat-list{margin:12px 0;display:flex;gap:13px}.statline{flex:1;min-width:0;margin:0}.char-numbers,.side-note{display:none}.nav-section{border-top:0;padding:0;margin:11px 0 0;display:flex;overflow-x:auto;gap:4px}.nav-link{white-space:nowrap;width:auto;padding:11px 12px;margin:0;font-size:11px}.nav-link span{font-size:14px}.main-panel{padding:27px 17px 50px}.grid-2{grid-template-columns:1fr 1fr;gap:9px}.grid-3{grid-template-columns:1fr}.hero-scene{min-height:180px}.hero-art{font-size:87px}h1{font-size:45px}.race-card{min-height:167px;padding:13px}.race-card h3{font-size:21px}.race-perk{font-size:9px}.footer{font-size:8px;padding:13px 16px}.footer span:first-child{display:none}.store-row{align-items:flex-start;flex-direction:column}.store-row button{align-self:flex-end}.battle-grid{gap:7px}.battle-grid button{min-height:68px}}
/* Alpha 0.2 — class awakening, professions, combat skill descriptions */
.class-reveal{padding:22px 24px;border:1px solid #8e744b;border-radius:14px;background:radial-gradient(circle at center top,#4c3c4266,transparent 80%),#171e2b;text-align:center;margin:20px 0}
.class-reveal h2{font-size:clamp(38px,5vw,55px);color:#f2ddb2;margin:8px 0}.class-reveal p{color:#b9c8d5;font-size:12px}.class-reveal .note-card{text-align:left}
.combat-guide{color:#aeb9cb;margin:15px 0 10px;line-height:1.65;font-size:11px}
.combat-skill-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 20px}
.combat-skill-card{border:1px solid #48546a;background:linear-gradient(140deg,#202a3a,#131c2b);padding:15px 16px;border-radius:10px;min-width:0;display:flex;flex-direction:column;gap:9px}
.combat-skill-card:hover{border-color:#a08c6b}.combat-skill-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:7px}.combat-skill-head strong{color:#f0dcc1;font-size:12px}.combat-skill-head .mini-status{color:#b4bfcf}
.combat-skill-card p{font-size:12px;line-height:1.7;color:#c2d0dd;flex:1;margin:0}.combat-skill-card button{width:100%;min-height:40px}.combat-skill-card.item-combat{border-color:#45655a;background:#162b2b}
#birth-input{max-width:110px}.input-row label{max-width:290px;line-height:1.6}.skill-card .actions button{max-width:100%}
@media(max-width:700px){.combat-skill-list{grid-template-columns:1fr}.combat-skill-card{padding:14px}.class-reveal{padding:17px}.input-row{flex-wrap:wrap}}
.class-role-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0 18px}.class-role-tabs button{padding:9px 12px;min-width:110px;font-size:11px}

.portal03-progress{display:flex;gap:5px;margin:20px 0;flex-wrap:wrap}.portal03-progress span{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:9px;background:#1a2634;border:1px solid #405066;color:#bccbe0;font-size:12px}.portal03-progress span.done{background:#174138;color:#9af0be}.portal03-progress span.current{background:#2d406b;color:#fff;border-color:#72b8ef}.portal03-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.system03{border:1px solid #7a6c9e;background:linear-gradient(120deg,#182c42,#23213f);padding:16px;margin-bottom:18px;border-radius:15px}.system03 small{color:#9cc7ff;letter-spacing:1px}.system03 p{color:#f0e9ff;line-height:1.5}.farm03-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.farm03-meter{height:50px;background:linear-gradient(90deg,#273442,#334763);position:relative;border:1px solid #647a95;border-radius:12px;margin:24px 0;overflow:hidden}.farm03-target{position:absolute;left:34%;width:32%;height:100%;background:linear-gradient(90deg,#436c53,#73b886,#436c53);opacity:.85}.farm03-pointer{position:absolute;top:0;bottom:0;left:0;width:4px;background:#fff;box-shadow:0 0 15px 6px #72c9ff}.farm03-meter:after{content:'ИДЕАЛЬНО';position:absolute;left:42%;top:16px;font-size:10px;color:#dcfce8;pointer-events:none}@media(max-width:600px){.portal03-grid{grid-template-columns:1fr}.farm03-tabs button{flex:1 1 45%}}