:root{--font-main: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--color-primary: #1976d2;--color-primary-dark: #145ca5;--color-primary-soft: #e3f2fd;--color-header-grad-2: #1565c0;--color-bg: #f5f5f5;--color-card: #ffffff;--color-border: #e0e0e0;--color-text-main: #222222;--color-text-muted: #666666;--color-success: #2e7d32;--color-error: #c62828;--color-table-head: #f2f2f2;--color-table-row: #ffffff;--color-table-row-alt: #fafafa;--color-table-hover: #e8f2ff;--color-input-bg: #ffffff;--color-input-border: #cccccc;--color-btn-secondary-bg: #ffffff;--color-btn-secondary-text: #1976d2;--color-btn-secondary-border: #1976d2;--color-cup-bg: #f6f8fc;--color-cup-border: #dbe3ef;--color-cup-item-bg: #ffffff;--color-cup-item-border: #dfe6f2;--color-cup-item-hover: #8ab6f9;--font-size-base: 14px;--font-size-sm: 13px;--font-size-lg: 1.4rem;--radius-card: 12px}[data-theme=dark]{--color-primary: #4fa3ff;--color-primary-dark: #2d7dcc;--color-primary-soft: #1d2b3b;--color-header-grad-2: #1f4b87;--color-bg: #0f141a;--color-card: #151c24;--color-border: #2a3440;--color-text-main: #e7edf5;--color-text-muted: #a8b3c2;--color-success: #3bb273;--color-error: #ff6b6b;--color-table-head: #1f2a36;--color-table-row: #151c24;--color-table-row-alt: #19222c;--color-table-hover: #223046;--color-input-bg: #111821;--color-input-border: #2c3a4a;--color-btn-secondary-bg: #121a23;--color-btn-secondary-text: #cfe4ff;--color-btn-secondary-border: #375a8a;--color-cup-bg: #101821;--color-cup-border: #243244;--color-cup-item-bg: #151c24;--color-cup-item-border: #273241;--color-cup-item-hover: #4fa3ff}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font-main);background-color:var(--color-bg);color:var(--color-text-main);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}button,input,select,textarea{font-family:inherit}.page-shell{min-height:100vh;background-color:var(--color-bg)}.content-container{max-width:1200px;margin:24px auto 40px;padding:0 16px 32px}.card{background:var(--color-card);border-radius:var(--radius-card);padding:20px 24px;box-shadow:0 4px 12px #0000000f}.card.compact{padding:16px 20px}.section-title{margin:0 0 16px;color:var(--color-text-main);font-size:1.2rem;font-weight:600}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;border:1px solid transparent;background:var(--color-primary);color:#fff;font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:background-color .15s ease,transform .05s ease,box-shadow .15s ease}.btn:hover:not(:disabled){background-color:var(--color-primary-dark);box-shadow:0 2px 8px #00000026}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.7;cursor:not-allowed;box-shadow:none}.btn-sm{padding:6px 12px;font-size:var(--font-size-sm);font-weight:600}.btn-primary{background:var(--color-primary);color:#fff}.btn-secondary{background:var(--color-btn-secondary-bg);color:var(--color-btn-secondary-text);border:1px solid var(--color-btn-secondary-border)}.btn-secondary:hover:not(:disabled){background:var(--color-primary-soft)}.btn-ghost{background:#ffffff1a;border:1px solid rgba(255,255,255,.3);color:#fff}.btn-ghost:hover:not(:disabled){background:#fff3}.btn-danger{background:#c62828;color:#fff}.btn-danger:hover:not(:disabled){background:#b71c1c}.btn-success{background:#10b981;color:#fff}.btn-success:hover:not(:disabled){background:#059669}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:600}.badge-success{background:#e8f5e9;color:#2e7d32}.badge-danger{background:#ffebee;color:#c62828}.status{margin-top:6px;font-size:var(--font-size-sm);color:var(--color-text-muted)}.status.error{color:var(--color-error);font-weight:600}.status.ok{color:var(--color-success);font-weight:600}.table{width:100%;border-collapse:collapse;background-color:var(--color-card);border-radius:8px;overflow:hidden;font-size:var(--font-size-base)}.table th,.table td{padding:12px 10px;border-bottom:1px solid var(--color-border)}.table th{background-color:var(--color-table-head);text-align:left;font-weight:700}.table tr:nth-child(2n) td{background-color:var(--color-table-row-alt)}.table tr:hover td{background-color:var(--color-table-hover)}
