:root{color:#2c2419;background:#f6f3ed;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100vh}button,input,textarea,select{font:inherit}.fullscreen-center{display:grid;min-height:100vh;place-items:center}.route-loading{display:flex;min-height:280px;align-items:center;justify-content:center}.admin-shell{min-height:100vh}.admin-sider{position:sticky!important;top:0;height:100vh;overflow:auto;border-right:1px solid rgba(107,76,30,.12);background:#fffdf9!important}.brand{display:flex;height:64px;align-items:center;gap:10px;padding:0 20px;color:#3b2a13;font-size:18px;font-weight:800;white-space:nowrap}.brand-mark{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:12px;color:#34250f;background:linear-gradient(135deg,#ffe7a1,#d49a2a);box-shadow:0 5px 14px #b7741538}.admin-header{position:sticky;z-index:20;top:0;display:flex;height:64px;align-items:center;justify-content:space-between;gap:16px;padding:0 24px;border-bottom:1px solid rgba(107,76,30,.12);background:#fffdf9f0;backdrop-filter:blur(12px)}.admin-header-title{overflow:hidden;margin:0;font-size:18px;text-overflow:ellipsis;white-space:nowrap}.admin-content{width:100%;max-width:1680px;margin:0 auto;padding:24px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.page-heading h1{margin:0;font-size:clamp(22px,3vw,30px);line-height:1.2}.page-heading p{margin:7px 0 0;color:#746b60}.filter-card,.table-card,.metric-card{border:1px solid rgba(107,76,30,.09);box-shadow:0 8px 28px #4d35140e}.filter-card{margin-bottom:16px}.filter-form{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.filter-search{min-width:min(100%,300px);flex:1 1 260px}.table-summary{margin-bottom:12px;color:#746b60;font-size:13px}.login-page{position:relative;display:grid;min-height:100vh;overflow:hidden;place-items:center;padding:24px;background:radial-gradient(circle at 15% 15%,rgba(255,236,166,.8),transparent 35%),radial-gradient(circle at 86% 74%,rgba(177,120,29,.18),transparent 32%),#f6f3ed}.login-card{width:min(100%,420px);border:1px solid rgba(107,76,30,.12);box-shadow:0 24px 80px #422d1024}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:28px}.login-brand .brand-mark{width:48px;height:48px;flex-basis:48px;font-size:22px}.login-brand h1{margin:0;font-size:24px;white-space:nowrap}.login-brand p{margin:3px 0 0;color:#746b60}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}.metric-value{margin-top:10px;color:#3b2a13;font-size:30px;font-weight:800}.metric-description{margin-top:5px;color:#746b60;font-size:13px}.reason-label{display:block;margin-bottom:8px;font-weight:600}.ability-detail-loading{display:grid;min-height:240px;place-items:center}.ability-detail>.ant-alert,.ability-permission-alert,.ability-snapshot-alert{margin-bottom:16px}.ability-long-text{line-height:1.8;white-space:pre-wrap}.ability-package-list .ant-card{width:100%}.ability-package-list{display:grid;gap:12px}.ability-rule-list{margin:0;padding-left:22px;line-height:1.8}.ability-portfolio-list{display:grid}.ability-portfolio-item{display:flex;align-items:flex-start!important;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid rgba(107,76,30,.09)}.ability-portfolio-item>div:first-child{min-width:0;overflow-wrap:anywhere}.ability-media-keys{overflow-wrap:anywhere}@media(max-width:767px){.admin-header{padding:0 14px}.admin-content{padding:16px 12px 24px}.page-heading{align-items:flex-start;flex-direction:column}.filter-search{width:100%;flex-basis:100%}.filter-form .ant-select{min-width:0!important;flex:1 1 140px}.table-card .ant-card-body{padding:12px}.ability-detail-drawer .ant-drawer-header,.ability-detail-drawer .ant-drawer-body{padding-inline:14px}.ability-detail-drawer .ant-drawer-header-title{min-width:0}.ability-detail-drawer .ant-drawer-extra{max-width:56%}.ability-portfolio-item{align-items:stretch!important;flex-direction:column}}@media(max-width:420px){.login-page{padding:16px}.login-card .ant-card-body{padding:20px}.login-brand{gap:12px}.login-brand .brand-mark{width:44px;height:44px;flex-basis:44px;font-size:20px}.login-brand h1{font-size:21px}.login-brand p{font-size:12px}}
