:root{--color-brand-blue:#185ac6;--color-brand-yellow:#ffc400;--color-primary:#185ac6;--color-primary-light:#4a8fe7;--color-primary-dark:#0d3d8a;--color-primary-subtle:#e8f2ff;--color-primary-hover:#1250ab;--color-secondary:#64748b;--color-secondary-light:#94a3b8;--color-secondary-dark:#334155;--color-accent-yellow:#ffc400;--color-accent-gold:#ffb800;--color-accent-amber:#f59e0b;--color-accent-blue:#3b82f6;--color-accent-indigo:#6366f1;--color-accent-purple:#8b5cf6;--color-accent-pink:#ec4899;--color-accent-red:#ef4444;--color-accent-green:#10b981;--color-accent-cyan:#06b6d4;--color-accent-teal:#14b8a6;--color-accent-orange:#f97316;--color-accent-sky:#60a5fa;--color-accent-gray:#6b7280;--color-accent-terracotta:#e07856;--color-accent-terracotta-rgb:224, 120, 86;--color-accent-pink-dark:#db2777;--color-accent-amber-dark:#d97706;--color-accent-teal-dark:#0f766e;--color-accent-sky-dark:#0369a1;--color-medal-gold:gold;--color-medal-gold-text:#7a4f00;--color-medal-silver:silver;--color-medal-silver-text:#444;--color-medal-bronze:#cd7f32;--color-medal-bronze-text:#fff;--color-success:#10b981;--color-success-light:#34d399;--color-success-bg:#ecfdf5;--color-warning:#ffc400;--color-warning-bg:#fff9e6;--color-error:#ef4444;--color-danger:var(--color-error);--color-error-bg:#fef2f2;--color-success-bg-soft:#f0f9f1;--color-warning-bg-strong:#fff3e0;--color-warning-bg-soft:#fffdf5;--color-error-bg-strong:#fce8e8;--color-error-bg-soft:#fff8f8;--color-info-bg-strong:#e8f0fe;--color-info-bg-soft:#f5f8ff;--color-info:#185ac6;--color-info-bg:#e8f2ff;--color-status-pending-bg:#fdf0dc;--color-status-pending-text:#b45309;--color-status-pending-border:#f6c26b;--color-status-confirmed-bg:#d1fae5;--color-status-confirmed-text:#065f46;--color-status-confirmed-border:#6ee7b7;--color-status-completed-bg:#e0e7ff;--color-status-completed-text:#3730a3;--color-status-completed-border:#a5b4fc;--color-status-cancelled-bg:#fee2e2;--color-status-cancelled-text:#991b1b;--color-status-cancelled-border:#fca5a5;--color-status-neutral-bg:#f3f4f6;--color-status-neutral-text:#6b7280;--color-status-neutral-border:#d1d5db;--color-white:#fff;--color-black:#0f172a;--color-gray-50:#f8fafc;--color-gray-100:#f1f5f9;--color-gray-200:#e2e8f0;--color-gray-300:#cbd5e1;--color-gray-400:#94a3b8;--color-gray-500:#64748b;--color-gray-600:#475569;--color-gray-700:#334155;--color-gray-800:#1e293b;--color-gray-900:#0f172a;--color-brand-wechat:#07c160;--color-brand-wechat-bg:#e8f9ef;--color-brand-wechat-bg-light:#f5fffb;--color-brand-alipay:#1677ff;--color-brand-alipay-bg:#e6f1ff;--color-brand-alipay-bg-light:#f5f9ff;--color-brand-voucher:#ff6b6b;--color-brand-card:#6b7280;--color-bg-primary:var(--color-white);--color-bg-secondary:var(--color-gray-50);--color-bg-tertiary:var(--color-gray-100);--color-bg-elevated:var(--color-white);--color-bg-dark:var(--color-gray-900);--color-text-primary:var(--color-gray-900);--color-text-secondary:var(--color-gray-600);--color-text-tertiary:var(--color-gray-400);--color-text-inverse:var(--color-white);--color-text-disabled:var(--color-gray-300);--color-text-muted:var(--color-gray-500);--color-primary-rgb:24, 90, 198;--color-success-rgb:16, 185, 129;--color-warning-rgb:255, 196, 0;--color-danger-rgb:239, 68, 68;--color-error-rgb:239, 68, 68;--color-bg-primary-rgb:255, 255, 255;--color-text-secondary-rgb:71, 85, 105;--color-border-primary:var(--color-gray-200);--color-border-secondary:var(--color-gray-100);--color-border-focus:var(--color-primary-light);--color-border-error:var(--color-error);--spacing-0_5:.125rem;--spacing-1:.25rem;--spacing-1_5:.375rem;--spacing-2:.5rem;--spacing-2_5:.625rem;--spacing-3:.75rem;--spacing-3_5:.875rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--radius-sm:.125rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--border-radius-sm:var(--radius-sm);--border-radius-md:var(--radius-md);--border-radius-lg:var(--radius-lg);--border-radius-xl:var(--radius-xl);--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a;--shadow-2xl:0 25px 50px -12px #00000040;--text-shadow-sm:0 1px 2px #0000000d;--text-shadow-md:0 2px 4px #0000001a;--text-shadow-lg:0 4px 8px #00000026;--font-family-display:"DM Serif Display", Georgia, serif;--font-family-sans:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-mono:"JetBrains Mono", "Fira Code", ui-monospace, monospace;--font-family-base:var(--font-family-sans);--font-size-xxs:.625rem;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.5rem;--font-size-5xl:3.5rem;--font-size-6xl:4.5rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--line-height-tight:1.1;--line-height-snug:1.25;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.2s cubic-bezier(.4, 0, .2, 1);--transition-smooth:.3s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--transition-colors:color .2s cubic-bezier(.4, 0, .2, 1), background-color .2s cubic-bezier(.4, 0, .2, 1), border-color .2s cubic-bezier(.4, 0, .2, 1);--transition-all:all .2s cubic-bezier(.4, 0, .2, 1);--container-max-width:1200px;--container-width-xl:1200px;--header-height:4rem;--sidebar-width:16rem;--z-index-dropdown:1000;--z-index-sticky:1020;--z-index-fixed:1030;--z-index-modal:1050;--z-index-popover:1060;--z-index-tooltip:1070;--z-index-skip-link:9999;--card-padding-sm:var(--spacing-4);--card-padding-md:var(--spacing-6);--card-padding-lg:var(--spacing-8);--card-padding-xl:var(--spacing-10);--card-radius-sm:var(--radius-lg);--card-radius-md:var(--radius-xl);--card-radius-lg:var(--radius-2xl);--card-radius-xl:var(--radius-3xl);--card-shadow-sm:var(--shadow-sm);--card-shadow-md:var(--shadow-md);--card-shadow-lg:var(--shadow-lg);--card-shadow-xl:var(--shadow-xl);--card-shadow-float:0 8px 30px -4px #0000001f;--card-shadow-interactive:0 10px 20px -5px #0000001a;--opacity-0:0;--opacity-3:.03;--opacity-5:.05;--opacity-7:.07;--opacity-10:.1;--opacity-25:.25;--opacity-50:.5;--opacity-75:.75;--opacity-100:1;--letter-spacing-tighter:-.05em;--letter-spacing-tight:-.025em;--letter-spacing-normal:0;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--letter-spacing-widest:.1em;--focus-ring-color:var(--color-primary-light);--outline-width-base:2px;--outline-offset-base:2px;--border-color:var(--color-border-primary);--color-border:var(--color-border-primary);--color-border-light:var(--color-gray-100);--color-border-lighter:var(--color-gray-50);--spacing-0_25:.0625rem;--spacing-0_75:.1875rem;--spacing-1_25:.3125rem;--radius-full:9999px;--color-primary-50:#eef4ff;--color-danger-bg:var(--color-error-bg);--teacher-accent:#e07856;--teacher-accent-soft:#e0785614;--teacher-ink:#1e293b;--teacher-line:#e2e8f0;--teacher-muted:#94a3b8;--teacher-panel:#fff;--category-accent:#6366f1;--category-soft:#6366f114;--color-star-rating:#f7ba2a;--payment-wechat-color:#07c160;--payment-wechat-header-start:#07c160;--payment-wechat-header-end:#06ad56;--payment-alipay-color:#1677ff;--payment-alipay-header-start:#1677ff;--payment-alipay-header-end:#0e5fd9;--payment-icon-contrast:#fff}@layer reset{*,:before,:after{box-sizing:border-box;margin:0;padding:0}}@layer base{:root{--scrollbar-width:8px;--scrollbar-radius:4px}html{font-family:var(--font-family-base);font-size:16px;line-height:var(--line-height-normal);scroll-behavior:smooth}body{min-width:320px;min-height:100vh;color:var(--color-text-primary);background-color:var(--color-bg-secondary);font-family:var(--font-family-base);line-height:var(--line-height-normal)}main{display:block}img,picture,video,canvas,svg{max-width:100%;height:auto}button,input,textarea,select{font:inherit}button{cursor:pointer}fieldset{border:0;margin:0;padding:0}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{color:var(--color-text-secondary);line-height:var(--line-height-normal)}a{font-weight:var(--font-weight-medium);color:var(--color-primary);transition:var(--transition-colors);text-decoration:none}a:hover{color:var(--color-primary-dark);text-decoration:underline}::-webkit-scrollbar{width:var(--scrollbar-width);height:var(--scrollbar-width)}::-webkit-scrollbar-track{background:var(--color-bg-tertiary)}::-webkit-scrollbar-thumb{background:var(--color-border-secondary);border-radius:var(--scrollbar-radius)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}}@layer accessibility{:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:var(--outline-width-base) solid var(--focus-ring-color);outline-offset:var(--outline-offset-base)}@supports not selector(:focus-visible){:focus{outline:var(--outline-width-base) solid var(--focus-ring-color);outline-offset:var(--outline-offset-base)}}.skip-link{top:var(--spacing-2);left:var(--spacing-2);background-color:var(--color-primary);color:var(--color-white);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-sm);transition:transform var(--transition-fast);z-index:var(--z-index-skip-link);position:absolute;transform:translateY(-200%)}.skip-link:focus{outline:var(--outline-width-base) solid var(--color-border-focus);outline-offset:var(--outline-offset-base);transform:translateY(0)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@layer utilities{.w-full,.full-width{width:100%}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.flex-col{flex-direction:column}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:var(--spacing-2)}.gap-3{gap:var(--spacing-3)}.gap-4{gap:var(--spacing-4)}.gap-6{gap:var(--spacing-6)}.gap-8{gap:var(--spacing-8)}.mr-1{margin-right:var(--spacing-1)}.mr-2{margin-right:var(--spacing-2)}.mb-4{margin-bottom:var(--spacing-4)}.mb-6{margin-bottom:var(--spacing-6)}.mb-2{margin-bottom:var(--spacing-2)}.mt-2{margin-top:var(--spacing-2)}.mt-4{margin-top:var(--spacing-4)}.mt-8{margin-top:var(--spacing-8)}.p-4{padding:var(--spacing-4)}.pl-5{padding-left:var(--spacing-5)}.py-12{padding-top:var(--spacing-12);padding-bottom:var(--spacing-12)}.text-secondary{color:var(--color-text-secondary)}.text-primary{color:var(--color-primary)}.text-gray-300{color:var(--color-gray-300)}.text-sm{font-size:var(--font-size-sm)}.text-xl{font-size:var(--font-size-xl)}.text-center{text-align:center}.font-mono{font-family:var(--font-family-mono)}.font-medium{font-weight:var(--font-weight-medium)}.font-bold{font-weight:var(--font-weight-bold)}.leading-relaxed{line-height:var(--line-height-relaxed)}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:solid;border-width:1px}.bg-gray-50{background-color:var(--color-bg-tertiary)}.border-gray-100{border-color:var(--color-border-secondary)}.flex-1{flex:1}.animate-in{animation-fill-mode:forwards}.fade-in{animation:.5s ease-out fadeIn}.slide-in-from-bottom{animation:.5s ease-out slideInFromBottom}.scale-in{animation:.4s ease-out scaleIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}}:root{--page-padding-inline:clamp(var(--spacing-4), 3vw, var(--spacing-10));--page-padding-block:clamp(var(--spacing-5), 4vh, var(--spacing-12));--page-section-gap:clamp(var(--spacing-5), 3vw, var(--spacing-12));--page-card-padding:clamp(var(--spacing-4), 2vw, var(--spacing-8));--page-card-radius:var(--radius-xl);--page-grid-gap:clamp(var(--spacing-4), 2vw, var(--spacing-8))}.app-shell,.page-layout{background-color:var(--color-bg-secondary);flex-direction:column;min-height:100vh;display:flex}.app-shell__main,.page-layout__main{flex-direction:column;flex:1 0 auto;display:flex}.page-layout__content{gap:var(--page-section-gap);flex-direction:column;flex:1 0 auto;width:100%;display:flex}.shell-container{width:100%;max-width:calc(var(--container-max-width) + (var(--page-padding-inline) * 2));padding-left:var(--page-padding-inline);padding-right:var(--page-padding-inline);margin:0 auto}.admin-shell{background-color:var(--color-bg-secondary);min-height:100vh;display:flex}.admin-shell__sidebar{width:var(--sidebar-width);background-color:var(--color-bg-primary);border-right:1px solid var(--color-border-secondary);gap:var(--spacing-6);padding:var(--spacing-6) var(--spacing-5);flex-direction:column;display:flex}.admin-shell__brand{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);cursor:pointer}.admin-shell__nav{gap:var(--spacing-2);flex-direction:column;display:flex}.admin-shell__nav-item{text-align:left;padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);transition:var(--transition-colors);background:0 0;border:none}.admin-shell__nav-item.is-active,.admin-shell__nav-item:hover{background-color:var(--color-primary-subtle);color:var(--color-primary)}.admin-shell__main{flex-direction:column;flex:1;min-width:0;display:flex}.admin-shell__header{justify-content:space-between;align-items:center;gap:var(--spacing-4);padding:var(--spacing-6) var(--spacing-8);border-bottom:1px solid var(--color-border-secondary);background-color:var(--color-bg-primary);flex-wrap:wrap;display:flex}.admin-shell__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);margin:0}.admin-shell__subtitle{color:var(--color-text-tertiary);margin:0}.admin-shell__actions{align-items:center;gap:var(--spacing-3);display:flex}.admin-shell__user{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.admin-shell__content{padding:var(--page-padding-block) var(--page-padding-inline);background-color:var(--color-bg-secondary);flex:1}.admin-shell__footer{text-align:center;padding:var(--spacing-4);font-size:var(--font-size-sm);color:var(--color-text-tertiary);border-top:1px solid var(--color-border-secondary);background-color:var(--color-bg-primary)}@media (width<=1024px){.admin-shell{flex-direction:column}.admin-shell__sidebar{align-items:stretch;gap:var(--spacing-4);width:100%;padding:var(--spacing-4);flex-direction:column}.admin-shell__nav{gap:var(--spacing-2);scrollbar-width:thin;padding-bottom:var(--spacing-1);flex-flow:wrap;overflow-x:auto}.admin-shell__nav-item{white-space:nowrap;flex:none}.admin-shell__header{padding:var(--spacing-4) var(--spacing-5)}}@media (width<=768px){.shell-container{padding-left:var(--spacing-4);padding-right:var(--spacing-4)}.admin-shell__brand{font-size:var(--font-size-lg)}.admin-shell__sidebar{padding:var(--spacing-3) var(--spacing-4)}.admin-shell__header{padding:var(--spacing-4)}.admin-shell__title{font-size:var(--font-size-xl)}.admin-shell__actions{flex-wrap:wrap;justify-content:space-between;width:100%}.admin-shell__content{padding:var(--spacing-4)}.admin-shell__footer{padding:var(--spacing-3) var(--spacing-4)}}.page-shell{width:100%;max-width:calc(var(--container-max-width) + (var(--page-padding-inline) * 2));padding:var(--page-padding-block) var(--page-padding-inline);gap:var(--page-section-gap);flex-direction:column;flex:1 0 auto;margin:0 auto;display:flex}.page-shell--narrow{max-width:720px}.page-shell--full{max-width:none}.page-shell--flush{padding:0}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-4);margin-bottom:var(--page-section-gap);flex-wrap:wrap;display:flex}.header-left{gap:var(--spacing-1);flex-direction:column;display:flex}.header-actions{align-items:center;gap:var(--spacing-3);flex-wrap:wrap;display:flex}.page-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.page-subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0}.filters-bar{gap:var(--spacing-3);margin-bottom:var(--spacing-5);flex-wrap:wrap;display:flex}.pagination-wrapper{margin-top:var(--spacing-5);justify-content:flex-end;display:flex}.page-header__title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.page-header__subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin:0}:where(.fiscal-header,.bus-header,.hub-header,.canvas-header,.matrix-header,.alliance-header,.ops-header,.orchestrator-header){justify-content:space-between;align-items:flex-start;gap:var(--spacing-4);margin-bottom:var(--page-section-gap);flex-wrap:wrap;display:flex}:where(.fiscal-header-actions,.bus-header-actions,.hub-header-actions,.canvas-header-actions,.matrix-header-actions,.alliance-header-actions,.ops-status-tag,.protocol-status-badge,.header-status){align-items:center;gap:var(--spacing-3);flex-wrap:wrap;display:flex}:where(.fiscal-header,.bus-header,.hub-header,.canvas-header,.matrix-header,.alliance-header,.ops-header,.orchestrator-header) h1{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}:where(.fiscal-subtitle,.bus-subtitle,.hub-subtitle,.canvas-subtitle,.matrix-subtitle,.alliance-subtitle,.ops-subtitle,.header-subtitle){margin:var(--spacing-2) 0 0;font-size:var(--font-size-base);color:var(--color-text-secondary)}.section-stack{gap:var(--page-section-gap);flex-direction:column;display:flex}.section-stack--tight{gap:var(--spacing-4)}.section-card{background-color:var(--color-bg-primary);border-radius:var(--page-card-radius);padding:var(--page-card-padding);border:1px solid var(--color-border-primary);box-shadow:var(--shadow-md)}.section-card--muted{background-color:var(--color-bg-secondary);border-color:#0000}.section-card--flat{box-shadow:none}.page-heading{gap:var(--spacing-2);flex-direction:column;display:flex}.page-heading__title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.page-heading__subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0}.page-heading--split{justify-content:space-between;align-items:center;gap:var(--spacing-3);flex-flow:wrap}.responsive-grid{gap:var(--page-grid-gap);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.responsive-grid--compact{gap:var(--spacing-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.responsive-grid--wide{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}@media (width<=1024px){.page-shell{padding:var(--spacing-6);gap:var(--spacing-5)}}@media (width<=768px){.page-shell{padding:var(--spacing-5) var(--spacing-4);gap:var(--spacing-4)}.page-header{gap:var(--spacing-3)}.page-heading__title{font-size:var(--font-size-2xl)}.page-heading--split{flex-direction:column;align-items:flex-start}:where(.fiscal-header,.bus-header,.hub-header,.canvas-header,.matrix-header,.alliance-header,.ops-header,.orchestrator-header){gap:var(--spacing-3)}}@media (width<=480px){.page-shell{padding:var(--spacing-4) var(--spacing-3)}.page-heading__title{font-size:var(--font-size-xl)}}.admin-mobile-only{display:none}.admin-desktop-only{display:block}@media (width<=1024px){.admin-shell__content{overflow-x:hidden}.admin-shell__guide{margin-bottom:var(--spacing-4)}:where(.actions-toolbar,.page-header,.fiscal-header,.bus-header,.hub-header,.canvas-header,.hero-panel,.workspace-header){gap:var(--spacing-3)}:where(.header-actions,.toolbar-left,.toolbar-right,.fiscal-header-actions,.bus-header-actions,.hub-header-actions,.canvas-header-actions,.hero-actions){flex-wrap:wrap}:where(.el-row){--el-row-gutter:16px}}@media (width<=768px){.admin-mobile-only{display:block}.admin-desktop-only{display:none}.admin-shell__content>*{min-width:0}:where(.page-shell,.dashboard-container,.user-management,.role-management,.module-management,.system-settings-container,.booking-management,.fiscal-central,.audit-logs,.meituan-management,.iot-page,.teacher-hub-global,.activity-canvas-global,.dispatch-bus,.cms-management,.notify-management,.coupon-management,.referral-management,.alliance-management,.partnership-management,.content-management,.study-buddy-management,.admin-search,.site-module-manager,.teaching-admin,.teacher-management,.course-templates,.course-instances,.class-groups,.sessions-calendar,.package-management,.teaching-students,.student-detail,.student-balances,.teaching-enrollments,.teacher-income,.teaching-settlements){gap:var(--spacing-4)}:where(.actions-toolbar,.page-header,.fiscal-header,.bus-header,.hub-header,.canvas-header,.hero-panel,.workspace-header,.nexus-toolbar){flex-direction:column;align-items:stretch}:where(.header-actions,.toolbar-left,.toolbar-right,.fiscal-header-actions,.bus-header-actions,.hub-header-actions,.canvas-header-actions,.hero-actions){justify-content:flex-start;align-items:stretch;gap:var(--spacing-2);width:100%}:where(.header-actions .el-button,.header-actions .el-dropdown,.header-actions>*,.toolbar-left .el-input,.toolbar-left .el-select,.toolbar-left .el-date-editor,.toolbar-right .el-button,.toolbar-right .el-dropdown,.toolbar-right>*,.fiscal-header-actions .el-button,.fiscal-header-actions .el-dropdown,.bus-header-actions .el-button,.bus-header-actions .el-dropdown,.hub-header-actions .el-button,.hub-header-actions .el-dropdown,.hub-header-actions .el-input,.hub-header-actions .el-select,.canvas-header-actions .el-button,.hero-actions .el-button){width:100%}:where(.search-input,.role-filter,.filter-input,.filter-select,.summary-range-select,.pattern-input,.status-select-vessel,.search-vessel,.filter-control--sm,.filter-control--lg,.filters-bar .el-input,.filters-bar .el-select,.filters-bar .el-date-editor){width:100%;min-width:0}:where(.content-card,.table-card,.filter-card,.ledger-monolith,.nexus-monolith,.workspace-card,.hub-monolith,.canvas-monolith){min-width:0}:where(.content-card>.el-card__body,.table-card>.el-card__body,.filter-card>.el-card__body,.nexus-monolith>.el-card__body,.ledger-monolith>.el-card__body,.hub-monolith>.el-card__body,.canvas-monolith>.el-card__body,.workspace-card>.el-card__body,.table-vessel){-webkit-overflow-scrolling:touch;overflow-x:auto}:where(.content-card .el-table,.table-card .el-table,.nexus-monolith .el-table,.ledger-monolith .el-table,.hub-monolith .el-table,.canvas-monolith .el-table,.workspace-card .el-table,.el-table),.el-table .el-table__inner-wrapper{min-width:600px}:where(.content-card,.table-card,.filter-card,.ledger-monolith,.nexus-monolith,.workspace-card,.hub-monolith,.canvas-monolith,.summary-card,.metric-card){border-radius:var(--radius-lg)}:where(.metric-content,.resource-activity-card__header,.resource-activity-card__meta,.avatar-field,.setting-row,.bus-info-banner,.commission-control-vessel,.fac-data-matrix){flex-direction:column;align-items:flex-start}:where(.row-actions,.action-group,.expertise-tags,.hero-tags,.toolbar-left,.toolbar-right){flex-wrap:wrap}:where(.summary-grid,.overview-grid,.payment-check__providers,.workspace-tab-picker,.fac-stats-vessel,.fiscal-ledger-canvas,.admin-shell__guide-grid){grid-template-columns:1fr}:where(.fiscal-ledger-canvas){flex-direction:column;display:flex}:where(.fiscal-detail-panel){border-left:none;border-top:1px solid var(--color-border-secondary);width:100%;max-width:100%;position:static}:where(.pagination-wrapper,.modal-footer-actions,.adjustment-footer,.dialog-footer){justify-content:stretch;gap:var(--spacing-2);flex-wrap:wrap}:where(.pagination-wrapper){padding:var(--spacing-3) 0}:where(.el-pagination){justify-content:center;gap:var(--spacing-1);flex-wrap:wrap}:where(.el-dialog){width:92vw;max-width:min(92vw,560px);margin-top:6vh}:where(.el-dialog__body){padding:var(--spacing-4);max-height:60vh;overflow-y:auto}:where(.el-dialog__header){padding:var(--spacing-4) var(--spacing-4) 0}:where(.el-dialog__footer){padding:var(--spacing-3) var(--spacing-4) var(--spacing-4)}:where(.el-drawer){max-width:100vw}:where(.el-drawer.rtl),:where(.el-drawer){width:100%!important}:where(.el-drawer__body){padding:var(--spacing-4)}:where(.el-card__body){padding:var(--spacing-4);min-width:0}:where(.el-card__header){padding:var(--spacing-4) var(--spacing-4) 0}:where(.el-tabs__nav-wrap){-webkit-overflow-scrolling:touch;overflow-x:auto}:where(.el-tabs__nav){flex-wrap:nowrap}:where(.el-form-item .el-input),:where(.el-form-item .el-select),:where(.el-form-item .el-input-number),:where(.el-form-item .el-date-editor){width:100%}:where(.el-form-item__content){flex-wrap:wrap}:where(.drawer-actions){grid-template-columns:1fr}:where(.drawer-action-btn){width:100%}:where(.drawer-user-identity){text-align:center;flex-direction:column}:where(.el-col){margin-bottom:var(--spacing-3)}:where(.el-empty){padding:var(--spacing-8) 0}:where(.el-empty__image){max-width:100%}}@media (width<=560px){.admin-shell__title{font-size:var(--font-size-lg)}:where(.page-title,.bus-title,.hub-title,.canvas-title,.hero-title){font-size:var(--font-size-xl);line-height:1.2}:where(.page-subtitle,.fiscal-subtitle,.bus-subtitle,.hub-subtitle,.canvas-subtitle,.hero-subtitle){font-size:var(--font-size-sm)}:where(.el-radio-group.view-mode-toggle){grid-template-columns:1fr;width:100%;display:grid}:where(.view-mode-option,.view-mode-toggle .el-radio-button__inner),:where(.bus-stats-pill,.hero-tags){width:100%}:where(.bus-stats-pill){align-items:flex-start}:where(.hero-tags){flex-wrap:wrap;display:flex}:where(.el-dialog){border-radius:0;width:100vw;max-width:100vw;margin:0;position:fixed;inset:0}:where(.el-dialog__body){max-height:calc(100vh - 120px)}:where(.metric-value){font-size:var(--font-size-xl)}:where(.metric-icon){width:40px;height:40px}:where(.content-card .el-table,.table-card .el-table,.el-table){min-width:480px;font-size:var(--font-size-sm)}:where(.el-pagination .el-pagination__total),:where(.el-pagination .el-pagination__sizes){display:none}:where(.el-pagination button){padding:var(--spacing-1) var(--spacing-2)}:where(.admin-shell__sidebar){width:100vw;max-width:100vw}}body:before{content:"";opacity:.03;z-index:-1;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");width:100%;height:100%;position:fixed;top:0;left:0}h1,h2,h3,.display-text{font-family:var(--font-family-display);font-weight:var(--font-weight-normal);line-height:var(--line-height-tight);letter-spacing:-.02em}body,p,span,.body-text{font-family:var(--font-family-sans);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal)}code,pre,.mono-text,.booking-number,.price{font-family:var(--font-family-mono)}.card-elevated{background:var(--color-bg-elevated);border-radius:var(--card-radius-md);box-shadow:var(--card-shadow-md);border:1px solid var(--color-border-secondary);transition:var(--transition-all);position:relative;overflow:hidden}.card-elevated:before{content:"";background:linear-gradient(90deg, transparent, rgba(var(--color-accent-terracotta-rgb), .3), transparent);opacity:0;height:1px;transition:opacity var(--transition-base);position:absolute;top:0;left:0;right:0}.card-elevated:hover{box-shadow:var(--card-shadow-float);transform:translateY(-6px)}.card-elevated:hover:before{opacity:1}.card-interactive{background:var(--color-bg-elevated);border-radius:var(--card-radius-lg);padding:var(--card-padding-md);transition:var(--transition-all);cursor:pointer;border:1px solid var(--color-border-secondary);position:relative}.card-interactive:after{content:"";background:linear-gradient(90deg, var(--color-secondary), var(--color-secondary-light));width:0;height:3px;transition:width var(--transition-smooth);position:absolute;bottom:0;left:0}.card-interactive:hover:after{width:100%}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse);padding:var(--spacing-3) var(--spacing-6);border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);transition:var(--transition-all);border:none;position:relative;overflow:hidden}.btn-primary:before{content:"";background:#fff3;border-radius:50%;width:0;height:0;transition:width .6s,height .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.btn-primary:hover:before{width:300px;height:300px}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px -4px #0a16284d}.btn-secondary{color:var(--color-secondary);border:2px solid var(--color-secondary);padding:var(--spacing-3) var(--spacing-6);border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);transition:var(--transition-all);background:0 0;position:relative;overflow:hidden}.btn-secondary:before{content:"";background:var(--color-secondary);width:100%;height:100%;transition:left var(--transition-smooth);z-index:-1;position:absolute;top:0;left:-100%}.btn-secondary:hover{color:var(--color-white)}.btn-secondary:hover:before{left:0}.geometric-corner{position:relative}.geometric-corner:before{content:"";background:linear-gradient(135deg, var(--color-secondary) 0%, transparent 70%);opacity:.15;border-radius:0 var(--radius-xl) 0 0;width:80px;height:80px;position:absolute;top:0;right:0}.geometric-bar{padding-left:var(--spacing-6);position:relative}.geometric-bar:before{content:"";background:linear-gradient(180deg, var(--color-secondary), var(--color-secondary-dark));border-radius:var(--radius-sm);width:4px;position:absolute;top:0;bottom:0;left:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:.6s cubic-bezier(.65,0,.35,1) forwards fadeInUp}.stagger-1{opacity:0;animation-delay:.1s}.stagger-2{opacity:0;animation-delay:.2s}.stagger-3{opacity:0;animation-delay:.3s}.stagger-4{opacity:0;animation-delay:.4s}.stagger-5{opacity:0;animation-delay:.5s}.stagger-6{opacity:0;animation-delay:.6s}@keyframes shimmer{0%{background-position:-468px 0}to{background-position:468px 0}}.skeleton-shimmer{background:linear-gradient(to right, var(--color-gray-200) 0%, var(--color-gray-100) 20%, var(--color-gray-200) 40%, var(--color-gray-200) 100%);background-size:800px 100px;animation:2s linear infinite shimmer}@keyframes pulseGlow{0%,to{box-shadow:0 0 0 0 rgba(var(--color-accent-terracotta-rgb), .4)}50%{box-shadow:0 0 24px 8px rgba(var(--color-accent-terracotta-rgb), .1)}}.pulse-glow{animation:3s ease-in-out infinite pulseGlow}@keyframes rotateIn{0%{opacity:0;transform:rotate(-10deg)scale(.95)}to{opacity:1;transform:rotate(0)scale(1)}}.animate-rotate-in{animation:.5s cubic-bezier(.34,1.56,.64,1) forwards rotateIn}@keyframes scaleBounce{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.hover-scale:hover{animation:.4s cubic-bezier(.34,1.56,.64,1) scaleBounce}.pattern-dots{background-image:radial-gradient(circle, var(--color-gray-300) 1px, transparent 1px);opacity:.4;background-size:24px 24px}.pattern-grid{background-image:linear-gradient(var(--color-gray-200) 1px, transparent 1px), linear-gradient(90deg, var(--color-gray-200) 1px, transparent 1px);opacity:.3;background-size:48px 48px}.gradient-radial-terracotta{background:radial-gradient(circle at top right, rgba(var(--color-accent-terracotta-rgb), .1) 0%, transparent 50%)}.gradient-mesh{background:radial-gradient(at 27% 37%, rgba(var(--color-accent-terracotta-rgb), .1) 0px, transparent 50%), radial-gradient(at 97% 21%, #4a7c8c14 0px, transparent 50%), radial-gradient(at 52% 99%, #a39b8b0f 0px, transparent 50%), radial-gradient(at 10% 29%, #d4a57412 0px, transparent 50%)}.interactive-lift{transition:var(--transition-all);cursor:pointer}.interactive-lift:hover{transform:translateY(-4px)scale(1.01)}.interactive-lift:active{transform:translateY(-2px)scale(.99)}.focus-ring:focus-visible{outline:2px solid var(--color-secondary);outline-offset:3px;border-radius:var(--radius-md)}.badge-modern{align-items:center;gap:var(--spacing-2);padding:var(--spacing-1_5) var(--spacing-3);background:var(--color-primary);color:var(--color-white);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;border-radius:999px;display:inline-flex}.badge-outline{border:1.5px solid var(--color-primary);color:var(--color-primary);background:0 0}.label-architectural{font-family:var(--font-family-mono);font-size:var(--font-size-xxs);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-tertiary);font-weight:var(--font-weight-medium)}.section-spacing{padding:var(--spacing-16) 0}.section-spacing-sm{padding:var(--spacing-8) 0}.section-spacing-lg{padding:var(--spacing-24) 0}.container-custom{max-width:var(--container-max-width);padding:0 var(--spacing-6);margin:0 auto}.glass{-webkit-backdrop-filter:blur(12px);background:#ffffffb3;border:1px solid #ffffff4d}.glass-dark{-webkit-backdrop-filter:blur(16px);background:#0f172acc;border:1px solid #ffffff1a}.content-card{background:var(--color-bg-elevated);border-radius:var(--radius-xl);border:1px solid var(--color-border-secondary);box-shadow:var(--shadow-sm)}.actions-toolbar{justify-content:space-between;align-items:center;gap:var(--spacing-4);flex-wrap:wrap;display:flex}.stats-grid{gap:var(--spacing-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.stat-card{background:var(--color-bg-elevated);border-radius:var(--radius-xl);border:1px solid var(--color-border-secondary);padding:var(--spacing-5);gap:var(--spacing-2);flex-direction:column;display:flex}.stat-value{font-family:var(--font-family-display);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:var(--line-height-tight)}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.text-display{font-family:var(--font-family-display);font-size:var(--font-size-4xl);line-height:var(--line-height-tight);letter-spacing:-.02em}.text-gradient{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.divider-elegant{background:linear-gradient(90deg, transparent, var(--color-border-primary), transparent);height:1px;margin:var(--spacing-8) 0}.divider-vertical{background:var(--color-border-primary);width:1px;height:100%}@media (width<=768px){.hide-mobile{display:none!important}.show-mobile{display:block!important}.text-display{font-size:var(--font-size-3xl)}.container-custom{padding:0 var(--spacing-4)}.card-elevated,.card-interactive{border-radius:var(--card-radius-sm)}.section-spacing{padding:var(--spacing-8) 0}}@media (width>=769px){.hide-desktop{display:none!important}.show-desktop{display:block!important}}::selection{background:var(--color-accent-terracotta);color:var(--color-primary)}::selection{background:var(--color-accent-terracotta);color:var(--color-primary)}.section-header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-4);margin-bottom:var(--spacing-6);flex-wrap:wrap;display:flex}.section-header__title{font-family:var(--font-family-display);font-size:var(--font-size-2xl);color:var(--color-text-primary);font-weight:var(--font-weight-normal);letter-spacing:var(--letter-spacing-tight);margin:0}.section-header__subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--spacing-1)}.accent-bar{padding-left:var(--spacing-4);position:relative}.accent-bar:before{content:"";border-radius:var(--radius-full);background:linear-gradient(180deg, var(--color-primary) 0%, var(--color-accent-terracotta) 100%);width:3px;position:absolute;top:0;bottom:0;left:0}.empty-state{padding:var(--spacing-16) var(--spacing-6);text-align:center;justify-content:center;align-items:center;gap:var(--spacing-4);flex-direction:column;display:flex}.empty-state__icon{color:var(--color-text-tertiary);opacity:.5;font-size:3rem}.empty-state__title{font-family:var(--font-family-display);font-size:var(--font-size-xl);color:var(--color-text-secondary)}.empty-state__description{font-size:var(--font-size-sm);color:var(--color-text-tertiary);max-width:360px}.table-wrapper{background:var(--color-bg-elevated);border:1px solid var(--color-border-secondary);border-radius:var(--radius-xl);overflow:hidden}.table-toolbar{justify-content:space-between;align-items:center;gap:var(--spacing-3);padding:var(--spacing-4) var(--spacing-5);border-bottom:1px solid var(--color-border-secondary);flex-wrap:wrap;display:flex}.table-footer{padding:var(--spacing-3) var(--spacing-5);border-top:1px solid var(--color-border-secondary);justify-content:flex-end;align-items:center;display:flex}.card-ghost{border-radius:var(--radius-lg);padding:var(--spacing-4);transition:var(--transition-all);background:0 0;border:1px solid #0000}.card-ghost:hover{background:var(--color-bg-secondary);border-color:var(--color-border-secondary);box-shadow:var(--shadow-sm)}.number-highlight{font-family:var(--font-family-mono);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:var(--line-height-tight);tabular-nums:tabular-nums}.number-highlight--positive{color:var(--color-success)}.number-highlight--negative{color:var(--color-error)}.teacher-panel{background:var(--teacher-panel);border:1px solid var(--teacher-line);border-radius:var(--radius-xl)}.teacher-accent-text{color:var(--teacher-accent)}.teacher-accent-bg{background:var(--teacher-accent-soft)}.payment-header-wechat{background:linear-gradient(135deg, var(--payment-wechat-header-start) 0%, var(--payment-wechat-header-end) 100%)}.payment-header-alipay{background:linear-gradient(135deg, var(--payment-alipay-header-start) 0%, var(--payment-alipay-header-end) 100%)}:root{--layout-gap-md:16px}.language-switcher-button .el-button__text{align-items:center;gap:var(--spacing-1);padding:0;line-height:1;display:inline-flex}.wizard-steps .el-step__icon{background-color:var(--color-bg-secondary);width:36px;height:36px;color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.wizard-steps .el-step__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.wizard-steps .el-step__description{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.booking-wizard__login-modal .el-dialog__body{padding-top:var(--spacing-2)}.room-image .el-image{width:100%}.wizard-confirmation__fields .el-form-item{margin-bottom:16px}
