.rmb .rm-head{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.rmb .rm-head .sub{margin:4px 0 0}.rmb .rm-cnt{font-family:var(--marq);color:var(--gold);white-space:nowrap;margin-left:auto;font-size:36px}.rmb .rm-cnt small{font-family:var(--mono);color:var(--mut);font-size:13px}.rmb .rm-login{border:1px dashed var(--line);border-radius:var(--r-lg);flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0 0;padding:12px 14px;font-size:14px;display:flex}.rm-map{max-width:760px;padding:4px 0 8px;position:relative}.rm-map .stageh{align-items:baseline;gap:12px;margin:22px 0 10px;display:flex}.rm-map .stageh b{font-family:var(--display);font-size:20px;font-weight:900}.rnode{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--card);gap:16px;margin:0 0 10px 26px;padding:14px 16px;display:flex;position:relative}.rnode:before{content:"";background:repeating-linear-gradient(180deg,var(--line) 0 10px,transparent 10px 16px);width:2px;position:absolute;top:-10px;bottom:-10px;left:-16px}.rnode .dot{background:var(--card);border:2px dashed var(--line);width:22px;height:22px;color:var(--mut);border-radius:50%;place-items:center;font-size:11px;display:grid;position:absolute;top:18px;left:-27px}.rnode.done .dot{background:var(--gold2);border:2px solid var(--gold2);color:var(--p-cocoa-950)}.rnode.doing .dot{background:var(--gold);border:2px solid var(--gold);color:#fff}.rnode.done{border-color:var(--gold2)}.rnode.doing{border-color:var(--gold)}.rnode .k{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rnode .en{font-family:var(--mono);letter-spacing:.14em;color:var(--mut);font-size:11px}.rnode b{font-family:var(--display);margin-top:2px;font-size:18px;font-weight:900;display:block}.rnode .desc{color:var(--mut);font-size:var(--fs-sm);margin-top:2px}.rnode .tag{border-radius:var(--r-pill);padding:2px 10px;font-size:11px;font-weight:700;display:inline-block}.rnode .tag.grad{background:var(--gold2);color:var(--p-cocoa-950)}.rnode .tag.doing{background:var(--gold);color:#fff}.rnode .tag.soon{border:1px solid var(--line);color:var(--mut)}.rnode .mats{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.rnode .chip{border:1px solid var(--line);border-radius:var(--r-pill);color:inherit;padding:3px 10px;font-size:12px;text-decoration:none}.rnode a.chip:hover{border-color:var(--gold);color:var(--gold)}.rnode .chip.plain{color:var(--mut)}.rnode .foot{margin-top:10px}.rnode .golink{color:var(--gold);font-size:13px;font-weight:700;text-decoration:none}.rnode .mark{border:1px solid var(--line);border-radius:var(--r-pill);cursor:pointer;color:inherit;background:0 0;padding:5px 14px;font-family:inherit;font-size:12.5px;font-weight:700}.rnode .mark:hover{border-color:var(--gold);color:var(--gold)}main [hidden]{display:none!important}.crumb{color:var(--mut);align-items:center;gap:8px;padding:18px 0 0;font-size:13px;display:flex}.crumb a{color:var(--mut)}.roles{flex-wrap:wrap;gap:8px;margin:16px 0 18px;display:flex}.roles a{border:1px solid var(--line);color:var(--ink);background:var(--card);border-radius:999px;padding:6px 12px;font-size:14px;text-decoration:none}.roles a.on{background:var(--p-cocoa-900);color:var(--p-paper-100);border-color:var(--p-cocoa-900)}.ghead{border-bottom:2px solid var(--ink);grid-template-columns:auto minmax(0,1fr) 220px;align-items:center;gap:18px;margin-bottom:22px;padding:12px 0 22px;display:grid}.ghead.done{border-bottom-color:var(--gold)}.ghead .gi{font-size:48px;line-height:1}h1.ttl{font-family:var(--display);margin:4px 0 6px;font-size:34px;font-weight:900;line-height:1.2}.lead{color:var(--mut);font-size:var(--fs-md);max-width:640px;margin:0}.prog .k{font-family:var(--mono);letter-spacing:.14em;color:var(--mut);margin-bottom:6px;font-size:11px}.gbar{background:var(--paper);height:10px;display:block}.gbar b{background:var(--gold);height:100%;transition:width .3s;display:block}.prog span{font-family:var(--mono);color:var(--mut);margin-top:6px;font-size:12px;display:block}.layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:22px;display:grid}.col{flex-direction:column;gap:16px;min-width:0;display:flex}.side{flex-direction:column;gap:16px;display:flex;position:sticky;top:76px}.card{background:var(--card);border:1px solid var(--line);box-shadow:var(--sh-sm);border-radius:10px;min-width:0;padding:18px 20px}h2.sec{font-family:var(--display);margin:4px 0 8px;font-size:20px;font-weight:900}h3.sec3{font-family:var(--display);color:var(--mut);margin:12px 0 6px;font-size:15px;font-weight:900}.card ul,.card ol{margin:0;padding-left:20px;font-size:14.5px;line-height:1.75}.card ul.plain{padding:0;list-style:none}.card ul.plain li:before{content:"✦ ";color:var(--gold-strong)}.sub{color:var(--mut);font-size:13px;line-height:1.6}.sub a{color:var(--gold-strong)}.nb{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.nbi{border:1px solid var(--line);background:var(--p-paper-25);border-radius:8px;padding:10px 12px}.nbi b{font-family:var(--display);font-size:15px}.nbi a{color:var(--ink)}.nbi a b{text-decoration:underline;text-decoration-color:var(--gold)}.nbi p{color:var(--mut);margin:4px 0 0;font-size:13px;line-height:1.55}.check{border:2px solid var(--ink)}.loginbox{background:var(--p-paper-25);border-left:4px solid var(--gold);flex-direction:column;align-items:flex-start;gap:10px;margin-top:8px;padding:12px;font-size:14px;line-height:1.6;display:flex}.cl{margin:10px 0 0;padding:0;list-style:none}.cl li{border-top:1px solid var(--line)}.cl label{cursor:pointer;align-items:flex-start;gap:10px;padding:10px 2px;font-size:14px;line-height:1.55;display:flex}.cl input{width:18px;height:18px;accent-color:var(--gold-strong);flex:none;margin-top:3px}.cl input:disabled{opacity:.5}.cl input:checked+span{color:var(--mut);text-decoration:line-through;text-decoration-color:var(--gold)}.donebox{background:var(--p-paper-25);border-left:4px solid var(--gold);margin-top:12px;padding:10px 12px;font-size:14px;line-height:1.6}.donebox a{color:var(--gold-strong)}.pr{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.toast{background:var(--p-cocoa-900);color:var(--p-paper-100);z-index:1500;max-width:calc(100vw - 32px);padding:10px 16px;font-size:14px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}@media (width<=900px){.layout{grid-template-columns:minmax(0,1fr)}.side{position:static}.ghead{grid-template-columns:auto minmax(0,1fr)}.prog{grid-column:1/-1}h1.ttl{font-size:26px}.ghead .gi{font-size:36px}.nb{grid-template-columns:minmax(0,1fr)}}
