/* QBX 운영 관리(admin.quantbridge-x.com) 톤앤매너 보정 — 가시성 · 입체 활성 버튼 (2026-10-30)
   모든 admin 페이지 <head> 맨 끝에: <link rel="stylesheet" href="/qbx-admin-refresh.css">  (기존 CSS는 그대로) */
:root{--bt1:#2FA3A0;--bt2:#197F7E;--bt3:#146A69;--btd:#0E4F4E;--btc:#fff;--dg1:#E5675A;--dg2:#C2492E;--dgd:#8E2F1C}
html[data-theme="dark"]{--bt1:#8FF6E1;--bt2:#5BE3C6;--bt3:#2FBFA6;--btd:#11806F;--btc:#04201C;--dg1:#FF9C82;--dg2:#F0705A;--dgd:#A33D32}
html[data-theme="dark"]{--qbx-color-muted:#B3C3CF;--qbx-color-line:rgba(190,220,235,.18)}
html[data-theme="light"]{--qbx-color-muted:#33464E;--qbx-color-line:rgba(7,20,26,.19)}
html:root body{font-family:"Noto Sans KR",Pretendard,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
/* ── 머리글 · 메뉴 ── */
html:root body .site-header{background:color-mix(in srgb,var(--qbx-color-bg) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--qbx-color-line);box-shadow:0 8px 24px -18px rgba(0,0,0,.5)}
html:root body .admin-nav{gap:4px}
html:root body .admin-nav a{padding:8px 12px;border-radius:10px;font-size:14px;font-weight:800;color:var(--qbx-color-muted);text-decoration:none;transition:background .15s,color .15s}
html:root body .admin-nav a:hover{color:var(--qbx-color-text);background:color-mix(in srgb,var(--qbx-color-brand) 10%,transparent)}
html:root body .admin-nav a.active{color:var(--btc);background:linear-gradient(180deg,var(--bt1),var(--bt2) 55%,var(--bt3));box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 3px 0 var(--btd),0 8px 16px -10px color-mix(in srgb,var(--bt2) 70%,transparent)}
html:root body .account-chip{font-size:13px;font-weight:800;padding:6px 10px;border-radius:999px;background:var(--qbx-color-surface-raised);border:1px solid var(--qbx-color-line);color:var(--qbx-color-text)}
html:root body .logout-button,html:root body .icon-button{border-radius:12px;border:1px solid var(--qbx-color-line);background:linear-gradient(180deg,var(--qbx-color-surface),var(--qbx-color-surface-raised));color:var(--qbx-color-text);font-weight:800;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 3px 0 rgba(0,0,0,.35);cursor:pointer}
html:root body .logout-button:active,html:root body .icon-button:active{transform:translateY(2px);box-shadow:none}
html:root body .mobile-nav a{font-weight:800}
/* ── 페이지 머리 ── */
html:root body .admin-main{position:relative}
html:root body .admin-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;font:800 12px/1 "JetBrains Mono",ui-monospace,monospace;letter-spacing:.14em;color:var(--qbx-color-brand);background:color-mix(in srgb,var(--qbx-color-brand) 11%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--qbx-color-brand) 30%,transparent)}
html:root body .admin-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--qbx-color-brand);box-shadow:0 0 0 4px color-mix(in srgb,var(--qbx-color-brand) 22%,transparent)}
html:root body .admin-title{font-weight:900;letter-spacing:-.045em}
html:root body .admin-lede{font-size:17px;line-height:1.6;color:var(--qbx-color-muted)}
/* ── 지표 카드 ── */
html:root body .admin-grid{gap:14px}
html:root body .metric{position:relative;overflow:hidden;padding:20px 22px;border-radius:20px;background:linear-gradient(180deg,var(--qbx-color-surface),var(--qbx-color-surface-raised));border:1px solid var(--qbx-color-line);box-shadow:0 2px 0 var(--qbx-color-line),0 18px 40px -26px rgba(0,0,0,.55)}
html:root body .metric::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--qbx-color-brand)}
html:root body .metric:nth-child(4n+2)::before{background:var(--qbx-color-violet)}html:root body .metric:nth-child(4n+3)::before{background:var(--qbx-color-gold)}html:root body .metric:nth-child(4n+4)::before{background:#4A9BEA}
html:root body .metric span{font-size:14px;font-weight:800;color:var(--qbx-color-muted)}
html:root body .metric b{font-size:clamp(28px,3.4vw,38px);font-weight:900;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--qbx-color-text)}
/* ── 바로가기 카드(관리 홈) ── */
html:root body .tool-grid{gap:14px}
html:root body .tool-card{--ac:var(--qbx-color-brand);position:relative;overflow:hidden;padding:22px 22px 54px;border-radius:22px;text-decoration:none;color:var(--qbx-color-text);background:linear-gradient(180deg,var(--qbx-color-surface),color-mix(in srgb,var(--qbx-color-surface-raised) 75%,var(--qbx-color-surface)));border:1px solid var(--qbx-color-line);box-shadow:0 2px 0 var(--qbx-color-line),0 18px 40px -24px rgba(0,0,0,.55);transition:transform .18s,box-shadow .18s,border-color .18s}
html:root body .tool-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--ac)}
html:root body .tool-card::after{content:"→";position:absolute;right:18px;bottom:16px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-weight:900;color:var(--ac);background:color-mix(in srgb,var(--ac) 14%,transparent);transition:transform .18s,background .18s,color .18s}
html:root body .tool-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--ac) 55%,transparent);box-shadow:0 3px 0 color-mix(in srgb,var(--ac) 45%,transparent),0 26px 50px -24px color-mix(in srgb,var(--ac) 45%,transparent)}
html:root body .tool-card:hover::after{transform:translateX(3px);background:var(--ac);color:#fff}
html:root body .tool-card small{display:inline-flex;padding:5px 10px;border-radius:999px;font:800 11.5px/1 "JetBrains Mono",ui-monospace,monospace;letter-spacing:.12em;color:var(--ac);background:color-mix(in srgb,var(--ac) 13%,transparent)}
html:root body .tool-card h2{margin-top:10px;font-size:21px;font-weight:900;letter-spacing:-.03em}
html:root body .tool-card p{font-size:14.5px;line-height:1.55;color:var(--qbx-color-muted)}
html:root body .tool-card[href*="refunds"]{--ac:#E5675A}html:root body .tool-card[href*="contracts"]{--ac:#7B5CF5}html:root body .tool-card[href="/team"]{--ac:#197F7E}html:root body .tool-card[href="/users"]{--ac:#2C7BD6}
html:root body .tool-card[href="/sales"]{--ac:#B07A12}html:root body .tool-card[href*="/sales/"]{--ac:#C48A1E}html:root body .tool-card[href="/commissions"]{--ac:#16A06B}html:root body .tool-card[href="/permissions"]{--ac:#6A55E0}html:root body .tool-card[href="/audit"]{--ac:#5F6E78}
html[data-theme="dark"] body .tool-card[href*="refunds"]{--ac:#FF9C82}html[data-theme="dark"] body .tool-card[href*="contracts"]{--ac:#B3A4FF}html[data-theme="dark"] body .tool-card[href="/team"]{--ac:#5BE3C6}html[data-theme="dark"] body .tool-card[href="/users"]{--ac:#7FB8FF}html[data-theme="dark"] body .tool-card[href="/sales"],html[data-theme="dark"] body .tool-card[href*="/sales/"]{--ac:#EFC77B}html[data-theme="dark"] body .tool-card[href="/commissions"]{--ac:#78E6CA}html[data-theme="dark"] body .tool-card[href="/permissions"]{--ac:#A99BFF}html[data-theme="dark"] body .tool-card[href="/audit"]{--ac:#B3C3CF}
/* ── 패널 · 필터 ── */
html:root body .panel{border-radius:24px;background:var(--qbx-color-surface);border:1px solid var(--qbx-color-line);box-shadow:var(--qbx-shadow-panel)}
html:root body .panel h2{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:900;letter-spacing:-.03em}
html:root body .panel h2::before{content:"";flex:none;width:5px;height:20px;border-radius:4px;background:var(--qbx-color-brand)}
html:root body .panel-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;padding-bottom:16px;margin-bottom:6px;border-bottom:1px solid var(--qbx-color-line)}
html:root body .panel-head>h2{margin:0 auto 0 0}
html:root body .panel-head .input,html:root body .panel-head .select{width:auto;min-width:170px;flex:0 1 220px;margin:0}
html:root body .panel-head form{display:flex;flex-wrap:wrap;gap:8px;margin:0}
html:root body .field label{font-size:14px;font-weight:800;color:var(--qbx-color-text)}
html:root body .input,html:root body .select,html:root body .textarea{min-height:48px;padding:0 14px;border-radius:12px;border:1.5px solid var(--qbx-color-line);background-color:var(--qbx-color-bg-soft);color:var(--qbx-color-text);font-size:15.5px;font-weight:600}
html:root body .textarea{padding:12px 14px;min-height:96px}
html:root body .select{appearance:none;-webkit-appearance:none;padding-right:40px;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 20px) 52%,calc(100% - 14px) 52%;background-size:6px 6px;background-repeat:no-repeat}
html:root body .input:focus,html:root body .select:focus,html:root body .textarea:focus{outline:3px solid color-mix(in srgb,var(--qbx-color-brand) 28%,transparent);border-color:var(--qbx-color-brand);background-color:var(--qbx-color-surface)}
html:root body .input::placeholder,html:root body .textarea::placeholder{color:color-mix(in srgb,var(--qbx-color-muted) 80%,transparent)}
/* ── 버튼: 입체 ── */
html:root body .button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:0 18px;border-radius:13px;border:1px solid var(--qbx-color-line);font-size:15px;font-weight:800;letter-spacing:-.01em;text-decoration:none;cursor:pointer;color:var(--qbx-color-text);background:linear-gradient(180deg,var(--qbx-color-surface),var(--qbx-color-surface-raised));box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 3px 0 color-mix(in srgb,var(--qbx-color-line) 170%,transparent),0 10px 18px -14px rgba(0,0,0,.6);transition:transform .12s,box-shadow .12s}
html:root body .button:hover{transform:translateY(-1px)}
html:root body .button:active{transform:translateY(3px);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 0 var(--qbx-color-line)}
html:root body .button.primary{color:var(--btc);border-color:transparent;background:linear-gradient(180deg,var(--bt1),var(--bt2) 55%,var(--bt3));box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 4px 0 var(--btd),0 14px 26px -12px color-mix(in srgb,var(--bt2) 65%,transparent)}
html:root body .button.primary:active{box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 1px 0 var(--btd)}
html:root body .button.danger{color:#fff;border-color:transparent;background:linear-gradient(180deg,var(--dg1),var(--dg2));box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 4px 0 var(--dgd),0 14px 26px -14px color-mix(in srgb,var(--dg2) 60%,transparent)}
html[data-theme="dark"] body .button.danger{color:#2A0A04}
html:root body .button:disabled,html:root body .mini-button:disabled{cursor:not-allowed;transform:none;opacity:1;color:var(--qbx-color-muted);background:repeating-linear-gradient(-45deg,var(--qbx-color-bg-soft) 0 8px,var(--qbx-color-surface-raised) 8px 16px);box-shadow:inset 0 0 0 1.5px var(--qbx-color-line);border-color:transparent}
html:root body .mini-button{min-height:34px;padding:0 12px;border-radius:10px;border:1px solid var(--qbx-color-line);font-size:13.5px;font-weight:800;cursor:pointer;color:var(--qbx-color-text);background:linear-gradient(180deg,var(--qbx-color-surface),var(--qbx-color-surface-raised));box-shadow:0 2px 0 color-mix(in srgb,var(--qbx-color-line) 170%,transparent)}
html:root body .mini-button:hover{color:var(--qbx-color-brand);border-color:color-mix(in srgb,var(--qbx-color-brand) 45%,var(--qbx-color-line))}
html:root body .mini-button:active{transform:translateY(2px);box-shadow:none}
html:root body .toolbar{gap:8px}
/* ── 표 ── */
html:root body .table-wrap{border-radius:16px;border:1px solid var(--qbx-color-line);overflow:auto;background:var(--qbx-color-surface)}
html:root body .data-table{border-collapse:separate;border-spacing:0;width:100%}
html:root body .data-table th{position:sticky;top:0;z-index:1;padding:13px 14px;font-size:13px;font-weight:900;letter-spacing:.02em;text-align:left;white-space:nowrap;color:var(--qbx-color-text);background:color-mix(in srgb,var(--qbx-color-surface-raised) 85%,var(--qbx-color-surface));border-bottom:2px solid var(--qbx-color-line)}
html:root body .data-table td{padding:13px 14px;font-size:14.5px;border-bottom:1px solid var(--qbx-color-line);vertical-align:middle}
html:root body .data-table tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--qbx-color-surface-raised) 45%,transparent)}
html:root body .data-table tbody tr:hover td{background:color-mix(in srgb,var(--qbx-color-brand) 8%,transparent)}
html:root body .name-cell b{font-size:15px;font-weight:900}
html:root body .name-cell small{color:var(--qbx-color-muted)}
html:root body .sort-button{font-weight:900;color:inherit}
html:root body .sort-button:hover{color:var(--qbx-color-brand)}
html:root body th[aria-sort] .sort-button{color:var(--qbx-color-brand)}
/* ── 상태 배지 ── */
html:root body .badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;font-size:12.5px;font-weight:900;white-space:nowrap;color:var(--qbx-color-text);background:var(--qbx-color-surface-raised);box-shadow:inset 0 0 0 1px var(--qbx-color-line)}
html:root body .badge.good{color:#0B7A55;background:color-mix(in srgb,#16A06B 16%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,#16A06B 40%,transparent)}
html:root body .badge.super{color:#8A5A00;background:color-mix(in srgb,#E2A93B 20%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,#E2A93B 45%,transparent)}
html:root body .badge.google{color:#1D5FC2;background:color-mix(in srgb,#4285F4 14%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,#4285F4 38%,transparent)}
html:root body .badge.naver{color:#047A2E;background:color-mix(in srgb,#03C75A 15%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,#03C75A 40%,transparent)}
html:root body .badge.kakao{color:#5A4A00;background:color-mix(in srgb,#FEE500 30%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,#C9B400 50%,transparent)}
html[data-theme="dark"] body .badge.good{color:#78E6CA}html[data-theme="dark"] body .badge.super{color:#EFC77B}html[data-theme="dark"] body .badge.google{color:#9CC2FF}html[data-theme="dark"] body .badge.naver{color:#6FE3A0}html[data-theme="dark"] body .badge.kakao{color:#FFE76A}
/* ── 안내 · 빈 상태 ── */
html:root body .notice.show,html:root body .notice:not(:empty){padding:12px 14px;border-radius:12px;font-weight:700;background:color-mix(in srgb,var(--qbx-color-brand) 10%,var(--qbx-color-surface));border:1.5px solid color-mix(in srgb,var(--qbx-color-brand) 32%,transparent)}
html:root body .notice.error{background:color-mix(in srgb,var(--qbx-color-danger) 12%,var(--qbx-color-surface));border-color:color-mix(in srgb,var(--qbx-color-danger) 40%,transparent)}
html:root body .empty{padding:22px;border-radius:14px;text-align:center;font-weight:700;color:var(--qbx-color-muted);border:1.5px dashed var(--qbx-color-line)}
/* ── 권한 · 계정 · 감사 ── */
html:root body .permission-card{border-radius:18px;border:1px solid var(--qbx-color-line);background:var(--qbx-color-surface);box-shadow:0 2px 0 var(--qbx-color-line)}
html:root body .permission-checks label{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;font-weight:800;border:1.5px solid var(--qbx-color-line);background:var(--qbx-color-bg-soft);cursor:pointer}
html:root body .permission-checks label:has(input:checked){color:var(--qbx-color-brand);border-color:var(--qbx-color-brand);background:color-mix(in srgb,var(--qbx-color-brand) 10%,transparent)}
html:root body .permission-checks input{accent-color:var(--qbx-color-brand);width:18px;height:18px}
html:root body .account-list dt{font-size:14.5px;font-weight:800;color:var(--qbx-color-muted)}
html:root body .account-list dd{font-size:16.5px;font-weight:800}
html:root body .audit-detail{border-radius:12px;background:var(--qbx-color-bg-soft);border:1px solid var(--qbx-color-line)}
html:root body .contract-header{border-bottom:1px solid var(--qbx-color-line)}
/* ── 팀 업무 ── */
html:root body .team-sidebar{border-right:1px solid var(--qbx-color-line)}
html:root body .team-projects button,html:root body .team-sidebar>button{border-radius:12px;font-weight:800}
html:root body .team-projects button[aria-pressed="true"],html:root body .team-tabs button[aria-pressed="true"]{color:var(--btc);border-color:transparent;background:linear-gradient(180deg,var(--bt1),var(--bt2) 55%,var(--bt3));box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 3px 0 var(--btd),0 10px 18px -10px color-mix(in srgb,var(--bt2) 65%,transparent)}
html:root body .team-tabs{gap:6px;padding:6px;border-radius:16px;background:var(--qbx-color-surface);border:1px solid var(--qbx-color-line)}
html:root body .team-tabs button{min-height:40px;border-radius:11px;border:0;background:transparent;box-shadow:none;font-weight:800}
html:root body .team-tabs button[aria-pressed="false"]:hover{background:color-mix(in srgb,var(--qbx-color-brand) 9%,transparent);transform:none}
html:root body .team-column{--cc:var(--qbx-color-muted);border-radius:18px;background:color-mix(in srgb,var(--qbx-color-surface-raised) 55%,var(--qbx-color-surface));border:1px solid var(--qbx-color-line);box-shadow:inset 0 4px 0 var(--cc)}
html:root body .team-column:has(.team-dot.todo){--cc:#4A9BEA}html:root body .team-column:has(.team-dot.doing){--cc:#E2A93B}html:root body .team-column:has(.team-dot.review){--cc:#8E83FF}html:root body .team-column:has(.team-dot.done){--cc:#16A06B}
html:root body .team-column h2{font-size:15px;font-weight:900}
html:root body .team-dot.todo{background:#4A9BEA}html:root body .team-dot.doing{background:#E2A93B}html:root body .team-dot.review{background:#8E83FF}html:root body .team-dot.done{background:#16A06B}
html:root body .team-task{border-radius:14px;border:1px solid var(--qbx-color-line);background:var(--qbx-color-surface);box-shadow:0 2px 0 var(--qbx-color-line),0 10px 20px -16px rgba(0,0,0,.6);transition:transform .15s,border-color .15s}
html:root body .team-task:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--qbx-color-brand) 50%,transparent)}
html:root body .team-task strong{font-size:15.5px;font-weight:900}
html:root body .team-priority{padding:2px 8px;border-radius:999px;font-size:11.5px;font-weight:900;background:var(--qbx-color-surface-raised)}
html:root body .team-priority.high{color:#8A5A00;background:color-mix(in srgb,#E2A93B 22%,transparent)}
html:root body .team-priority.urgent{color:#fff;background:linear-gradient(180deg,var(--dg1),var(--dg2))}
html[data-theme="dark"] body .team-priority.high{color:#EFC77B}
html:root body .team-muted{color:var(--qbx-color-muted)}
html:root body .team-column-empty,html:root body .team-empty{border:1.5px dashed var(--qbx-color-line);border-radius:12px;color:var(--qbx-color-muted)}
html:root body #team-dialog{border-radius:22px;border:1px solid var(--qbx-color-line);box-shadow:0 40px 90px -30px rgba(0,0,0,.7)}
html:root body #team-dialog::backdrop{background:rgba(3,8,14,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
html:root body .team-notification{border-radius:14px;border:1px solid var(--qbx-color-line);box-shadow:inset 4px 0 0 var(--qbx-color-brand)}
html:root body .team-notification.is-read{box-shadow:inset 4px 0 0 var(--qbx-color-line);opacity:.8}
html:root body .team-doc,html:root body .team-google,html:root body .team-calendar{border-radius:16px}
html:root body .team-day{border-color:var(--qbx-color-line)}
/* ── 로그인 ── */
html:root body .login-card{border-radius:26px;border:1px solid var(--qbx-color-line);box-shadow:var(--qbx-shadow-panel)}
html:root body .social-button{border-radius:14px;font-weight:800;box-shadow:0 3px 0 rgba(0,0,0,.25)}
html:root body .social-button:active{transform:translateY(2px);box-shadow:none}
/* ── 취소·환불 관리(/admin/payments/refunds: 클래스 없는 화면) ── */
html:root body main:not([class]){max-width:920px;margin:0 auto;padding:28px 20px 80px;display:flex;flex-wrap:wrap;align-items:center;column-gap:8px}
html:root body main:not([class])>*{flex:0 0 100%}
html:root body main:not([class])>a:first-child{flex:1 1 auto;order:-3;display:inline-flex;align-items:center;gap:8px;min-height:40px;font-weight:800;color:var(--qbx-color-brand);text-decoration:none}
html:root body main:not([class])>a:first-child::before{content:"←";display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--qbx-color-surface);border:1px solid var(--qbx-color-line)}
html:root body main:not([class])>#theme,html:root body main:not([class])>#refresh{order:-2;flex:0 0 auto;width:auto;min-height:40px;margin:0;padding:0 14px;border-radius:999px;font-size:13.5px;font-weight:800;background:var(--qbx-color-surface);border:1px solid var(--qbx-color-line);color:var(--qbx-color-text);box-shadow:0 2px 0 var(--qbx-color-line);cursor:pointer}
html:root body main:not([class])>#refresh::before{content:"↻ "}
html:root body main:not([class])>h1{margin:22px 0 4px;font-size:clamp(32px,5vw,44px);font-weight:900;letter-spacing:-.045em}
html:root body main:not([class])>p{margin:6px 0;color:var(--qbx-color-muted);font-size:15.5px}
html:root body main:not([class]) #records article{margin:12px 0;padding:20px;border-radius:20px;background:var(--qbx-color-surface);border:1px solid var(--qbx-color-line);box-shadow:0 2px 0 var(--qbx-color-line),0 16px 34px -24px rgba(0,0,0,.55)}
html:root body main:not([class]) #records article>b{font:800 13.5px/1.2 ui-monospace,monospace;color:var(--qbx-color-muted)}
html:root body main:not([class]) #records article>p{display:inline-block;margin:8px 0 0;padding:5px 11px;border-radius:999px;font-size:13.5px;font-weight:900;color:var(--qbx-color-brand);background:color-mix(in srgb,var(--qbx-color-brand) 13%,transparent)}
html:root body main:not([class]) #records article>small{display:block;margin-top:6px;color:var(--qbx-color-muted)}
html:root body main:not([class]) #records dl{display:grid;grid-template-columns:1fr auto;margin:14px 0 0;padding:6px 14px;border-radius:14px;background:var(--qbx-color-bg-soft)}
html:root body main:not([class]) #records dt,html:root body main:not([class]) #records dd{margin:0;padding:9px 0;border-bottom:1px solid var(--qbx-color-line);font-size:14.5px}
html:root body main:not([class]) #records dt{color:var(--qbx-color-muted);font-weight:700}
html:root body main:not([class]) #records dd{text-align:right;font-weight:900;font-variant-numeric:tabular-nums}
html:root body main:not([class]) #records dt:nth-last-of-type(2),html:root body main:not([class]) #records dd:nth-last-of-type(2){color:var(--qbx-color-brand);font-size:16px}
html:root body main:not([class]) #records button,html:root body main:not([class]) #records input,html:root body main:not([class]) #records select{min-height:44px;margin:8px 8px 0 0;padding:0 16px;border-radius:12px;font-weight:800}
html:root body main:not([class]) #records button{width:auto;border:0;cursor:pointer;color:var(--btc);background:linear-gradient(180deg,var(--bt1),var(--bt2) 55%,var(--bt3));box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 4px 0 var(--btd)}
html:root body main:not([class]) #records button:active{transform:translateY(3px);box-shadow:0 1px 0 var(--btd)}
html:root body main:not([class]) #records button:disabled{color:var(--qbx-color-muted);background:var(--qbx-color-surface-raised);box-shadow:inset 0 0 0 1.5px var(--qbx-color-line)}
html:root body main:not([class]) #records>p{padding:22px;border-radius:16px;text-align:center;font-weight:700;color:var(--qbx-color-muted);border:1.5px dashed var(--qbx-color-line)}
html:root body main:not([class])>small{display:block;margin-top:10px;font-size:12.5px;color:var(--qbx-color-muted)}
@media (max-width:760px){html:root body .panel-head .input,html:root body .panel-head .select{flex:1 1 100%;min-width:0}html:root body .metric b{font-size:28px}}
@media (prefers-reduced-motion:reduce){html:root body .tool-card,html:root body .button,html:root body .team-task{transition:none}}
/* 메뉴 정리 — 운영 콘솔(/console)로 옮긴 기능과 잡다한 기능은 기존 메뉴에서 숨김(주소로는 계속 접근 가능) */
html:root body .admin-nav a[href="/team"],html:root body .admin-nav a[href="/sales"],html:root body .admin-nav a[href="/sales/reps"],html:root body .admin-nav a[href="/sales/customers"],
html:root body .mobile-nav a[href="/team"],html:root body .mobile-nav a[href="/sales"],html:root body .mobile-nav a[href="/sales/reps"],html:root body .mobile-nav a[href="/sales/customers"],
html:root body .tool-card[href="/team"],html:root body .tool-card[href="/sales"],html:root body .tool-card[href="/sales/reps"],html:root body .tool-card[href="/sales/customers"]{display:none}

/* ══════════ v2 (2026-11-04) — 가시성 · 색상 톤 · 입체 버튼 강화 (전 admin 화면 + 운영 콘솔) ══════════ */
:root,html[data-theme="light"]{
  --v2-bg:#E6EDEF;--v2-bg2:#F3F7F8;--v2-card:#FFFFFF;--v2-raise:#F1F6F7;--v2-text:#06131A;--v2-sub:#2C3F47;--v2-faint:#56707A;
  --v2-line:#C9D7DA;--v2-line2:#AFC3C7;--v2-brand:#14807D;--v2-ink:#0B5F5D;--v2-soft:#DCF2EE;
  --v2-p1:#36B5B0;--v2-p2:#178481;--v2-p3:#0F6866;--v2-pd:#094A48;--v2-pc:#FFFFFF;
  --v2-card-sh:inset 0 1px 0 #fff,0 0 0 1px rgba(6,19,26,.09),0 3px 0 rgba(6,19,26,.07),0 16px 30px -16px rgba(6,19,26,.42);
  --v2-btn-sh:inset 0 1px 0 #fff,0 0 0 1px rgba(6,19,26,.16),0 4px 0 #B3C5C9,0 10px 18px -10px rgba(6,19,26,.4);
  --v2-btn-sh-a:inset 0 2px 4px rgba(6,19,26,.14),0 0 0 1px rgba(6,19,26,.2),0 1px 0 #B3C5C9;
  --v2-pri-sh:inset 0 1px 0 rgba(255,255,255,.4),inset 0 -2px 0 rgba(0,0,0,.12),0 5px 0 var(--v2-pd),0 14px 24px -10px rgba(20,128,125,.65);
  --v2-pri-sh-a:inset 0 3px 6px rgba(0,0,0,.28),0 1px 0 var(--v2-pd);
  /* 기존 변수도 같은 톤으로 */
  --qbx-color-bg:var(--v2-bg);--qbx-color-bg-soft:var(--v2-bg);--qbx-color-surface:var(--v2-card);--qbx-color-surface-raised:var(--v2-raise);
  --qbx-color-text:var(--v2-text);--qbx-color-muted:var(--v2-sub);--qbx-color-line:rgba(6,19,26,.17);--qbx-color-brand:var(--v2-brand);--qbx-color-brand-strong:var(--v2-ink);
  --bt1:var(--v2-p1);--bt2:var(--v2-p2);--bt3:var(--v2-p3);--btd:var(--v2-pd);--btc:#fff;
  --en-bg:var(--v2-bg);--en-face:#fff;--en-text:var(--v2-text);--en-sub:var(--v2-sub);--en-line:var(--v2-line);--en-blue:var(--v2-brand);
  --b1:var(--v2-p1);--b3:var(--v2-p3);--b4:var(--v2-pd);--accent-ink:var(--v2-ink);--accent-soft:var(--v2-soft);
  --text:var(--v2-text);--sub:var(--v2-sub);--muted:var(--v2-faint);--line:var(--v2-line);--card:#fff;--bg:var(--v2-bg)}
html[data-theme="dark"]{
  --v2-bg:#050A12;--v2-bg2:#0A121D;--v2-card:#0E1824;--v2-raise:#14212F;--v2-text:#F1F8FF;--v2-sub:#C2D1DC;--v2-faint:#93A7B6;
  --v2-line:#253A4C;--v2-line2:#36536B;--v2-brand:#66F1D6;--v2-ink:#8CF5E0;--v2-soft:#0F3530;
  --v2-p1:#A4FBEA;--v2-p2:#5CE6CA;--v2-p3:#2CC2A9;--v2-pd:#0F7364;--v2-pc:#03201B;
  --v2-card-sh:inset 0 1px 0 rgba(255,255,255,.06),0 0 0 1px rgba(190,220,235,.12),0 3px 0 rgba(0,0,0,.55),0 20px 36px -18px #000;
  --v2-btn-sh:inset 0 1px 0 rgba(255,255,255,.09),0 0 0 1px rgba(190,220,235,.2),0 4px 0 #000,0 10px 18px -10px #000;
  --v2-btn-sh-a:inset 0 2px 4px rgba(0,0,0,.5),0 0 0 1px rgba(190,220,235,.24);
  --v2-pri-sh:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -2px 0 rgba(0,0,0,.15),0 5px 0 var(--v2-pd),0 14px 26px -10px rgba(102,241,214,.45);
  --qbx-color-bg:var(--v2-bg);--qbx-color-bg-soft:var(--v2-bg);--qbx-color-surface:var(--v2-card);--qbx-color-surface-raised:var(--v2-raise);
  --qbx-color-text:var(--v2-text);--qbx-color-muted:var(--v2-sub);--qbx-color-line:rgba(190,220,235,.17);--qbx-color-brand:var(--v2-brand);
  --bt1:var(--v2-p1);--bt2:var(--v2-p2);--bt3:var(--v2-p3);--btd:var(--v2-pd);--btc:var(--v2-pc)}

html:root{background:var(--v2-bg)!important}
html:root body{background:radial-gradient(1000px 520px at 10% -10%,rgba(54,181,176,.16),transparent 62%),radial-gradient(800px 480px at 100% 0,rgba(81,68,181,.07),transparent 60%),var(--v2-bg) fixed!important;color:var(--v2-text)!important;font-family:"Noto Sans KR",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo",sans-serif!important;letter-spacing:-.01em}
html[data-theme="dark"] body{background:radial-gradient(1000px 520px at 10% -10%,rgba(102,241,214,.08),transparent 62%),var(--v2-bg) fixed!important}

/* ── 머리글 (공통 · 운영 콘솔 · 전자계약) ── */
html:root body :is(.site-header,.hd,.contract-header){background:rgba(255,255,255,.92)!important;border-bottom:0!important;box-shadow:0 1px 0 rgba(6,19,26,.08),0 12px 28px -18px rgba(6,19,26,.45)!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
html[data-theme="dark"] body :is(.site-header,.hd,.contract-header){background:rgba(8,14,24,.9)!important;box-shadow:0 1px 0 rgba(190,220,235,.08),0 12px 28px -18px #000!important}
/* 메뉴 탭: 선택된 탭 = 청록 입체(이전의 연한 민트 → 진한 버튼) */
html:root body :is(.admin-nav a,.nav a){color:var(--v2-sub)!important;font-weight:800!important}
html:root body :is(.admin-nav a,.nav a):hover{color:var(--v2-text)!important;background:var(--v2-soft)!important}
html:root body :is(.admin-nav a.active,.nav a.on,.nav a[aria-current="page"]){color:var(--v2-pc)!important;background:linear-gradient(180deg,var(--v2-p1),var(--v2-p2) 55%,var(--v2-p3))!important;box-shadow:var(--v2-pri-sh)!important;text-shadow:0 1px 0 rgba(0,0,0,.18)}
html:root body :is(.admin-nav a.active,.nav a.on) .dot{background:#fff!important;color:#C2492E!important}
/* 아이콘 버튼(테마 · 메뉴 · 알림 · 계정 · 로그아웃) */
html:root body :is(.icon-button,.logout-button,.ib,.theme-toggle,#theme,.menu-toggle){border:0!important;background:linear-gradient(180deg,#fff,var(--v2-raise))!important;box-shadow:var(--v2-btn-sh)!important;color:var(--v2-text)!important;font-weight:800!important;transition:transform .1s}
html[data-theme="dark"] body :is(.icon-button,.logout-button,.ib,.theme-toggle,#theme,.menu-toggle){background:linear-gradient(180deg,#1A2A3A,#122030)!important}
html:root body :is(.icon-button,.logout-button,.ib,.theme-toggle,#theme,.menu-toggle):active{transform:translateY(3px);box-shadow:var(--v2-btn-sh-a)!important}

/* ── 제목 ── */
html:root body :is(.admin-eyebrow,.eb){color:var(--v2-ink)!important;background:var(--v2-soft)!important;box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--v2-brand) 35%,transparent)!important;font-weight:900!important}
html:root body :is(.admin-title,main h1,.main h1){color:var(--v2-text)!important;font-weight:900!important;letter-spacing:-.045em!important}
html:root body :is(.admin-lede,.lede,main>p){color:var(--v2-sub)!important}

/* ── 카드 · 패널 · KPI ── */
html:root body :is(.panel,.kpi,.app,.lk,.tool-card,.login-card,.permission-card,.tw,.table-wrap,#setup,#detail,#list>article,main:not([class])>form,main:not([class])>section){border:0!important;background:var(--v2-card)!important;box-shadow:var(--v2-card-sh)!important}
html:root body .panel :is(h2,h3){color:var(--v2-text)!important;font-weight:900!important}
html:root body .panel h2::before{background:linear-gradient(180deg,var(--v2-p1),var(--v2-p3))!important;width:5px!important;border-radius:4px}
html:root body .kpi{position:relative;overflow:hidden}
html:root body .kpi::before{width:6px!important}
html:root body .kpi span{color:var(--v2-sub)!important;font-weight:800!important}
html:root body .kpi b{font-size:clamp(32px,4.4vw,40px)!important;font-weight:900!important;color:var(--kc,var(--v2-text))!important;letter-spacing:-.03em}
html:root body .kpi small{color:var(--v2-faint)!important;font-weight:700!important}
html:root body .kpi:active{transform:translateY(2px)}
html:root body .lk em{font-weight:900!important}
html:root body .lk::after{box-shadow:0 3px 0 rgba(6,19,26,.15)}

/* ── 버튼: 주요 = 청록 입체(아래 두께 5px), 보조 = 흰 입체(아래 두께 4px) ── */
html:root body :is(.btn,.button,.mini-button,.social-button,main:not([class]) button,.contract-header~main button:not(.chip)),html:root body :where(#refresh,#setup button,#detail button){border:0!important;font-weight:800!important;color:var(--v2-text)!important;background:linear-gradient(180deg,#FFFFFF,#EEF4F5)!important;box-shadow:var(--v2-btn-sh)!important;transition:transform .1s,box-shadow .1s,filter .12s!important;text-decoration:none!important}
html[data-theme="dark"] body :is(.btn,.button,.mini-button,.social-button,main:not([class]) button,.contract-header~main button:not(.chip)),html[data-theme="dark"] body :where(#refresh,#setup button,#detail button){color:var(--v2-text)!important;background:linear-gradient(180deg,#1A2A3A,#122030)!important}
html:root body :is(.btn,.button,.mini-button,.social-button,main:not([class]) button,.contract-header~main button):hover{filter:brightness(1.03);transform:translateY(-1px)}
html:root body :is(.btn,.button,.mini-button,.social-button,main:not([class]) button,.contract-header~main button):active{transform:translateY(4px)!important;box-shadow:var(--v2-btn-sh-a)!important}
html:root body :is(.btn.pri,.button.primary,button[type=submit]:not(.chip),.qx-co .btn.solid,main:not([class]) article>button:first-of-type){color:var(--v2-pc)!important;background:linear-gradient(180deg,var(--v2-p1) 0%,var(--v2-p2) 52%,var(--v2-p3) 100%)!important;box-shadow:var(--v2-pri-sh)!important;text-shadow:0 1px 0 rgba(0,0,0,.18)}
html:root body :is(.btn.pri,.button.primary,button[type=submit]:not(.chip)):active{box-shadow:var(--v2-pri-sh-a)!important}
html:root body :is(.button.danger,.btn.danger){color:#fff!important;background:linear-gradient(180deg,#F07B6E,#D8503F 55%,#B23A2C)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 5px 0 #7E2419,0 14px 24px -10px rgba(194,73,46,.55)!important}
html:root body :is(.btn,.button,button)[disabled],html:root body :is(.btn,.button,button):disabled{filter:grayscale(.7) opacity(.55)!important;transform:none!important;cursor:not-allowed!important}
/* 칩 · 필터 · 탭 */
html:root body :is(.chip,.qqa-tabs button,.seg span,.utab .tabs button){border:0!important;font-weight:800!important;background:linear-gradient(180deg,#fff,#EEF4F5)!important;box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(6,19,26,.15),0 3px 0 #B3C5C9!important;color:var(--v2-text)!important}
html:root body :is(.chip,.utab .tabs button):active{transform:translateY(3px);box-shadow:inset 0 0 0 1px rgba(6,19,26,.2)!important}
html:root body :is(.chip[aria-pressed="true"],.utab .tabs button[aria-selected="true"],.seg input:checked+span){color:var(--v2-pc)!important;background:linear-gradient(180deg,var(--v2-p1),var(--v2-p2) 55%,var(--v2-p3))!important;box-shadow:var(--v2-pri-sh)!important}
html:root body .chip .n{font-weight:900;opacity:1!important;padding:0 6px;border-radius:999px;background:rgba(6,19,26,.08)}
html:root body .chip[aria-pressed="true"] .n{background:rgba(255,255,255,.25)}

/* ── 입력칸 ── */
html:root body :is(.input,.select,.textarea,.in,.sel,main input:not([type=checkbox]):not([type=radio]),main select,main textarea){background:#fff!important;border:1.5px solid var(--v2-line2)!important;color:var(--v2-text)!important;font-weight:600;box-shadow:inset 0 2px 3px rgba(6,19,26,.06)!important;min-height:48px}
html[data-theme="dark"] body :is(.input,.select,.textarea,.in,.sel,main input:not([type=checkbox]):not([type=radio]),main select,main textarea){background:#0A121D!important}
html:root body :is(.input,.select,.textarea,.in,.sel,main input,main select,main textarea):focus{border-color:var(--v2-brand)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--v2-brand) 20%,transparent)!important;outline:0!important}
html:root body :is(.input,.in,main input)::placeholder{color:var(--v2-faint)!important;opacity:1}
html:root body :is(label,.field label,dt){color:var(--v2-text)}
html:root body input[type=checkbox]{accent-color:var(--v2-brand);width:20px;height:20px}

/* ── 표 ── */
html:root body :is(.data-table,table) th{background:linear-gradient(180deg,#EAF4F3,#DCEEEC)!important;color:var(--v2-ink)!important;font-weight:900!important;border-bottom:2px solid var(--v2-line2)!important}
html[data-theme="dark"] body :is(.data-table,table) th{background:#132131!important;color:var(--v2-ink)!important}
html:root body :is(.data-table,table) td{color:var(--v2-text)!important;border-bottom:1px solid var(--v2-line)!important}
html:root body :is(.data-table,table) tbody tr:hover td{background:var(--v2-soft)!important}
html:root body :is(.table-wrap,.tw){border-radius:16px!important;overflow:auto}

/* ── 배지 · 안내 상자 ── */
html:root body .bd{font-weight:900!important}
html:root body .bd.plan{box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 2px 0 rgba(0,0,0,.28)!important}
html:root body .noapi{background:#FFF4DA!important;box-shadow:inset 0 0 0 1.5px #E2B44B!important;color:#3B2A02!important}
html[data-theme="dark"] body .noapi{background:#2A2312!important;color:#F2DBA4!important}
html:root body .noapi code{background:rgba(0,0,0,.07)!important;color:#5B3F00}

/* ── 로그인 ── */
html:root body .login-card{border-radius:28px!important;padding-block:40px!important}
html:root body .login-card :is(h1,.admin-title){font-weight:900!important}
html:root body .social-button{min-height:56px!important;border-radius:16px!important;font-size:16px!important}
html:root body .login-card :is(p,small){color:var(--v2-sub)!important}

/* ── 전자계약 관리(/service-contracts) ── */
html:root body .contract-header>a{font-weight:900!important;color:var(--v2-text)!important;text-decoration:none!important}
html:root body .contract-header nav a{display:inline-grid;place-items:center;min-width:38px;min-height:34px;border-radius:9px;text-decoration:none!important;font-weight:800;color:var(--v2-sub)!important}
html:root body .contract-header nav a:hover{background:var(--v2-soft)}
html:root body .contract-header~main>p>a,html:root body main>p>a[href*="contract"]{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 16px;border-radius:13px;font-weight:800;text-decoration:none!important;color:var(--v2-text)!important;background:linear-gradient(180deg,#fff,#EEF4F5);box-shadow:var(--v2-btn-sh)}
html:root body .contract-header~main>p>a::after{content:"→";color:var(--v2-brand)}
html:root body #setup{border-radius:24px!important;padding:24px!important}
html:root body #setup h2{font-weight:900;margin-top:0}
html:root body #setup p{margin:8px 0;padding:10px 14px;border-radius:12px;background:var(--v2-bg2);font-weight:700;color:var(--v2-text)}
html:root body #setup p:has(+button),html:root body #setup p:last-of-type{margin-bottom:14px}

/* ── 취소·환불 관리 ── */
html:root body main:not([class])>section{border-radius:24px!important}
html:root body main:not([class]) code,html:root body main:not([class]) .mono{color:var(--v2-sub)}

/* ── 프로모션 · BLACK 결제창 · 수당관리(같은 패널 구조) ── */
html:root body .panel :is(.input,.select,input,select){width:100%}
html:root body .panel select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--v2-sub) 50%),linear-gradient(135deg,var(--v2-sub) 50%,transparent 50%)!important;background-position:calc(100% - 20px) 52%,calc(100% - 14px) 52%!important;background-size:6px 6px!important;background-repeat:no-repeat!important;padding-right:40px!important}

@media (max-width:640px){
  html:root body :is(.btn,.button){min-height:48px}
  html:root body .kpi b{font-size:32px!important}
}
html[data-theme="dark"] body .contract-header~main>p>a{color:var(--v2-text)!important;background:linear-gradient(180deg,#1A2A3A,#122030)!important}
@media (max-width:760px){
  html:root body .admin-grid{grid-template-columns:1fr 1fr!important}
  html:root body .tool-grid{grid-template-columns:1fr!important}
  html:root body .admin-title{font-size:clamp(32px,9vw,44px)!important;word-break:keep-all}
}
html[data-theme="dark"] body :is(.chip,.qqa-tabs button,.seg span,.utab .tabs button):not([aria-pressed="true"]):not([aria-selected="true"]){color:var(--v2-text)!important;background:linear-gradient(180deg,#1A2A3A,#122030)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 0 1px rgba(190,220,235,.2),0 3px 0 #000!important}
html[data-theme="dark"] body .seg input:checked+span{color:var(--v2-pc)!important;background:linear-gradient(180deg,var(--v2-p1),var(--v2-p2) 55%,var(--v2-p3))!important}
html[data-theme="dark"] body .chip .n{background:rgba(255,255,255,.1)}

/* ══════════ v3 (2026-11-04) — www.quantbridge-x.com 기준 가시성 강화 ══════════
   사이트 값: 배경 #E7EDEF + 청록·보라 빛 번짐 / 글자 #07141A · #41565E / 청록 #197F7E
   버튼 #2FA3A0→#197F7E→#146A69 + 아래 #0F5958 / 카드 흰색 + 얇은 테두리 + 아래 그림자 */
:root,html[data-theme="light"]{
  --v2-bg:#E7EDEF;--v2-text:#07141A;--v2-sub:#33484F;--v2-faint:#4D646C;--v2-line:#C3D2D5;--v2-line2:#9FB5BA;
  --v2-brand:#197F7E;--v2-ink:#0E6463;--v2-soft:#E4F2F1;
  --v2-p1:#2FA3A0;--v2-p2:#197F7E;--v2-p3:#146A69;--v2-pd:#0F5958;
  --v2-card-sh:inset 0 1px 0 #fff,0 0 0 1px rgba(7,20,26,.1),0 3px 0 rgba(7,20,26,.08),0 14px 26px -12px rgba(7,20,26,.4);
  --v2-pri-sh:inset 0 1px 0 rgba(255,255,255,.35),0 4px 0 #0F5958,0 14px 24px -10px rgba(15,89,88,.6)}
html:root body{font-size:16px!important;line-height:1.6!important;background:radial-gradient(1100px 620px at 12% -8%,rgba(47,163,160,.18),transparent 60%),radial-gradient(900px 560px at 100% 0%,rgba(81,68,181,.09),transparent 62%),var(--v2-bg) fixed!important}
/* 머리글: 사이트와 같은 흰 반투명 바, 로고·글자 진하게 */
html:root body :is(.site-header,.hd,.contract-header){background:rgba(255,255,255,.94)!important;box-shadow:0 1px 0 rgba(7,20,26,.08),0 10px 28px -16px rgba(7,20,26,.45)!important}
html:root body :is(.brand,.logo,.contract-header>a){color:var(--v2-text)!important;font-weight:900!important}
html:root body :is(.admin-nav a,.nav a){font-size:15.5px!important;color:#24383F!important;padding:9px 16px!important;border-radius:999px!important}
/* 사이트 '구독하기' 탭처럼: 민트 바탕 + 청록 테두리 + 아래 두께 → 더 진하게 */
html:root body :is(.admin-nav a.active,.nav a.on,.nav a[aria-current="page"]){color:#fff!important;background:linear-gradient(180deg,#2FA3A0,#197F7E 52%,#146A69)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 3px 0 #0F5958,0 10px 18px -8px rgba(15,89,88,.6)!important}
/* 제목 */
html:root body :is(.admin-eyebrow,.eb){padding:7px 14px!important;border-radius:999px!important;font-size:13px!important;letter-spacing:.06em!important;color:#0E6463!important;background:#E4F2F1!important;box-shadow:inset 0 0 0 1.5px rgba(25,127,126,.4)!important}
html:root body :is(.admin-title,main h1,.main h1){font-size:clamp(32px,5vw,48px)!important;line-height:1.15!important;color:#07141A!important}
html:root body :is(.admin-lede,.lede,main>p){font-size:16.5px!important;line-height:1.65!important;color:#33484F!important;font-weight:500}
/* 카드 글자 */
html:root body :is(.panel,.kpi,.app,.lk,.tool-card) :is(h2,h3,b){color:#07141A!important}
html:root body :is(.panel,.lk,.tool-card) :is(p,span,small):not(.bd):not(.kt):not(.chip):not(.dot){color:#33484F}
html:root body .panel h2{font-size:20px!important}
html:root body .kpi span{font-size:15px!important;color:#24383F!important}
html:root body .kpi small{font-size:13.5px!important;color:#4D646C!important}
/* 버튼: 사이트 크기·모양 그대로, 글자 크게 */
html:root body :is(.btn,.button,.social-button,main:not([class]) button,.contract-header~main button:not(.chip)){min-height:46px;padding-inline:18px;border-radius:12px!important;font-size:15.5px!important;color:#07141A!important}
html:root body :is(.btn.pri,.button.primary,button[type=submit]:not(.chip)){color:#fff!important}
html:root body .chip{min-height:40px!important;font-size:14.5px!important;color:#07141A!important}
html:root body .chip[aria-pressed="true"]{color:#fff!important}
/* 입력칸: 사이트 입력칸(옅은 우물 + 진한 테두리) */
html:root body :is(.input,.select,.textarea,.in,.sel,main input:not([type=checkbox]):not([type=radio]),main select,main textarea){min-height:50px!important;font-size:16px!important;background:#F6F9FA!important;border:1.5px solid #9FB5BA!important;border-radius:12px!important}
html:root body :is(label,.field label){font-size:14.5px!important;font-weight:800!important;color:#07141A!important}
/* 표 */
html:root body :is(.data-table,table) th{font-size:14px!important;color:#0E6463!important;background:#E4F2F1!important}
html:root body :is(.data-table,table) td{font-size:15px!important}
html:root body :is(.data-table,table) tbody tr:nth-child(even) td{background:#F6F9FA}
/* 배지 · 상태 */
html:root body .bd{font-size:12.5px!important;padding:4px 10px!important}
html:root body .bd:not(.plan){background:#fff!important;box-shadow:inset 0 0 0 1.5px currentColor!important}
/* 어두운 화면은 사이트 어두운 톤 */
html[data-theme="dark"]{--v2-bg:#050810}
html[data-theme="dark"] body{background:radial-gradient(1100px 620px at 12% -8%,rgba(102,241,214,.08),transparent 60%),radial-gradient(900px 560px at 100% 0%,rgba(167,157,255,.06),transparent 62%),#050810 fixed!important}
html[data-theme="dark"] body :is(.site-header,.hd,.contract-header){background:rgba(8,13,22,.92)!important}
html[data-theme="dark"] body :is(.brand,.logo,.contract-header>a,.admin-title,main h1,.panel h2,.panel h3,.kpi b,.app b,.lk b,.tool-card h2,label,.field label,.chip,.btn,.button){color:#F1F8FF!important}
html[data-theme="dark"] body :is(.admin-nav a,.nav a,.kpi span,.admin-lede,.lede,main>p){color:#C9D7E1!important}
html[data-theme="dark"] body :is(.admin-nav a.active,.nav a.on){color:#03201B!important;background:linear-gradient(180deg,#A4FBEA,#5CE6CA 55%,#2CC2A9)!important}
html[data-theme="dark"] body :is(.admin-eyebrow,.eb){color:#8CF5E0!important;background:rgba(102,241,214,.1)!important}
html[data-theme="dark"] body :is(.input,.select,.textarea,.in,.sel,main input:not([type=checkbox]):not([type=radio]),main select,main textarea){background:#0A121D!important;border-color:#36536B!important;color:#F1F8FF!important}
html[data-theme="dark"] body :is(.data-table,table) th{background:#132131!important;color:#8CF5E0!important}
html[data-theme="dark"] body :is(.data-table,table) tbody tr:nth-child(even) td{background:#0B1520}
html[data-theme="dark"] body .bd:not(.plan){background:transparent!important}
html[data-theme="dark"] body :is(.btn.pri,.button.primary,.chip[aria-pressed="true"]){color:#03201B!important}
html[data-theme="dark"] body :is(.btn,.button,.social-button,main:not([class]) button,.contract-header~main button:not(.chip)):not(.pri):not(.primary){color:#F1F8FF!important}
html[data-theme="dark"] body :is(.btn.pri,.button.primary,button[type=submit]:not(.chip)){color:#03201B!important}
html:root body .kpi b,html[data-theme="dark"] body .kpi b{color:var(--kc,#07141A)!important}

/* ══════════ v4 (2026-11-04) — 영문 라벨 글꼴 교체 · 입체감 강화 ══════════ */
/* PARTNERS · CUSTOMERS · COMMISSION LEDGER 등 영문 라벨: 고정폭(코드) 글꼴 → 사이트 제목과 어울리는 굵은 산세리프 */
html:root body :is(.admin-eyebrow,.eb,.tool-card small,.lk small){font-family:"Archivo","Noto Sans KR",-apple-system,sans-serif!important;font-size:13px!important;font-weight:900!important;letter-spacing:.04em!important;text-transform:uppercase;line-height:1!important}
html:root body :is(.admin-eyebrow,.eb){display:inline-flex!important;align-items:center;gap:7px;padding:8px 14px 8px 10px!important;border-radius:999px!important;color:#fff!important;background:linear-gradient(180deg,#2FA3A0,#197F7E 55%,#146A69)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 3px 0 #0F5958,0 8px 14px -8px rgba(15,89,88,.6)!important;text-shadow:0 1px 0 rgba(0,0,0,.2)}
html:root body :is(.admin-eyebrow,.eb)::before{content:""!important;display:block!important;width:8px!important;height:8px!important;border-radius:50%!important;background:#B9FFF0!important;box-shadow:0 0 0 3px rgba(185,255,240,.28)!important}
html:root body .tool-card small{padding:5px 10px;border-radius:8px;background:#E4F2F1;color:#0E6463!important}
/* 숫자·코드 표기도 고정폭 대신 같은 글꼴 */
html:root body :is(.kpi b,.metric b,.data-table td,code,.mono){font-family:"Archivo","Noto Sans KR",sans-serif;font-variant-numeric:tabular-nums}
html:root body main:not([class]) code{font-family:"Archivo","Noto Sans KR",sans-serif!important;font-weight:800}

/* 입체감 강화 — 카드: 윗면 광택 + 두꺼운 아래 면 + 깊은 그림자 */
:root,html[data-theme="light"]{
  --v2-card-sh:inset 0 1px 0 #fff,inset 0 -1px 0 rgba(7,20,26,.04),0 0 0 1px rgba(7,20,26,.1),0 5px 0 #CCD9DC,0 20px 34px -14px rgba(7,20,26,.45);
  --v2-btn-sh:inset 0 1px 0 #fff,0 0 0 1px rgba(7,20,26,.18),0 5px 0 #A9BDC2,0 12px 20px -10px rgba(7,20,26,.45);
  --v2-btn-sh-a:inset 0 3px 5px rgba(7,20,26,.16),0 0 0 1px rgba(7,20,26,.22),0 1px 0 #A9BDC2;
  --v2-pri-sh:inset 0 1px 0 rgba(255,255,255,.45),inset 0 -3px 0 rgba(0,0,0,.14),0 6px 0 #0B4C4B,0 16px 26px -10px rgba(15,89,88,.7);
  --v2-pri-sh-a:inset 0 4px 7px rgba(0,0,0,.3),0 1px 0 #0B4C4B}
html[data-theme="dark"]{
  --v2-card-sh:inset 0 1px 0 rgba(255,255,255,.08),0 0 0 1px rgba(190,220,235,.14),0 5px 0 #000,0 22px 38px -16px #000;
  --v2-btn-sh:inset 0 1px 0 rgba(255,255,255,.12),0 0 0 1px rgba(190,220,235,.22),0 5px 0 #000,0 12px 20px -10px #000;
  --v2-pri-sh:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -3px 0 rgba(0,0,0,.15),0 6px 0 #0B5A4F,0 16px 28px -10px rgba(102,241,214,.45)}
html:root body :is(.panel,.kpi,.app,.lk,.tool-card,.login-card,.table-wrap,.tw,#setup,main:not([class])>section){background:linear-gradient(180deg,#FFFFFF 0%,#FAFCFC 70%,#F1F6F7 100%)!important;margin-bottom:6px}
html[data-theme="dark"] body :is(.panel,.kpi,.app,.lk,.tool-card,.login-card,.table-wrap,.tw,#setup,main:not([class])>section){background:linear-gradient(180deg,#132131 0%,#0E1824 100%)!important}
html:root body :is(.kpi,.app,.lk,.tool-card){transition:transform .14s,box-shadow .14s!important}
html:root body :is(.kpi,.app,.lk,.tool-card):hover{transform:translateY(-3px)!important}
html:root body :is(.kpi,.app,.lk,.tool-card):active{transform:translateY(4px)!important}
html:root body .kpi::before{width:7px!important;box-shadow:inset -1px 0 0 rgba(255,255,255,.35)}
/* 버튼 · 칩 · 메뉴: 아래 두께를 6px/5px로, 누르면 쑥 들어감 */
html:root body :is(.btn,.button,.mini-button,.social-button,.ib,.icon-button,.logout-button,.theme-toggle,main:not([class]) button){background:linear-gradient(180deg,#FFFFFF 0%,#F4F8F9 55%,#E6EEF0 100%)!important}
html[data-theme="dark"] body :is(.btn,.button,.mini-button,.social-button,.ib,.icon-button,.logout-button,.theme-toggle,main:not([class]) button):not(.pri):not(.primary){background:linear-gradient(180deg,#22344A,#18283A 55%,#122030)!important}
html:root body :is(.btn.pri,.button.primary,button[type=submit]:not(.chip),.admin-nav a.active,.nav a.on,.chip[aria-pressed="true"],.utab .tabs button[aria-selected="true"]){background:linear-gradient(180deg,#46C2BD 0%,#1F918E 45%,#197F7E 60%,#136564 100%)!important;box-shadow:var(--v2-pri-sh)!important}
html[data-theme="dark"] body :is(.btn.pri,.button.primary,.admin-nav a.active,.nav a.on,.chip[aria-pressed="true"],.utab .tabs button[aria-selected="true"]){background:linear-gradient(180deg,#C2FFF2,#7CF0D8 45%,#3FD3B9 70%,#26B39B)!important}
html:root body :is(.chip,.utab .tabs button,.seg span){box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(7,20,26,.17),0 4px 0 #A9BDC2,0 8px 14px -8px rgba(7,20,26,.35)!important}
html:root body :is(.chip,.utab .tabs button):active{transform:translateY(4px)!important}
/* 입력칸: 안쪽으로 파인 우물 느낌 */
html:root body :is(.input,.select,.textarea,.in,.sel,main input:not([type=checkbox]):not([type=radio]),main select,main textarea){box-shadow:inset 0 3px 6px rgba(7,20,26,.09),inset 0 1px 0 rgba(7,20,26,.06),0 1px 0 #fff!important}
/* 플랜 · 종류 배지 */
html:root body :is(.bd.plan,.kt){box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -2px 0 rgba(0,0,0,.15),0 3px 0 rgba(0,0,0,.3),0 6px 10px -6px rgba(0,0,0,.4)!important}
/* 패널 제목 앞 막대 → 입체 막대 */
html:root body .panel h2::before{width:6px!important;height:22px!important;background:linear-gradient(180deg,#46C2BD,#136564)!important;box-shadow:0 2px 0 #0B4C4B}

/* ══════════ v5 (2026-11-04) — 어두운 화면 가시성 ══════════
   글자 3단계: 제목·숫자 #F4FAFF / 본문 #D3E0EA / 보조 #A9BDCB (배경 #050810·카드 #101C2A 대비 4.5:1 이상) */
html[data-theme="dark"]{--dk-t1:#F4FAFF;--dk-t2:#D3E0EA;--dk-t3:#A9BDCB;--dk-card:#101C2A;--dk-raise:#172739;--dk-line:#2E465C;--dk-mint:#7CF5DC}
html[data-theme="dark"] body{color:var(--dk-t2)!important}
html[data-theme="dark"] body :is(h1,h2,h3,h4,.admin-title,.panel h2,.panel h3,.lk b,.tool-card h2,.app .who b,.name-cell b,td .nm,.dw h3,.mini .r b,.hb>b,.cbal b,.tl b,.td,.ntb td b,.permission-card b,dt,label,.field label,.f-top b){color:var(--dk-t1)!important}
html[data-theme="dark"] body :is(p,.admin-lede,.lede,main>p,.panel p,.lk span,.tool-card p,.app .who span,.app .who .memo,.mini .r span,td,.dw dd,.hint,.c4-note,.notes p,.led em,.tl span,.pcb p,.ctb p){color:var(--dk-t2)!important}
html[data-theme="dark"] body :is(small,.kpi small,.lk em:not([id]),.app .rt time,.mini .r time,td small,.name-cell small,.hb .lb small,.h2s,.tl time,.notes time,.empty,.qqa-none,::placeholder){color:var(--dk-t3)!important}
html[data-theme="dark"] body :is(input,textarea)::placeholder{color:#8BA1B1!important;opacity:1}
html[data-theme="dark"] body .kpi span{color:var(--dk-t2)!important}
html[data-theme="dark"] body .lk em{font-weight:900!important}
/* 카드 · 패널: 배경과 확실히 구분되는 남색 + 밝은 테두리 */
html[data-theme="dark"] body :is(.panel,.kpi,.app,.lk,.tool-card,.login-card,.table-wrap,.tw,#setup,main:not([class])>section,.mini .r,.permission-card,.dw .box){background:linear-gradient(180deg,#152437 0%,#101C2A 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 0 0 1px #2E465C,0 5px 0 #02050A,0 22px 38px -16px #000!important}
html[data-theme="dark"] body .mini .r{background:#172739!important}
html[data-theme="dark"] body :is(.empty,.qqa-none){background:#0C1622!important;box-shadow:inset 0 0 0 1px #2E465C!important}
/* 표 */
html[data-theme="dark"] body :is(.data-table,table) th{background:#1A2D42!important;color:var(--dk-mint)!important;border-bottom:2px solid #3A5874!important}
html[data-theme="dark"] body :is(.data-table,table) td{border-bottom:1px solid #243A50!important}
html[data-theme="dark"] body :is(.data-table,table) tbody tr:nth-child(even) td{background:#0F1A27!important}
html[data-theme="dark"] body :is(.data-table,table) tbody tr:hover td{background:#173A3A!important}
/* 배지 · 칩 숫자 */
html[data-theme="dark"] body :is(.badge,.bd:not(.plan)){background:#0C1622!important;color:var(--dk-t1)!important;box-shadow:inset 0 0 0 1.5px #4C6F8C!important}
html[data-theme="dark"] body .bd.c-new{color:#FF9C8C!important;box-shadow:inset 0 0 0 1.5px #FF9C8C!important}
html[data-theme="dark"] body .bd.c-rev{color:#F7D27A!important;box-shadow:inset 0 0 0 1.5px #F7D27A!important}
html[data-theme="dark"] body .bd.c-ok{color:#7CF0BE!important;box-shadow:inset 0 0 0 1.5px #7CF0BE!important}
html[data-theme="dark"] body .bd.c-blue{color:#9CC8FF!important;box-shadow:inset 0 0 0 1.5px #9CC8FF!important}
html[data-theme="dark"] body .bd.c-vio{color:#C3B4FF!important;box-shadow:inset 0 0 0 1.5px #C3B4FF!important}
html[data-theme="dark"] body .bd.c-off{color:var(--dk-t3)!important;box-shadow:inset 0 0 0 1.5px #4C6F8C!important}
html[data-theme="dark"] body .chip .n{background:rgba(255,255,255,.14)!important;color:var(--dk-t1)!important}
html[data-theme="dark"] body .chip[aria-pressed="true"] .n{background:rgba(3,32,27,.2)!important;color:#03201B!important}
/* 보조 버튼 · 칩: 글자 흰색 + 테두리 밝게 */
html[data-theme="dark"] body :is(.btn,.button,.mini-button,.social-button,.ib,.icon-button,.logout-button,.chip,.utab .tabs button,.seg span,main:not([class]) button):not(.pri):not(.primary):not([aria-pressed="true"]):not([aria-selected="true"]){color:var(--dk-t1)!important;background:linear-gradient(180deg,#26405A 0%,#1B2F45 55%,#14253A 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 0 0 1px #3E5E7A,0 5px 0 #02050A,0 12px 20px -10px #000!important}
html[data-theme="dark"] body :is(.btn,.button,.chip,.ib,main:not([class]) button):not(.pri):not(.primary):active{box-shadow:inset 0 3px 6px rgba(0,0,0,.5),0 0 0 1px #3E5E7A!important}
/* 메뉴 */
html[data-theme="dark"] body :is(.admin-nav a,.nav a):not(.on):not(.active){color:var(--dk-t2)!important}
html[data-theme="dark"] body :is(.admin-nav a,.nav a):not(.on):not(.active):hover{color:var(--dk-t1)!important;background:#172739!important}
/* 라벨 알약 · 패널 막대: 어두운 화면에서는 밝은 민트 입체 */
html[data-theme="dark"] body :is(.admin-eyebrow,.eb){color:#03201B!important;text-shadow:none;background:linear-gradient(180deg,#C2FFF2,#7CF0D8 50%,#3FD3B9)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 3px 0 #0B5A4F,0 8px 16px -8px rgba(124,245,220,.5)!important}
html[data-theme="dark"] body :is(.admin-eyebrow,.eb)::before{background:#0B5A4F!important;box-shadow:none!important}
html[data-theme="dark"] body .tool-card small{background:rgba(124,245,220,.14)!important;color:var(--dk-mint)!important}
html[data-theme="dark"] body .panel h2::before{background:linear-gradient(180deg,#C2FFF2,#3FD3B9)!important;box-shadow:0 2px 0 #0B5A4F}
/* 입력칸 */
html[data-theme="dark"] body :is(.input,.select,.textarea,.in,.sel,main input:not([type=checkbox]):not([type=radio]),main select,main textarea){background:#081019!important;border:1.5px solid #4C6F8C!important;color:var(--dk-t1)!important;box-shadow:inset 0 3px 6px rgba(0,0,0,.5)!important}
html[data-theme="dark"] body :is(.input,.select,.in,.sel,main input,main select,main textarea):focus{border-color:var(--dk-mint)!important;box-shadow:0 0 0 4px rgba(124,245,220,.22)!important}
/* 막대 그래프 · 스위치 · 안내 상자 · 링크 */
html[data-theme="dark"] body .hb .tr{background:#0C1622!important;box-shadow:inset 0 0 0 1px #2E465C}
html[data-theme="dark"] body .sw span{background:#0C1622!important;box-shadow:inset 0 0 0 1.5px #4C6F8C!important}
html[data-theme="dark"] body .noapi{background:#33280C!important;color:#FBE4AE!important;box-shadow:inset 0 0 0 1.5px #C99A2E!important}
html[data-theme="dark"] body .noapi code{background:rgba(255,255,255,.1)!important;color:#FFE9B8!important}
html[data-theme="dark"] body a:not(.btn):not(.lk):not(.tool-card):not(.td):not(.qqa-back){color:var(--dk-mint)}
html[data-theme="dark"] body #setup p{background:#0C1622!important;color:var(--dk-t1)!important;box-shadow:inset 0 0 0 1px #2E465C}
html[data-theme="dark"] body .kt{color:#fff!important}
html[data-theme="dark"] body .kt.k-gold,html[data-theme="dark"] body .kt.r-cre{color:#3B2A02!important}

/* ══════════ v6 (2026-11-04) — 계약·환불 화면 전면 정리 ══════════
   대상: 운영 콘솔 '계약·환불' 메뉴 · 취소·환불 관리 · 전자계약 관리 · 파트너 수당관리 · BLACK 결제창 */

/* ── 운영 콘솔 > 계약·환불: 바로가기 카드 ── */
html:root body #v-billing .links{gap:16px!important}
html:root body #v-billing .lk{position:relative;display:grid!important;grid-template-columns:52px 1fr auto;grid-template-rows:auto auto auto;column-gap:14px;row-gap:4px;align-items:center;padding:20px 18px 18px!important;border-radius:22px!important;overflow:hidden}
html:root body #v-billing .lk::before{content:"";grid-row:1/span 3;align-self:start;width:52px;height:52px;border-radius:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--kc) 60%,#fff),var(--kc) 55%,color-mix(in srgb,var(--kc) 75%,#000));box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 4px 0 color-mix(in srgb,var(--kc) 55%,#000),0 10px 18px -8px var(--kc)}
html:root body #v-billing .lk b{grid-column:2;font-size:19px!important;font-weight:900!important}
html:root body #v-billing .lk span{grid-column:2;font-size:14px!important;line-height:1.5}
html:root body #v-billing .lk em{grid-column:2;justify-self:start;margin-top:6px;padding:5px 11px;border-radius:999px;font-style:normal;font-size:13px!important;font-weight:900!important;color:var(--kc)!important;background:color-mix(in srgb,var(--kc) 12%,#fff);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--kc) 40%,transparent)}
html:root body #v-billing .lk::after{grid-column:3;grid-row:1/span 3;position:static!important;width:40px!important;height:40px!important;border-radius:12px!important;color:#fff!important;background:linear-gradient(180deg,color-mix(in srgb,var(--kc) 60%,#fff),var(--kc))!important;box-shadow:0 3px 0 color-mix(in srgb,var(--kc) 55%,#000)!important}
html:root body #v-billing .lk[href*="refund"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 22h14a6 6 0 0 1 0 12h-6'/%3E%3Cpath d='M22 17l-5 5 5 5'/%3E%3C/svg%3E"),linear-gradient(180deg,#F59388,#E5675A 55%,#B8473C)}
html:root body #v-billing .lk[href*="contract"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 15h11l6 6v16H19z'/%3E%3Cpath d='M30 15v6h6M23 28h9M23 33h6'/%3E%3C/svg%3E"),linear-gradient(180deg,#A58DFF,#7B5CF5 55%,#5638D0)}
html:root body #v-billing .lk[href*="commission"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='26' cy='26' r='10'/%3E%3Cpath d='M26 20v12M22.5 23.5h5a2.5 2.5 0 0 1 0 5h-5'/%3E%3C/svg%3E"),linear-gradient(180deg,#5FD3A0,#16A06B 55%,#0F7E53)}
html:root body #v-billing .lk[href*="black"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='14' y='19' width='24' height='16' rx='3'/%3E%3Cpath d='M14 24h24M19 30h5'/%3E%3C/svg%3E"),linear-gradient(180deg,#4A5563,#20262F 55%,#0B0F14)}

/* ── 공통: 계약·환불 계열 페이지 머리 ── */
html:root body :is(.admin-main,main:not([class]),.contract-header~main)>h1{margin-top:6px!important}
html:root body :is(.admin-main,main:not([class]),.contract-header~main)>h1+p{max-width:720px}

/* ── 취소·환불 관리 ── */
html:root body:not(:has(.contract-header)) main:not([class]){max-width:880px!important;margin:0 auto!important;padding:24px 16px 96px!important}
html:root body:not(:has(.contract-header)) main:not([class])>a:first-child,html:root body:not(:has(.contract-header)) main:not([class])>header a:first-child{display:inline-flex!important;align-items:center;gap:8px;min-height:44px;padding:0 16px 0 6px;border-radius:999px;font-weight:900;text-decoration:none!important;color:var(--v2-ink)!important;background:linear-gradient(180deg,#fff,#EEF4F5);box-shadow:var(--v2-btn-sh)}
html:root body:not(:has(.contract-header)) main:not([class])>p{padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.65);box-shadow:inset 0 0 0 1px rgba(7,20,26,.08);font-size:15px!important}
html:root body:not(:has(.contract-header)) main:not([class])>p+p{background:#FFF6E2;box-shadow:inset 0 0 0 1.5px rgba(201,154,46,.45);color:#4A3A10!important;font-weight:700}
html:root body:not(:has(.contract-header)) main:not([class]) article{position:relative;margin:16px 0!important;padding:22px 20px 20px!important;border-radius:24px!important;background:var(--v2-card)!important;box-shadow:var(--v2-card-sh)!important;overflow:hidden}
html:root body:not(:has(.contract-header)) main:not([class]) article::before{content:"";position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(90deg,#E5675A,#F2A65A)}
html:root body:not(:has(.contract-header)) main:not([class]) article>b:first-child,html:root body:not(:has(.contract-header)) main:not([class]) article code:first-child{display:block;font:800 14px/1.4 "Archivo","Noto Sans KR",sans-serif!important;letter-spacing:.02em;color:var(--v2-sub)!important;overflow-wrap:anywhere}
html:root body:not(:has(.contract-header)) main:not([class]) article>b:first-child+p,html:root body:not(:has(.contract-header)) main:not([class]) article [class*="status"],html:root body:not(:has(.contract-header)) main:not([class]) article .pill{display:inline-flex!important;align-items:center;gap:6px;margin:8px 0 6px!important;padding:5px 12px!important;border-radius:999px;font-size:13.5px!important;font-weight:900!important;color:#0E6463!important;background:#E4F2F1!important;box-shadow:inset 0 0 0 1.5px rgba(25,127,126,.4)!important}
html:root body:not(:has(.contract-header)) main:not([class]) article>b:first-child+p::before{content:"";width:8px;height:8px;border-radius:50%;background:#197F7E;box-shadow:0 0 0 3px rgba(25,127,126,.2)}
html:root body:not(:has(.contract-header)) main:not([class]) article dl{display:grid;grid-template-columns:1fr auto;margin:14px 0!important;padding:6px 16px;border-radius:16px;background:#F4F8F9;box-shadow:inset 0 0 0 1px rgba(7,20,26,.08)}
html:root body:not(:has(.contract-header)) main:not([class]) article dl :is(dt,dd){margin:0;padding:11px 0;border-bottom:1px dashed #C9D7DA;font-size:15px}
html:root body:not(:has(.contract-header)) main:not([class]) article dl dd{text-align:right;font:800 15.5px "Archivo","Noto Sans KR",sans-serif;font-variant-numeric:tabular-nums;color:var(--v2-text)}
html:root body:not(:has(.contract-header)) main:not([class]) article dl :is(dt,dd):nth-last-child(-n+2){border-bottom:0}
html:root body:not(:has(.contract-header)) main:not([class]) article dl dt:nth-last-of-type(2),html:root body:not(:has(.contract-header)) main:not([class]) article dl dd:nth-last-of-type(2){font-size:17px!important;font-weight:900!important;color:#0E6463!important}
html:root body:not(:has(.contract-header)) main:not([class]) article label:not(:has(input[type=checkbox])){display:grid;gap:7px;margin:12px 0;font-size:14.5px;font-weight:800}
html:root body:not(:has(.contract-header)) main:not([class]) article label:has(input[type=checkbox]){display:flex!important;align-items:center;gap:12px;min-height:54px;margin:8px 0;padding:0 16px;border-radius:14px;font-weight:800;cursor:pointer;background:#F4F8F9;box-shadow:inset 0 0 0 1.5px #C9D7DA;transition:box-shadow .12s,background .12s}
html:root body:not(:has(.contract-header)) main:not([class]) article label:has(input[type=checkbox]:checked){background:#E4F2F1;box-shadow:inset 0 0 0 2px #197F7E;color:#0E6463}
html:root body:not(:has(.contract-header)) main:not([class]) article input[type=checkbox]{width:22px;height:22px;flex:0 0 22px}
html:root body:not(:has(.contract-header)) main:not([class]) article :is(button,.button){margin:6px 6px 0 0}
html:root body:not(:has(.contract-header)) main:not([class]) article button:first-of-type:not([disabled]){color:#fff!important;background:linear-gradient(180deg,#46C2BD,#1F918E 45%,#197F7E 60%,#136564)!important;box-shadow:var(--v2-pri-sh)!important}
html:root body:not(:has(.contract-header)) main:not([class])>small,html:root body:not(:has(.contract-header)) main:not([class])>p:last-child{display:block;font-size:13.5px!important;color:var(--v2-faint)!important}

/* ── 전자계약 관리 ── */
html:root body .contract-header~main{max-width:880px!important;margin:0 auto!important;padding:28px 16px 96px!important}
html:root body .contract-header~main>h1{font-size:clamp(30px,6vw,44px)!important}
html:root body .contract-header~main #status:not(:empty){display:flex;gap:12px;align-items:flex-start;margin:16px 0!important;padding:14px 16px!important;border-radius:16px;font-size:15px!important;font-weight:700;color:#4A3A10!important;background:#FFF6E2!important;box-shadow:inset 0 0 0 1.5px rgba(201,154,46,.5)}
html:root body .contract-header~main #status:not(:empty)::before{content:"!";flex:0 0 24px;height:24px;display:grid;place-items:center;border-radius:50%;font-weight:900;color:#fff;background:#C99A2E}
html:root body .contract-header~main>p:has(>a){display:inline-block;margin:6px 8px 6px 0!important}
html:root body #setup{position:relative;overflow:hidden;padding:24px 20px 22px!important}
html:root body #setup::before{content:"";position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(90deg,#7B5CF5,#A58DFF)}
html:root body #setup h2{display:flex;align-items:center;gap:10px;font-size:20px!important}
html:root body #setup h2::before{content:"";width:6px;height:22px;border-radius:4px;background:linear-gradient(180deg,#A58DFF,#5638D0);box-shadow:0 2px 0 #36209A}
html:root body #setup p{display:flex!important;align-items:center;gap:10px;margin:8px 0!important;padding:13px 14px!important;border-radius:13px!important;font-size:15px!important;font-weight:800!important}
html:root body #setup p::before{content:"";flex:0 0 10px;height:10px;border-radius:50%;background:#C99A2E;box-shadow:0 0 0 4px rgba(201,154,46,.2)}
html:root body #setup button{margin:12px 8px 0 0!important;min-height:48px!important}
html:root body #setup button:first-of-type{color:#fff!important;background:linear-gradient(180deg,#46C2BD,#1F918E 45%,#197F7E 60%,#136564)!important;box-shadow:var(--v2-pri-sh)!important}
html:root body :is(#list>article,#detail){border-radius:22px!important;padding:20px!important}

/* ── 파트너 수당관리 · BLACK 결제창 (admin-main 패널) ── */
html:root body .admin-main .panel{position:relative;padding:22px 20px!important;border-radius:24px!important;overflow:hidden}
html:root body .admin-main .panel>h2:first-child,html:root body .admin-main .panel-head>h2{display:flex!important;align-items:center;gap:10px;margin:-22px -20px 16px!important;padding:16px 20px!important;font-size:18px!important;background:linear-gradient(180deg,#F4FAF9,#E9F4F2);border-bottom:1px solid #D2E3E1}
html:root body .admin-main .panel-head{margin:0 0 4px}
html:root body .admin-main .panel-head>h2{margin-bottom:0!important}
html:root body .admin-main .table-wrap{border-radius:16px!important;box-shadow:inset 0 0 0 1px #C9D7DA!important;background:#fff!important}
html:root body .admin-main .data-table td:first-child{font-weight:900}
html:root body .admin-main .data-table td:nth-child(2){font-family:"Archivo","Noto Sans KR",sans-serif;font-weight:800;letter-spacing:.02em;color:#0E6463}
html:root body .admin-main .badge{display:inline-grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:9px;font:900 14px "Archivo",sans-serif;color:#fff!important;background:linear-gradient(180deg,#46C2BD,#197F7E 60%,#136564)!important;border:0!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 3px 0 #0B4C4B}
html:root body .admin-main .empty{display:flex;align-items:center;justify-content:center;gap:8px;min-height:72px;padding:16px;border-radius:16px;font-weight:800;color:var(--v2-sub)!important;background:#F4F8F9;box-shadow:inset 0 0 0 1.5px dashed #C9D7DA}
html:root body .admin-main .empty::before{content:"✓";display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-size:13px;color:#fff;background:#16A06B}
html:root body .admin-main .panel>.admin-lede,html:root body .admin-main .panel>p{padding:12px 14px;border-radius:13px;background:#F4F8F9;font-size:14.5px!important}
html:root body .admin-main .form-grid{gap:14px 12px!important}
html:root body .admin-main .field{display:grid;gap:7px}
html:root body .admin-main .toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px!important;padding-top:16px;border-top:1px dashed #C9D7DA}
html:root body .admin-main .toolbar .button.primary{flex:1 1 200px;min-height:54px!important;font-size:16.5px!important}
@media (max-width:640px){
  html:root body .admin-main .form-grid{grid-template-columns:1fr!important}
  html:root body #v-billing .lk{grid-template-columns:44px 1fr auto}
  html:root body #v-billing .lk::before{width:44px;height:44px;border-radius:13px}
}

/* ── 어두운 화면 ── */
html[data-theme="dark"] body:not(:has(.contract-header)) main:not([class])>a:first-child{color:#7CF5DC!important;background:linear-gradient(180deg,#26405A,#14253A)!important}
html[data-theme="dark"] body:not(:has(.contract-header)) main:not([class])>p{background:#101C2A!important;box-shadow:inset 0 0 0 1px #2E465C!important}
html[data-theme="dark"] body:not(:has(.contract-header)) main:not([class])>p+p,html[data-theme="dark"] body .contract-header~main #status:not(:empty){background:#33280C!important;color:#FBE4AE!important;box-shadow:inset 0 0 0 1.5px #C99A2E!important}
html[data-theme="dark"] body:not(:has(.contract-header)) main:not([class]) article dl,html[data-theme="dark"] body:not(:has(.contract-header)) main:not([class]) article label:has(input[type=checkbox]),html[data-theme="dark"] body .admin-main :is(.empty,.panel>p,.panel>.admin-lede){background:#0C1622!important;box-shadow:inset 0 0 0 1.5px #2E465C!important}
html[data-theme="dark"] body:not(:has(.contract-header)) main:not([class]) article dl :is(dt,dd){border-color:#2E465C!important}
html[data-theme="dark"] body:not(:has(.contract-header)) main:not([class]) article dl dd{color:#F4FAFF!important}
html[data-theme="dark"] body:not(:has(.contract-header)) main:not([class]) article label:has(input:checked){background:#0F3530!important;box-shadow:inset 0 0 0 2px #7CF5DC!important;color:#7CF5DC!important}
html[data-theme="dark"] body:not(:has(.contract-header)) main:not([class]) article dl dt:nth-last-of-type(2),html[data-theme="dark"] body:not(:has(.contract-header)) main:not([class]) article dl dd:nth-last-of-type(2){color:#7CF5DC!important}
html[data-theme="dark"] body:not(:has(.contract-header)) main:not([class]) article>b:first-child+p{color:#7CF5DC!important;background:rgba(124,245,220,.1)!important}
html[data-theme="dark"] body .admin-main .panel>h2:first-child,html[data-theme="dark"] body .admin-main .panel-head>h2{background:linear-gradient(180deg,#1A2D42,#152437)!important;border-color:#2E465C!important}
html[data-theme="dark"] body .admin-main .table-wrap{background:#0C1622!important;box-shadow:inset 0 0 0 1px #2E465C!important}
html[data-theme="dark"] body .admin-main .data-table td:nth-child(2){color:#7CF5DC!important}
html[data-theme="dark"] body .admin-main .toolbar{border-color:#2E465C}
html[data-theme="dark"] body #v-billing .lk em{background:rgba(255,255,255,.06)!important}
html[data-theme="dark"] body #setup p{background:#0C1622!important}

html:root body #v-billing .lk em{position:static!important;inset:auto!important}
html:root body #v-billing .lk>*{position:relative;z-index:1}
html[data-theme="dark"] body :is(p,span,div).admin-eyebrow.admin-eyebrow,html[data-theme="dark"] body .eb.eb{color:#03201B!important;-webkit-text-fill-color:#03201B!important}
html[data-theme="dark"] body:not(:has(.contract-header)) main:not([class]) article button:first-of-type:first-of-type:not([disabled]):not(.x):not(.y):not(.z){color:#03201B!important;background:linear-gradient(180deg,#C2FFF2,#7CF0D8 45%,#3FD3B9 70%,#26B39B)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 6px 0 #0B5A4F,0 16px 28px -10px rgba(102,241,214,.45)!important}
html[data-theme="dark"] body #setup button:first-of-type.x,html[data-theme="dark"] body #setup button:first-of-type:not(.x){color:#03201B!important;background:linear-gradient(180deg,#C2FFF2,#7CF0D8 45%,#3FD3B9 70%,#26B39B)!important}
/* 어두운 화면에서 패널 안 굵은 글자가 배경과 같은 색으로 남지 않게 한다 (수당 확정·지급 숫자 등). */
html[data-theme="dark"] body .panel b:not(.kpi b,.btn b,.button b){color:var(--dk-t1,#F1F8FF)!important;-webkit-text-fill-color:var(--dk-t1,#F1F8FF)!important}
