:root{font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,system-ui,sans-serif;color:#1a2332;background:#eef1f6;font-synthesis:none;--ink: #1a2332;--ink-soft: #31405a;--paper: #f5f7fa;--paper-strong: #ffffff;--accent: #2f6fed;--accent-deep: #1f56c4;--accent-soft: #e8effd;--green: #16a34a;--green-deep: #15803d;--green-soft: #e6f6ec;--orange: #e8732a;--orange-deep: #c2410c;--orange-soft: #fdeee1;--red: #d63c3c;--red-soft: #fdeaea;--steel: #64748b;--line: #e3e7ee;--line-strong: #cfd6e1;--sidebar: #101a2c;--sidebar-deep: #0c1523;--radius: 12px;--radius-sm: 9px;--shadow-sm: 0 1px 2px rgba(16, 26, 44, .05);--shadow-md: 0 6px 18px rgba(16, 26, 44, .07);--mono: "JetBrains Mono", "IBM Plex Mono", "Cascadia Mono", "SFMono-Regular", Consolas, monospace}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--paper)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}code{font-family:var(--mono);font-size:12px;overflow-wrap:anywhere}::selection{background:var(--accent-soft)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#c6cedb;border-radius:8px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#a9b4c6;background-clip:padding-box}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes riseIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.12fr .88fr;background:radial-gradient(1200px 700px at 15% 20%,#1b2a4a 0%,var(--sidebar) 45%,var(--sidebar-deep) 100%)}.login-intro{position:relative;overflow:hidden;padding:clamp(42px,7vw,110px);display:flex;flex-direction:column;justify-content:center;color:#eef2f9}.login-intro:after{content:"";position:absolute;width:520px;height:520px;right:-170px;bottom:-210px;border:1px solid rgba(180,200,240,.18);border-radius:50%;box-shadow:0 0 0 70px #b4c8f008,0 0 0 140px #b4c8f005}.login-intro:before{content:"";position:absolute;width:300px;height:300px;left:-120px;top:-90px;border-radius:50%;background:radial-gradient(circle,rgba(47,111,237,.25),transparent 70%)}.brand-mark{width:76px;height:76px;border:2px solid currentColor;border-radius:16px;display:grid;place-content:center;font-family:var(--mono);letter-spacing:-.07em;position:relative;z-index:1}.brand-mark span{font-size:24px;font-weight:600}.brand-mark small{display:block;letter-spacing:.18em;font-size:7px}.brand-mark.compact{width:40px;height:40px;border-color:#eef2f9d9;border-radius:11px;flex:0 0 auto}.brand-mark.compact span{font-size:15px}.brand-mark.logo{border:0;background:#fff;padding:7px;box-shadow:0 4px 14px #0c152340}.brand-mark.logo img{width:100%;height:100%;object-fit:contain;display:block;border-radius:9px}.brand-mark.compact.logo{padding:4px;box-shadow:0 2px 8px #0000004d}.brand-mark.compact.logo img{border-radius:7px}.eyebrow{font:600 11px/1.4 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 10px}.login-intro .eyebrow{color:#8fb4f5;margin-top:46px}.login-intro h1{margin:0;font-size:clamp(40px,5vw,72px);line-height:1.14;letter-spacing:-.045em;max-width:800px}.login-copy{max-width:560px;margin:28px 0;color:#9fb0c9;font-size:15px;line-height:1.9}.login-metrics{display:flex;gap:24px;flex-wrap:wrap;color:#c7d2e4;font-size:12px}.login-metrics span{display:flex;align-items:center;gap:8px}.login-metrics svg{color:#8fb4f5}.login-panel{display:grid;place-items:center;padding:40px;background:var(--paper);position:relative}.login-card{width:min(400px,100%);position:relative;z-index:1;background:var(--paper-strong);border:1px solid var(--line);border-radius:18px;padding:36px 34px 28px;box-shadow:var(--shadow-md);animation:riseIn .45s ease both}.panel-index{color:var(--accent);font:600 11px var(--mono);letter-spacing:.12em}.login-card h2{font-size:30px;margin:12px 0 8px;letter-spacing:-.03em}.login-card>p,.login-card>small{color:var(--steel);line-height:1.7}.login-card>small{display:block;margin-top:16px;font-size:11px}.login-card form{display:grid;gap:16px;margin:26px 0 6px}label{color:#4b5a70;font-size:12.5px;font-weight:600;letter-spacing:.02em;display:grid;gap:7px}input,select,textarea{width:100%;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--paper-strong);color:var(--ink);padding:11px 13px;outline:none;transition:border-color .15s,box-shadow .15s,background .15s}input:hover,select:hover,textarea:hover{border-color:#b7c2d3}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2f6fed24}input:disabled,select:disabled,textarea:disabled{background:#f2f4f8;color:#8a97ab;cursor:not-allowed}textarea{resize:vertical;line-height:1.6}select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--steel) 50%),linear-gradient(135deg,var(--steel) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:32px;cursor:pointer}.primary-button,.secondary-button{border:0;min-height:42px;padding:0 18px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:13px;transition:background .15s,box-shadow .15s,transform .12s,border-color .15s,color .15s}.primary-button{background:var(--accent);color:#fff;box-shadow:0 4px 12px #2f6fed47}.primary-button:hover:not(:disabled){background:var(--accent-deep);transform:translateY(-1px);box-shadow:0 6px 16px #2f6fed57}.primary-button:active:not(:disabled){transform:translateY(0)}.secondary-button{background:var(--paper-strong);color:var(--ink-soft);border:1px solid var(--line-strong)}.secondary-button:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.form-error,.error-banner{display:flex;align-items:center;gap:9px;background:var(--red-soft);color:#a02828;padding:11px 14px;font-size:12px;border-radius:var(--radius-sm)}.error-banner{margin-bottom:16px;border-left:3px solid var(--red);animation:riseIn .25s ease both}.error-banner code{margin-left:auto;color:#b05a5a}.error-banner button{border:0;background:transparent;color:inherit;display:grid;place-items:center;border-radius:6px;padding:3px}.error-banner button:hover{background:#d63c3c1f}.boot-screen{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:18px;background:radial-gradient(900px 600px at 50% 30%,#1b2a4a,var(--sidebar-deep));color:#eef2f9}.boot-screen p{font:12px var(--mono);letter-spacing:.1em;color:#8fa0bd}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:linear-gradient(180deg,var(--sidebar) 0%,var(--sidebar-deep) 100%);color:#eef2f9;display:flex;flex-direction:column;z-index:30}.sidebar-brand{height:84px;padding:22px 20px;display:flex;align-items:center;gap:13px;border-bottom:1px solid rgba(255,255,255,.07)}.sidebar-brand strong{display:block;font-size:14px;letter-spacing:.01em}.sidebar-brand small{color:#7488a6;font:11px var(--mono)}.sidebar nav{flex:1;padding:14px 12px;overflow-y:auto;display:grid;gap:2px;align-content:start}.sidebar nav::-webkit-scrollbar-thumb{background:#ffffff24;background-clip:padding-box}.sidebar nav a{height:42px;padding:0 12px;color:#93a3bc;text-decoration:none;display:grid;grid-template-columns:20px 20px 1fr 15px;align-items:center;gap:9px;border-radius:9px;font-size:13px;transition:background .15s,color .15s}.sidebar nav a:hover{color:#e7edf7;background:#ffffff0f}.sidebar nav a.active{color:#fff;background:linear-gradient(90deg,#2f6fedd9,#2f6fed8c);box-shadow:0 4px 12px #2f6fed4d}.nav-index{font:10px var(--mono);color:#5a6d8c}.sidebar nav a.active .nav-index{color:#ffffffa6}.nav-arrow{opacity:0;transition:opacity .15s,transform .15s}.sidebar nav a.active .nav-arrow{opacity:1}.sidebar-footer{min-height:76px;border-top:1px solid rgba(255,255,255,.07);padding:14px;display:grid;grid-template-columns:36px 1fr 30px;align-items:center;gap:10px}.admin-avatar{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--accent),#6ea8ff);display:grid;place-items:center;font:600 13px var(--mono)}.sidebar-footer strong{display:block;font-size:12px}.sidebar-footer small{display:block;font-size:10px;color:#7488a6;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:116px}.sidebar-footer button{border:0;background:transparent;color:#93a3bc;display:grid;place-items:center;border-radius:8px;width:30px;height:30px;transition:background .15s,color .15s}.sidebar-footer button:hover{background:#ffffff14;color:#fff}.main-shell{grid-column:2;min-width:0}.status-strip{height:34px;padding:0 24px;background:var(--paper-strong);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:22px;font:11px var(--mono);color:#7b8aa0;letter-spacing:.04em}.strip-spacer{flex:1}.system-live{color:var(--green-deep);display:inline-flex;align-items:center;gap:7px;font-weight:600}.system-live i{width:6px;height:6px;background:var(--green);border-radius:50%;box-shadow:0 0 0 4px #16a34a24;animation:pulse 2.2s ease infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 3px #16a34a2e}50%{box-shadow:0 0 0 6px #16a34a0f}}.topbar{height:84px;padding:15px 28px;display:flex;align-items:center;border-bottom:1px solid var(--line);background:#ffffffd1;backdrop-filter:blur(12px);position:sticky;top:0;z-index:20}.topbar h1{margin:4px 0 0;font-size:22px;letter-spacing:-.03em}.breadcrumb{font:11px var(--mono);color:var(--steel);letter-spacing:.08em}.top-refresh{margin-left:auto;border:1px solid var(--line-strong);background:var(--paper-strong);height:38px;padding:0 14px;border-radius:var(--radius-sm);display:flex;align-items:center;gap:8px;color:var(--ink-soft);font-size:12px;font-weight:600;transition:border-color .15s,color .15s,background .15s}.top-refresh:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.mobile-menu{display:none}.workspace{padding:26px;max-width:1560px}.page-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}.page-grid>*{animation:riseIn .4s ease both}.page-grid>*:nth-child(2){animation-delay:.05s}.page-grid>*:nth-child(3){animation-delay:.1s}.page-grid>*:nth-child(4){animation-delay:.15s}.dashboard-grid .hero-card{grid-column:span 5}.dashboard-grid .stat-grid{grid-column:span 7}.hero-card{min-height:310px;padding:32px;background:linear-gradient(150deg,#1b2a4a 0%,var(--sidebar) 55%,var(--sidebar-deep) 100%);color:#eef2f9;position:relative;overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow-md)}.hero-card:after{content:"A";position:absolute;right:-10px;bottom:-56px;font:600 210px/1 var(--mono);color:#eef2f90b}.hero-card:before{content:"";position:absolute;width:260px;height:260px;right:-80px;top:-90px;border-radius:50%;background:radial-gradient(circle,rgba(47,111,237,.3),transparent 70%)}.hero-card .eyebrow{color:#8fb4f5}.hero-card h2{font-size:clamp(25px,2.8vw,38px);line-height:1.28;letter-spacing:-.035em;margin:26px 0 18px}.hero-card p:not(.eyebrow){color:#9fb0c9;line-height:1.8;font-size:13px;max-width:520px}.hero-card .secondary-button{color:#fff;background:#ffffff14;border-color:#ffffff40;margin-top:12px;position:relative;z-index:1}.hero-card .secondary-button:hover:not(:disabled){background:#ffffff29;border-color:#ffffff73;color:#fff}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stat-card{min-height:148px;background:var(--paper-strong);border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow-sm);transition:box-shadow .18s,transform .18s;position:relative;overflow:hidden}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent),#6ea8ff)}.stat-card.tone-orange:before{background:linear-gradient(90deg,var(--orange),#f5a55e)}.stat-head{display:flex;justify-content:space-between;align-items:center;color:var(--steel);font-size:12px;font-weight:600}.stat-head svg{color:#9aa8bd}.stat-card strong{font:600 34px var(--mono);letter-spacing:-.02em}.stat-card small{color:var(--steel);font-size:11px}.full-card{grid-column:1 / -1;background:var(--paper-strong);border:1px solid var(--line);border-radius:var(--radius);padding:22px;min-width:0;box-shadow:var(--shadow-sm)}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;gap:12px}.section-heading h2,.section-heading h3{margin:0;letter-spacing:-.025em}.section-heading h2{font-size:22px}.section-heading h3{font-size:18px}.mode-list{border-top:1px solid var(--line)}.mode-row{min-height:52px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:160px 120px 1fr 50px;align-items:center;gap:14px;font-size:13px;transition:background .15s}.mode-row:hover{background:#f7f9fc}.mode-row>span:nth-of-type(2){color:var(--steel)}.mode-badge,.status-pill{display:inline-flex;width:fit-content;align-items:center;justify-content:center;padding:4px 11px;border-radius:999px;font:600 11px var(--mono);letter-spacing:.03em}.mode-legacy,.status-offline,.status-closed{color:#5b6b7f;background:#eceff4}.mode-shadow,.status-pending,.status-open,.status-processing,.status-draft{color:var(--orange-deep);background:var(--orange-soft)}.mode-cloud_primary,.mode-cloud_only,.status-published,.status-resolved,.status-reviewed,.status-approved,.status-active,.status-paid,.status-complete,.status-validated,.status-cutover_complete{color:var(--green-deep);background:var(--green-soft)}.status-rejected,.status-hidden,.status-deleted,.status-blocked{color:#b03030;background:var(--red-soft)}.icon-button{width:34px;height:34px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--paper-strong);color:var(--ink-soft);display:grid;place-items:center;transition:border-color .15s,color .15s,background .15s}.icon-button:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.filter-bar{display:flex;gap:14px;padding:14px 0;border-top:1px solid var(--line);flex-wrap:wrap}.filter-bar label{display:flex;align-items:center;gap:8px}.filter-bar select{width:136px;padding:8px 30px 8px 10px}.table-wrap{overflow:auto;border-top:1px solid var(--line);border-radius:0 0 var(--radius-sm) var(--radius-sm)}table{width:100%;border-collapse:collapse;font-size:13px}th{color:var(--steel);font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.07em;text-align:left;padding:12px 14px;background:#f5f7fb;white-space:nowrap;position:sticky;top:0}td{padding:13px 14px;border-bottom:1px solid #edf0f5;vertical-align:middle;max-width:330px}tbody tr{transition:background .12s}tbody tr:hover{background:#f7f9fd}tr:last-child td{border-bottom:0}.selectable-row{cursor:pointer}.selectable-row:hover{background:var(--accent-soft)!important}.primary-cell{min-width:180px}.primary-cell.wide{min-width:260px}.user-col{width:150px;max-width:150px}.user-col .primary-cell{min-width:0}.user-col .primary-cell strong,.user-col .primary-cell small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-col .member-user-cell{min-width:0}.users-page .user-col{width:180px;max-width:180px}.primary-cell strong,.primary-cell small{display:block}.primary-cell strong{font-weight:600;color:var(--ink)}.primary-cell small{color:var(--steel);margin-top:5px;font:11px var(--mono)}.row-actions{white-space:nowrap}.table-button{border:1px solid var(--line-strong);border-radius:8px;background:var(--paper-strong);color:var(--ink-soft);min-height:32px;padding:0 12px;font-size:12px;font-weight:600;margin-right:6px;transition:border-color .15s,color .15s,background .15s}.table-button:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.table-button.danger:hover:not(:disabled){border-color:var(--orange);color:var(--orange-deep);background:var(--orange-soft)}.empty-state,.loading-state{min-height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--steel);text-align:center}.empty-state svg{color:#b3bfd0}.empty-state strong{color:var(--ink-soft)}.empty-state span{font-size:12px}.loading-state{flex-direction:row;font:12px var(--mono);color:var(--accent)}.split-workspace{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}.editor-panel{min-height:500px;position:sticky;top:110px;background:var(--paper-strong);border:1px solid var(--line);border-radius:var(--radius);padding:20px;display:grid;align-content:start;gap:15px;box-shadow:var(--shadow-sm)}.editor-panel .empty-state{min-height:440px}.asset-field{border:1px solid var(--line);background:#f7f9fc;border-radius:var(--radius-sm);padding:13px;display:grid;gap:10px}.asset-field>div:first-child{display:grid;gap:6px}.asset-field strong{font-size:13px}.asset-field small{color:var(--steel);font-size:11px}.asset-field code{color:var(--steel)}.upload-button,.table-upload-button{width:fit-content;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line-strong);border-radius:8px;background:var(--paper-strong);color:var(--ink-soft);cursor:pointer;font-size:12px;font-weight:600;transition:border-color .15s,color .15s,background .15s}.upload-button{min-height:36px;padding:0 12px}.table-upload-button{min-height:32px;padding:0 10px;vertical-align:middle}.upload-button:hover,.table-upload-button:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.file-list{display:grid;gap:6px}.file-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;background:var(--paper-strong);border:1px solid var(--line);border-radius:8px}.file-list button{border:0;background:transparent;color:var(--red);font-size:11px;font-weight:600;border-radius:6px;padding:3px 6px}.file-list button:hover{background:var(--red-soft)}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.compact-header{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.compact-header h2{margin:3px 0 0}.tabs{display:flex;flex-wrap:wrap;background:#eef1f6;border-radius:10px;padding:4px;gap:2px}.tabs button{border:0;background:transparent;padding:8px 15px;color:var(--steel);font-size:13px;font-weight:600;border-radius:8px;transition:background .15s,color .15s,box-shadow .15s}.tabs button:hover:not(.active){color:var(--ink-soft)}.tabs button.active{background:var(--paper-strong);color:var(--accent);box-shadow:0 1px 4px #101a2c1a}.guard-banner,.cutover-note{display:flex;align-items:center;gap:10px;background:var(--accent-soft);border-left:3px solid var(--accent);border-radius:var(--radius-sm);padding:12px 15px;color:#33517e;font-size:13px;line-height:1.6}.guard-banner svg{color:var(--accent);flex:0 0 auto}.full-span,.account-search{grid-column:1 / -1}.search-row{display:flex;gap:10px;margin-top:18px}.search-row input{flex:1}.balance-card{grid-column:span 3;background:linear-gradient(150deg,#1b2a4a,var(--sidebar-deep));color:#fff;padding:24px;display:flex;min-height:240px;flex-direction:column;border-radius:var(--radius);box-shadow:var(--shadow-md);position:relative;overflow:hidden}.balance-card:before{content:"";position:absolute;width:220px;height:220px;right:-70px;top:-70px;border-radius:50%;background:radial-gradient(circle,rgba(47,111,237,.35),transparent 70%)}.balance-card>span{color:#93a3bc;font-size:12px}.balance-card strong{font:600 50px var(--mono);margin:24px 0 4px;letter-spacing:-.02em}.balance-card small{color:#7488a6}.balance-card button{margin-top:auto;color:#fff;background:#ffffff14;border-color:#ffffff40;position:relative;z-index:1}.balance-card button:hover:not(:disabled){background:#ffffff29;border-color:#ffffff73;color:#fff}.finance-page>.full-card:last-child{grid-column:span 9}.positive{color:var(--green-deep);font-weight:700}.negative{color:var(--orange-deep);font-weight:700}.membership-page>.full-span>.error-banner{margin-bottom:0}.membership-list-card{padding-bottom:12px}.modal-overlay{position:fixed;inset:0;z-index:100;background:#0c152385;backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .18s ease both}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-panel{position:static;width:min(560px,100%);min-height:0;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 64px #0c15234d;animation:modalIn .24s cubic-bezier(.2,.8,.3,1) both}.modal-panel:focus{outline:none}.member-filter-bar{display:grid;grid-template-columns:minmax(220px,1fr) repeat(2,minmax(130px,170px)) auto;gap:10px;align-items:end;padding:14px 0 18px;border-top:1px solid var(--line)}.member-filter-bar .secondary-button{min-height:41px}.member-user-cell{display:flex;align-items:center;gap:10px;min-width:210px}.member-avatar{width:34px;height:34px;flex:0 0 auto;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font:700 12px var(--mono);border:1px solid #cdddf9;border-radius:10px}.member-avatar.large{width:48px;height:48px;font-size:17px;border-radius:13px}.table-subline{display:block;margin-top:5px;color:var(--steel);font:11px var(--mono)}.member-editor{gap:14px}.member-profile-card{display:flex;align-items:center;gap:12px;padding:14px;background:#f5f8fd;border:1px solid #dbe6f7;border-radius:var(--radius-sm)}.member-profile-card strong,.member-profile-card code,.member-profile-card small{display:block}.member-profile-card code{margin-top:5px;color:var(--steel)}.member-profile-card small{margin-top:5px;color:var(--steel);font-size:11px}.member-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.member-summary-grid>div{min-height:82px;padding:13px;border:1px solid var(--line);border-radius:var(--radius-sm);display:flex;flex-direction:column;justify-content:space-between;background:#fafbfe}.member-summary-grid span{color:var(--steel);font-size:11px}.member-summary-grid strong{font-size:14px;line-height:1.45}.member-note{align-items:flex-start;font-size:12px;line-height:1.6}.permission-note{color:var(--orange-deep);line-height:1.6}.member-order-history{display:grid;gap:8px;padding-top:15px;border-top:1px solid var(--line)}.member-order-history>strong{font-size:13px}.member-order-history>div{padding:11px;background:#f8fafc;border:1px solid var(--line);border-radius:var(--radius-sm);display:grid;gap:6px}.member-order-history>div>div{display:flex;justify-content:space-between;align-items:center;gap:8px}.member-order-history span{font-size:12px;font-weight:600}.member-order-history small{color:var(--steel);font-size:11px;line-height:1.5}.users-page{position:relative}.user-dashboard-card{display:grid;gap:18px}.user-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.user-metric{min-height:112px;padding:15px;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:var(--radius-sm);background:#fafbfe;display:flex;flex-direction:column;justify-content:space-between}.user-metric span,.user-metric small{color:var(--steel);font-size:11px}.user-metric strong{font:600 24px var(--mono);color:var(--ink)}.user-filter-grid{display:grid;grid-template-columns:minmax(240px,1.8fr) repeat(8,minmax(120px,1fr)) auto;gap:10px;align-items:end;padding:14px 0 18px;border-top:1px solid var(--line)}.user-filter-grid label,.user-detail-section label{display:grid;gap:6px;color:var(--steel);font-size:11px;font-weight:600}.filter-keyword>div{display:flex;align-items:center;gap:8px;min-height:41px;padding:0 11px;border:1px solid var(--line-strong);border-radius:8px;background:var(--paper-strong)}.filter-keyword>div:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.filter-keyword input{min-width:0;flex:1;padding:0;border:0;box-shadow:none!important}.user-list-card{padding-bottom:12px}.user-pagination{display:flex;align-items:center;gap:14px;padding:16px 0 4px;border-top:1px solid var(--line)}.user-pagination label{display:flex;align-items:center;gap:8px;color:var(--steel);font-size:12px}.user-pagination select{width:96px;padding:8px 30px 8px 10px}.pagination-summary{color:var(--steel);font:12px var(--mono)}.pagination-actions{display:flex;gap:8px;margin-left:auto}.pagination-actions .secondary-button,.compact-header .secondary-button{display:inline-flex;align-items:center;gap:7px}.user-drawer-overlay{position:fixed;inset:0;z-index:120;display:flex;justify-content:flex-end;background:#0c15237a;backdrop-filter:blur(2px);animation:fadeIn .16s ease both}.user-drawer{width:min(720px,94vw);height:100vh;height:100dvh;overflow:auto;background:var(--paper-strong);box-shadow:-20px 0 60px #0c15233d;animation:drawerIn .22s ease both}@keyframes drawerIn{0%{transform:translate(30px);opacity:.6}to{transform:translate(0);opacity:1}}.user-drawer>header{position:sticky;top:0;z-index:2;min-height:86px;padding:20px 24px;border-bottom:1px solid var(--line);background:#fffffff0;backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between}.user-drawer h2{margin:4px 0 0;font-size:22px}.user-drawer-body{padding:20px 24px 40px;display:grid;gap:14px}.user-identity-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px;border:1px solid #dbe6f7;border-radius:var(--radius-sm);background:#f5f8fd}.user-identity-card strong,.user-identity-card code,.user-identity-card small{display:block}.user-identity-card code,.user-identity-card small{margin-top:5px;color:var(--steel)}.user-detail-section{border:1px solid var(--line);border-radius:var(--radius-sm);padding:16px;display:grid;gap:12px;background:#fcfdff}.user-detail-section h3{margin:0;padding-bottom:10px;border-bottom:1px solid var(--line);font-size:15px}.user-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.user-form-grid label:first-child{grid-column:1 / -1}.user-facts{display:flex;flex-wrap:wrap;gap:8px}.user-facts>span,.user-summary-grid>span{min-width:120px;flex:1;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#f7f9fc;color:var(--steel);font-size:11px}.user-facts strong,.user-summary-grid strong{display:block;margin-top:6px;color:var(--ink);font-size:12px}.identity-list,.audit-mini-list{display:grid;gap:8px}.identity-list>div{display:grid;grid-template-columns:130px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f7f9fc}.identity-list code{overflow:hidden;text-overflow:ellipsis;color:var(--steel)}.identity-list small{color:var(--steel)}.user-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.user-danger-actions,.inline-search{display:flex;gap:8px;align-items:center}.inline-search input{flex:1}.merge-preview{padding:12px;border:1px solid #f1cba4;border-left:3px solid var(--orange);border-radius:8px;background:var(--orange-soft);display:grid;gap:8px;color:var(--orange-deep);font-size:12px;line-height:1.6}.secondary-button.danger{border-color:var(--orange);color:var(--orange-deep)}.audit-mini-list>div{display:grid;grid-template-columns:160px minmax(0,1fr) auto;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:12px}.audit-mini-list>div:last-child{border-bottom:0}.audit-mini-list small{color:var(--steel)}@media(max-width:1280px){.user-metrics{grid-template-columns:repeat(3,1fr)}.user-filter-grid{grid-template-columns:minmax(240px,2fr) repeat(3,minmax(130px,1fr))}}@media(max-width:760px){.user-metrics{grid-template-columns:1fr 1fr}.user-filter-grid,.user-form-grid,.user-summary-grid{grid-template-columns:1fr}.user-form-grid label:first-child{grid-column:auto}.user-drawer{width:100%}.user-drawer-body,.user-drawer>header{padding-left:15px;padding-right:15px}.identity-list>div,.audit-mini-list>div{grid-template-columns:1fr}.user-danger-actions,.inline-search{align-items:stretch;flex-direction:column}.user-pagination{align-items:stretch;flex-wrap:wrap}.pagination-actions{width:100%;margin-left:0}.pagination-actions .secondary-button{flex:1;justify-content:center}}.user-migration-control{display:grid;gap:18px;overflow:hidden;position:relative}.user-migration-control:before{content:"";position:absolute;width:180px;height:180px;right:-82px;top:-92px;border:1px solid #cdddf9;border-radius:50%;box-shadow:0 0 0 28px #2f6fed09,0 0 0 56px #2f6fed06;pointer-events:none}.user-migration-heading{position:relative;z-index:1;margin-bottom:0}.user-migration-heading p{max-width:760px;margin:8px 0 0;color:var(--steel);font-size:12px;line-height:1.7}.user-migration-actions,.user-cutover-actions{display:flex;align-items:center;gap:8px}.user-migration-actions .secondary-button{display:inline-flex;align-items:center;gap:7px}.user-migration-state{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:17px 18px;border:1px solid #bfe3cc;border-left:4px solid var(--green);border-radius:var(--radius-sm);background:linear-gradient(90deg,#f0faf4,#fbfdfc)}.user-migration-state.state-blocked{border-color:#f1cba4;border-left-color:var(--orange);background:linear-gradient(90deg,#fff7ef,#fffdfb)}.user-migration-state>div{display:grid;grid-template-columns:auto auto;align-items:center;gap:5px 9px;min-width:180px}.user-migration-state>div svg{grid-row:1 / 3;color:var(--green-deep)}.user-migration-state.state-blocked>div svg{color:var(--orange-deep)}.user-migration-state span{color:var(--steel);font-size:11px}.user-migration-state strong{font-size:16px}.user-migration-state p{margin:0;color:var(--ink-soft);font:11px/1.65 var(--mono)}.user-migration-metrics{display:grid;grid-template-columns:1.05fr repeat(4,1fr);gap:10px}.user-migration-metrics article{min-height:108px;padding:14px;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:var(--radius-sm);background:#fafbfe;display:flex;flex-direction:column;justify-content:space-between}.user-migration-metrics article:first-child{border-top-color:var(--orange)}.user-migration-metrics span,.user-migration-metrics small{color:var(--steel);font-size:11px}.user-migration-metrics strong{color:var(--ink);font:600 23px var(--mono)}.user-migration-workspace{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:14px;align-items:stretch}.migration-stage-rail{display:grid;gap:8px}.migration-stage-rail article{min-height:60px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 13px;border:1px solid var(--line);border-left:3px solid var(--green);border-radius:8px;background:#fbfdfc}.migration-stage-rail article.blocked{border-left-color:var(--orange);background:#fffaf5}.migration-stage-rail .stage-index{color:#9aa8bb;font:600 11px var(--mono)}.migration-stage-rail strong,.migration-stage-rail small{display:block}.migration-stage-rail strong{font-size:12px}.migration-stage-rail small{margin-top:4px;color:var(--steel);font:10px/1.5 var(--mono)}.migration-stage-rail article.passed>svg{color:var(--green)}.migration-stage-rail article.blocked>svg{color:var(--orange)}.user-migration-evidence{padding:15px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#f7f9fc;display:flex;flex-direction:column;gap:13px}.user-migration-evidence>div:first-child{display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--line)}.user-migration-evidence>div:first-child svg{color:var(--accent)}.user-migration-evidence strong,.user-migration-evidence span{display:block}.user-migration-evidence span{margin-top:4px;color:var(--steel);font-size:11px}.user-migration-evidence dl{margin:0;display:grid;gap:8px}.user-migration-evidence dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.user-migration-evidence dt{color:var(--steel);font-size:11px}.user-migration-evidence dd{margin:0;color:var(--ink-soft);font:600 11px var(--mono);text-align:right}.bridge-exit-note{display:flex;gap:8px;align-items:flex-start;margin-top:auto;padding:10px;border-radius:8px;background:var(--orange-soft);color:var(--orange-deep);font-size:11px;line-height:1.55}.bridge-exit-note svg{flex:0 0 auto;margin-top:1px}.migration-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.migration-modes article{border:1px solid var(--line);border-radius:var(--radius-sm);padding:16px;min-height:128px;display:flex;flex-direction:column;background:#fafbfe;transition:box-shadow .18s,transform .18s}.migration-modes article:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.migration-modes article>div,.migration-modes footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.migration-modes article p{color:var(--steel);font:11px/1.6 var(--mono);flex:1}.migration-modes footer{border-top:1px solid var(--line);padding-top:10px;color:var(--steel);font-size:11px}.cutover-note{margin-top:15px;border-left-color:var(--orange);background:var(--orange-soft);color:#8a4a1d}.cutover-note svg{color:var(--orange);flex:0 0 auto}@media(max-width:1050px){.dashboard-grid .hero-card,.dashboard-grid .stat-grid{grid-column:1 / -1}.split-workspace{grid-template-columns:1fr}.editor-panel,.modal-panel{position:static}.member-filter-bar{grid-template-columns:1fr 1fr}.migration-modes{grid-template-columns:repeat(2,1fr)}.user-migration-metrics{grid-template-columns:repeat(3,1fr)}.user-migration-workspace{grid-template-columns:1fr}}@media(max-width:760px){.login-shell{grid-template-columns:1fr}.login-intro{min-height:47vh;padding:42px 28px}.login-panel{padding:54px 24px}.login-card{padding:28px 24px 22px}.app-shell{display:block}.sidebar{transform:translate(-100%);transition:transform .22s ease;box-shadow:20px 0 40px #00000038}.sidebar.mobile-open{transform:translate(0)}.main-shell{width:100%}.mobile-menu{display:grid;place-items:center;border:0;background:transparent;margin-right:12px;color:var(--ink-soft)}.status-strip{padding:0 12px;gap:12px;overflow:hidden}.status-strip span:nth-child(2),.status-strip span:nth-child(3){display:none}.topbar{padding:13px 14px}.workspace{padding:14px}.stat-grid{grid-template-columns:repeat(2,1fr)}.mode-row{grid-template-columns:1fr 100px;padding:10px 0}.mode-row>span:nth-of-type(2),.mode-row code{display:none}.migration-modes{grid-template-columns:1fr}.user-migration-state{grid-template-columns:1fr;align-items:start}.user-migration-metrics{grid-template-columns:1fr 1fr}.user-migration-actions{width:100%;justify-content:space-between}.balance-card,.finance-page>.full-card:last-child{grid-column:1 / -1}.search-row{flex-direction:column}.member-filter-bar{grid-template-columns:1fr}.compact-header{align-items:flex-start;gap:14px;flex-direction:column}.modal-overlay{padding:12px}.modal-panel{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}}
