:root{--brand:#123b6d;--primary:#1e5ca8;--primary-hover:#174a88;--ink:#172b45;--muted:#52657a;--canvas:#f3f6fa;--surface:#fff;--line:#d6e0ec;--soft:#eaf1fa;--danger:#a32932;--success:#246747;--warning:#805700;--radius:12px;--shadow:0 4px 18px #123b6d08;--primary-color:var(--primary);--primary-dark:var(--brand);--primary-gradient:linear-gradient(120deg,var(--brand),var(--primary));--bg-gray:var(--canvas);--text-primary:var(--ink);--text-secondary:var(--muted);--text-light:var(--muted);--referee-text:var(--ink);--referee-bg:var(--canvas);--referee-primary:var(--primary);--referee-muted:var(--muted);--referee-border:var(--line);--referee-surface:var(--surface);--referee-primary-hover:var(--primary-hover);--border-color:var(--line)}*{box-sizing:border-box}html{scroll-padding-top:24px;font-size:16px}body{background:var(--canvas);color:var(--ink);margin:0;font-family:system-ui,-apple-system,Segoe UI,Microsoft YaHei,PingFang SC,sans-serif;line-height:1.6}.ui-app{background:var(--canvas);min-height:100vh}.ui-app h1{font-size:28px;line-height:1.4}.ui-app h2{font-size:22px;line-height:1.45}.ui-app h3{font-size:18px}.ui-app h1,.ui-app h2,.ui-app h3{color:var(--ink);overflow-wrap:anywhere}.ui-app p{overflow-wrap:anywhere}.ui-app a{color:var(--primary);text-decoration:none}.ui-app a:hover{text-decoration:underline}.ui-app :focus-visible{outline-offset:3px;outline:3px solid #397bc2}.ui-app img{max-width:100%}.ui-app :where(section,article,form,fieldset,div){min-width:0}.ui-app button,.ui-app .primary,.ui-app .secondary{font:inherit;border:1px solid var(--line);background:var(--surface);width:auto;min-height:44px;color:var(--brand);box-shadow:none;cursor:pointer;white-space:normal;overflow-wrap:anywhere;border-radius:8px;margin:0;padding:10px 16px;font-size:14px;font-weight:600;line-height:1.45;transition:background .15s}.ui-app button:hover{background:var(--soft);box-shadow:none;transform:none}.ui-app :is(.btn-primary,.primary-btn,.primary,button[type=submit]:not(.secondary):not(.btn-secondary):not(.secondary-btn)){background:var(--primary);color:#fff;border-color:var(--primary)}.ui-app :is(.btn-primary,.primary-btn,.primary):hover{background:var(--primary-hover)}.ui-app :is(.btn-danger,.danger-btn,button.danger){color:var(--danger);background:#fff2f2;border-color:#e9bac0}.ui-app :is(button,input,select,textarea):disabled{opacity:.6;cursor:not-allowed}.ui-app :is(.full,.full-width){width:100%}.ui-app :is(.close-btn,.modal-close){min-width:44px;min-height:44px;color:var(--muted);background:0 0;padding:4px 10px}.ui-app :is(.header-actions,.form-actions,.actions,.toolbar,.button-group){flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ui-app .header-actions button{flex:0 auto}.ui-app :is(input,select,textarea){font:inherit;color:var(--ink);min-width:0;max-width:100%;min-height:44px;box-shadow:none;background:#fff;border:1px solid #aebed0;border-radius:8px;padding:9px 12px;font-size:16px}.ui-app :is(input,select,textarea):focus{border-color:var(--primary)}.ui-app :is(input[type=checkbox],input[type=radio]){width:18px;min-width:18px;height:18px;min-height:18px;accent-color:var(--primary);margin:0;padding:0;display:inline-block}.ui-app label{color:var(--ink);font-size:14px;line-height:1.5}.ui-app .field-error{color:var(--danger);margin:6px 0;font-size:14px;display:block}.ui-app [aria-invalid=true]{border-color:var(--danger)}.ui-app textarea{resize:vertical}.ui-app fieldset{min-width:0}.ui-app :is(.muted,.cell-meta,.field-help,.hint,.section-desc,.card-subtitle,.info-desc,.meta-label,.brand-subtitle){color:var(--muted)}.ui-brandbar{border-top:4px solid var(--brand);border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:24px;padding:16px 28px;display:flex}.ui-app .ui-brand{color:var(--brand);align-items:center;gap:12px;font-size:20px;font-weight:750;line-height:1.4;text-decoration:none;display:flex}.ui-brand img{object-fit:contain;width:48px;height:48px}.ui-brand small{color:var(--muted);letter-spacing:1px;font-size:12px;font-weight:500;display:block}.ui-system-label{color:var(--muted);margin-left:auto;font-size:13px}.ui-workspace{grid-template-columns:210px minmax(0,1fr);align-items:start;max-width:1480px;margin:auto;display:grid}.ui-shell:not(.has-navigation) .ui-workspace{max-width:1200px;display:block}.ui-navigation{max-height:100vh;padding:28px 16px;position:sticky;top:0;overflow-y:auto}.ui-nav-group{color:var(--muted);margin:0 0 8px;padding:0 12px;font-size:12px;font-weight:700}.ui-navigation section{margin-bottom:24px}.ui-navigation a{min-height:44px;color:var(--muted);border-radius:8px;margin:3px 0;padding:10px 12px;font-size:14px;font-weight:600;display:block}.ui-navigation a.is-current{color:var(--brand);box-shadow:inset 3px 0 var(--primary);background:#dfebfa}.ui-navigation a:hover{background:var(--soft);text-decoration:none}.ui-content{border-left:1px solid var(--line);min-width:0;min-height:70vh}.ui-shell:not(.has-navigation) .ui-content{border:0}.ui-app .ui-menu-toggle{display:none}.ui-footer{text-align:center;color:var(--muted);padding:24px;font-size:12px}.skip-link{z-index:10000;background:#fff;padding:12px 18px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:12px}.ui-app :is(.page-container,.schedule-container,.schedule-detail-container,.dashboard-container,.report-container,.stats-container,.signup-page){min-height:0;color:var(--ink);background:0 0}.ui-app :is(.header-bar,.admin-header,.signup-page>header){max-width:1200px;color:var(--ink);box-shadow:none;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;margin:auto;padding:28px 28px 12px;display:flex;position:static}.ui-app :is(.header-bar .title,.referee-header-title){color:var(--ink);font-size:26px;font-weight:750}.ui-app .header-bar :is(.brand-logo-sm,.brand-logo){display:none}.ui-app :is(.referee-header-subtitle,.page-subtitle){color:var(--muted)}.ui-app :is(.page-body,.main-content,.content,.signup-page>main){width:100%;max-width:1200px;margin:auto;padding:24px 28px}.ui-app .header-bar+.page-body{padding-top:16px}.ui-app .signup-page header img{display:none}.ui-app :is(.card,.info-card,.welcome-card,.entry-card,.tips-card,.records-section,.registration-card,.registration-overview,.report-section,.match-item,.signup-page article){border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--ink);background:#fff}.ui-app :is(.welcome-section,.welcome-card){background:var(--soft);border-radius:var(--radius);padding:24px}.ui-app .welcome-section p{color:var(--muted)}.ui-app .entry-grid{gap:16px}.ui-app .entry-desc{min-height:0}.ui-app .entry-card{flex-direction:column;gap:12px;display:flex}.ui-app .entry-card button{align-self:flex-start;margin-top:auto}.ui-app .entry-title{color:var(--brand);font-size:18px}.ui-app .entry-desc{margin:0;font-size:14px}.ui-app :is(.overview-stat,.progress-card){background:var(--soft);border:1px solid var(--line);box-shadow:none}.ui-app .overview-stat strong{color:var(--brand)}.ui-app :is(.alert,.error,.notice,.message,.form-error,.inline-tip,.snapshot-notice){overflow-wrap:anywhere}.ui-app :is(.alert.error,.error-message,.form-error,.error[role=alert]){color:var(--danger);background:#fff1f2;border:1px solid #ebc5ca;border-radius:8px;padding:12px 16px}.ui-app :is(.alert.success,.success[role=status]){color:var(--success);background:#eef8f2;border:1px solid #c7e3d2;border-radius:8px;padding:12px 16px}.ui-app :is(.alert.warning,.notice,.inline-tip,.snapshot-notice){color:var(--brand);background:#edf4fc;border:1px solid #cfdef0;border-radius:8px;padding:12px 16px;font-size:14px}.ui-app :is(.status-tag,.status-pill,.status-badge,.badge,.source-badge){white-space:normal;overflow-wrap:anywhere;border-radius:6px;padding:4px 8px;font-size:13px;line-height:1.5}.ui-app :is(.status-tag.pending,.status-pill.pending){color:var(--warning);background:#fff3d8}.ui-app :is(.status-tag.success,.status-pill.approved){color:var(--success);background:#e8f6ed}.ui-app :is(.empty,.empty-state,.loading-state,.ui-page-state){text-align:center;color:var(--muted);border:1px dashed var(--line);background:#fff;border-radius:12px;padding:32px 20px}.ui-page-state strong{color:var(--ink);font-size:17px;display:block}.ui-page-state p{margin:8px 0 16px}.ui-spinner{border:3px solid var(--line);border-top-color:var(--primary);border-radius:50%;width:22px;height:22px;animation:1s linear infinite ui-spin;display:inline-block}@keyframes ui-spin{to{transform:rotate(360deg)}}.ui-app :is(.table-wrapper,.table-wrap,.table-scroll){border:1px solid var(--line);max-width:100%;box-shadow:none;border-radius:10px;overflow:auto}.ui-app table{border-collapse:collapse;background:#fff;width:100%;margin:0;font-size:14px}.ui-app th{background:var(--soft);color:var(--brand);font-weight:650}.ui-app :is(th,td){text-align:left;border:0;border-bottom:1px solid var(--line);vertical-align:top;padding:13px 14px;font-size:14px}.ui-app tr:hover{background:#f8fafd}.ui-app td.action-cell{min-width:140px}.ui-app td button{margin:2px}.ui-app :is(.list-pagination,.pagination){color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;padding:16px 0;font-size:14px;display:flex}.ui-app .list-pagination label{align-items:center;gap:8px;margin:0;display:flex}.ui-app .list-pagination select{width:auto}.ui-app :is(.schedule-filters,.filters,.filter-bar){flex-wrap:wrap;gap:12px}.ui-app .schedule-filters label{flex:150px}.ui-app .schedule-container .content-grid{grid-template-columns:minmax(0,1fr)}.ui-app .schedule-container .form-row{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.ui-app .schedule-container .workflow-card{display:none}.ui-app :is(.form-row,.form-grid,.info-grid,.assignment-grid){min-width:0}.ui-app .referee-picker .result-item{text-align:left;justify-content:space-between;width:100%;display:flex}.ui-app .referee-picker input[type=search]{width:100%}.ui-app .result-main{overflow-wrap:anywhere;min-width:0}.ui-app .modal-overlay{z-index:1000;background:#10283c88;padding:16px;overflow-y:auto}.ui-app :is(.modal-content,.form-modal,.review-modal,.edit-dialog){background:#fff;border-radius:14px;max-width:100%;max-height:calc(100dvh - 32px);overflow:auto;box-shadow:0 16px 60px #10283c30}.ui-app :is(.modal-header,.modal-head){background:var(--soft);color:var(--ink);border-bottom:1px solid var(--line);padding:20px}.ui-app .modal-body{max-height:none;padding:20px;overflow:visible}.ui-app .modal-header h2{color:var(--ink)}.ui-app .referee-auth-page{background:var(--canvas);min-height:75vh;padding:48px 20px}.ui-app :is(.referee-auth-card,.auth-card){border:1px solid var(--line);border-top:4px solid var(--brand);-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;border-radius:16px;padding:32px;box-shadow:0 12px 45px #123b6d12}.ui-app .referee-auth-card{width:min(460px,100%)}.ui-app .brand-logo{background:#fff;border:0;border-radius:0;width:68px;height:68px}.ui-app .brand-title{color:var(--brand)}.ui-app .auth-layout{max-width:1050px}.ui-app .auth-intro h1{color:var(--brand);font-size:38px}.ui-app .ui-quick-links{flex-wrap:wrap;gap:12px;margin:0 0 24px;display:flex}.ui-app .ui-quick-links a{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:44px;padding:10px 16px;font-weight:600;display:block}.ui-app .draft-notice{color:var(--warning);background:#fff5df;border-radius:6px;margin:12px 0;padding:8px 12px;font-size:13px}.ui-app .ui-section-label{letter-spacing:.04em;color:var(--muted);margin:24px 0 12px;font-size:13px}@media (width<=900px){.ui-brandbar{flex-wrap:wrap;gap:12px;padding:12px 16px}.ui-system-label{display:none}.ui-app .ui-menu-toggle{margin-left:auto;display:block}.ui-workspace{display:block}.ui-content{border:0}.ui-navigation{border-bottom:1px solid var(--line);background:#fff;max-height:none;padding:16px;display:none;position:static}.ui-navigation.is-open{display:block}.ui-navigation nav{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;display:grid}.ui-navigation section{margin:0}.ui-app :is(.header-bar,.admin-header,.signup-page>header){text-align:left;flex-wrap:wrap;align-items:flex-start;padding:24px 16px 8px}.ui-app :is(.page-body,.main-content,.content,.signup-page>main){padding:20px 16px}.ui-app :is(.header-bar .title,.referee-header-title){font-size:23px}.ui-app :is(.info-grid,.assignment-grid,.form-row,.form-grid,.stats-grid){grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.ui-app :is(.card,.info-card,.welcome-card,.entry-card,.records-section,.registration-card){padding:18px}.ui-app .table-wrapper{border-radius:8px}.ui-app .header-actions{gap:8px;width:100%}.ui-app h1{font-size:24px}.ui-app :is(.match-head,.section-head,.card-header){flex-wrap:wrap;gap:12px}.ui-app .team-info{overflow-wrap:anywhere}.ui-app .match-details{flex-wrap:wrap}.ui-app .form-actions button{flex:auto}.ui-app .modal-overlay{padding:10px}.ui-app :is(.modal-content,.form-modal,.review-modal,.edit-dialog){max-height:calc(100dvh - 20px)}.ui-app .auth-layout{margin:24px auto}.ui-app .referee-auth-page{padding:24px 16px}.ui-app .referee-auth-card{padding:24px}}.ui-app .detail-container{background:0 0;min-height:0}.ui-app .detail-container .subtitle{color:var(--muted)}.ui-app [data-unsaved]:after{content:"有未保存的修改";color:var(--warning);margin-top:12px;font-size:13px;display:block}.ui-app .signup-page button[aria-pressed=true]{background:var(--primary);color:#fff;border-color:var(--primary)}.ui-app .header-bar{justify-content:space-between;width:100%}.ui-app .referee-header-left{flex:1;justify-content:flex-start}.ui-app .welcome-section{text-align:left}.ui-app .action-section{box-shadow:none;background:0 0;border:0;justify-content:flex-start;gap:12px;margin:24px 0;padding:0;display:flex}.ui-app .signup-page p{margin:6px 0 12px}.ui-app .signup-page .toolbar{margin:16px 0}.ui-app #page-content :is(h1,h2,.header-bar .title)[tabindex="-1"]:focus{outline:none}.ui-app :is(.team-table-wrap,.external-main,.admin-team-page){max-width:100%}.ui-app .team-table-wrap{border:1px solid var(--line);border-radius:10px;overflow:auto}.ui-app .external-main{width:100%;margin:auto;padding:24px 28px}.ui-app .admin-team-page{padding:28px}.ui-app .summary-card.primary-card{background:var(--brand);color:#fff}.ui-app .summary-card.primary-card :is(.summary-label,.summary-value,.summary-hint){color:#fff}.ui-app :is(.external-overlay,.modal-mask){padding:16px}.ui-app .external-dialog{border-radius:14px;max-height:calc(100dvh - 32px);overflow:auto}.ui-app :is(.team-pagination,.admin-team-actions,.team-actions){flex-wrap:wrap;gap:12px}@media (width<=900px){.ui-app :is(.external-main,.admin-team-page){padding:20px 16px}.ui-app .header-bar .referee-header-left{flex-basis:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@layer legacy{.container[data-v-09a13439]{background:#fff;border-radius:8px;max-width:400px;margin:100px auto;padding:40px;box-shadow:0 2px 8px #0000001a}h2[data-v-09a13439]{text-align:center;color:#333;margin-bottom:30px}form div[data-v-09a13439]{margin-bottom:20px}label[data-v-09a13439]{color:#333;margin-bottom:8px;font-weight:500;display:block}input[data-v-09a13439]{border:1px solid #ddd;border-radius:4px;width:100%;padding:10px;font-size:14px}input[data-v-09a13439]:focus{border-color:#333;outline:none;box-shadow:0 0 0 3px #00000014}.button-group[data-v-09a13439]{gap:10px;display:flex}.button-group button[data-v-09a13439]{flex:1}*{box-sizing:border-box;margin:0;padding:0}body{color:#333;background-color:#f5f5f5;font-family:Arial,sans-serif}:root{--referee-bg:#0b1220;--referee-surface:#fffffff5;--referee-border:#94a3b859;--referee-text:#0f172a;--referee-muted:#64748b;--referee-primary:#2563eb;--referee-primary-hover:#1d4ed8;--referee-danger:#dc2626;--referee-radius-lg:18px;--referee-radius-md:12px}.referee-auth-page{background:radial-gradient(900px 500px at 15% 10%,#6366f140,#0000 60%),radial-gradient(700px 420px at 88% 18%,#2563eb40,#0000 65%),linear-gradient(160deg,#0b1220 0%,#0f1b34 45%,#0b1220 100%);justify-content:center;align-items:center;min-height:100vh;padding:28px 18px;display:flex}.referee-auth-card{background:var(--referee-surface);border:1px solid var(--referee-border);border-radius:var(--referee-radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:min(420px,96vw);padding:26px 24px 22px;box-shadow:0 20px 60px #0f172a52}.brand-slot{flex-direction:column;align-items:center;gap:10px;margin-bottom:18px;display:flex}.brand-logo{object-fit:contain;background:#0f172a0f;border:1px solid #94a3b859;border-radius:18px;width:76px;height:76px}.brand-title{color:var(--referee-text);text-align:center;font-size:18px;font-weight:800;line-height:1.25}.brand-subtitle{color:var(--referee-muted);text-align:center;font-size:13px}.referee-auth-card h2{text-align:center;color:var(--referee-text);margin:8px 0 18px;font-size:20px}.referee-form .form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.referee-form .form-group{margin-bottom:14px}.referee-checkbox-list{background:#0f172a08;border:1px solid #94a3b859;border-radius:12px;grid-template-columns:1fr;gap:10px;padding:8px 10px;display:grid}.referee-checkbox-item{color:#0f172ad9;align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}.referee-checkbox-item input[type=checkbox]{width:16px;height:16px}.referee-form label{color:#0f172ad9;margin:0 0 8px;font-size:13px;font-weight:700;display:block}.referee-form input[type=text],.referee-form input[type=password],.referee-form input[type=number],.referee-form input[type=date],.referee-form select,.referee-form textarea{width:100%;color:var(--referee-text);background:#fffffff2;border:1px solid #94a3b88c;border-radius:12px;padding:11px 12px;font-size:14px}.referee-form input:focus,.referee-form select:focus,.referee-form textarea:focus{border-color:#2563ebd9;outline:none;box-shadow:0 0 0 3px #2563eb2e}.referee-actions{gap:10px;margin-top:16px;display:flex}.referee-actions button{cursor:pointer;border:none;border-radius:12px;flex:1;padding:11px 14px;font-weight:800;transition:transform .12s,opacity .12s,background .12s}.referee-actions button:active{transform:translateY(1px)}.referee-actions .btn-primary{background:var(--referee-primary);color:#fff}.referee-actions .btn-primary:hover{background:var(--referee-primary-hover)}.referee-actions .btn-secondary{color:#0f172ad1;background:#0f172a0f;border:1px solid #94a3b873}.referee-actions .btn-secondary:hover{opacity:.95}.referee-link-row{text-align:center;color:#64748bf2;margin-top:16px;font-size:14px}.referee-link-row a{color:var(--referee-primary);font-weight:800;text-decoration:none}.referee-link-row a:hover{text-decoration:underline}.referee-header-left{align-items:center;gap:12px;display:flex}.brand-logo-sm{object-fit:contain;background:#ffffff29;border:1px solid #ffffff38;border-radius:10px;width:34px;height:34px}.referee-header-title{letter-spacing:.2px;font-weight:800}.referee-header-subtitle{color:#e2e8f0e6;margin-top:2px;font-size:12px}.container{background-color:#fff;border-radius:8px;max-width:700px;margin:40px auto;padding:20px;box-shadow:0 2px 5px #0000001a}h1,h2,h3{color:#333;margin-top:20px}label{color:#555;margin:8px 0 4px;font-weight:700;display:block}input[type=text],input[type=password],input[type=number],select,textarea{box-sizing:border-box;border:1px solid #ddd;border-radius:4px;width:100%;margin:8px 0;padding:10px;font-family:inherit;font-size:14px}input[type=text]:focus,input[type=password]:focus,input[type=number]:focus,select:focus,textarea:focus{border-color:#4caf50;outline:none;box-shadow:0 0 5px #4caf504d}textarea{resize:vertical;height:80px}button{color:#fff;cursor:pointer;background-color:#4caf50;border:none;border-radius:4px;width:100%;margin:8px 0;padding:10px;font-size:14px;font-weight:700}button:hover{background-color:#45a049}button.secondary{background-color:#2196f3}button.secondary:hover{background-color:#0b7dda}button.danger{background-color:#f44336}button.danger:hover{background-color:#da190b}.button-group{gap:10px;display:flex}.button-group button{flex:1}table{border-collapse:collapse;width:100%;margin-top:20px}th,td{text-align:center;border:1px solid #aaa;padding:10px}th{background-color:#f2f2f2;font-weight:700}tr:hover{background-color:#f9f9f9}.alert{border-radius:4px;margin:10px 0;padding:12px;display:block}.alert.show{display:block}.alert.success{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb}.alert.error{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb}.alert.info{color:#0c5460;background-color:#d1ecf1;border:1px solid #bee5eb}.checkbox-group{margin:10px 0}.checkbox-group label{margin-right:15px;font-weight:400;display:inline-block}.checkbox-group input[type=checkbox]{width:auto;margin-right:5px}.entry-buttons{gap:10px;margin-top:30px;display:flex}.entry-buttons button{flex:1;padding:15px;font-size:16px}.referee-item{background-color:#f9f9f9;border:1px solid #eee;border-radius:5px;margin:15px 0;padding:15px}.match-item{background-color:#f9f9f9;border-left:4px solid #4caf50;border-radius:4px;margin:10px 0;padding:15px}.error-text{color:#f44336;margin-top:-5px;font-size:12px}.success-text{color:#4caf50;margin-top:-5px;font-size:12px}.text-center{text-align:center}.mt-20{margin-top:20px}.mb-20{margin-bottom:20px}.vs-separator{align-items:center;gap:10px;margin:15px 0;display:flex}.vs-separator select{flex:1}.vs-separator span{color:#666;font-weight:700}:root{--primary-gradient:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--primary-color:#667eea;--primary-dark:#764ba2;--secondary-color:#f0f0f0;--text-primary:#333;--text-secondary:#666;--text-light:#999;--border-color:#e0e0e0;--bg-gray:#f5f5f5;--bg-light:#fafafa;--success-color:#4caf50;--warning-color:#ff9800;--danger-color:#e74c3c;--shadow-sm:0 2px 8px #0000001a;--shadow-md:0 4px 12px #00000026;--shadow-lg:0 8px 32px #0003;--radius-sm:6px;--radius-md:8px;--radius-lg:12px}.page-container{background:var(--bg-gray);flex-direction:column;min-height:100vh;display:flex}.header-bar{background:var(--primary-gradient);color:#fff;box-shadow:var(--shadow-sm);z-index:100;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex;position:sticky;top:0}.header-bar .title{font-size:1.3rem;font-weight:600}.header-actions{align-items:center;gap:.5rem;display:flex}.btn{border-radius:var(--radius-sm);cursor:pointer;border:none;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .3s}.btn-primary{background:var(--primary-gradient);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-secondary{background:var(--secondary-color);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:#e0e0e0;border-color:#999}.btn-small{padding:.4rem .8rem;font-size:.9rem}.btn-header{color:#fff;border-radius:var(--radius-sm);cursor:pointer;background:#fff3;border:1px solid #ffffff4d;padding:.5rem 1rem;font-size:.9rem;transition:all .3s}.btn-header:hover{background:#ffffff4d;border-color:#ffffff80}.card{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff;margin-bottom:1rem;padding:1.5rem}.card-header{border-bottom:2px solid var(--bg-gray);margin-bottom:1rem;padding-bottom:1rem}.card-title{color:var(--text-primary);margin:0;font-size:1.2rem;font-weight:600}.form-group{margin-bottom:1.25rem}.form-group label{color:var(--text-primary);margin-bottom:.5rem;font-size:.95rem;font-weight:600;display:block}.form-control{border:2px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-light);width:100%;padding:.75rem;font-size:.95rem;transition:all .3s}.form-control:focus{border-color:var(--primary-color);background:#fff;outline:none;box-shadow:0 0 0 3px #667eea1a}.table-wrapper{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff;overflow-x:auto}table{border-collapse:collapse;background:#fff;width:100%}thead{background:linear-gradient(135deg,#667eea15 0%,#764ba215 100%)}th{text-align:left;border-bottom:2px solid var(--border-color);color:var(--text-primary);white-space:nowrap;padding:1rem;font-size:.95rem;font-weight:600}td{color:var(--text-secondary);border-bottom:1px solid #f0f0f0;padding:1rem;font-size:.95rem}tbody tr:hover{background:var(--bg-light)}tbody tr:last-child td{border-bottom:none}.tabs{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff;gap:.5rem;margin-bottom:1.5rem;padding:.5rem;display:flex}.tab-button{cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-sm);background:0 0;border:2px solid #0000;flex:1;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .3s}.tab-button:hover{color:var(--primary-color);background:#667eea0d}.tab-button.active{color:#fff;background:var(--primary-gradient);font-weight:600;box-shadow:0 2px 8px #667eea4d}.status-badge{border-radius:20px;padding:.3rem .8rem;font-size:.85rem;font-weight:500;display:inline-block}.status-pending{color:#e65100;background:#fff3e0;border-radius:20px;padding:.3rem .8rem;font-size:.85rem;font-weight:500}.status-done{color:#2e7d32;background:#e8f5e9;border-radius:20px;padding:.3rem .8rem;font-size:.85rem;font-weight:500}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{border-radius:var(--radius-lg);width:90%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-lg);background:#fff;animation:.3s slideUp;overflow:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.modal-header{border-bottom:2px solid var(--bg-gray);background:var(--primary-gradient);color:#fff;justify-content:space-between;align-items:center;padding:1.75rem 2rem;display:flex}.modal-title{margin:0;font-size:1.4rem;font-weight:600}.modal-close{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;padding:0;font-size:1.8rem;line-height:1;transition:all .3s;display:flex}.modal-close:hover{background:#ffffff4d;transform:rotate(90deg)}.modal-body{max-height:calc(90vh - 200px);padding:2rem;overflow-y:auto}.empty-state{text-align:center;color:var(--text-light);padding:3rem 1rem;font-size:1rem}.loading-state{text-align:center;color:var(--text-secondary);padding:3rem 1rem;font-size:1rem}@media (width<=768px){.header-bar{text-align:center;flex-direction:column;gap:1rem}.tabs{flex-direction:column}.tab-button{width:100%}}}
