/* 수도 StudyRoom — 수학도서관 딥그린·골드 기준 */
:root{
  --green:#0A4844; --green-dk:#06302D; --green-100:#E3EEEC; --green-50:#EEF4F2;
  --gold:#DEBC62; --gold-ink:#7A5C14; --gold-100:#F6E7B9;
  --ink:#111111; --muted:#4A5553; --line:#D9E2E0; --paper:#F7F4EC; --paper-line:#E6E0D0;
  --red:#B3261E; --white:#FFFFFF;
  --r-sm:4px; --r-md:8px; --r-lg:16px;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--white);color:var(--ink);font-family:"Noto Sans KR",system-ui,sans-serif;font-size:15px;line-height:1.5}
h1,h2,h3{margin:0;font-family:"Noto Serif KR",serif;color:var(--green)}
a{color:var(--green)}
button,input,select{font:inherit}
button{cursor:pointer}
.btn{min-height:40px;padding:0 16px;border-radius:var(--r-md);border:1px solid var(--green);background:var(--white);color:var(--green);font-weight:500;display:inline-flex;align-items:center;gap:6px;justify-content:center;text-decoration:none}
.btn:hover{background:var(--green-50)}
.btn.pri{background:var(--green);color:var(--white)}
.btn.pri:hover{background:var(--green-dk)}
.btn.sm{min-height:32px;padding:0 10px;font-size:13px}
.btn.danger{border-color:var(--red);color:var(--red)}
.btn:disabled{opacity:.5;cursor:default}
.inp{height:40px;border:1px solid #C9D3D1;border-radius:var(--r-sm);padding:0 12px;background:var(--white);width:100%}
label.f{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}
.muted{color:var(--muted)}
.chip{display:inline-block;font-size:11px;font-weight:700;color:var(--green);border:1px solid var(--green);border-radius:10px;padding:0 7px;line-height:18px;white-space:nowrap}
.lv{display:inline-block;font-size:11px;font-weight:700;color:var(--green);border:1px solid var(--gold);border-radius:10px;padding:0 7px;line-height:18px;white-space:nowrap}
.lv.l0{background:var(--green-50)} .lv.l1{background:var(--gold-100)} .lv.l2{background:var(--gold)} .lv.l3{background:var(--green);color:var(--gold-100)}
.card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--white)}
.modal-bg{position:fixed;inset:0;background:rgba(10,30,28,.45);display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}
.modal{background:var(--white);border-radius:var(--r-lg);max-width:960px;width:100%;max-height:calc(100vh - 32px);overflow:auto;padding:24px;display:flex;flex-direction:column;gap:16px}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--green);color:var(--white);padding:10px 18px;border-radius:var(--r-md);z-index:60;font-size:14px}
table.t{border-collapse:collapse;width:100%;font-size:14px}
table.t th{background:var(--green-100);color:var(--green);font-weight:700;text-align:left;padding:8px 10px}
table.t td{border-bottom:1px solid #E5EBEA;padding:8px 10px;vertical-align:middle}
