:root{color:#e9e9dc;font-synthesis:none;--muted:#a1ada9;--gold:#c8b785;--line:#87958e38;--green:#b9d7b9;background:#101a1d;font-family:Noto Sans KR,sans-serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;transition:background .18s,transform .18s,border-color .18s}button:disabled{cursor:default;opacity:.43}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:4px;outline:2px solid #d8e9bc}button:not(:disabled):hover{filter:brightness(1.15)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500}#world,.veil{pointer-events:none;position:fixed;inset:0}#world{background:url(/art/gravehold-temporary-v1.png) 50%/cover}#world canvas{display:block}.veil{background:linear-gradient(90deg,#0b141cec 0%,#0b151cd9 24%,#0b141c35 72%),linear-gradient(#09131b65,#0000 60%,#091519ed)}#app{flex-direction:column;min-height:100vh;padding:0 5vw;display:flex;position:relative}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:105px;display:flex}.brand{color:#ece8d8;letter-spacing:3px;align-items:center;gap:15px;font:24px Georgia,serif;text-decoration:none;display:flex}.brand-mark{color:var(--gold);font-size:42px}.brand small{letter-spacing:5px;margin-top:7px;font:10px Noto Sans KR,sans-serif;display:block}.header-right{color:var(--green);gap:24px;font-size:12px;display:flex}#identity{color:#e2dfcd;border-left:1px solid var(--line);padding-left:24px}#identity:empty{display:none}.offline{color:#e2b279!important}main{flex:1;position:relative}footer{color:#929d98;letter-spacing:.5px;justify-content:space-between;padding:25px 0;font-size:11px;display:flex}.entrance{max-width:670px;padding:9vh 0 5vh}.eyebrow{letter-spacing:3px;color:var(--gold);margin-bottom:24px;font-size:10px;font-weight:600}.entrance h1{letter-spacing:-2px;margin-bottom:22px;font-family:Noto Serif KR,serif;font-size:clamp(38px,3.6vw,64px);line-height:1.5}.intro{color:#b7c3bd;margin-bottom:36px;font-size:15px;line-height:2}label{color:#c4cfc5;margin:0 0 10px;font-size:12px;display:block}input{color:#f5f2e6;background:#101b20cc;border:1px solid #a9b5a14d;border-radius:2px;min-width:0;padding:15px 17px}input::placeholder{color:#7e8f89}.input-row{gap:10px;max-width:590px;display:flex}.input-row input{flex:1;width:220px}.primary{color:#152822;white-space:nowrap;background:#bdcda7;border:1px solid #d0d8bd;border-radius:2px;padding:14px 23px;font-size:13px;font-weight:600}.fine{margin:14px 0 0;color:#98a9a2!important;font-size:11px!important;line-height:1.8!important}.build-note{color:#bac3b6;border-left:2px solid #b39f65;margin-top:34px;padding-left:15px;font-size:12px;line-height:1.9}.build-note>span{color:#d4c89b;letter-spacing:1px;font-size:10px;display:block}.chapter{color:#e8e6ce;text-align:right;position:absolute;bottom:9%;right:2%}.chapter>span{letter-spacing:3px;color:#bfc6b2;font-size:10px}.chapter>div{margin:16px 0;font:26px/1.7 Noto Serif KR,serif}.chapter i{background:#c5cbaa;width:55px;height:1px;display:inline-block}.lobby,.preparation{padding:40px 0 20px}.section-heading{justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.section-heading .eyebrow{margin-bottom:13px}.section-heading h1{margin-bottom:10px;font-family:Noto Serif KR,serif;font-size:32px}.section-heading p{color:#b1bcb5;margin:0;font-size:13px}.counter{color:#bdc9b7;font-size:12px}.lobby-grid{grid-template-columns:330px 1fr;gap:24px;display:grid}.panel{border:1px solid var(--line);background:#101e23e8;border-radius:3px}.create-panel{padding:27px}.step{color:var(--gold);letter-spacing:2px;font-size:13px}.panel h2{margin:18px 0;font-size:19px}.panel p{color:#a9bbb3;font-size:13px;line-height:1.9}.create-panel form{margin-top:28px}.create-panel input,.create-panel .primary{width:100%;margin-bottom:12px}.room-list{min-height:370px;padding:12px 26px}.room-list h2 span{color:#d2c89c;border:1px solid #7c846948;margin-left:10px;padding:3px 7px;font-size:10px}.room-row{border-top:1px solid var(--line);align-items:center;gap:22px;padding:23px 0;display:flex}.room-row>div{flex:1;min-width:0}.room-row strong{overflow-wrap:anywhere;font-size:15px;display:block}.room-row small{color:var(--muted);margin-top:7px;font-size:11px;display:block}.room-row>span{color:#b1c1b0;font-size:12px}.quiet{color:#d8dfcf;background:#1b2a2b99;border:1px solid #a5b2a957;border-radius:2px;padding:10px 15px;font-size:12px}.empty{text-align:center;color:#afbeb5;padding:54px 10px}.empty>span{color:#7a927d;font-size:40px}.empty h3{margin:14px 0 8px;font-size:16px}.prep-grid{grid-template-columns:minmax(0,1fr) 280px;gap:24px;display:grid}.seats{grid-template-columns:1fr 1fr;gap:12px;display:grid}.seat{border:1px solid var(--line);background:#102025db;align-items:center;gap:10px;min-height:57px;padding:16px;font-size:12px;display:flex}.seat strong{overflow-wrap:anywhere;flex:1}.seat strong small{color:var(--gold);margin-left:4px;font-size:10px}.seat>span:last-child{color:#b9c7b8;font-size:10px}.presence{background:#82908b;border-radius:50%;width:6px;height:6px}.presence.online{background:#b5d5a2;box-shadow:0 0 9px #8ead6277}.vacant{color:#9daea6;justify-content:space-between}.subheading{margin:26px 0 14px;font-size:14px}.subheading small{color:#9baaa1;margin-left:12px;font-size:10px}.mages{grid-template-columns:1fr 1fr;gap:18px;display:grid}.mage{text-align:left;color:#e6e8da;background:radial-gradient(at 90% 0,#587d5b66,#0000 60%),#152629ed;border:1px solid #9baa9255;border-radius:3px;flex-direction:column;min-height:238px;padding:25px;display:flex;position:relative;overflow:hidden}.mage.kadir{background:radial-gradient(at 90% 0,#6a5d8d66,#0000 60%),#1b222aed}.mage.selected{border-color:#cad5a5;box-shadow:inset 0 0 0 1px #d6debb44}.mage .eyebrow{z-index:1;margin:8px 0 12px;font-size:9px}.mage strong{z-index:1;font-family:Noto Serif KR,serif;font-size:30px;font-weight:500}.mage>span:not(.mage-sigil):not(.eyebrow){color:#b6c6b9;z-index:1;max-width:205px;margin-top:12px;font-size:11px;line-height:1.8}.mage em{color:#ced7af;z-index:1;margin-top:22px;font-size:11px;font-style:normal}.mage-sigil{color:#a6c99928;font-size:128px;line-height:1;position:absolute;top:16px;right:15px}.kadir .mage-sigil{color:#ada2c931}.ready-bar{border:1px solid var(--line);background:#102023ce;justify-content:space-between;align-items:center;gap:15px;margin-top:18px;padding:16px 18px;display:flex}.ready-bar p{color:#acbdb1;margin:0;font-size:12px}.expedition{text-align:center;padding:24px}.expedition .eyebrow{margin-bottom:9px;font-size:9px}.enemy-mark{color:#b18e72;font-size:62px}.expedition h2{margin:2px 0 4px;font-family:Noto Serif KR,serif;font-size:24px}.english{color:#bba288;letter-spacing:3px;font-size:9px}.expedition p{margin:16px 0;font-size:11px}.rule{border-top:1px solid var(--line);color:#a6b9af;justify-content:space-between;padding:12px 0;font-size:11px;display:flex}.rule strong{color:#d4ddcb;font-weight:500}.wide{width:100%}.deployment-note{color:#d7c79a;margin:20px 0 13px;font-size:12px;line-height:1.8}.deployment-note small{color:#a3b3a8;font-size:10px}#notice{color:#eee9d2;z-index:20;background:#263834;border:1px solid #b9c49680;border-radius:3px;max-width:90vw;padding:14px 22px;font-size:13px;display:none;position:fixed;bottom:25px;left:50%;transform:translate(-50%);box-shadow:0 8px 40px #0009}#notice.show{display:block}.pending-banner{background:#594930cc;justify-content:space-between;align-items:center;gap:16px;margin-top:20px;padding:14px 20px;font-size:12px;display:flex}dialog{color:#e6eada;background:#15262a;border:1px solid #b1c29c77;border-radius:4px;width:min(850px,90vw);padding:32px}dialog::backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#020909cb}#close-details{float:right}dialog h2{font-family:Noto Serif KR,serif;font-size:28px}dialog p{color:#afc0b2;font-size:12px}.market-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px;display:grid}.supply{background:linear-gradient(145deg,#45574877,#14272a);border:1px solid #a8bb9345;min-height:125px;padding:18px}.supply>div{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.supply span{color:#bbc9aa;font-size:10px}.supply b{color:#e4d0a3;font:20px Georgia,serif}.supply strong{font-size:14px;display:block}.supply small{color:#a6b7aa;margin-top:7px;font-size:10px;display:block}@media (width>=1700px){#app{padding:0 7vw}.entrance{padding-top:13vh}.lobby,.preparation{width:100%;max-width:1450px;margin:auto;padding-top:65px}.mages .mage{min-height:300px}.mage strong{font-size:40px}.mage>span:not(.mage-sigil):not(.eyebrow){max-width:245px;font-size:13px}.expedition{padding:35px}}@media (width<=1000px){#app{padding:0 24px}header{height:86px}.chapter{display:none}.lobby-grid{grid-template-columns:280px 1fr}.prep-grid{grid-template-columns:1fr}.expedition{display:none}.entrance{padding-top:65px}.header-right,.room-row{gap:10px}.brand{font-size:19px}}@media (width<=650px){.input-row{flex-direction:column}.input-row input{width:100%}.entrance h1{font-size:36px}.lobby-grid,.mages,.seats{grid-template-columns:1fr}.room-list{min-height:250px}.section-heading{align-items:flex-start;gap:16px}.section-heading h1{font-size:25px}.section-heading p{line-height:1.8}.counter{display:none}.market-grid{grid-template-columns:1fr 1fr}.subheading small{margin:7px 0;display:block}.ready-bar{flex-direction:column;align-items:stretch}.brand small{letter-spacing:3px}.header-right{flex-direction:column;font-size:10px}#identity{border:0;padding:0}.chapter{display:none}footer{font-size:9px}.entrance{padding-top:40px}.build-note{margin-top:25px}.prep-grid{gap:10px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}@media (width>=1001px) and (height<=820px){header{height:78px}.preparation,.lobby{padding-top:26px}.section-heading{margin-bottom:20px}.section-heading h1{font-size:28px}.section-heading .eyebrow{margin-bottom:9px}.mage{min-height:217px;padding:20px}.mage strong{font-size:27px}.mage em{margin-top:15px}.subheading{margin-top:21px}.expedition{padding:18px 22px}.enemy-mark{font-size:43px}.expedition h2{font-size:22px}.expedition p{margin:10px 0}.rule{padding:9px 0}.deployment-note{margin:12px 0 9px}.ready-bar{padding:13px 16px}footer{padding:19px 0}}.supply p{color:#cfdbc8;margin:13px 0 0;font-size:11px;line-height:1.75}dialog{max-height:90vh;overflow:auto}
