:root{--bg:#f7f7f8;--surface:#fff;--line:#e6e7ea;--line-soft:#eff0f2;--ink:#16181d;--muted:#5b6270;--faint:#8a8f99;--accent:#16181d;--warn:#b45309}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);font-family:IBM Plex Sans KR,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:14px}a,body{color:var(--ink)}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.topbar{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 24px;background:var(--surface);border-bottom:1px solid var(--line)}.brand{font-size:15px;font-weight:700}.brand span{font-weight:400;color:var(--muted)}.btn{height:38px;padding:0 16px;border:0;border-radius:8px;background:var(--accent);color:#fff;font:inherit;font-weight:600;cursor:pointer}.btn.ghost{font-weight:500}.btn.ghost,.input,.select,.textarea{background:var(--surface);color:var(--ink);border:1px solid #d5d7dc}.input,.select,.textarea{border-radius:8px;padding:10px 12px;font:inherit;width:100%}.textarea{resize:vertical}.sheet{border-collapse:collapse;width:100%;font-size:13px}.sheet td,.sheet th{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.sheet th{color:var(--muted);font-weight:500;padding:9px 12px;white-space:nowrap}.sheet td{padding:10px 12px}.sheet tr.done td,.sheet tr.done td button{text-decoration:line-through;color:var(--faint)!important}.status-wait{color:var(--ink);font-weight:600}.status-done{color:var(--faint)}