body {
    --site-width:1500px;
    --page:#eef2fa;
    --surface:#fff;
    --ink:#162742;
    --muted:#54647c;
    --accent:#184cc7;
    --line:#d4deee;
    --felt:#20519d;
    --felt2:#143c79;
}
.cm-topbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    background:#fff;
    padding:20px 32px;
    border-bottom:1px solid var(--line);
}
.cm-workspace {
    margin:auto;
    padding:36px 28px;
}
.cm-play-layout {
    display:grid;
    grid-template-columns:230px minmax(0,1fr);
    gap:30px;
    align-items:start;
}
.cm-intro h1 {
    font-size:clamp(32px,3vw,48px);
    font-weight:750;
    letter-spacing:-2px;
}
.cm-intro>p:last-child {
    font-size:15px;
}
.cm-mode-links {
    display:grid;
    gap:12px;
    margin-top:34px;
}
.cm-mode-links a {
    font:600 11px/1.6 system-ui;
    letter-spacing:1px;
    background:#fff;
    padding:16px;
    border:1px solid var(--line);
}
.cm-board-pane {
    min-width:0;
}
.cm-resource-grid {
    margin:50px 0 20px;
}
.cm-reading {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}
.cm-reading>section,.cm-reading>details {
    background:#fff;
    padding:24px;
    border:1px solid var(--line);
    border-radius:10px;
    margin:0;
}
.cm-reading figure {
    grid-column:span 2;
}
.cm-arena {
    border-radius:14px;
    box-shadow:0 12px 34px #12346825;
}
.cm-game-top {
    background:#102f66;
}
.cm-tools {
    background:#ffffff0a;
}
.cm-footer {
    background:#fff;
}
.cm-page-index {
    font-size:clamp(24px,6vw,90px);
    font-weight:800;
    letter-spacing:-3px;
    color:#b5c8ee;
    text-align:center;
    padding:60px 20px;
}
@media(max-width:1100px) {
    .cm-play-layout {
        display:block;
    }
    .cm-brief {
        display:flex;
        justify-content:space-between;
        align-items:center;
        gap:20px;
        margin-bottom:20px;
    }
    .cm-mode-links {
        display:none;
    }
    .cm-resource-grid .cm-reading {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .cm-topbar {
        padding:18px;
    }
    .cm-workspace {
        padding:24px 14px;
    }
}
@media(max-width:600px) {
    .cm-resource-grid .cm-reading {
        display:block;
    }
    .cm-reading>section,.cm-reading>details {
        margin-bottom:16px;
    }
    .cm-nav-dock {
        position:static;
    }
}
