/* Plain-language layer: works on the dark work pages and on the orange homepage. */
.exbox,.exbuiltbox,.exhub .excg,.exhome .exworks,.exhome .exrival,.exhome .exhero{box-sizing:border-box}
.exbox{background:#1b1310;border:1.5px solid rgba(245,197,66,.55);border-radius:18px;padding:16px 16px 12px;margin:14px 0 18px;color:#f6efe2;box-shadow:0 8px 30px rgba(0,0,0,.25)}
.exk{font-size:12px;letter-spacing:.12em;color:#F5C542;font-weight:800;text-transform:uppercase;margin:2px 0 4px}
.exbox .exk+.exw{margin-top:0}
.exw{font-size:16px;line-height:1.6;margin:0 0 12px;color:#fff8ea}
.exsteps{margin:0 0 10px;padding:0;list-style:none;counter-reset:s;display:grid;gap:8px}
.exsteps li{counter-increment:s;position:relative;padding:8px 10px 8px 42px;background:rgba(255,255,255,.05);border-radius:12px;font-size:15px;line-height:1.5}
.exsteps li::before{content:counter(s);position:absolute;left:10px;top:8px;width:24px;height:24px;border-radius:50%;background:#F5C542;color:#1b1310;font-weight:900;font-size:14px;display:grid;place-items:center}
.exnote{font-size:13px;color:#ffd9a8;margin:0 0 10px}
.exact{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:4px 0 6px}
.exgo{appearance:none;border:0;border-radius:999px;background:#F5C542;color:#1b1310;font-weight:800;font-size:15px;padding:10px 18px;cursor:pointer;font-family:inherit}
.exgo.ghost{background:transparent;color:#F5C542;border:1.5px solid rgba(245,197,66,.6);font-size:14px;padding:8px 14px}
.exfree{font-size:12px;color:rgba(246,239,226,.65);line-height:1.4}
.exbox details{margin-top:8px;border-top:1px dashed rgba(255,255,255,.14);padding-top:8px}
.exbox summary,.exfold>summary{cursor:pointer;font-weight:700;color:#F5C542;font-size:14px;list-style:none;padding:4px 0}
.exbox summary::-webkit-details-marker,.exfold>summary::-webkit-details-marker{display:none}
.exbox summary::before,.exfold>summary::before{content:'▸ ';display:inline-block;transition:transform .15s}
.exbox details[open]>summary::before,.exfold[open]>summary::before{transform:rotate(90deg)}
.exterms dl{margin:6px 0 2px;display:grid;gap:6px}
.exterms dt{font-weight:800;color:#fff8ea;font-size:14px}
.exterms dd{margin:0 0 4px;font-size:14px;line-height:1.5;color:rgba(246,239,226,.82)}
.exmore p{font-size:14px;line-height:1.6;color:rgba(246,239,226,.82);margin:6px 0}
.exfold{margin:12px 0;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:6px 14px;background:rgba(0,0,0,.18)}
.exfold>summary{padding:8px 0;overflow-wrap:anywhere}
.exfold>summary .exsl{color:rgba(246,239,226,.7);font-weight:600}
.exfold[open]>summary{margin-bottom:6px}
.exfold>section,.exfold>div{margin-top:0}
/* catalog */
.excat{display:grid;gap:18px}
.excg h3{margin:0;font-size:20px;color:#fff8ea}
.exsub{margin:2px 0 10px;font-size:14px;color:rgba(246,239,226,.72);line-height:1.5}
.excards{display:grid;grid-template-columns:1fr;gap:10px}
@media (min-width:640px){.excards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:980px){.excards{grid-template-columns:repeat(3,minmax(0,1fr))}}
.excard{display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto auto;column-gap:10px;align-items:start;text-decoration:none;color:#f6efe2;background:#241915;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:14px;transition:border-color .15s,transform .15s}
.excard:hover{border-color:#F5C542;transform:translateY(-1px)}
.exem{grid-row:1/4;font-size:30px;line-height:44px;text-align:center}
.exname{font-weight:900;font-size:17px;color:#fff8ea}
.exline{font-size:14px;line-height:1.5;color:rgba(246,239,226,.82);margin:2px 0 8px}
.exbtn{justify-self:start;background:#F5C542;color:#1b1310;font-weight:800;font-size:14px;border-radius:999px;padding:6px 14px}
.exhub{margin:0 0 18px}
.exhub .excg{background:#1b1310;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:14px}
/* lab summary */
.exbuiltbox{background:#1b1310;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:16px;margin:0 0 18px;color:#f6efe2}
.exbuiltbox h2{margin:0 0 4px;font-size:20px;color:#fff8ea}
.exbuilt{list-style:none;margin:8px 0 10px;padding:0;display:grid;gap:6px}
.exbuilt li{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;font-size:14px;line-height:1.45;padding:6px 0;border-bottom:1px dashed rgba(255,255,255,.1)}
.exbuilt time{color:#F5C542;font-variant-numeric:tabular-nums;font-size:12.5px;white-space:nowrap;padding-top:1px}
@media (max-width:420px){.exbuilt li{grid-template-columns:1fr}}
.exchain{font-size:13px;color:rgba(246,239,226,.75);line-height:1.5;margin:6px 0 10px}
/* homepage */
.exhome{max-width:1040px;margin:0 auto;padding:18px 16px 6px;color:#f6efe2}
.exhome .exhero{background:#161616;border-radius:24px;padding:24px 18px;text-align:left;box-shadow:0 14px 40px rgba(0,0,0,.25)}
.exkick{font-size:12px;letter-spacing:.2em;color:#F5C542;font-weight:800}
.exhome h1{font-size:clamp(28px,7.4vw,48px);line-height:1.15;margin:8px 0 10px;color:#fff8ea;font-weight:900;letter-spacing:-.01em}
.exlead{font-size:16.5px;line-height:1.6;margin:0 0 14px;color:rgba(255,248,234,.88);max-width:760px}
.excta{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 10px}
.exb{display:inline-block;text-decoration:none;border-radius:999px;padding:11px 18px;font-weight:800;font-size:15px;color:#fff8ea;border:1.5px solid rgba(255,248,234,.4);background:transparent}
.exb.hot{background:#F5C542;color:#161616;border-color:#F5C542}
.exhome .exworks{margin:16px 0 0;background:#1b1310;border-radius:24px;padding:20px 16px}
.exhome .exworks>h2{margin:0;font-size:24px;color:#fff8ea}
.exhome .exrival{margin:16px 0 4px;background:rgba(22,22,22,.86);border-radius:18px;padding:14px 16px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.exhome .exrival p{margin:0;font-size:15px;line-height:1.55;flex:1 1 260px}
.exhome .exrival b{color:#F5C542}
.exhome .exrival .exb{font-size:14px;padding:8px 14px}
html[data-lang="ko"] .exbox,html[data-lang="ko"] .exhome{word-break:keep-all}
main>.exhome{padding:14px 0 6px}
@media (max-width:640px){.exbr{display:none}.exhome .exhero{padding:20px 16px}.exhome .exworks{padding:18px 12px}}
