:root{color-scheme:dark light;--bg:light-dark(#f3f5f8,#101923);--panel:light-dark(#fff,#1b2a38);--fg:light-dark(#142a3a,#e6edf4);--muted:light-dark(#4e6475,#adbecd);--line:light-dark(#d5dfe8,#3b4c5b);--button:light-dark(#e7ecf0,#30404e);--red:#b72f39;--green:#197340}
*{box-sizing:border-box}body{margin:0;color:var(--fg);background:var(--bg);font:15px/1.5 system-ui,sans-serif}header{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:18px 24px;background:var(--panel);border-bottom:1px solid var(--line)}header>div{flex:1}header strong{display:block;font-size:19px}header label{display:grid;gap:3px;font-size:12px}.muted{color:var(--muted);font-size:13px}.layout{display:grid;grid-template-columns:210px minmax(0,1fr);max-width:1400px;margin:auto}nav{padding:18px 12px}nav button{display:block;width:100%;text-align:left;margin-bottom:6px}nav button[aria-current=page]{outline:2px solid var(--muted);background:var(--panel)}main{padding:22px;min-width:0}h1{font-size:25px;margin:0 0 18px}h2{font-size:20px;margin:0 0 12px}h3{font-size:17px;margin:10px 0}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:18px;margin-bottom:16px;overflow-wrap:anywhere}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}.grid .card{margin:0}.row,.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row{justify-content:space-between}.actions{margin-top:14px}button{font:inherit;color:var(--fg);border:1px solid var(--line);background:var(--button);border-radius:7px;padding:9px 13px;min-height:42px;cursor:pointer}button:hover{filter:brightness(1.08)}button:disabled{cursor:wait;opacity:.6}button.danger{background:var(--red);color:#fff;border-color:transparent}button.success{background:var(--green);color:#fff;border-color:transparent}label{display:block;margin:10px 0}input,select,textarea{display:block;margin:5px 0;width:100%;font:inherit;padding:9px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--fg)}input[type=checkbox]{display:inline;width:auto;margin:0 8px 0 0}textarea{min-height:95px;resize:vertical}fieldset{border:1px solid var(--line);border-radius:8px;margin:12px 0;padding:12px}fieldset label{margin:6px 0}.check-row{display:grid;grid-template-columns:1fr 90px;gap:10px;align-items:center}.check-row input{margin:0}.tag{font-size:12px;display:inline-block;padding:3px 9px;background:var(--button);border-radius:20px}.status{font-weight:500}.success-text{color:light-dark(#146b39,#8cdbab)}.error-text{color:light-dark(#aa2230,#ffadb4)}table{border-collapse:collapse;width:100%;font-size:14px}td,th{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}.table-wrap{overflow:auto}details{margin:12px 0}summary{cursor:pointer}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}#notice{max-width:1350px;margin:0 auto;padding:0 20px}#notice:not(:empty){padding:12px 20px;background:var(--panel);border-bottom:1px solid var(--line)}.bubble{background:var(--bg);border-radius:8px;padding:12px;margin:10px 0;white-space:pre-wrap}.staff{border-left:3px solid var(--green)}dialog{max-width:560px;width:calc(100% - 30px);background:var(--panel);color:var(--fg);border:1px solid var(--line);border-radius:12px;padding:22px}dialog::backdrop{background:#0008}.empty{padding:22px;border:1px dashed var(--line);border-radius:10px;color:var(--muted)}.full{width:100%}a{color:light-dark(#066da4,#8cd2fa)}.secret{font-family:ui-monospace,monospace}
@media(max-width:760px){header{padding:14px;gap:10px}header>div{flex-basis:100%}.layout{grid-template-columns:1fr}nav{display:flex;gap:6px;flex-wrap:wrap;padding:12px}nav button{width:auto;margin:0}main{padding:14px}.grid{grid-template-columns:1fr}header label{flex:1}table{font-size:13px}}
.attachment-image{display:block;max-width:100%;height:auto;margin-top:10px}
.training{padding:12px 24px;background:#75391b;color:#fff;font-weight:600}.activity{margin-top:24px}.activity pre{font-size:13px}
.post-preview{padding:14px;border-radius:12px;background:var(--bg);border:1px solid var(--line);margin:12px 0}.preview-image{display:block;width:100%;max-height:260px;object-fit:contain}.preview-button{display:block;text-align:center;padding:9px;margin-top:5px;border-radius:7px;background:var(--button)}.preview-button.danger{background:var(--red);color:#fff}#confirm-text{white-space:pre-wrap}
