@import "https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700;800;900&family=Roboto+Condensed:wght@500;600;700&display=swap";:root{color:#e8e5dc;font-synthesis:none;--gold:#d9a74b;--gold-light:#f0ca79;--paper:#e8e5dc;--muted:#97978e;--line:#2c2e2a;--panel:#121411;--panel-2:#171a16;--red:#c44b3e;background:#090a09;font-family:Noto Sans SC,system-ui,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 50% -20%,#282316 0,#10110e 30%,#090a09 70%);min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold-light);outline-offset:3px}.app-shell{min-height:100vh}.topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:10;background:#080908e0;border-bottom:1px solid #272821;grid-template-columns:1fr auto 1fr;align-items:center;height:76px;padding:0 4.5vw;display:grid;position:sticky;top:0}.brand{align-items:center;gap:12px;display:flex}.brand-mark{color:#13130f;background:var(--gold);clip-path:polygon(50% 0,92% 20%,83% 80%,50% 100%,17% 80%,8% 20%);place-items:center;width:38px;height:38px;font-family:Georgia,serif;font-size:25px;font-weight:900;display:grid}.brand b{letter-spacing:.05em;font-size:15px;display:block}.brand small{color:#75766e;letter-spacing:.18em;font:600 9px/1.5 Roboto Condensed,sans-serif;display:block}.stage-pill{color:#aeaea4;text-transform:uppercase;letter-spacing:.14em;align-items:center;gap:16px;font:600 11px Roboto Condensed,sans-serif;display:flex}.stage-pill span{color:var(--gold-light)}.stage-pill i{border-left:1px solid var(--line);padding-left:16px;font-style:normal}.header-stats{color:#77786f;justify-self:end;gap:25px;font-size:12px;display:flex}.header-stats b{color:var(--paper);margin-left:6px;font-size:14px}.header-actions{justify-self:end;align-items:center;gap:20px;display:flex}.restart-run{color:#aaa99f;letter-spacing:.05em;background:#11130f;border:1px solid #373930;padding:8px 12px;font-size:11px;font-weight:700;transition:all .18s}.restart-run span{color:var(--gold);margin-left:5px}.restart-run:hover{color:var(--paper);border-color:var(--gold);background:#211d13}main{min-height:calc(100vh - 76px)}.page{width:min(1480px,92vw);margin:0 auto;padding:58px 0 80px}.scene-page{isolation:isolate;position:relative}.scene-page:before{content:"";z-index:-1;background-image:linear-gradient(180deg, #0709085c, #070908d1 52%, #090a09 96%), linear-gradient(90deg, #0709088f, transparent 48%, #0709089e), var(--scene-image);filter:blur(2.5px)saturate(.72);opacity:.72;pointer-events:none;background-position:50% 24%;background-size:cover;border:1px solid #30332d;position:absolute;inset:18px -3vw 28px;transform:scale(1.008)}.recruit-scene:before{opacity:.62;background-position:50% 42%}.boss-scene:before{background-position:50% 18%}.eyebrow{color:var(--gold);letter-spacing:.22em;text-transform:uppercase;font:700 11px Roboto Condensed,sans-serif}.primary,.secondary{border:1px solid var(--gold);padding:12px 18px;font-weight:700;transition:all .18s}.primary{color:#13130f;background:var(--gold)}.primary:hover{background:var(--gold-light);transform:translateY(-1px)}.secondary{color:var(--gold-light);background:0 0}.secondary:hover{background:#2b2518}.large{justify-content:space-between;align-items:center;gap:20px;min-width:195px;padding:15px 23px;display:inline-flex}.intro{min-height:calc(100vh - 76px);padding-top:12vh;position:relative;overflow:hidden}.intro:before{content:"ULDUAR";color:#0000;-webkit-text-stroke:1px #d9a74b17;letter-spacing:-.06em;pointer-events:none;font:900 21vw/.8 Roboto Condensed,sans-serif;position:absolute;top:1vh;right:-3vw}.intro h1{z-index:1;max-width:880px;color:var(--paper);letter-spacing:-.055em;margin:20px 0 22px;font-size:clamp(53px,6.3vw,96px);line-height:1.03;position:relative}.intro h1 em{color:var(--gold);font-style:normal}.intro-copy{color:#a7a69c;max-width:650px;font-size:17px;line-height:1.85}.intro-actions{align-items:end;gap:14px;margin-top:38px;display:flex}.intro-actions label{color:#75766e;letter-spacing:.08em;gap:7px;font-size:11px;display:grid}.intro-actions input{width:180px;height:51px;color:var(--paper);border:1px solid var(--line);background:#12130f;padding:0 16px;font:700 15px Roboto Condensed,sans-serif}.rule-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);max-width:720px;margin-top:65px;display:grid}.rule-strip div{border-right:1px solid var(--line);align-items:baseline;gap:8px;padding:17px 20px;display:flex}.rule-strip div:last-child{border:0}.rule-strip b{color:var(--gold-light);font:700 25px Roboto Condensed,sans-serif}.rule-strip span{color:#85867d;font-size:11px}.fineprint{color:#5e6059;margin-top:20px;font-size:11px}.page-heading,.boss-banner,.loot-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px;display:flex}.page-heading h2,.boss-banner h2{letter-spacing:-.04em;margin:10px 0 12px;font-size:clamp(34px,4vw,58px);line-height:1}.page-heading p,.boss-banner p{color:var(--muted);margin:0}.round-dots{gap:7px;display:flex}.round-dots i{color:#5d5f58;border:1px solid #343631;border-radius:50%;place-items:center;width:25px;height:25px;font:600 9px Roboto Condensed,sans-serif;display:grid}.round-dots i.done{color:#a98545;background:#191610;border-color:#67532f}.round-dots i.active{color:#111;border-color:var(--gold);background:var(--gold)}.recruit-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:22px;display:grid}.candidate-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.candidate-card{--class-color:#fff;background:linear-gradient(145deg, color-mix(in srgb, var(--class-color) 18%, #151713), color-mix(in srgb, var(--class-color) 6%, #10120f) 52%, #10120f);border:1px solid color-mix(in srgb, var(--class-color) 28%, #2b2e29);border-top:3px solid color-mix(in srgb, var(--class-color) 78%, #333);min-width:0;padding:20px 16px 15px;transition:all .18s}.candidate-card:hover{border-color:color-mix(in srgb, var(--class-color) 45%, #333);transform:translateY(-3px);box-shadow:0 14px 35px #0007}.candidate-top{color:#8f9088;align-items:center;gap:6px;font-size:10px;display:flex}.candidate-top b{color:var(--class-color);margin-left:auto;font:600 10px Roboto Condensed}.class-dot{background:var(--class-color);width:6px;height:6px;box-shadow:0 0 8px var(--class-color);border-radius:50%}.candidate-card h3{letter-spacing:-.03em;white-space:nowrap;text-overflow:ellipsis;margin:22px 0 6px;font-size:25px;line-height:1;overflow:hidden}.spec-line{align-items:center;gap:8px;margin-bottom:20px;display:flex}.spec-line strong{color:var(--class-color);font-size:13px}.spec-line span{color:#777970;border-left:1px solid var(--line);align-items:center;padding-left:8px;font-size:10px;display:inline-flex}.candidate-card dl{border-top:1px solid var(--line);margin:0}.candidate-card dl div{border-bottom:1px solid #232520;grid-template-columns:60px 1fr;gap:7px;padding:8px 0;font-size:10px;display:grid}.candidate-card dt{color:#686a62}.candidate-card dd{color:#b9b8b0;text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.candidate-card blockquote{text-align:center;color:#d6d2c6;background:#0b0d0b;border-left:2px solid #5d4c2b;justify-content:center;align-items:center;height:55px;margin:15px 0 12px;padding:10px;font-size:11px;line-height:1.5;display:flex}.candidate-card blockquote span{color:var(--gold);padding:0 2px}.candidate-card button{color:#aaa99f;background:#171915;border:1px solid #3a3c36;justify-content:space-between;width:100%;padding:10px;font-size:11px;font-weight:700;display:flex}.candidate-card button:hover{color:#15150f;background:var(--gold);border-color:var(--gold)}.roster-panel,.strategy-panel{background:#11130f;border:1px solid #30322c}.panel-title{border-bottom:1px solid var(--line);color:#999a92;letter-spacing:.06em;justify-content:space-between;align-items:center;padding:17px 18px;font-size:11px;display:flex}.panel-title b{color:var(--gold-light);font:700 24px Roboto Condensed,sans-serif}.panel-title b small{color:#66685f;margin-left:2px;font-size:12px}.empty-roster{text-align:center;color:#5e6059;place-items:center;height:355px;font-size:12px;line-height:1.8;display:grid}.compact-roster{padding:8px 16px}.compact-roster>div{border-bottom:1px solid #252720;grid-template-columns:22px 6px 1fr auto 30px;align-items:center;gap:8px;height:39px;font-size:11px;display:grid}.compact-roster i,.member-name i,.ledger i{border-radius:50%;width:6px;height:6px}.compact-roster b{font-size:11px}.compact-roster small{color:#7e8077}.compact-roster em{color:#9b9b92;text-align:right;font:600 10px Roboto Condensed}.roster-no{color:#53564e;font:600 9px Roboto Condensed}.public-note{text-align:center;color:#60625a;background:#0c0e0b;padding:13px;font-size:9px}.boss-banner{border-bottom:1px solid var(--line);padding-bottom:28px}.attempt-badge{grid-template-columns:auto auto;align-items:end;column-gap:6px;display:grid}.attempt-badge span{color:#77786f;text-align:right;grid-column:1/3;font-size:10px}.attempt-badge b{color:var(--gold);font:700 49px/1 Roboto Condensed,sans-serif}.attempt-badge small{color:#686a61;padding-bottom:5px;font:600 14px Roboto Condensed,sans-serif}.prep-grid{grid-template-columns:1fr 300px;align-items:start;gap:22px;display:grid}.team-table{border:1px solid var(--line);background:#10120f}.table-head,.team-row{grid-template-columns:1.3fr .35fr 1fr .65fr;align-items:center;gap:18px;padding:0 20px;display:grid}.table-head{color:#5f615a;text-transform:uppercase;background:#0b0c0a;height:40px;font-size:9px}.team-row{--class-color:#999;border-top:1px solid color-mix(in srgb, var(--class-color) 16%, #262821);background:linear-gradient(90deg, color-mix(in srgb, var(--class-color) 12%, #10120f), #10120f 58%);min-height:57px;transition:background .18s}.team-row:hover{background:linear-gradient(90deg, color-mix(in srgb, var(--class-color) 19%, #10120f), #11130f 64%)}.member-name{align-items:center;gap:11px;display:flex}.member-name span{align-items:baseline;gap:8px;display:flex}.member-name b{font-size:12px}.member-name small{color:#686a62;font-size:9px}.team-row>strong{color:#adada4;font:600 12px Roboto Condensed}.team-row select{color:#dad8cf;background:#171916;border:1px solid #34362f;width:100%;padding:8px 10px;font-size:11px}.role{color:#96978f;border:1px solid #3a3c35;justify-content:center;align-items:center;gap:6px;padding:5px 7px;font-size:9px;display:inline-flex}.role-坦克{color:#8fb8de;background:#121c24;border-color:#384e62}.role-治疗{color:#83c894;background:#112017;border-color:#34543c}.role-近战DPS,.role-远程DPS{color:#d5a87a;background:#21180f;border-color:#5d4833}.role-counts{grid-template-columns:repeat(2,1fr);gap:7px;padding:15px;display:grid}.role-counts div{background:#181a16;border:1px solid #292c25;padding:12px}.role-counts span{color:#777970;font-size:9px;display:block}.role-counts b{color:var(--paper);font:700 24px Roboto Condensed}.checks{border-top:1px solid var(--line);gap:8px;padding:15px 18px;display:grid}.checks b{color:#777970;margin-bottom:3px;font-size:10px}.checks span{color:#aaa99f;font-size:11px}.warning-copy{color:#766e5b;background:#17150f;border-top:1px solid #322c20;margin:0;padding:15px 18px;font-size:10px;line-height:1.65}.battle-button{width:calc(100% - 30px);margin:15px}.morale-history{background:#11130f;border:1px solid #383529;margin-top:22px;margin-bottom:-8px;padding-top:0;padding-bottom:0}.morale-history-title{border-bottom:1px solid #292b25;align-items:center;gap:12px;min-height:48px;padding:0 18px;display:flex}.morale-history-title span{color:var(--gold);letter-spacing:.18em;font:700 9px Roboto Condensed}.morale-history-title b{font-size:12px}.morale-history-list>div{border-bottom:1px solid #252720;grid-template-columns:145px 1fr 42px 72px;align-items:center;gap:12px;min-height:43px;padding:8px 18px;display:grid}.morale-history-list>div:last-child{border-bottom:0}.morale-history-list span{color:#b6b5ac;font-size:10px}.morale-history-list span small{color:#6e7068;margin-left:7px;font-size:8px}.morale-history-list p{color:#85867e;margin:0;font-size:9px}.morale-history-list em{color:#8d8f86;text-align:right;font:700 13px Roboto Condensed}.morale-history-list em.up{color:#9bc978}.morale-history-list em.down{color:#da7166}.morale-history-list strong{color:#a9a99f;text-align:right;font:600 10px Roboto Condensed}.morale-history.compact{background:#0e100d;border-width:1px 0;margin:0}.morale-history.compact .morale-history-title{min-height:42px;padding:0 15px}.morale-history.compact .morale-history-title b{font-size:10px}.morale-history.compact .morale-history-list>div{grid-template-columns:1fr auto;gap:4px 10px;min-height:58px;padding:9px 15px}.morale-history.compact .morale-history-list span{font-size:9px}.morale-history.compact .morale-history-list p{grid-area:2/1/auto/-1;line-height:1.45}.morale-history.compact .morale-history-list em{grid-area:1/2}.morale-history.compact .morale-history-list strong{display:none}.wipe-report{background:linear-gradient(110deg,#1e1110,#11120f 58%);border:1px solid #6f302b;margin:-15px 0 28px}.wipe-title{color:#cf6459;letter-spacing:.12em;border-bottom:1px solid #522722;justify-content:space-between;padding:12px 16px;font:700 10px Roboto Condensed;display:flex}.wipe-title b{color:#9b7770}.event-track{grid-template-columns:repeat(4,1fr);display:grid}.event{border-right:1px solid #2a2b26;align-items:flex-start;gap:9px;min-height:78px;padding:13px;display:flex}.event:last-child{border:0}.event i{color:#9cb7a2;background:#18241b;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;font-size:10px;font-style:normal;display:grid}.event.险情 i{color:#d7ad5c;background:#2b2312}.event.失败 i{color:#de675b;background:#341613}.event b,.event small{display:block}.event b{margin-bottom:5px;font-size:10px}.event small{color:#74766e;font-size:9px;line-height:1.45}.wipe-bottom{border-top:1px solid #35231f;grid-template-columns:1fr 1.4fr;display:grid}.wipe-bottom>div{padding:14px 16px}.wipe-bottom small{color:#75534e;margin-bottom:4px;font-size:9px;display:block}.wipe-bottom b{color:#d1a09a;font-size:11px}.chat-box{background:#0c0d0b;border-left:1px solid #2b2d27}.chat-box p{color:#8f9088;margin:0 0 4px;font-size:9px}.kill-banner{text-align:center;border-bottom:1px solid var(--line);background:radial-gradient(circle at 50% 45%,#24301c,#0000 48%);padding:60px 20px 45px}.kill-banner>span{color:#a9c875;letter-spacing:.22em;font:700 11px Roboto Condensed}.kill-banner h2{letter-spacing:-.04em;margin:12px 0 8px;font-size:clamp(38px,5vw,65px)}.kill-banner p{color:#77796f;margin:0;font-size:11px}.loot-heading{margin-top:38px}.loot-heading h3,.section-title h3{margin:4px 0 0;font-size:24px}.loot-heading>span{color:#76786f;font-size:10px}.loot-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.loot-card{background:linear-gradient(135deg,#1b1811,#11120f 55%);border:1px solid #444033;grid-template-columns:96px 1fr;display:grid;position:relative;overflow:hidden}.loot-card:before{content:"";pointer-events:none;background:radial-gradient(circle at 10% 20%,#d2a43e18,#0000 28%);position:absolute;inset:0}.loot-grade{color:#d1a548;text-shadow:0 0 24px #d1a54855;border-right:1px solid #403a2a;grid-row:1/4;place-items:center;min-height:260px;font:800 46px Roboto Condensed;display:grid}.grade-S .loot-grade,.grade-Splus .loot-grade{color:#cc78e8;text-shadow:0 0 24px #b253d766}.loot-info{padding:23px 25px 16px}.loot-info>small{color:#85734d;text-transform:uppercase;letter-spacing:.12em;font-size:9px}.loot-info h4{margin:6px 0 5px;font-size:21px}.loot-info p{color:#777970;margin:0 0 16px;font-size:10px}.loot-info>div{color:#9c9b91;gap:16px;font-size:9px;display:flex}.bid-log{background:#0c0e0b;border-top:1px solid #292a24;padding:14px 25px}.bid-log p{color:#777970;margin:3px 0;font-size:9px}.bid-log p:last-child{color:#bbb9af}.sale-result{color:#a89465;border-top:1px solid #443c29;justify-content:space-between;align-items:center;padding:12px 25px;font-size:10px;display:flex}.sale-result b{color:var(--gold-light);font-size:18px}.sale-result.unsold{color:#8a746e;border-color:#3b2b28}.sale-result.unsold b{color:#bd7469}.auction-footer{justify-content:flex-end;align-items:center;gap:28px;margin-top:24px;display:flex}.auction-footer>div{text-align:right}.auction-footer small{color:#6e7068;font-size:9px;display:block}.auction-footer b{color:var(--gold-light);font-size:24px}.results-page{max-width:1200px}.result-hero{justify-content:space-between;align-items:center;padding:28px 0 40px;display:flex}.result-hero h2{letter-spacing:-.05em;margin:9px 0 5px;font-size:clamp(45px,6vw,76px)}.result-hero p{color:var(--muted);margin:0}.run-review{background:linear-gradient(115deg,#211b0f,#11130f 62%);border:1px solid #5b4a27;grid-template-columns:1fr auto;align-items:center;gap:30px;margin:-8px 0 28px;padding:24px 26px;display:grid}.run-review small{color:var(--gold);letter-spacing:.16em;font:700 9px Roboto Condensed}.run-review h3{color:#eee9dc;margin:7px 0 6px;font-size:21px}.run-review p{color:#aaa28f;max-width:840px;margin:0;font-size:11px;line-height:1.85}.run-review button{min-width:145px}.run-review.leader-fault{background:linear-gradient(115deg,#28110f,#11130f 66%);border-color:#74352e}.run-review.leader-fault small{color:#df7669}.disband-report{background:linear-gradient(115deg,#23100e,#11120f 58%);border:1px solid #6a302b;grid-template-columns:1fr 1.2fr;margin:18px 0 28px;display:grid}.disband-reason{border-right:1px solid #462521;padding:20px 22px}.disband-reason>span{color:#e17c70;letter-spacing:.08em;background:#321512;border:1px solid #6a302b;padding:4px 8px;font-size:8px;display:inline-flex}.disband-reason h3{color:#eee7df;margin:10px 0 5px;font-size:18px}.disband-reason p{color:#a6817b;margin:0;font-size:10px;line-height:1.7}.disband-chat{background:#0b0d0b;padding:16px 20px}.disband-chat small{color:#70524d;letter-spacing:.1em;margin-bottom:8px;font-size:8px;display:block}.disband-chat p{color:#92938a;margin:4px 0;font-size:9px;line-height:1.55}.progress-ring{--progress:0deg;background:conic-gradient(var(--gold) var(--progress), #23251f 0);border-radius:50%;place-items:center;width:132px;height:132px;display:grid;position:relative}.progress-ring:before{content:"";background:#0d0f0c;border-radius:50%;position:absolute;inset:8px}.progress-ring>div{text-align:center;position:relative}.progress-ring b{color:var(--gold-light);font:700 35px Roboto Condensed;display:block}.progress-ring b small{color:#777970;font-size:14px}.progress-ring span{color:#70726a;font-size:8px}.money-summary{background:#12140f;border:1px solid #383529;grid-template-columns:repeat(3,1fr);display:grid}.money-summary div{border-right:1px solid var(--line);padding:20px 24px}.money-summary div:last-child{border:0}.money-summary small{color:#73756d;font-size:9px;display:block}.money-summary b{color:var(--gold-light);margin-top:3px;font:700 26px Roboto Condensed;display:block}.result-columns{grid-template-columns:1fr 1fr;gap:30px;margin-top:43px;display:grid}.section-title{margin:25px 0 14px}.section-title>span{color:var(--gold);letter-spacing:.2em;font:700 9px Roboto Condensed}.boss-records,.awards-grid{border:1px solid var(--line);background:#11130f}.boss-records>div{border-bottom:1px solid #262821;grid-template-columns:28px 1fr auto auto;align-items:center;gap:10px;min-height:55px;padding:0 15px;display:grid}.boss-records>div:last-child{border:0}.boss-records span{color:#65675f;border:1px solid #353832;border-radius:50%;place-items:center;width:21px;height:21px;font-size:9px;display:grid}.boss-records span.cleared{color:#aacc78;background:#162012;border-color:#4c653b}.boss-records b{font-size:11px}.boss-records small{color:#73756d;font-size:9px}.boss-records em{color:#95978d;text-align:right;min-width:48px;font-size:9px;font-style:normal}.awards-grid{grid-template-columns:repeat(2,1fr);display:grid}.award{border-right:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:13px;min-height:83px;padding:13px 16px;display:flex}.award:nth-child(2n){border-right:0}.award:nth-last-child(-n+2){border-bottom:0}.award>i{width:33px;height:33px;color:var(--gold);background:#1f1a10;border:1px solid #443a25;place-items:center;font-style:normal;display:grid}.award small,.award b,.award em{display:block}.award small{color:#70726a;font-size:8px}.award b{margin:2px 0;font-size:13px}.award em{color:#9b8b69;font-size:8px;font-style:normal}.ledger{border:1px solid var(--line);background:#10120f}.ledger>div{color:#a6a69d;border-top:1px solid #252720;grid-template-columns:1.4fr 1fr .8fr .8fr .9fr;align-items:center;gap:15px;min-height:43px;padding:0 16px;font-size:10px;display:grid}.ledger .ledger-head{color:#5e6058;background:#0b0c0a;border-top:0;min-height:34px;font-size:8px}.ledger>div>span:first-child{align-items:center;gap:8px;display:flex}.ledger>div>span:first-child small{color:#66685f}.ledger strong{color:var(--gold-light)}.ledger .left{opacity:.45}.auction-records{margin-top:30px}.auction-table{border:1px solid var(--line);background:#10120f}.auction-table>div{border-bottom:1px solid #252720;grid-template-columns:1fr 1.6fr 1fr .6fr;align-items:center;gap:16px;min-height:43px;padding:0 16px;font-size:9px;display:grid}.auction-table>div:last-child{border:0}.auction-table span,.auction-table small{color:#777970}.auction-table em{color:var(--gold-light);text-align:right;font-style:normal}.mini-grade{color:#dfbd72;background:#241d10;border:1px solid #504226;place-items:center;width:25px;height:20px;margin-right:9px;font-size:8px;font-style:normal;display:inline-grid}.mini-grade.grade-S,.mini-grade.grade-Splus{color:#d693e9;background:#25152b;border-color:#654272}.no-data{color:#777970;padding:20px;font-size:10px}.final-cards{grid-template-columns:1fr 1fr 1.5fr;gap:12px;margin-top:20px;display:grid}.final-cards.loot-summary{grid-template-columns:repeat(2,1fr)}.final-cards>div{border:1px solid var(--line);background:#12140f;flex-direction:column;justify-content:center;min-height:96px;padding:17px;display:flex}.final-cards small{color:#72746b;font-size:9px}.final-cards b{margin:5px 0;font-size:13px}.final-cards span{color:#a08454;font-size:9px}.leader-review{background:linear-gradient(120deg,#1c1810,#11130f)!important;border-color:#433a26!important}.result-actions{justify-content:flex-end;gap:12px;margin-top:30px;display:flex}.results-page .result-hero .eyebrow{font-size:0}.results-page .result-hero .eyebrow:after{content:"RUN COMPLETE";font-size:10px}.compact-roster .compact-member{--class-color:#999;background:linear-gradient(90deg, color-mix(in srgb, var(--class-color) 15%, #11130f), transparent 86%);border-bottom-color:color-mix(in srgb, var(--class-color) 16%, #252720);grid-template-columns:22px 6px minmax(0,1fr) auto;height:auto;min-height:58px;margin:0 -8px;padding:8px}.compact-roster .compact-member:hover{background:linear-gradient(90deg, color-mix(in srgb, var(--class-color) 23%, #11130f), transparent 92%)}.compact-identity,.compact-public{min-width:0}.compact-identity b,.compact-identity small,.compact-public small,.compact-public em{display:block}.compact-identity small{color:#85877e;align-items:center;gap:4px;margin-top:3px;font-size:9px;display:flex}.compact-public{text-align:right;max-width:110px}.compact-public small{color:#97978f;white-space:nowrap;font-size:9px}.compact-public em{color:#a58755;white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:8px;font-style:normal;overflow:hidden}.member-name>span{align-items:center;gap:3px;min-width:0;display:grid}.member-name>span small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.role-mark{color:#c5c7bf;vertical-align:middle;background:#141613;border:1px solid #3a3c35;border-radius:5px;flex:0 0 20px;width:20px;height:20px;display:inline-block;position:relative}.role-mark-tank{color:#83c3ee;background:#10212d;border-color:#34627d}.role-mark-tank:before{content:"";clip-path:polygon(50% 0,100% 18%,91% 70%,50% 100%,9% 70%,0 18%);background:currentColor;width:10px;height:12px;position:absolute;top:3px;left:4px}.role-mark-tank:after{content:"";clip-path:polygon(50% 0,100% 20%,84% 68%,50% 100%,16% 68%,0 20%);background:#10212d;width:5px;height:7px;position:absolute;top:5px;left:6.5px}.role-mark-heal{color:#73d58e;background:#102319;border-color:#326b43}.role-mark-heal:before,.role-mark-heal:after{content:"";background:currentColor;border-radius:1px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.role-mark-heal:before{width:11px;height:4px}.role-mark-heal:after{width:4px;height:11px}.role-mark-dps{color:#e2ae67;background:#271a0e;border-color:#704a22}.role-mark-dps:before,.role-mark-dps:after{content:"";transform-origin:50% 80%;background:currentColor;border-radius:2px 2px 0 0;width:2px;height:12px;position:absolute;top:2px;left:8px}.role-mark-dps:before{transform:rotate(43deg)}.role-mark-dps:after{transform:rotate(-43deg)}.spec-line .role-mark{margin:-3px 5px -3px 0}.compact-identity .role-mark{border-radius:4px;flex-basis:16px;width:16px;height:16px;margin-right:1px;transform:scale(.88)}.compact-identity .role-mark-tank:before{top:1px;left:2px}.compact-identity .role-mark-tank:after{top:3px;left:4.5px}.compact-identity .role-mark-heal:before{width:9px}.compact-identity .role-mark-heal:after{height:9px}.compact-identity .role-mark-dps:before,.compact-identity .role-mark-dps:after{top:0;left:6px}.role-counts span{align-items:center;gap:6px;display:flex}.role-counts .role-mark{margin:-2px;transform:scale(.82)}.person-hover{position:relative}.person-hover:after{content:attr(data-intro);z-index:30;color:#d8d6cd;border:1px solid color-mix(in srgb, var(--class-color) 55%, #4b4d46);pointer-events:none;opacity:0;background:#080a08f2;width:min(340px,72vw);padding:11px 13px;font-size:10px;line-height:1.65;transition:opacity .16s,transform .16s;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%,-4px);box-shadow:0 12px 35px #000c}.person-hover:hover:after,.person-hover:focus-within:after{opacity:1;transform:translate(-50%)}.compact-member:after{left:auto;right:0;transform:translateY(-4px)}.compact-member:hover:after,.compact-member:focus-within:after{transform:translateY(0)}.combat-page{max-width:1180px}.combat-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:35px;padding-bottom:28px;display:flex}.combat-heading h2{letter-spacing:-.05em;margin:8px 0 6px;font-size:clamp(42px,5vw,68px)}.combat-heading p{color:#777970;margin:0;font-size:11px}.boss-health{text-align:right;width:min(380px,38vw)}.boss-health span{color:#777970;font-size:9px}.boss-health b{color:#d8aa4f;margin:3px 0 8px;font:700 28px Roboto Condensed;display:block}.boss-health>i{background:#251513;border:1px solid #45231f;height:7px;display:block;overflow:hidden}.boss-health>i>em{background:linear-gradient(90deg,#8e322b,#d35647);height:100%;margin-left:auto;transition:width .7s;display:block}.combat-console{background:#0d0f0c;border:1px solid #30322c;margin-top:24px}.console-top{color:#93948b;border-bottom:1px solid var(--line);letter-spacing:.08em;background:#151713;justify-content:space-between;align-items:center;height:42px;padding:0 17px;font-size:10px;display:flex}.console-top small{color:#686a62;font-size:9px}.log-line{opacity:0;border-bottom:1px solid #20221d;grid-template-columns:48px 25px 1fr auto;align-items:center;gap:12px;min-height:68px;padding:11px 18px;transition:opacity .35s,transform .35s,background .35s;display:grid;transform:translateY(5px)}.log-line.visible{opacity:1;transform:translateY(0)}.log-line time{color:#62645d;font:600 10px Roboto Condensed}.log-line>i{color:#a7c286;background:#182117;border:1px solid #34452c;border-radius:50%;place-items:center;width:22px;height:22px;font-size:9px;font-style:normal;display:grid}.log-line>div b{font-size:11px}.log-line>div p{color:#73756d;margin:4px 0 0;font-size:9px;line-height:1.5}.event-recovery{color:#9fbd82}.log-line>em{color:#69705f;font-size:9px;font-style:normal}.log-line.险情{background:linear-gradient(90deg,#1d180e,#0000 45%)}.log-line.险情>i{color:#e1b65f;background:#2b2311;border-color:#5d4b25}.log-line.险情>em{color:#b18f4d}.log-line.失败{background:linear-gradient(90deg,#24100e,#0000 48%)}.log-line.失败>i{color:#df6e63;background:#321512;border-color:#63302b}.log-line.失败>em{color:#b85c53}.log-line.finale{background:#151811;min-height:78px}.log-line.finale>div b{color:var(--paper);font-size:14px}.combat-progress{border:1px solid var(--line);background:#11130f;border-top:0;height:44px;position:relative;overflow:hidden}.combat-progress>span{background:#d9a74b12;border-right:1px solid #755c2c;transition:width .7s;position:absolute;inset:0 auto 0 0}.combat-progress button{z-index:1;float:right;color:#85795f;background:0 0;border:0;height:100%;padding:0 17px;font-size:9px;position:relative}.fight-stats-strip{background:#12140f;border:1px solid #35372f;grid-template-columns:repeat(5,1fr);margin-top:18px;display:grid}.fight-stats-strip>div{border-right:1px solid var(--line);padding:16px 19px}.fight-stats-strip>div:last-child{border:0}.fight-stats-strip small{color:#6f7169;letter-spacing:.08em;font-size:8px;display:block}.fight-stats-strip b{color:#ddd9cc;margin-top:3px;font:700 21px Roboto Condensed;display:block}.stat-kill{color:#9fc270!important}.stat-wipe{color:#cb675d!important}.meters-grid{grid-template-columns:1.35fr .85fr;gap:14px;margin-top:18px;display:grid}.meter-panel{border:1px solid var(--line);background:#10120f}.meter-title{background:#0b0c0a;border-bottom:1px solid #252720;justify-content:space-between;align-items:center;height:38px;padding:0 14px;display:flex}.meter-title span{color:#8c7446;letter-spacing:.16em;font:700 8px Roboto Condensed}.meter-title b{color:#8d8f86;font-size:9px}.meter-row{--class-color:#999;border-bottom:1px solid color-mix(in srgb, var(--class-color) 14%, #22241f);background:linear-gradient(90deg, color-mix(in srgb, var(--class-color) 8%, #10120f), transparent 70%);grid-template-columns:18px 20px 1fr 56px;align-items:center;gap:8px;min-height:44px;padding:0 13px;display:grid}.meter-row:last-child{border:0}.meter-row>em{color:#55574f;font:600 8px Roboto Condensed}.meter-row>.role-mark{transform:scale(.86)}.meter-row>span{align-items:baseline;gap:7px;min-width:0;padding:7px 0;display:flex;position:relative;overflow:hidden}.meter-row>span b,.meter-row>span small{z-index:1;position:relative}.meter-row>span b{font-size:10px}.meter-row>span small{color:#696b63;font-size:8px}.meter-status{color:#c78770;font-style:normal}.meter-row.meter-dead{background:linear-gradient(90deg, color-mix(in srgb, var(--class-color) 7%, #1d1110), transparent 70%)}.meter-row>span u{background:linear-gradient(90deg, color-mix(in srgb, var(--class-color) 43%, transparent), color-mix(in srgb, var(--class-color) 10%, transparent));border-right:1px solid var(--class-color);text-decoration:none;position:absolute;inset:4px auto 4px 0}.meter-row>span u.heal{background:linear-gradient(90deg, color-mix(in srgb, var(--class-color) 38%, transparent), color-mix(in srgb, var(--class-color) 9%, transparent));border-color:var(--class-color)}.meter-row>strong{color:#d4c49d;text-align:right;font:600 11px Roboto Condensed}.no-meter{color:#62645d;text-align:center;margin:0;padding:32px 15px;font-size:9px}.combat-actions{justify-content:flex-end;align-items:center;gap:24px;margin-top:20px;display:flex}.combat-actions>span{color:#74766e;font-size:9px}.combat-actions button b{font-size:15px}.fight-history-table,.player-stats-table{border:1px solid var(--line);background:#10120f;overflow:hidden}.fight-history-table>div{color:#aaa99f;border-top:1px solid #252720;grid-template-columns:1.4fr .8fr .7fr .9fr .9fr;align-items:center;gap:14px;min-height:46px;padding:0 16px;font-size:10px;display:grid}.fight-history-table .fight-history-head,.player-stats-table .player-stats-head{color:#5e6058;background:#0b0c0a;border-top:0;min-height:34px;font-size:8px}.fight-history-table>div>span:first-child b,.fight-history-table>div>span:first-child small{display:block}.fight-history-table>div>span:first-child small{color:#65675f;margin-top:2px;font-size:8px}.fight-history-table strong{font-size:9px}.player-stats-table{margin-top:12px}.player-stats-table>div{color:#aaa99f;border-top:1px solid #252720;grid-template-columns:1.3fr .45fr .8fr .8fr .8fr .8fr;align-items:center;gap:14px;min-height:43px;padding:0 16px;font-size:10px;display:grid}.player-stats-table>div>span:first-child{align-items:center;gap:8px;display:flex}.player-stats-table>div>span:first-child i{border-radius:50%;width:6px;height:6px}.player-stats-table>div>span:first-child small{color:#62645d;font-size:8px}.player-stats-table strong{color:#d1b879;font:600 10px Roboto Condensed}@media (width<=1180px){.candidate-grid{grid-template-columns:repeat(3,1fr)}.candidate-card:nth-child(n+4){grid-column:span 1}.recruit-layout{grid-template-columns:1fr 270px}}@media (width<=820px){.run-review{grid-template-columns:1fr}.run-review button{width:100%}.topbar{grid-template-columns:1fr auto;height:62px;padding:0 4vw}.stage-pill{display:none}.brand b{font-size:12px}.brand-mark{width:32px;height:32px}.header-stats{gap:10px}.header-stats span{font-size:0}.header-stats b{font-size:11px}.header-actions{gap:8px}.restart-run{padding:7px 9px;font-size:10px}.page{width:92vw;padding-top:36px}.intro{padding-top:11vh}.intro h1{font-size:49px}.intro-actions{flex-direction:column;align-items:stretch}.intro-actions input{width:100%}.rule-strip{grid-template-columns:repeat(2,1fr)}.rule-strip div:nth-child(2){border-right:0}.rule-strip div:nth-child(-n+2){border-bottom:1px solid var(--line)}.page-heading,.boss-banner{flex-direction:column;align-items:flex-start}.round-dots{flex-wrap:wrap}.recruit-layout,.prep-grid,.result-columns{grid-template-columns:1fr}.candidate-grid{grid-template-columns:repeat(2,1fr)}.roster-panel{grid-row:1}.compact-roster{grid-template-columns:1fr 1fr;gap:0 15px;display:grid}.empty-roster{height:90px}.table-head,.team-row{grid-template-columns:1.3fr .3fr 1fr;gap:8px;padding:0 11px}.table-head span:last-child,.team-row>.role{display:none}.event-track{grid-template-columns:repeat(2,1fr)}.morale-history-list>div{grid-template-columns:110px 1fr 36px 66px;gap:8px;padding:8px 12px}.wipe-bottom{grid-template-columns:1fr}.chat-box{border-left:0;border-top:1px solid var(--line)}.loot-grid{grid-template-columns:1fr}.money-summary{grid-template-columns:repeat(3,1fr)}.ledger{overflow-x:auto}.ledger>div{min-width:670px}.final-cards{grid-template-columns:1fr}.auction-table{overflow-x:auto}.auction-table>div{min-width:600px}.combat-heading{flex-direction:column;align-items:flex-start}.boss-health{text-align:left;width:100%}.boss-health>i>em{margin-left:0}.meters-grid{grid-template-columns:1fr}.fight-stats-strip{grid-template-columns:repeat(2,1fr)}.fight-stats-strip>div:nth-child(2n){border-right:0}.fight-stats-strip>div:not(:last-child){border-bottom:1px solid var(--line)}.combat-actions{flex-direction:column;align-items:stretch}.combat-actions button{width:100%}.fight-history-table,.player-stats-table{overflow-x:auto}.fight-history-table>div{min-width:650px}.player-stats-table>div{min-width:720px}.disband-report{grid-template-columns:1fr}.disband-reason{border-bottom:1px solid #462521;border-right:0}}@media (width<=500px){.candidate-grid{grid-template-columns:1fr}.candidate-card{padding:20px}.compact-roster{grid-template-columns:1fr}.intro h1{font-size:43px}.result-hero{align-items:flex-start}.run-review{padding:18px}.final-cards.loot-summary{grid-template-columns:1fr}.progress-ring{flex:none;width:96px;height:96px}.progress-ring b{font-size:26px}.loot-card{grid-template-columns:62px 1fr}.loot-grade{font-size:32px}.result-actions{flex-direction:column-reverse}.result-actions button{width:100%}.log-line{grid-template-columns:38px 22px 1fr;gap:8px;padding:10px}.log-line>em{display:none}.morale-history-list>div{grid-template-columns:1fr auto auto}.morale-history-list p{grid-area:2/1/auto/-1}}
