:root{color-scheme:dark;--bg:#0b1220;--panel:#111d31;--panel2:#0b1729;--border:rgba(255,255,255,.12);--text:#e8eef9;--muted:#9eafc8;--cyan:#67e8f9;--green:#34d399;--red:#fb7185;--amber:#fbbf24;font-family:Inter,"Noto Sans KR",system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at top left,rgba(30,64,175,.18),transparent 38%),var(--bg);color:var(--text);min-height:100vh}a{color:inherit}.topbar{max-width:1440px;margin:auto;padding:24px 26px 12px;display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar h1{font-size:clamp(1.7rem,3vw,2.5rem);margin:0}.eyebrow{font-size:.7rem;letter-spacing:.18em;font-weight:800;color:var(--cyan);margin:0 0 7px}.muted{color:var(--muted);line-height:1.55;font-size:.92rem;margin:.45rem 0 0}.hint,.fieldHelp{display:block;color:var(--muted);font-size:.8rem;line-height:1.5;margin-top:7px}.hintInline{font-size:.78rem;color:var(--muted);font-weight:400;margin-left:5px}main{max-width:1440px;margin:0 auto;padding:12px 26px 60px}.panel{background:linear-gradient(145deg,rgba(17,29,49,.98),rgba(11,23,41,.96));border:1px solid var(--border);border-radius:18px;padding:22px;margin:0 0 18px;box-shadow:0 18px 60px rgba(0,0,0,.16)}h2{font-size:1.45rem;margin:0}h3{font-size:1.05rem;margin:0}p{overflow-wrap:anywhere}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:10px;padding:10px 14px;font:inherit;font-weight:750;cursor:pointer;text-decoration:none;white-space:nowrap;transition:transform .12s,background .12s,border-color .12s}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.primary{background:linear-gradient(105deg,#0891b2,#2563eb);color:white}.secondary{background:rgba(255,255,255,.055);border-color:var(--border);color:var(--text)}.danger{background:rgba(225,29,72,.13);border-color:rgba(251,113,133,.35);color:#fecdd3}.authPanel{max-width:480px;margin:6vh auto;padding:30px}.authPanel h2{font-size:1.8rem}.authPanel label,.passwordPanel label,.wordEditor label,.rankEditForm label,.perfectForm label{display:block;font-size:.85rem;font-weight:700;color:#d9e5f7;margin:17px 0 7px}.authPanel input,.passwordPanel input,.wordEditor input,.wordEditor textarea,.fieldGrid input,.perfectForm input,.perfectForm select,.compactLabel input,.compactLabel select,.fieldGrid select,.answerEditAnswer{display:block;width:100%;margin-top:7px;background:#071321;border:1px solid rgba(148,163,184,.26);border-radius:9px;padding:11px 12px;color:var(--text);font:inherit;min-width:0;outline:none}.authPanel input:focus,.passwordPanel input:focus,.wordEditor input:focus,.wordEditor textarea:focus,.fieldGrid input:focus,.perfectForm input:focus,.perfectForm select:focus,.compactLabel input:focus,.compactLabel select:focus,.answerEditAnswer:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(103,232,249,.09)}.authPanel form>.button{width:100%;margin-top:10px}.securityNote{font-size:.78rem;line-height:1.5;color:#8395b0;margin-top:22px}.message{min-height:1.2rem;color:#fca5a5;font-size:.85rem;line-height:1.45;white-space:pre-wrap}.message.success{color:#86efac}.hidden{display:none!important}.dashHeader{display:flex;align-items:center;justify-content:space-between;gap:16px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 18px}.tab{padding:10px 15px;border:1px solid var(--border);border-radius:999px;color:var(--muted);background:rgba(255,255,255,.04);font:inherit;cursor:pointer}.tab.selected{background:rgba(34,211,238,.15);border-color:rgba(103,232,249,.4);color:#cffafe;font-weight:800}.sectionHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.sectionHeading h2{margin-bottom:4px}.toolbar{display:flex;gap:14px;flex-wrap:wrap;align-items:end}.compactLabel{display:block;color:#d8e4f6;font-size:.78rem;font-weight:700;min-width:150px}.compactLabel.grow{flex:1;min-width:min(100%,240px)}.compactLabel input,.compactLabel select{padding:9px 10px;font-size:.88rem}.statusLine{min-height:1.3rem;color:var(--muted);font-size:.85rem;margin:14px 0 10px}.tableWrap{width:100%;overflow:auto;border:1px solid rgba(255,255,255,.08);border-radius:10px;max-height:440px}table{border-collapse:separate;border-spacing:0;width:100%;min-width:700px;font-size:.86rem}th,td{text-align:left;padding:11px 12px;border-bottom:1px solid rgba(255,255,255,.07);vertical-align:middle}th{position:sticky;top:0;background:#17263b;z-index:1;color:#bcd0e8;font-weight:750}tbody tr:hover{background:rgba(255,255,255,.025)}tbody tr:last-child td{border-bottom:0}.editRecordBtn{padding:7px 10px;font-size:.8rem}.rankScoreText{color:var(--cyan);font-variant-numeric:tabular-nums;font-weight:800;white-space:nowrap}.perfectForm{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:12px;align-items:end}.perfectForm label{margin:0}.perfectForm .button{height:42px;margin-bottom:0}.fieldGrid{display:grid;grid-template-columns:minmax(0,2fr) minmax(160px,1fr);gap:14px}.fieldGrid label{margin-top:5px}.subHeading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:24px 0 12px}.subHeading .muted{max-width:850px}.answerEditorRows{display:grid;gap:10px;max-height:680px;overflow:auto;padding:2px 5px 2px 0}.answerEditRow{border:1px solid rgba(255,255,255,.1);background:rgba(4,14,28,.58);border-radius:12px;padding:13px}.answerEditHead{display:flex;justify-content:space-between;gap:12px;font-size:.9rem;font-weight:800}.answerEditDescription{font-size:.78rem;color:var(--muted);margin:7px 0 10px;line-height:1.45;overflow-wrap:anywhere}.answerEditFields{display:grid;grid-template-columns:minmax(180px,2fr) auto 110px 110px;gap:10px;align-items:end}.answerEditFields label{font-size:.75rem;color:var(--muted);margin:0}.answerEditAnswer{margin-top:5px;padding:9px;font-size:.85rem}.answerEditFields input[type=number]{width:100%;min-width:0;padding:8px;border-radius:8px;background:#071321;border:1px solid rgba(148,163,184,.26);color:var(--text);margin-top:5px}.correctCheck{display:flex;align-items:center;gap:6px;min-height:38px;color:#86efac;font-size:.8rem;font-weight:750}.correctCheck input{accent-color:#10b981;width:17px;height:17px}.formActions{display:flex;gap:10px;flex-wrap:wrap;margin-top:17px}.wordAdminLayout{display:grid;grid-template-columns:minmax(260px,1fr) minmax(340px,1.2fr);gap:18px;margin-top:14px;align-items:start}.wordList{display:grid;gap:8px;max-height:700px;overflow:auto;padding:2px 5px 2px 0}.wordListItem{border:1px solid rgba(255,255,255,.09);border-radius:10px;padding:11px 13px;background:rgba(3,12,25,.48);text-align:left;color:var(--text);cursor:pointer;font:inherit;min-width:0}.wordListItem:hover,.wordListItem.selected{border-color:rgba(103,232,249,.55);background:rgba(8,145,178,.1)}.wordListItem strong{display:block;font-size:.92rem;overflow-wrap:anywhere}.wordListItem span{display:block;color:var(--muted);font-size:.78rem;margin-top:4px;line-height:1.4;overflow-wrap:anywhere}.wordEditor{border:1px solid rgba(255,255,255,.1);border-radius:13px;padding:17px;background:rgba(3,12,25,.42);min-width:0}.wordEditor h3{overflow-wrap:anywhere}.wordEditor textarea{resize:vertical;min-height:75px;line-height:1.5}.wordEditor label:first-of-type{margin-top:14px}.passwordPanel{max-width:620px}.passwordPanel form>.button{margin-top:8px}.toast{position:fixed;z-index:20;right:20px;bottom:20px;max-width:min(480px,calc(100vw - 40px));padding:14px 18px;background:#14283e;border:1px solid rgba(103,232,249,.35);border-radius:12px;box-shadow:0 12px 45px rgba(0,0,0,.4);color:var(--text);line-height:1.45}.emptyState{padding:18px;color:var(--muted);border:1px dashed rgba(255,255,255,.13);border-radius:10px;text-align:center}.hidden{display:none!important}
@media(max-width:900px){.perfectForm{grid-template-columns:1fr 1fr}.perfectForm .button{width:100%}.wordAdminLayout{grid-template-columns:1fr}.wordList{max-height:360px}.answerEditFields{grid-template-columns:minmax(160px,1fr) auto 90px 90px}}
@media(max-width:620px){.topbar,main{padding-left:13px;padding-right:13px}.panel{padding:15px;border-radius:14px}.topbar{align-items:flex-start}.topbar .button{padding:8px 10px;font-size:.8rem}.authPanel{margin:4vh auto;padding:24px}.dashHeader,.sectionHeading,.subHeading{align-items:flex-start;flex-direction:column}.toolbar{align-items:stretch}.compactLabel,.compactLabel.grow{min-width:100%;width:100%}.perfectForm{grid-template-columns:1fr}.fieldGrid{grid-template-columns:1fr}.answerEditFields{grid-template-columns:minmax(0,1fr) minmax(85px,.4fr);align-items:end}.answerEditFields .answerEditAnswerWrap{grid-column:1/-1}.answerEditFields label:nth-child(3),.answerEditFields label:nth-child(4){min-width:0}.answerEditHead{flex-direction:column;gap:3px}.formActions .button{flex:1}.tabs{display:grid;grid-template-columns:repeat(3,1fr)}.tab{padding:9px 6px;font-size:.82rem}}
