@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-vietnamese-400-normal-CRcqvyg1.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-400-normal-BuGn0gnm.woff)format("woff")}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-latin-400-normal-PpnXBOrz.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-400-normal-bXgqVju9.woff)format("woff")}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-vietnamese-600-normal-nyU-ZL2p.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-600-normal-DkpCIyan.woff)format("woff")}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-latin-600-normal-BZDkUTrt.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-600-normal-5IO4e7bK.woff)format("woff")}:root{--ink:#1b1410;--gold:#d9a441;--bg:#f6f3ee;--card:#fff;--line:#e2dbd0;--text:#2a2420;--muted:#7a6f66;--accent:#8a3b12;--ok:#2f7d4a;--warn:#a86a00;--bad:#b42318;--off:#8b8580;color:var(--text);background:var(--bg);font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:14px}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);margin:0}h1,h2,h3,h4{margin:0 0 8px;font-weight:600}h2{font-size:20px}h3{margin-top:20px;font-size:16px}h4{margin-top:16px;font-size:14px}button{font:inherit;border:1px solid var(--line);background:var(--card);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:6px;padding:6px 12px}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.55;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.danger{color:var(--bad);border-color:var(--bad)}button.link{color:var(--accent);background:0 0;border:none;padding:2px 4px;text-decoration:underline}input,select,textarea{font:inherit;border:1px solid var(--line);color:var(--text);background:#fff;border-radius:6px;min-width:0;padding:6px 8px}textarea{resize:vertical;width:100%}input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:0}.top{background:var(--ink);color:var(--gold);justify-content:space-between;align-items:center;gap:16px;padding:10px 20px;display:flex}.top .brand{align-items:center;gap:10px;display:flex}.top .brand img{border-radius:6px;width:32px;height:32px}.top .who{color:#e9dcc5;align-items:center;gap:12px;display:flex}.layout{grid-template-columns:180px minmax(0,1fr);min-height:calc(100vh - 48px);display:grid}.nav{border-right:1px solid var(--line);background:#efe9e0;flex-direction:column;padding:12px 0;display:flex}.nav a{color:var(--text);justify-content:space-between;align-items:center;padding:9px 20px;text-decoration:none;display:flex}.nav a.active{background:var(--card);border-left:3px solid var(--accent);padding-left:17px;font-weight:600}.content{min-width:0;padding:20px 24px 60px}.section-head{align-items:center;gap:16px;margin-top:8px;display:flex}.section-head h2,.section-head h3{margin:0}.hint,.muted{color:var(--muted)}small.hint{font-size:12px}.error{color:var(--bad)}.ok{color:var(--ok)}.warning{color:var(--bad);font-weight:600}.readonly{background:#fff6e0;border:1px solid #f0d9a0;border-radius:6px;padding:8px 12px}.empty{color:var(--muted);font-style:italic}.loading{color:var(--muted)}.table-wrap{background:var(--card);border:1px solid var(--line);border-radius:8px;margin:8px 0;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:7px 10px}th{white-space:nowrap;background:#faf7f2;font-size:13px;font-weight:600}tr:last-child td{border-bottom:none}td code,.op-id{font-family:ui-monospace,Menlo,monospace;font-size:13px}.op-id{color:var(--muted)}pre{background:#faf7f2;border-radius:6px;max-width:520px;padding:8px;font-size:12px;overflow:auto}.badge{white-space:nowrap;border:1px solid;border-radius:10px;padding:1px 8px;font-size:12px;display:inline-block}.badge.ok{color:var(--ok)}.badge.warn{color:var(--warn)}.badge.off{color:var(--off)}.badge.info{color:#2457a6}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}td .actions{flex-wrap:nowrap}.panel{background:var(--card);border:1px solid var(--line);border-radius:8px;margin:12px 0;padding:12px 16px}.panel>summary{cursor:pointer;font-weight:600}.panel[open]>summary{margin-bottom:12px}.form{flex-direction:column;gap:10px;display:flex}.form>button{align-self:flex-start}.row{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.row>.field{flex:180px}.field{flex-direction:column;gap:4px;display:flex}.field-label{font-size:13px;font-weight:600}.check{align-items:center;gap:4px;margin-right:12px;display:inline-flex}.align-end{align-self:flex-end}fieldset{border:1px solid var(--line);border-radius:8px;padding:8px 12px 12px}legend{padding:0 4px;font-size:13px;font-weight:600}.reward-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px 12px;margin-top:6px;display:grid}.reward-preview{border:1px dashed var(--line);border-radius:6px;min-height:20px;margin:6px 0 10px;padding:8px 10px}.reward-preview.bad{color:var(--bad)}.reward-group{border-top:1px solid var(--line);margin-top:8px;padding-top:6px}.reward-group>summary{cursor:pointer;color:var(--accent);align-items:center;gap:8px;font-weight:600;display:flex}.reward-group>summary .badge[hidden]{display:none}.reward-group>.hint{color:var(--muted,inherit);margin:4px 0 6px;font-size:12px}.reward-rows{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:4px 12px;max-height:340px;margin-top:6px;padding-right:4px;display:grid;overflow-y:auto}.reward-row{border-radius:6px;grid-template-columns:28px minmax(0,1fr) 84px;align-items:center;gap:8px;padding:3px 6px;display:grid}.reward-row:hover{background:#7f7f7f1a}.reward-row.tick{grid-template-columns:28px minmax(0,1fr) 24px}.reward-row[hidden]{display:none}.reward-name{overflow-wrap:anywhere;flex-direction:column;min-width:0;display:flex}.reward-name small{color:var(--muted,inherit);font-size:11px}.reward-row input[type=number]{box-sizing:border-box;width:100%}.hits{flex-wrap:wrap;gap:6px;display:flex}.hit{font-size:13px}.chosen{margin:0;font-weight:600}.facts{grid-template-columns:max-content 1fr;gap:4px 16px;margin:8px 0 12px;display:grid}.facts dt{color:var(--muted)}.facts dd{margin:0}.detail{margin-top:16px}.detail>h3:first-child{margin-top:0}.detail:not(:empty){background:var(--card);border:1px solid var(--line);border-radius:8px;padding:16px}.backdrop{z-index:10;background:#1b141073;justify-content:center;align-items:flex-start;padding:48px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.dialog{background:var(--card);border-radius:10px;width:min(520px,100%);padding:20px 24px;box-shadow:0 12px 40px #00000040}.dialog.wide{width:min(860px,100%)}.confirm-lines{padding-left:18px;line-height:1.6}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.dialog-status:empty{display:none}.dialog-status.error{color:var(--bad)}p.error:empty{display:none}.dialog-status.unknown{color:var(--warn);font-weight:600}.toast{background:var(--ok);color:#fff;z-index:20;border-radius:8px;padding:10px 16px;position:fixed;bottom:20px;right:20px}.toast.error{background:var(--bad)}.login-card{background:var(--card);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:12px;max-width:380px;margin:12vh auto;padding:28px;display:flex}.login-card h1{color:var(--accent);font-size:18px}.status:empty{display:none}.changed{color:var(--bad);background:#c0392b1f;font-weight:600}.server-picks{flex-wrap:wrap;gap:4px 8px;display:flex}.ico{object-fit:contain;vertical-align:middle;flex:none;width:24px;height:24px}.ico.face{object-fit:cover;object-position:50% 18%;border-radius:50%}.ico-empty{border:1px dashed var(--line);box-sizing:border-box;border-radius:4px;display:inline-block}.with-ico{align-items:center;gap:6px;min-width:0;display:inline-flex}.reward-chips{flex-wrap:wrap;gap:4px 10px;display:inline-flex}.reward-chip{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.ico-slot[hidden],.reward [hidden]{display:none}.reward input[type=search]{box-sizing:border-box;width:100%;margin-top:8px}.preview{border:1px solid var(--line,#ddd);background:#fff;border-radius:6px;max-height:360px;padding:8px 12px;overflow:auto}.preview img,.cover-preview{border-radius:6px;max-width:100%;max-height:140px}.preview blockquote{color:#555;border-left:3px solid #c8a24a;margin:.5em 0;padding-left:12px}.preview pre{overflow:auto}.preview h2,.preview h3{margin:.8em 0 .3em}
