:root{--bg:#08111f;--panel:#0d192a;--panel2:#101f31;--border:#263d50;--muted:#91a6b8;--text:#eaf2f6;--gold:#eecb86;--gold2:#a76c2d;--red:#c3524d;--blue:#61a8de;--violet:#a77be4;--teal:#6bbfae;--shadow:0 18px 56px #0008}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);min-height:100vh}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,input:focus-visible{outline:2px solid #eac27a;outline-offset:2px}p{line-height:1.55}.starlight{position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse 55% 45% at 100% 8%,#17334b 0%,transparent 70%),radial-gradient(ellipse 42% 35% at 2% 60%,#24192866 0%,transparent 65%),linear-gradient(#091420,#070d15)}.starlight:after{content:"";position:absolute;inset:0;background-image:radial-gradient(1px 1px at 13% 8%,#d9e3f87c 100%,transparent),radial-gradient(1px 1px at 75% 22%,#d9e3f876 100%,transparent),radial-gradient(1px 1px at 53% 64%,#d9e3f854 100%,transparent);background-size:320px 370px;opacity:.25}.topbar{height:70px;border-bottom:1px solid #32465a73;background:#0a1623ee;display:flex;align-items:center;gap:30px;padding:0 max(22px,calc((100vw - 1370px)/2));position:sticky;top:0;z-index:10;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:11px;min-width:211px;font-family:Georgia,serif;font-weight:800;letter-spacing:2px;font-size:20px;color:#f4d39a;text-decoration:none}.brand small{display:block;font:10px system-ui;letter-spacing:2px;color:#97a8b5;margin-top:3px}.brand-emblem{border:1px solid #cda766;border-radius:100%;height:40px;width:40px;display:grid;place-items:center;font-size:31px}.nav{display:flex;gap:6px;flex:1}.nav-link{background:none;border:0;color:#9ab0be;padding:12px 13px;border-radius:9px;font-size:13px;white-space:nowrap}.nav-link:hover,.nav-link.active{background:#182b3c;color:#f0d095}.proto-pill{font-size:10px;letter-spacing:1px;border:1px solid #a67c4160;padding:8px 9px;border-radius:30px;color:#d5b780;white-space:nowrap}.container{width:min(1320px,calc(100% - 36px));margin:0 auto}.hero{min-height:310px;margin:23px 0 27px;border:1px solid #4861778c;border-radius:20px;position:relative;overflow:hidden;display:flex;align-items:center;background:linear-gradient(90deg,#091725 0%,#0c1e2def 52%,#132a3cc9 100%);box-shadow:var(--shadow)}.hero:before{content:"";position:absolute;right:6%;top:-105px;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle at 50%,#b2c7cfab 0%,#809cab5f 26%,#426a8470 27%,#14283708 31%);opacity:.7}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 80%,#ea99551e,transparent 45%),linear-gradient(0deg,#050b12a8,transparent 40%);pointer-events:none}.hero-copy{width:54%;position:relative;z-index:2;padding:32px 40px}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:800;color:var(--gold)}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;margin:0;line-height:1.17}h1{font-size:clamp(37px,4vw,60px);font-weight:800;letter-spacing:.6px;margin:13px 0}h1 em{font-style:normal;color:#efc37b}.hero p{font-size:14px;line-height:1.7;color:#aec0c9;max-width:540px}.hero-actions{display:flex;gap:11px;margin-top:22px}.btn{border-radius:9px;border:1px solid transparent;padding:12px 17px;font-weight:700;transition:.16s;display:inline-flex;align-items:center;justify-content:center;gap:12px;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn.gold{background:linear-gradient(125deg,#eac587,#a56c29);color:#16120d;box-shadow:0 3px 15px #b9803d45}.btn.ghost{border-color:#526780;background:#112234b0;color:#e8eef2}.btn.outline{background:transparent;border-color:#496173;color:#d2dfe5}.btn.subtle{background:#25354a;border-color:#43536a;color:#d8e7f0}.btn.small{font-size:12px;padding:8px 11px}.btn.full{width:100%}.hero-cards{position:absolute;right:8%;top:8px;height:300px;width:39%;z-index:1;perspective:900px}.hero-fan{position:absolute;bottom:-50px;width:175px;height:265px;border:3px solid #c8a267;box-shadow:0 12px 36px #000a;border-radius:12px;background-position:center;background-size:cover}.hero-fan:after{content:"";position:absolute;inset:4px;border:1px solid #e0ba78a6;border-radius:7px}.hero-fan.left{left:6%;transform:rotate(-19deg) translateY(28px);filter:brightness(.7)}.hero-fan.center{left:32%;z-index:2;transform:rotate(1deg) translateY(-2px)}.hero-fan.right{left:57%;transform:rotate(17deg) translateY(20px);filter:brightness(.75)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:22px;align-items:start}.view{display:none}.view.active{display:block}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px}.section-head h2{font-size:28px;margin:7px 0}.section-head p{color:var(--muted);font-size:13px;margin:0}.section-head.section-tight{margin-top:30px}.step-tag{color:#deb56e;border:1px solid #765c38;background:#2b261b;border-radius:7px;font-size:11px;letter-spacing:1px;padding:7px 10px;white-space:nowrap}.panel{background:linear-gradient(160deg,#112236,#0b1827);border:1px solid var(--border);border-radius:13px;padding:18px;box-shadow:0 7px 20px #0004}.form-grid{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:16px}.field{font-size:12px;color:#bdced7;display:block;font-weight:650}.field input,.catalog-controls input,.lobby-tools input{display:block;width:100%;height:41px;margin-top:8px;border:1px solid #3a536c;color:#eff6f6;background:#081725;border-radius:7px;padding:0 13px;outline:0}.input-stepper{display:flex;align-items:center;border:1px solid #3a536c;border-radius:7px;margin-top:8px;overflow:hidden;height:41px}.input-stepper button{height:100%;width:42px;border:0;background:#1e3346;color:#f3d3a1;font-size:20px}.input-stepper output{flex:1;text-align:center;font-size:17px;color:#f3f3ed}.subhead{display:flex;align-items:center;justify-content:space-between;gap:9px;margin:25px 0 12px}.subhead h3{font-size:15px}.subhead span{font-size:11px;color:#8196a5}.preset-chips{display:flex;flex-wrap:wrap;gap:7px}.preset-chip{padding:9px 13px;border:1px solid #3d5368;border-radius:7px;background:#112336;color:#c4d6e0;font-size:12px;font-weight:700}.preset-chip.active{border-color:#e1ba72;background:#45381f;color:#ffe4ae;box-shadow:0 0 0 1px #ac854d inset}.preset-summary{display:flex;align-items:center;gap:12px;background:#0a1a2a;border:1px solid #3e586c;border-radius:9px;margin:17px 0 15px;padding:13px}.preset-summary .orb{width:37px;height:37px;background:linear-gradient(135deg,#af7c31,#65421f);border-radius:50%;display:grid;place-items:center;font-size:24px;color:#f2d99c}.grow{flex:1;min-width:0}.preset-summary strong{font:700 16px Georgia,serif}.preset-summary p{font-size:11px;color:var(--muted);margin:5px 0 0}.three-factions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.faction-box{background:#0b1b2b;border:1px solid #2c4355;border-radius:7px;text-align:center;padding:11px 4px}.faction-box .stat-icon{display:block;margin-bottom:5px;font-size:18px}.faction-box strong{font:700 23px Georgia}.faction-box small{display:block;color:#9fb1bc;font-size:10px;margin-top:3px}.faction-box.wolf strong{color:#ef8178}.faction-box.village strong{color:#84c4ed}.faction-box.independent strong{color:#c9a4f9}.faction-box.switch strong{color:#91d6c9}.catalog-controls{display:flex;flex-direction:column;gap:12px;margin:18px 0}.catalog-controls input{height:44px;margin:0}.filters{display:flex;flex-wrap:wrap;gap:7px}.filters button{border:1px solid #344d60;background:#0c1d2d;color:#a9bbc8;padding:8px 11px;border-radius:30px;font-size:12px}.filters button.active{border-color:#a47d49;background:#322a20;color:#f4cf8f}.roles-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.role-tile{border:1px solid #45617a;border-radius:12px;background:#0c1b2a;overflow:hidden;position:relative;transition:transform .18s,border-color .18s;min-width:0}.role-tile:hover{transform:translateY(-4px);border-color:#bf9f71}.role-tile.wolf{--tone:#d75c50;--tint:#451e24}.role-tile.village{--tone:#6cb5ec;--tint:#153650}.role-tile.independent{--tone:#c18dff;--tint:#372346}.role-tile.switch{--tone:#75caba;--tint:#173a36}.tile-top{height:185px;position:relative;overflow:hidden;cursor:pointer;background:radial-gradient(ellipse at 50% 55%,var(--tint),#09111d 75%)}.tile-top img{width:100%;height:100%;object-fit:cover;display:block}.tile-top .no-art{height:100%;display:flex;align-items:center;justify-content:center;font-size:72px;filter:drop-shadow(0 8px 22px var(--tint));background:radial-gradient(circle at center,#314a6770,transparent 65%)}.tile-top:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#07131ceb 0%,transparent 42%);pointer-events:none}.role-ribbon{position:absolute;top:8px;left:8px;background:#061622cc;border:1px solid var(--tone);border-radius:18px;padding:5px 7px;font-size:11px;color:var(--tone);z-index:2}.role-en{position:absolute;right:8px;top:8px;writing-mode:vertical-rl;letter-spacing:2px;font:700 10px Georgia,serif;opacity:.95;text-shadow:0 2px 5px #000;z-index:2;max-height:150px}.tile-name{position:absolute;bottom:8px;left:9px;right:9px;font:700 18px Georgia,"Times New Roman",serif;color:#fff0d0;text-shadow:0 2px 8px #000;z-index:2;text-align:center}.tile-body{border-top:2px solid var(--tone);padding:10px 10px 11px;min-height:88px}.tile-desc{font-size:11px;line-height:1.45;color:#c4d4df;height:46px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.tile-actions{display:flex;align-items:center;justify-content:space-between;margin-top:9px;gap:4px}.qty{display:flex;align-items:center;gap:8px}.qty button{width:25px;height:25px;border-radius:6px;border:1px solid #536779;background:#1b2d3e;color:#e9d3a9;font-size:16px;line-height:1}.qty b{min-width:14px;text-align:center;font-size:12px}.detail-btn{border:0;background:none;color:#c4a56b;font-size:11px;text-decoration:underline;padding:3px}.status-mark{font-size:9px;color:#8dabb9}.catalog-footer{padding:18px 0 28px;display:flex;justify-content:space-between;align-items:center;color:#90a7b7;font-size:12px}.sidecol{position:sticky;top:92px}.deck-panel{padding:20px}.deck-head{display:flex;align-items:center;justify-content:space-between}.deck-head h3{font-size:19px;margin-top:8px}.moonbadge{color:#d6ba7d;background:#2d2a28;border:1px solid #7f6848;border-radius:50%;font-size:25px;padding:4px 10px}.counter{display:flex;align-items:baseline;justify-content:center;gap:7px;margin:19px auto 11px}.counter strong{font:700 51px Georgia;color:#efd09b}.counter span{color:#9eb1bb;font-size:18px}.progress{background:#1f3143;height:7px;border-radius:9px;overflow:hidden}.progress div{height:100%;width:30%;background:linear-gradient(90deg,#9c6e30,#f0d097);transition:width .2s}.notice{font-size:12px;margin:11px 0 15px;padding:8px 10px;border-radius:6px}.notice.good{color:#a5e8cb;background:#1c4d4145}.notice.bad{color:#ffaaa0;background:#73322c59}.notice.warn{color:#f4d391;background:#6c562951}.selected-roles{max-height:315px;overflow:auto;display:flex;flex-wrap:wrap;gap:7px;align-content:start}.selected-role{font-size:11px;display:flex;align-items:center;gap:6px;border:1px solid #34495c;background:#122437;padding:7px 8px;border-radius:8px}.selected-role b{color:#f2ce92}.divider{border-top:1px solid #2d4659;margin:17px 0}.deck-panel .full+.full{margin-top:9px}.note{margin-top:17px;border-top:1px solid #2d4659;padding-top:14px}.note strong{font-size:12px;color:#e3c18a}.note p{font-size:11px;color:#92a8b8;margin:7px 0 0}.feature-panel{margin-top:17px;padding:19px}.feature-line{font-size:12px;display:flex;gap:11px;padding-top:16px;color:#b9cbd4}.feature-line span:first-child{font-size:17px}.rules-list{display:grid;gap:4px}.rule-row{display:flex;justify-content:space-between;gap:18px;align-items:center;border-bottom:1px solid #2b4055;padding:15px 0}.rule-row:last-child{border-bottom:0}.rule-row strong{display:block;font-size:13px}.rule-row p{font-size:11px;color:#92a6b2;margin:5px 0 0}.switch{border:1px solid #42596d;background:#253447;min-width:47px;height:27px;border-radius:25px;padding:3px}.switch span{display:block;width:19px;height:19px;background:#d0d8df;border-radius:50%;transition:transform .2s}.switch.on{background:#216d63;border-color:#66b5a7}.switch.on span{background:#bbf2db;transform:translateX(19px)}.rule-note{font-size:12px;color:#e5c38b;background:#3b30223b;border:1px solid #675037;padding:12px;border-radius:7px;margin-top:15px}.lobby-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:14px}.lobby-tools{display:flex;gap:7px;margin:17px 0;flex-wrap:wrap}.lobby-tools input{flex:1 1 160px;width:auto;margin:0}.people-list{min-height:200px}.person{padding:11px 0;display:flex;align-items:center;gap:9px;border-bottom:1px solid #253d4d}.person-avatar{width:30px;height:30px;border-radius:50%;background:#263e55;display:grid;place-items:center;color:#e7c384}.person-name{flex:1;font-size:13px}.ready-btn{font-size:11px;background:#173c34;border:1px solid #2c8069;color:#acf2cf;border-radius:15px;padding:6px 9px}.ready-btn.unready{background:#403021;border-color:#815c38;color:#f2be92}.remove-person{border:0;background:none;color:#ca8d89;font-size:19px;padding:0 4px}.lobby-side p{font-size:12px;color:#9cabb6}.lobby-status{padding:12px;background:#102339;border-radius:8px;margin:18px 0;font-size:12px;line-height:1.9}.tiny{font-size:10px!important}.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.modal-backdrop{position:fixed;inset:0;background:#000b;backdrop-filter:blur(5px);z-index:20;display:grid;place-items:center;padding:15px}.modal-backdrop[hidden]{display:none}.modal-panel{position:relative;max-width:630px;max-height:92vh;overflow-y:auto;width:100%;border:1px solid #b48a52;border-radius:17px;background:linear-gradient(130deg,#182738,#091624);box-shadow:0 22px 70px #000c;padding:28px}.close-modal{position:absolute;right:14px;top:10px;border:0;color:#c7d9e6;background:transparent;font-size:27px;z-index:2}.modal-role{display:grid;grid-template-columns:180px 1fr;gap:22px;align-items:start}.modal-card{height:280px;border:3px solid #cfab72;border-radius:11px;overflow:hidden;background:#14263c;position:relative}.modal-card img{width:100%;height:100%;object-fit:cover}.modal-card .blank-art{height:100%;display:grid;place-items:center;font-size:80px}.modal-card span{position:absolute;bottom:0;left:0;right:0;padding:14px 5px;background:linear-gradient(transparent,#091521 25%);text-align:center;font:700 20px Georgia;color:#ffe7b1}.modal-panel h2{font-size:28px;margin:8px 0 12px}.modal-panel p{font-size:13px;color:#c3d2da}.modal-panel .eyebrow{color:#deb67c}.modal-panel .box-note{font-size:11px;color:#9fb7c2;border-top:1px solid #46596c;padding-top:13px}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);padding:12px 18px;border:1px solid #aa8856;background:#1e2b37;color:#f0d49a;border-radius:9px;box-shadow:0 10px 40px #0009;opacity:0;pointer-events:none;transition:opacity .2s;z-index:30}.toast.show{opacity:1}footer{text-align:center;color:#73899a;font-size:11px;padding:40px 0 22px} @media(max-width:1150px){.roles-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-cards{right:4%}.topbar{gap:12px}.brand{min-width:165px}.proto-pill{display:none}} @media(max-width:860px){.layout{display:block}.sidecol{position:static;display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:16px}.feature-panel{margin-top:0}.roles-grid,.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.topbar{flex-wrap:wrap;height:auto;padding:8px 14px;gap:4px}.brand{height:40px;min-width:0;margin-right:auto}.nav{order:2;flex:1 0 100%;justify-content:space-between;overflow:auto}.nav-link{font-size:11px;padding:9px}.hero{min-height:270px}.hero-copy{width:60%}.hero-cards{right:0;width:44%;transform:scale(.78);transform-origin:right center}.hero p{font-size:12px}.tile-top{height:180px}}@media(max-width:620px){.container{width:calc(100% - 22px)}.hero{min-height:238px;margin:11px 0 20px}.hero-copy{padding:21px 16px;width:100%}.hero-copy h1{font-size:33px;max-width:260px}.hero-copy p{max-width:260px;font-size:11px}.hero-cards{right:-75px;top:30px;opacity:.55;transform:scale(.65)}.hero-actions .btn{font-size:11px;padding:10px 11px}.section-head h2{font-size:25px}.form-grid{grid-template-columns:1fr 130px;gap:9px}.panel{padding:13px}.room-setup .subhead{display:block}.subhead span{display:block;margin-top:4px}.preset-chip{padding:8px 10px}.preset-summary{gap:8px}.preset-summary strong{font-size:13px}.preset-summary .orb{display:none}.preset-summary button{font-size:10px;padding:6px}.three-factions{gap:5px}.faction-box strong{font-size:20px}.faction-box small{font-size:9px}.roles-grid,.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.tile-top{height:185px}.tile-name{font-size:16px}.tile-desc{font-size:11px}.sidecol{display:block}.feature-panel{margin-top:13px}.lobby-layout{grid-template-columns:1fr}.modal-role{grid-template-columns:1fr}.modal-card{max-width:210px;margin:auto}.modal-panel{padding:23px}.hero-fan{width:145px}.catalog-footer{display:block}.catalog-footer span{display:block;margin:5px 0}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
