:root{font-family:"Segoe UI","Malgun Gothic",sans-serif;color:#172033;background:#f3f6fb}*{box-sizing:border-box}body{margin:0;min-width:1100px}.topbar{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;background:#fff;border-bottom:1px solid #dce3ee;position:sticky;top:0;z-index:10}.eyebrow{margin:0 0 4px;color:#64748b;font-size:11px;font-weight:800;letter-spacing:.16em}.topbar h1,.dialog-title h2,.key-result h2{margin:0}.top-actions{display:flex;align-items:center;gap:10px}.muted{color:#718096;font-size:13px}main{padding:24px 32px 48px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:16px}.stats article{background:#fff;border:1px solid #dce3ee;border-radius:14px;padding:16px 18px;box-shadow:0 5px 18px #20304a0a}.stats span{display:block;color:#64748b;font-size:13px}.stats strong{display:block;margin-top:6px;font-size:26px}.panel{background:#fff;border:1px solid #dce3ee;border-radius:16px;box-shadow:0 8px 28px #20304a0d;overflow:hidden}.filters{display:grid;grid-template-columns:minmax(250px,1fr) 130px 130px 130px auto auto;align-items:end;gap:10px;padding:16px;border-bottom:1px solid #e5eaf2}.filters label,.dialog-form label{display:flex;flex-direction:column;gap:6px;color:#536174;font-size:12px;font-weight:700}.filters input,.filters select,.dialog-form input,.dialog-form select,.dialog-form textarea{width:100%;border:1px solid #cbd5e1;border-radius:9px;padding:9px 10px;background:#fff;color:#172033;font:inherit;outline:none}.filters input:focus,.filters select:focus,.dialog-form input:focus,.dialog-form select:focus,.dialog-form textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f620}.button{border:0;border-radius:9px;padding:9px 13px;font-weight:700;cursor:pointer;white-space:nowrap}.button:disabled{opacity:.5;cursor:not-allowed}.primary{background:#2563eb;color:#fff}.primary:hover{background:#1d4ed8}.secondary{background:#e8eef7;color:#27364d}.secondary:hover{background:#dce5f1}.ghost{background:transparent;color:#64748b}.danger{background:#fee2e2;color:#b91c1c}.warning{background:#ffedd5;color:#9a3412}.table-wrap{overflow:auto;max-height:calc(100vh - 285px);scrollbar-width:thin;scrollbar-color:#94a3b8 #f8fafc}table{width:100%;border-collapse:collapse;font-size:13px}th{position:sticky;top:0;background:#f8fafc;color:#526075;text-align:left;padding:11px 12px;border-bottom:1px solid #dce3ee;z-index:1}td{padding:11px 12px;border-bottom:1px solid #edf1f6;vertical-align:top}tr:hover td{background:#f8fbff}.badge{display:inline-flex;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800}.badge.active{background:#dcfce7;color:#15803d}.badge.blocked{background:#fee2e2;color:#b91c1c}.badge.trial{background:#ede9fe;color:#6d28d9}.nowrap{white-space:nowrap}.note-cell{max-width:210px;white-space:pre-wrap;overflow-wrap:anywhere}.empty{text-align:center;color:#718096;padding:42px}.row-actions{position:relative}.row-actions summary{list-style:none;cursor:pointer;background:#e8eef7;border-radius:8px;padding:6px 9px;text-align:center;font-weight:700}.row-actions summary::-webkit-details-marker{display:none}.action-menu{position:absolute;right:0;top:34px;display:grid;grid-template-columns:1fr 1fr;gap:5px;width:260px;padding:9px;background:#fff;border:1px solid #cbd5e1;border-radius:11px;box-shadow:0 12px 30px #17203326;z-index:4}.action-menu button{font-size:12px}.notice{margin-bottom:14px;border-radius:11px;padding:11px 14px;font-weight:700}.notice.success{background:#dcfce7;color:#166534}.notice.error{background:#fee2e2;color:#991b1b}.hidden{display:none!important}dialog{border:0;border-radius:17px;padding:0;width:min(650px,calc(100vw - 40px));box-shadow:0 25px 70px #1118274d}dialog::backdrop{background:#0f172a80}.dialog-form,.key-result{padding:22px}.dialog-title{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.icon-button{border:0;background:transparent;font-size:28px;color:#64748b;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .full{grid-column:1/-1}.check-label{flex-direction:row!important;align-items:center;padding-top:25px}.check-label input{width:auto}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.key-result code{display:block;margin:18px 0;padding:15px;background:#0f172a;color:#bfdbfe;border-radius:10px;font-size:17px;text-align:center;user-select:all}
