:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bp-wide:1360px;--bp-desktop:1200px;--bp-laptop:960px;--bp-tablet:768px;--bp-mobile:576px;--space-8:8px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;--space-32:32px;--font-title:30px;--font-h1:26px;--font-h2:22px;--font-body:14px;--font-caption:12px;--radius-sm:12px;--radius-md:16px;--radius-lg:20px;--radius-pill:999px;--btn-height:40px;--app-bg:#f6f7f8;--app-surface:#fff;--app-surface-strong:#fff;--app-border:#162c2214;--app-primary:#1f6b49;--app-primary-strong:#154a33;--app-accent:#e29f3d;--app-danger:#b4533f;--app-text:#183028;--app-muted:#668074;--app-text-secondary:#4f665d;--app-text-tertiary:#7a8f85;--app-shadow:0 4px 14px #14221c0a;--app-shadow-strong:0 10px 28px #14221c14;--app-surface-muted:#f8fbf4e6;--app-border-subtle:#162c220f;--app-hover-soft:#1f6b490a;--app-focus-ring:0 0 0 2px #1f6b492e;--admin-sidebar-bg:#f7f9fc;--admin-sidebar-border:#e3eaf4;--admin-content-bg:#f3f6fb;--admin-header-bg:#fff;--admin-card-border:#e7edf6;--admin-card-shadow:0 8px 24px #0f223a0f;--admin-text-main:#1f2a37;--admin-text-subtle:#5f6f84;--admin-primary:#3e7bfa;--admin-primary-soft:#3e7bfa1a;--motion-fast:.18s;--motion-normal:.24s;--el-color-primary:#1f6b49;--el-color-success:#2f8d61;--el-color-warning:#e29f3d;--el-color-danger:#b4533f;--el-border-radius-base:var(--radius-sm);--el-border-radius-small:var(--radius-sm);--el-border-radius-round:var(--radius-pill);--el-bg-color:#ffffffe0;--el-fill-color-light:#1f6b490d;--el-text-color-regular:#183028;--el-text-color-secondary:#668074;--el-border-color:#162c221a;color:var(--app-text);background:var(--app-bg);font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--app-bg);min-width:320px;min-height:100vh;color:var(--app-text);margin:0;position:relative}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}::selection{background:#1f6b492e}#app{min-height:100vh}.page-shell{gap:var(--space-20);width:100%;min-width:0;max-width:var(--bp-wide);flex-direction:column;margin:0 auto;display:flex}.page-section{gap:var(--space-16);flex-direction:column;width:100%;display:flex}.section-block{padding:var(--space-20);border-radius:var(--radius-md);border:1px solid var(--app-border);background:#ffffffdb}.section-block.compact{padding:var(--space-16)}.page-title{justify-content:space-between;align-items:center;gap:var(--space-16);width:100%;min-width:0;display:flex}.surface-panel{padding:var(--space-16);border-radius:var(--radius-md);background:#ffffffdb;border:1px solid #162c2214;width:100%}.page-title h1{font-size:var(--font-h1);margin:0;line-height:1.2}.page-title p{color:var(--app-muted);max-width:780px;margin:6px 0 0;line-height:1.8}.hero-kicker,.section-kicker,.card-kicker{font-size:var(--font-caption);letter-spacing:.08em;color:var(--app-muted)}.header-actions{gap:var(--space-12);flex-wrap:wrap;align-items:center;display:flex}.header-pill{min-height:var(--btn-height);padding:0 var(--space-12);border-radius:var(--radius-pill);color:var(--app-primary);font-size:var(--font-caption);background:#1f6b4912;border:1px solid #1f6b491f;align-items:center;display:inline-flex}.summary-grid{gap:var(--space-16);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.summary-card{padding:var(--space-16)}.summary-card>span{font-size:var(--font-caption);color:var(--app-muted)}.summary-card>strong{margin-top:var(--space-12);color:var(--app-primary-strong);font-size:24px;display:block}.summary-card>p{margin:var(--space-8) 0 0;color:#566f64;line-height:1.7}.section-header,.card-header{justify-content:space-between;align-items:center;gap:var(--space-12);display:flex}.section-header h3,.card-header h3{margin:var(--space-8) 0 0;font-size:var(--font-h2)}.grid-two{gap:var(--space-20);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.grid-three{gap:var(--space-20);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.stack{gap:var(--space-20);flex-direction:column;display:flex}.form-grid-two{gap:var(--space-16);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.action-row{justify-content:space-between;align-items:center;gap:var(--space-16);flex-wrap:wrap;display:flex}.action-row>span{color:var(--app-muted);line-height:1.7}.chip-list{gap:var(--space-12);flex-wrap:wrap;display:flex}.chip-item{min-height:34px;padding:0 var(--space-12);border-radius:var(--radius-pill);color:var(--app-primary-strong);font-size:var(--font-caption);background:#ffffffdb;border:1px solid #1f6b491a;align-items:center;display:inline-flex}.panel-muted{border-radius:var(--radius-lg);background:#f8fbf4eb;border:1px solid #1f6b4914}.app-card{border:1px solid var(--app-border);border-radius:var(--radius-md);background:var(--app-surface-strong);width:100%;box-shadow:var(--app-shadow);overflow:hidden}.app-card.main-card{min-height:160px}.app-card.main-card.compact{min-height:140px}.subtle-note{color:var(--app-text-secondary);margin:0;line-height:1.7}.el-card.app-card{border-radius:var(--radius-md)}.el-card.app-card .el-card__header{padding:var(--space-16) var(--space-16) 0;color:var(--app-text);border-bottom:none;font-size:15px;font-weight:700}.el-card.app-card .el-card__body{padding:var(--space-16)}.el-button{min-height:var(--btn-height);border-radius:var(--radius-sm)}.el-button.is-plain{background:#ffffffb8}.el-alert{border-radius:var(--radius-lg)}.el-empty{padding:24px 0}.admin-panel{border:1px solid var(--admin-card-border);border-radius:var(--radius-md);box-shadow:var(--admin-card-shadow);background:#fff}.admin-toolbar{justify-content:space-between;align-items:center;gap:var(--space-12);flex-wrap:wrap;display:flex}.admin-filters{align-items:center;gap:var(--space-12);flex-wrap:wrap;display:flex}.admin-quick-actions{align-items:center;gap:var(--space-8);color:var(--admin-text-subtle);display:inline-flex}.auth-stage{justify-content:center;align-items:center;min-height:100vh;padding:28px 32px;display:flex}.auth-shell-card{border-radius:26px;width:100%;max-width:920px;position:relative;overflow:hidden}.auth-shell-card:after{content:"";pointer-events:none;background:radial-gradient(circle,#1f6b4914,#0000 68%);border-radius:50%;width:200px;height:200px;position:absolute;top:-50px;right:-40px}.auth-shell-card .el-card__body{padding:0}.auth-shell-inner{grid-template-columns:minmax(260px,1fr) minmax(300px,1fr);align-items:stretch;gap:0;min-height:min(520px,100vh - 120px);display:grid}.auth-showcase{border-right:1px solid #162c2214;flex-direction:column;gap:18px;padding:32px 28px 32px 32px;display:flex;position:relative}.auth-brand{align-items:center;gap:12px;display:inline-flex}.auth-brand-mark{color:#365240;letter-spacing:.08em;background:linear-gradient(145deg,#f2d8b0,#f7ecd9);border-radius:14px;place-items:center;width:46px;height:46px;font-weight:800;display:grid}.auth-brand-copy strong{font-size:18px;display:block}.auth-brand-copy span{color:var(--app-muted);margin-top:2px;font-size:12px;display:block}.auth-copy{flex-direction:column;gap:8px;display:flex}.auth-eyebrow{letter-spacing:.08em;color:var(--app-primary);text-transform:uppercase;margin:0;font-size:12px}.auth-showcase h1{letter-spacing:-.03em;max-width:10em;margin:0;font-size:30px;line-height:1.24}.auth-copy>p{max-width:34ch;color:var(--app-muted);margin:0;font-size:14px;line-height:1.72}.auth-entry{margin-top:auto}.auth-entry-copy{background:#ffffffb3;border:1px solid #162c2214;border-radius:14px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.auth-entry-copy span,.auth-entry-copy small{color:var(--app-muted);font-size:12px}.auth-link-row{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.auth-link-row a{min-height:36px;color:var(--app-primary);background:#1f6b490f;border:1px solid #1f6b4929;border-radius:999px;justify-content:center;align-items:center;padding:0 14px;font-size:13px;transition:all .2s;display:inline-flex}.auth-link-row a:hover{background:#1f6b491a}.auth-form-nest{background:#1f6b490a;flex-direction:column;padding:28px 32px 26px 28px;display:flex;position:relative}.auth-form-switch{background:#1f6b490f;border-radius:999px;gap:4px;padding:4px;display:inline-flex}.auth-form-switch a{min-width:72px;min-height:34px;color:var(--app-muted);border-radius:999px;justify-content:center;align-items:center;font-size:13px;display:inline-flex}.auth-form-switch a.is-active{color:var(--app-primary);background:#fff;box-shadow:0 4px 10px #162c2214}.auth-form-intro{margin-top:18px}.auth-form-intro h2{letter-spacing:-.02em;margin:0;font-size:26px}.auth-form-intro p{color:var(--app-muted);margin:8px 0 0;font-size:14px;line-height:1.7}.auth-form{margin-top:18px}.auth-form .el-form-item{margin-bottom:16px}.auth-form .el-form-item__label{color:#4f6a5f;margin-bottom:8px}.auth-form .el-input__wrapper{min-height:var(--btn-height);border-radius:12px;box-shadow:inset 0 0 0 1px #162c2214}.auth-form .el-input__wrapper.is-focus{box-shadow:inset 0 0 0 1px #1f6b496b}.auth-submit{width:100%;min-height:var(--btn-height);margin-top:4px}.auth-inline-action{color:var(--app-primary);margin-top:8px;padding-left:0}.auth-helper{color:var(--app-muted);flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;font-size:13px;display:flex}.auth-helper a{color:var(--app-primary)}@media (width<=1200px){.grid-two,.grid-three,.summary-grid,.form-grid-two{grid-template-columns:1fr}}@media (width<=900px){.auth-shell-inner{min-height:unset;grid-template-columns:1fr}.auth-showcase{border-bottom:1px solid #162c2214;border-right:none;padding:28px 24px 24px}.auth-form-nest{padding:24px 24px 26px}}@media (width<=768px){.page-shell{gap:var(--space-16)}.section-block{padding:var(--space-16)}.action-row{flex-direction:column;align-items:stretch}.header-actions{width:100%}.auth-stage{padding:18px 16px 24px}.auth-showcase{padding:22px 18px 18px}.auth-form-nest{padding:22px 18px 20px}.auth-showcase h1{font-size:26px}}.el-button:hover,.el-button.is-plain:hover{color:#fff!important;opacity:1!important;background-color:#10b981!important;border-color:#10b981!important}.el-button.is-text:hover{color:#10b981!important;background-color:#10b9811a!important}.el-button--danger:hover{color:#fff!important;background-color:#f56c6c!important;border-color:#f56c6c!important}.el-button{transition:all .2s}
