*{box-sizing:border-box}body{margin:0;min-width:320px;background:#f5f7fb;color:#172033}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(440px,.95fr) 1.05fr;background:#fff}.login-panel{display:flex;flex-direction:column;justify-content:center;width:min(440px,calc(100% - 64px));margin:auto}.login-brand{display:grid;grid-template-columns:48px 1fr;gap:16px;margin-bottom:42px}.login-brand h2{margin:8px 0 10px;font-size:30px}.brand-mark{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:13px;color:#fff;background:linear-gradient(135deg,#2563eb,#60a5fa);box-shadow:0 10px 22px #2563eb3d;font-size:19px}.login-brand .brand-mark{width:46px;height:46px}.login-footer{display:flex;justify-content:space-between;margin-top:30px;font-size:12px}.login-aside{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 20%,#8fc5ff,transparent 30%),linear-gradient(145deg,#0f2e6d,#2563eb 55%,#77b7ff)}.orb{position:absolute;width:340px;aspect-ratio:1;border:1px solid #ffffff29;border-radius:50%}.orb-one{top:-80px;right:-60px}.orb-two{bottom:-170px;left:-100px;width:520px}.signal-card{position:absolute;right:10%;bottom:12%;width:min(470px,75%);padding:30px;border:1px solid #ffffff28;border-radius:20px;color:#fff;background:#ffffff12;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.signal-card .ant-typography,.signal-card .ant-statistic-content,.signal-card .ant-statistic-title{color:#fff}.signal-card h3{color:#fff;margin:12px 0 28px;font-size:30px}.console-shell{min-height:100vh}.app-sider{position:sticky!important;top:0;height:100vh;border-right:1px solid #eef1f6;box-shadow:5px 0 30px #16244d05}.app-sider .ant-layout-sider-children{display:flex;flex-direction:column}.sider-brand{height:92px;display:flex;align-items:center;gap:11px;padding:0 25px;color:#13213e;font-size:15px;line-height:1.05;letter-spacing:-.02em}.sider-brand .brand-mark{flex:0 0 38px}.sider-brand b{font-weight:700}.app-sider .ant-menu{border-inline-end:0;padding:8px 12px}.app-sider .ant-menu-item{margin-block:6px;width:100%;border-radius:10px;color:#65718a}.app-sider .ant-menu-item-selected{background:#eaf1ff;color:#1d4ed8;font-weight:650}.sider-status{margin-top:auto;display:flex;align-items:center;gap:8px;padding:24px;color:#718097;font-size:12px;white-space:nowrap}.app-header{position:sticky;top:0;z-index:9;height:72px;display:flex;align-items:center;padding:0 32px;border-bottom:1px solid #eef1f6;box-shadow:0 1px 10px #15264e05}.header-spacer{flex:1}.header-mobile-brand{display:none;color:#2563eb;font-size:22px}.profile-trigger{cursor:pointer}.profile-name{display:grid;line-height:1.2;font-size:13px}.profile-name .ant-typography{font-size:11px}.app-content{padding:30px 32px 48px;max-width:1680px;width:100%;margin:0 auto}.content-heading{min-height:70px;display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.content-heading h2{margin:0 0 5px;font-size:25px;letter-spacing:-.03em}.metric-row{margin-bottom:18px}.metric-card{min-height:156px;border-color:#edf0f6;box-shadow:0 8px 26px #21376408;overflow:hidden}.metric-card .ant-card-body{position:relative}.metric-icon{position:absolute;top:18px;right:18px;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#eff5ff;color:#2563eb;font-size:17px}.metric-card .ant-statistic{margin-bottom:12px}.metric-card .ant-statistic-title{color:#7a869c}.metric-card .ant-statistic-content{font-size:28px;font-weight:700;letter-spacing:-.04em}.dashboard-grid{align-items:stretch}.section-card{border-color:#edf0f6;box-shadow:0 8px 28px #21376408}.section-card .ant-card-head{border-bottom:1px solid #f0f2f6}.section-eyebrow{display:block;color:#8390a6!important;font-size:10px;line-height:1.3;letter-spacing:.12em;font-weight:700}.section-title{margin-top:3px;font-size:16px;font-weight:700;color:#1f2a44}.subscription-card{height:100%;border-color:#edf0f6;transition:transform .2s,box-shadow .2s}.subscription-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px #173a7b12}.subscription-card-head{display:flex;justify-content:space-between;align-items:flex-start}.subscription-card-head .ant-tag{margin:6px 0 0;font-size:10px}.subscription-stats,.resource-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0 16px}.subscription-stats div{display:grid;gap:2px}.subscription-stats b,.resource-metrics b{color:#1d2b48;font-size:17px}.subscription-stats span,.resource-metrics span{color:#8490a3;font-size:11px}.subscription-url{display:block;padding:8px 10px;overflow:hidden;border-radius:8px;background:#f7f9fc;color:#5272b9;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.subscription-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:15px}.subscription-card-footer .ant-typography{font-size:11px}.activity-card .ant-list-item{padding:13px 0}.activity-icon{color:#2563eb;background:#ebf2ff}.activity-card .ant-list-item-meta-title{margin-bottom:3px;font-size:13px}.activity-card .ant-list-item-meta-description{font-size:12px}.table-card{overflow:hidden}.table-toolbar{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f0f2f6}.subscription-hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;border:0;color:#fff;background:radial-gradient(circle at 90% 20%,#719eff,transparent 30%),linear-gradient(120deg,#123a91,#2563eb);box-shadow:0 16px 30px #2154b72c}.subscription-hero h3,.subscription-hero .ant-typography{color:#fff}.subscription-hero h3{margin:8px 0 6px}.hero-pulse{display:flex;align-items:center;gap:6px;color:#e4f1ff}.hero-pulse span{display:block;width:7px;height:7px;border-radius:50%;background:#71f0b5;box-shadow:0 0 0 4px #71f0b528}.subscription-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:16px}.manage-subscription-card{border-color:#edf0f6;transition:transform .2s,box-shadow .2s}.manage-subscription-card h4{margin:9px 0 0}.resource-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#eaf1ff;color:#2563eb;font-size:18px}.resource-metrics{padding:13px 0;border-top:1px solid #f2f4f8;border-bottom:1px solid #f2f4f8}.resource-metrics span{display:grid;gap:3px}.resource-url{display:flex;gap:8px;align-items:center;padding:10px;overflow:hidden;border-radius:9px;color:#6681bc;background:#f7f9fc;font-size:12px}.resource-url .ant-typography{min-width:0;flex:1 1 auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.resource-url .ant-btn{flex:0 0 auto;margin-left:auto;color:#2563eb}.resource-footer{display:flex;justify-content:space-between;align-items:end}.resource-footer .ant-typography{font-size:12px}.full-empty{grid-column:1/-1;padding:50px;background:#fff;border:1px solid #edf0f6;border-radius:12px}.upload-steps{display:flex;gap:20px;margin-bottom:22px;color:#a0a9b8;font-size:12px}.upload-steps .current{color:#2563eb;font-weight:700}.upload-steps .done{color:#4f9d76}.yaml-dragger{border-radius:12px!important;background:#fafcff!important}.yaml-dragger .ant-upload-drag-icon{color:#2563eb!important;font-size:32px!important}.yaml-preview{margin-bottom:18px;border-color:#bdd4ff;background:#f8fbff}.ant-modal .ant-modal-content,.ant-drawer .ant-drawer-content{border-radius:16px}.ant-table-wrapper .ant-table{font-size:13px}.ant-table-thead>tr>th{color:#728097;background:#fafbfc!important;font-size:12px;font-weight:600}.ant-table-tbody>tr>td{border-bottom-color:#f1f3f6}.ant-table-tbody>tr:hover>td{background:#f8fbff!important}@media(max-width:900px){.login-page{grid-template-columns:1fr}.login-aside{display:none}.app-content{padding:22px 18px 38px}.app-header{padding:0 18px}.header-mobile-brand{display:block}.content-heading{gap:14px}.content-heading h2{font-size:22px}.subscription-hero{display:block}.hero-pulse{margin-top:18px}.profile-name{display:none}}@media(max-width:560px){.login-panel{width:calc(100% - 44px)}.login-footer{display:grid;gap:10px}.content-heading{align-items:flex-start}.content-heading>.ant-btn{flex:0 0 auto}.metric-card{min-height:135px}.metric-card .ant-statistic-content{font-size:23px}.table-toolbar{gap:12px;align-items:flex-start;flex-direction:column}.subscription-stats{gap:4px}}.subscription-hero .ant-card-body{display:flex;align-items:center;justify-content:space-between;gap:24px}.hero-pulse{flex:0 0 auto;white-space:nowrap}.hero-pulse .ant-typography{white-space:nowrap}.subscription-grid{grid-template-columns:minmax(0,1fr)}.manage-subscription-card{cursor:default;transition:none}.subscription-list-card{display:grid;grid-template-columns:minmax(190px,1.2fr) minmax(210px,.85fr) minmax(250px,1.35fr) minmax(110px,.6fr) auto;gap:20px;align-items:center}.resource-identity{display:flex;align-items:center;gap:12px;min-width:0}.resource-identity .ant-typography{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-identity .ant-tag{margin:5px 0 0;font-size:10px}.manage-subscription-card .resource-metrics{min-width:0;margin:0;padding:0 20px;border-top:0;border-bottom:0;border-right:1px solid #f0f2f6;border-left:1px solid #f0f2f6}.resource-url{min-width:0}.resource-owner{display:grid;gap:5px;min-width:0}.resource-owner>.ant-typography{font-size:12px}.resource-actions{justify-content:flex-end;white-space:nowrap}.detail-loading{display:grid;min-height:240px;place-items:center}.subscription-detail-tabs{margin-top:20px}.node-filter-bar{display:grid;grid-template-columns:minmax(220px,1fr) 170px auto;align-items:center;gap:12px;margin:0 0 16px}.node-filter-bar .ant-typography{white-space:nowrap;font-size:12px}@media(max-width:1100px){.subscription-list-card{grid-template-columns:minmax(180px,1fr) minmax(180px,.8fr) minmax(220px,1.2fr) auto}.resource-owner{display:none}}@media(max-width:760px){.subscription-hero .ant-card-body{display:block}.hero-pulse{margin-top:18px}.subscription-list-card{grid-template-columns:1fr;gap:16px}.manage-subscription-card .resource-metrics{padding:13px 0;border-top:1px solid #f2f4f8;border-bottom:1px solid #f2f4f8;border-right:0;border-left:0}.resource-owner{display:grid}.resource-actions{justify-content:flex-start}}@media(max-width:600px){.node-filter-bar{grid-template-columns:1fr}.node-filter-bar .ant-typography{white-space:normal}}.change-password-fields{display:grid;gap:12px;padding-top:8px}
