.shell-sidebar[data-v-6bd997ab]{display:flex;flex-direction:column;min-height:100vh}.nav-item--logout[data-v-6bd997ab]{margin-top:auto;color:#b91c1c}.nav-item--logout[data-v-6bd997ab]:hover{background:#b91c1c1a;color:#b91c1c;transform:translate(2px)}:root{color-scheme:light;font-family:Avenir Next,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background:radial-gradient(circle at top left,rgba(34,166,153,.16),transparent 28%),radial-gradient(circle at bottom right,rgba(40,91,164,.08),transparent 24%),linear-gradient(180deg,#f3f8f7,#edf4f3);color:#1f3432}*{box-sizing:border-box}body{margin:0;min-width:1280px;min-height:100vh}#app{min-height:100vh}.shell{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.shell-sidebar{background:#ffffffd1;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.shell-sidebar{border-right:1px solid rgba(31,52,50,.08);padding:28px 18px}.brand{display:flex;align-items:center;gap:14px;margin-bottom:36px}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,#2dd4bf,#0f766e);color:#fff;font-weight:700}.brand-eyebrow,.page-kicker{margin:0 0 6px;color:#6d8783;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.brand-title,.page-title{margin:0}.brand-title{font-size:18px;white-space:nowrap}.nav-list{display:flex;flex-direction:column;gap:8px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border:0;border-radius:16px;background:transparent;color:#46605d;font-size:15px;text-align:left;cursor:pointer;transition:background-color .16s ease,transform .16s ease,color .16s ease}.nav-item:hover,.nav-item--active{background:#2dd4bf1f;color:#0f766e;transform:translate(2px)}.shell-main{padding:24px}.shell-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.header-search{display:flex;align-items:center;gap:10px;width:360px;padding:14px 16px;border-radius:18px;background:#ffffffd1;color:#78918d;box-shadow:0 10px 30px #2e4f490f}.header-search input{flex:1;border:0;outline:0;background:transparent;color:inherit;font:inherit}.shell-content,.view-stack{display:flex;flex-direction:column;gap:20px}.surface,.stat-card,.hero-banner{border-radius:24px;background:#ffffffe6;box-shadow:0 18px 50px #27484414}.hero-banner{position:relative;overflow:hidden;min-height:188px;padding:28px 32px;background:radial-gradient(circle at 65% 18%,rgba(154,246,235,.8),transparent 15%),radial-gradient(circle at 80% 50%,rgba(45,212,191,.8),transparent 22%),radial-gradient(circle at 78% 54%,rgba(8,95,90,.8),transparent 9%),linear-gradient(135deg,#0f7c7b,#0e5f69);color:#fff}.hero-banner:after{content:"";position:absolute;inset:auto -70px -110px auto;width:280px;height:280px;border:2px solid rgba(207,250,244,.28);border-radius:50%;box-shadow:0 0 0 26px #cffaf414,0 0 0 52px #cffaf40d}.hero-banner__copy{position:relative;z-index:1;max-width:440px}.hero-banner__eyebrow{margin:0 0 10px;color:#e9fdfad6;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.hero-banner h3{margin:0;font-size:30px;line-height:1.2}.surface{padding:22px}.section-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.section-title{margin:0 0 4px;font-size:24px}.section-subtitle{margin:0;color:#6f8884}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.stat-card{padding:20px}.stat-card__title,.stat-card__hint{margin:0}.stat-card__title{color:#627b77}.stat-card__value{display:block;margin:14px 0 10px;font-size:34px;color:#163937}.stat-card__hint{color:#7f9894}.status-dot{display:inline-flex;align-items:center;gap:8px;color:#617875}.status-dot__bullet{width:9px;height:9px;border-radius:999px;background:currentColor}.status-dot--green{color:#0f9f80}.status-dot--blue{color:#2c79d5}.status-dot--amber{color:#d18a18}.status-dot--gray{color:#889f9c}.empty-state{display:grid;place-items:center;min-height:180px;border-radius:20px;color:#6b8480;background:#f3f7f6e6}.empty-state--soft{min-height:220px;padding:24px;text-align:center;line-height:1.7}.dialog-stack{display:flex;flex-direction:column;gap:14px}.dialog-input{width:100%}.dialog-hint{margin:0;color:#748b88;font-size:13px}
