.admin-root{--admin-violet:#6c4cff;--admin-violet-deep:#5434e8;--admin-violet-soft:#f0ecff;--admin-ink:#111216;--admin-text:#2f3037;--admin-muted:#777987;--admin-subtle:#9b9dac;--admin-line:#e5e6ec;--admin-soft:#f7f7fa;min-height:100vh;color:var(--admin-ink);background:#fff;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}.admin-root *,.admin-root :before,.admin-root :after{box-sizing:border-box}.admin-root button,.admin-root input,.admin-root select,.admin-root textarea{font:inherit}.admin-root button{cursor:pointer}.admin-root button:disabled{cursor:not-allowed}.admin-shell{grid-template-columns:206px minmax(0,1fr);min-height:100vh;display:grid}.admin-sidebar{z-index:30;border-right:1px solid var(--admin-line);background:#fff;width:206px;position:fixed;inset:0 auto 0 0}.admin-brand{flex-direction:column;justify-content:center;height:112px;padding:0 27px;display:flex}.admin-brand strong{letter-spacing:-.045em;font-size:23px;line-height:1.05}.admin-brand span{color:var(--admin-violet);letter-spacing:.12em;margin-top:8px;font-size:12px;font-weight:800}.admin-nav{color:#555762;flex-direction:column;align-items:stretch;gap:6px;width:100%;font-size:16px;display:flex}.admin-nav a{min-height:70px;color:inherit;align-items:center;gap:22px;padding:0 29px;transition:color .16s,background .16s;display:flex;position:relative}.admin-nav a:before{content:"";background:0 0;border-radius:0 3px 3px 0;width:4px;position:absolute;top:14px;bottom:14px;left:0}.admin-nav a:hover{color:var(--admin-ink);background:#fafafe}.admin-nav a.active{color:var(--admin-violet);background:#fcfbff;font-weight:700}.admin-nav a.active:before{background:var(--admin-violet)}.sidebar-close,.sidebar-scrim{display:none}.admin-workspace{grid-column:2;min-width:0}.admin-topbar{background:#fff;justify-content:flex-end;align-items:center;height:90px;padding:0 46px;display:flex}.admin-account{color:#24252b;align-items:center;gap:24px;font-size:14px;display:flex}.admin-account i{background:var(--admin-line);width:1px;height:22px;display:block}.admin-account button{color:#292a31;background:0 0;border:0;align-items:center;gap:8px;padding:9px 0;display:inline-flex}.admin-account button:hover{color:var(--admin-violet-deep)}.mobile-menu{color:var(--admin-ink);background:0 0;border:0;display:none}.admin-content{width:min(1200px,100% - 92px);margin:0 auto;padding:13px 0 38px}.admin-page-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:40px;display:flex}.admin-page-heading h1{letter-spacing:-.035em;margin:0;font-size:clamp(34px,3.1vw,42px);line-height:1.14}.admin-page-heading p{color:var(--admin-muted);margin:18px 0 0;font-size:14px;line-height:1.65}.page-action{border:1px solid var(--admin-line);min-height:42px;color:var(--admin-text);background:#fff;border-radius:9px;align-items:center;gap:8px;padding:0 15px;font-size:13px;font-weight:650;display:inline-flex}.page-action:hover{color:var(--admin-violet-deep);border-color:#cfc9ee}.admin-filters{grid-template-columns:minmax(280px,1.35fr) repeat(2,minmax(190px,.85fr));gap:22px;margin-bottom:35px;display:grid}.filter-search,.filter-select{background:#fff;border:1px solid #d9dae2;border-radius:10px;height:61px}.filter-search{color:#535563;align-items:center;gap:15px;padding:0 17px;display:flex}.filter-search:focus-within,.filter-select:focus-within{border-color:#9d8df0;box-shadow:0 0 0 3px #6c4cff14}.filter-search input{width:100%;min-width:0;height:100%;color:var(--admin-ink);background:0 0;border:0;outline:0;font-size:14px}.filter-search input::placeholder{color:#a6a8b5}.filter-select{align-content:center;padding:0 15px;display:grid;position:relative}.filter-select span{color:#8b8d99;pointer-events:none;font-size:11px;position:absolute;top:9px;left:15px}.filter-select select{appearance:none;color:#555762;cursor:pointer;background:0 0;border:0;outline:0;width:100%;height:100%;padding-top:17px;font-size:14px}.filter-select svg{color:#40414a;pointer-events:none;position:absolute;top:50%;right:15px;transform:translateY(-20%)}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:970px}.admin-table th{border-bottom:1px solid var(--admin-line);color:#555762;text-align:left;height:54px;padding:0 12px;font-size:13px;font-weight:650}.admin-table td{border-bottom:1px solid var(--admin-line);color:#26272d;vertical-align:middle;height:105px;padding:13px 12px;font-size:13px}.admin-table tbody tr{transition:background .14s}.admin-table tbody tr:hover{background:#fcfcfe}.admin-table th:first-child,.admin-table td:first-child{padding-left:5px}.admin-table .cell-muted{color:var(--admin-muted)}.admin-table .cell-action{color:var(--admin-violet);background:0 0;border:0;padding:8px 0;font-weight:650}.admin-table .cell-action:hover{color:var(--admin-violet-deep);text-underline-offset:4px;text-decoration:underline}.user-cell{align-items:center;gap:17px;min-width:0;display:flex}.user-avatar{background:var(--admin-violet-soft);width:59px;height:59px;color:var(--admin-violet);border-radius:50%;flex:none;place-items:center;font-size:16px;font-weight:650;display:grid}.user-avatar.lime{color:#82bb08;background:#f1fad8}.user-meta{min-width:0}.user-meta strong,.user-meta span,.user-meta small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.user-meta strong{color:var(--admin-ink);margin-bottom:7px;font-size:14px}.user-meta span,.user-meta small{color:#838593;font-size:12px}.user-meta small{margin-top:6px}.admin-root .status-pill{z-index:auto;color:#3c3d45;letter-spacing:normal;text-transform:none;white-space:nowrap;-webkit-backdrop-filter:none;backdrop-filter:none;background:#f0f0f4;border-radius:6px;align-items:center;gap:0;padding:4px 10px;font-size:11px;font-weight:650;display:inline-flex;position:static}.admin-root .status-pill.violet,.admin-root .status-pill.active,.admin-root .status-pill.paid{background:var(--admin-violet-soft);color:var(--admin-violet-deep)}.admin-root .status-pill.green,.admin-root .status-pill.succeeded{color:#507e13;background:#edf8e2}.admin-root .status-pill.yellow,.admin-root .status-pill.pending,.admin-root .status-pill.trialing,.admin-root .status-pill.partially_refunded{color:#8d6811;background:#fff5d8}.admin-root .status-pill.red,.admin-root .status-pill.failed,.admin-root .status-pill.past_due,.admin-root .status-pill.refunded{color:#b44550;background:#fff0f1}.admin-root .status-pill.disabled,.admin-root .status-pill.canceled,.admin-root .status-pill.draft{color:#737580;background:#f0f0f4}.table-loading{border-top:1px solid var(--admin-line);min-height:525px}.table-loading>div{border-bottom:1px solid var(--admin-line);grid-template-columns:2fr repeat(5,1fr);align-items:center;gap:26px;height:105px;display:grid}.table-loading span{background:#f0f0f4;border-radius:5px;height:13px;animation:1.25s ease-in-out infinite alternate admin-pulse}@keyframes admin-pulse{to{opacity:.42}}.table-message{border-top:1px solid var(--admin-line);border-bottom:1px solid var(--admin-line);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:350px;padding:30px;display:flex}.table-message strong{font-size:16px}.table-message p{max-width:450px;color:var(--admin-muted);margin:9px 0 17px;font-size:13px;line-height:1.6}.table-message button{border:1px solid var(--admin-line);color:var(--admin-violet-deep);background:#fff;border-radius:8px;padding:9px 14px;font-size:12px}.admin-pagination{color:#656773;justify-content:space-between;align-items:center;min-height:72px;font-size:13px;display:flex}.admin-pagination>div{align-items:center;gap:13px;display:flex}.admin-pagination button{border:1px solid var(--admin-line);color:#656773;background:#fff;border-radius:8px;place-items:center;width:38px;height:38px;display:grid}.admin-pagination button.current{border-color:var(--admin-violet);color:var(--admin-violet)}.admin-pagination button:disabled{opacity:.4}.admin-pagination select{border:1px solid var(--admin-line);color:#555762;background:#fff;border-radius:8px;outline:0;height:38px;margin-left:25px;padding:0 38px 0 13px}.drawer-layer{z-index:80;background:#12131838;justify-content:flex-end;display:flex;position:fixed;inset:0}.detail-drawer{background:#fff;width:min(520px,100%);height:100%;animation:.2s ease-out admin-drawer-in;overflow-y:auto;box-shadow:-18px 0 55px #14141e1f}@keyframes admin-drawer-in{0%{opacity:0;transform:translate(24px)}}.detail-drawer>header{border-bottom:1px solid var(--admin-line);justify-content:space-between;align-items:flex-start;gap:20px;min-height:105px;padding:27px 30px;display:flex}.detail-drawer>header h2{letter-spacing:-.02em;margin:0;font-size:22px}.detail-drawer>header p{color:var(--admin-muted);margin:7px 0 0;font-size:12px}.detail-drawer>header button{border:1px solid var(--admin-line);color:#5f606b;background:#fff;border-radius:8px;place-items:center;width:35px;height:35px;display:grid}.drawer-content{padding:27px 30px 40px}.detail-section+.detail-section{margin-top:28px}.detail-section h3{margin:0 0 14px;font-size:13px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.detail-field{border:1px solid var(--admin-line);background:#fbfbfd;border-radius:10px;min-width:0;padding:12px 13px}.detail-field.wide{grid-column:1/-1}.detail-field span{color:#92949f;margin-bottom:6px;font-size:10px;display:block}.detail-field strong{overflow-wrap:anywhere;color:#32333a;font-size:12px;line-height:1.45;display:block}.stat-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stat-grid div{border:1px solid var(--admin-line);border-radius:10px;padding:13px}.stat-grid span{color:#92949f;font-size:10px;display:block}.stat-grid strong{margin-top:7px;font-size:20px;display:block}.ledger-list{margin:0;padding:0;list-style:none}.ledger-list li{border-bottom:1px solid var(--admin-line);justify-content:space-between;align-items:center;gap:14px;padding:12px 0;font-size:12px;display:flex}.ledger-list li div{min-width:0}.ledger-list li span,.ledger-list li small{color:#50515b;text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.ledger-list li small{color:#9698a3;margin-top:4px;font-size:10px}.ledger-list li b{color:#2f7c4a}.ledger-list li b.negative{color:#b44550}.admin-gate{min-height:100vh;color:var(--admin-muted);background:#fbfbfd;flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:13px;display:flex}.admin-loader{border:3px solid #e5e1f9;border-top-color:var(--admin-violet);border-radius:50%;width:31px;height:31px;animation:.8s linear infinite admin-spin}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-state-card{border:1px solid var(--admin-line);text-align:center;background:#fff;border-radius:14px;width:min(430px,100% - 32px);padding:28px}.admin-state-card strong{color:var(--admin-ink);font-size:17px}.admin-state-card p{margin:10px 0 18px;line-height:1.6}.admin-state-card button{background:var(--admin-violet);color:#fff;border:0;border-radius:8px;padding:10px 16px}.model-name{align-items:center;gap:13px;display:flex}.model-icon{background:var(--admin-violet-soft);width:42px;height:42px;color:var(--admin-violet);border-radius:11px;flex:none;place-items:center;display:grid}.model-name strong,.model-name span{display:block}.model-name span{max-width:230px;color:var(--admin-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:11px;overflow:hidden}.model-price{font-weight:700}.model-price small{color:var(--admin-muted);font-weight:500}.switch{vertical-align:middle;background:#d9dae1;border:0;border-radius:999px;width:41px;height:23px;padding:0;transition:background .16s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:17px;height:17px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #00000029}.switch.on{background:var(--admin-violet)}.switch.on:after{transform:translate(18px)}.model-form{flex-direction:column;gap:15px;display:flex}.model-form label>span{color:#686a75;margin:0 0 7px 2px;font-size:11px;font-weight:650;display:block}.model-form input,.model-form textarea,.model-form select{width:100%;color:var(--admin-ink);background:#fff;border:1px solid #dcdde4;border-radius:9px;outline:0;padding:11px 12px;font-size:13px}.model-form textarea{resize:vertical;min-height:90px}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.form-submit{background:var(--admin-violet);color:#fff;border:0;border-radius:9px;min-height:42px;padding:0 16px;font-size:13px;font-weight:700}.form-submit:hover{background:var(--admin-violet-deep)}.form-error,.form-success{border-radius:8px;margin:0;padding:10px 12px;font-size:11px;line-height:1.45}.form-error{color:#a6424b;background:#fff7f7;border:1px solid #f0d2d5}.form-success{color:#337347;background:#f5fbf6;border:1px solid #d7eadb}.admin-login{background:#fbfbfd;grid-template-columns:minmax(310px,.82fr) 1.18fr;min-height:100vh;display:grid}.login-brand-panel{color:#fff;background:#15151a;flex-direction:column;justify-content:space-between;padding:48px 52px;display:flex}.login-brand-panel .admin-brand{height:auto;padding:0}.login-brand-panel .admin-brand span{color:#a99aff}.login-brand-panel>div:last-child{max-width:410px}.login-brand-panel h2{letter-spacing:-.045em;margin:0;font-size:clamp(38px,4vw,56px);line-height:1.06}.login-brand-panel p{color:#aaaab3;margin:20px 0 0;font-size:14px;line-height:1.75}.login-form-panel{place-items:center;padding:40px;display:grid}.login-card{width:min(430px,100%)}.login-card>span{color:var(--admin-violet);letter-spacing:.1em;font-size:11px;font-weight:800}.login-card h1{letter-spacing:-.035em;margin:14px 0 10px;font-size:38px}.login-card>p{color:var(--admin-muted);margin:0 0 32px;font-size:13px;line-height:1.65}.login-form{flex-direction:column;gap:17px;display:flex}.login-form label>span{color:#5f606b;margin:0 0 8px;font-size:12px;font-weight:650;display:block}.login-input{color:#8a8c98;background:#fff;border:1px solid #d9dae1;border-radius:10px;align-items:center;gap:12px;height:51px;padding:0 14px;display:flex}.login-input:focus-within{border-color:#9d8df0;box-shadow:0 0 0 3px #6c4cff14}.login-input input{width:100%;min-width:0;height:100%;color:var(--admin-ink);background:0 0;border:0;outline:0;font-size:14px}.login-input button{color:#737581;background:0 0;border:0;place-items:center;padding:5px;display:grid}.login-submit{background:var(--admin-violet);color:#fff;border:0;border-radius:10px;justify-content:center;align-items:center;gap:9px;height:51px;font-size:14px;font-weight:700;display:flex}.login-submit:hover{background:var(--admin-violet-deep)}.login-submit .admin-loader{border-width:2px;border-color:#fff #ffffff59 #ffffff59;width:18px;height:18px}.login-help{color:#a0a2ad;text-align:center;margin-top:25px;font-size:11px}@media (width<=1080px){.admin-shell{grid-template-columns:172px minmax(0,1fr)}.admin-sidebar{width:172px}.admin-brand{padding-inline:21px}.admin-brand strong{font-size:20px}.admin-nav a{gap:15px;padding-inline:22px}.admin-content{width:calc(100% - 54px)}.admin-topbar{padding-inline:27px}.admin-filters{grid-template-columns:1fr 1fr}.admin-filters .filter-search{grid-column:1/-1}}@media (width<=760px){.admin-shell{display:block}.admin-sidebar{width:min(280px,86vw);transition:transform .2s;transform:translate(-102%);box-shadow:15px 0 45px #1010181f}.admin-sidebar.is-open{transform:translate(0)}.sidebar-close{background:var(--admin-soft);color:#5b5d68;border:0;border-radius:8px;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:26px;right:14px}.sidebar-scrim{z-index:20;background:#12131845;border:0;display:block;position:fixed;inset:0}.admin-workspace{width:100%}.admin-topbar{border-bottom:1px solid var(--admin-line);justify-content:space-between;height:70px;padding-inline:17px}.mobile-menu{place-items:center;padding:5px;display:grid}.admin-account span,.admin-account i,.admin-account button svg{display:none}.admin-account button{font-size:12px}.admin-content{width:calc(100% - 30px);padding-top:29px}.admin-page-heading{margin-bottom:28px}.admin-page-heading h1{font-size:33px}.admin-page-heading p{margin-top:12px;font-size:13px}.admin-filters{grid-template-columns:1fr;gap:12px}.admin-filters .filter-search{grid-column:auto}.filter-search,.filter-select{height:55px}.admin-pagination{align-items:flex-start;gap:15px;padding-top:18px}.admin-pagination>div{gap:6px}.admin-pagination select{margin-left:5px}.login-brand-panel{display:none}.admin-login{grid-template-columns:1fr}.login-form-panel{padding:32px 22px}.detail-grid,.form-row{grid-template-columns:1fr}.detail-field.wide{grid-column:auto}}@media (prefers-reduced-motion:reduce){.admin-root *,.admin-root :before,.admin-root :after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
