:root{--brand-primary: #1b2547;--brand-primary-light: #2a3a78;--brand-accent: #f2b53c;--surface-bg: #f7f8fb;--surface-card: #ffffff;--surface-border: #e3e6ee;--text: #11151f;--text-muted: #6b7280;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "Poppins", "Montserrat", "Sora", sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:var(--font-body);color:var(--text);background:var(--surface-bg);-webkit-font-smoothing:antialiased}.app{max-width:1100px;margin:0 auto;padding:16px 16px 48px}.app__header{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:16px;background:linear-gradient(135deg,var(--brand-primary-light),var(--brand-primary));color:var(--surface-bg);border-radius:16px}.app__header h1{font-family:var(--font-display);font-size:22px;margin:0}.app__header .tagline{font-size:13px;opacity:.85;margin:0}.app__logo{width:40px;height:40px;border-radius:10px}.panel{background:var(--surface-card);border:1px solid var(--surface-border);border-radius:16px;padding:16px;margin-bottom:16px}.panel__title{font-family:var(--font-display);font-size:16px;margin:0 0 12px}.grid{display:grid;gap:12px}.grid--metrics{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.grid--cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.metric{border:1px solid var(--surface-border);border-radius:10px;padding:12px}.metric__label{font-size:12px;color:var(--text-muted);margin:0 0 4px}.metric__value{font-size:20px;font-weight:600;margin:0}.card{border:1px solid var(--surface-border);border-radius:12px;padding:12px}.card__header{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.card h3{font-size:15px;margin:0}.muted{color:var(--text-muted);font-size:13px}.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.row--between{justify-content:space-between}button{font:inherit;cursor:pointer;border-radius:999px;border:1px solid var(--brand-primary);background:var(--brand-primary);color:var(--surface-bg);padding:8px 14px}button.secondary{background:transparent;color:var(--brand-primary)}button[aria-pressed=true]{background:var(--brand-accent);border-color:var(--brand-accent);color:var(--text)}button:disabled{opacity:.45;cursor:not-allowed}.banner{background:#fff7e6;border:1px solid var(--brand-accent);border-radius:10px;padding:10px 12px;font-size:13px;margin-bottom:16px}.app__title{flex:1}.time-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.time-controls__hint{margin:12px 0 0}kbd{font-family:var(--font-body);font-size:11px;background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:6px;padding:1px 6px}.tray{position:relative}.tray__bell{position:relative;font-size:18px;padding:8px 12px;background:#ffffff1f;border-color:#ffffff4d;color:var(--surface-bg)}.tray__badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#e5484d;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center}.tray__panel{position:absolute;top:calc(100% + 8px);right:0;width:min(360px,90vw);max-height:70vh;overflow-y:auto;background:var(--surface-card);color:var(--text);border:1px solid var(--surface-border);border-radius:12px;box-shadow:0 12px 32px #11151f2e;z-index:20;padding:8px}.tray__head{display:flex;justify-content:space-between;align-items:center;padding:4px 8px 8px}.tray__clear,.tray__bell.secondary{font-size:12px;padding:4px 10px}.tray__empty{padding:12px 8px;margin:0}.tray__list{list-style:none;margin:0;padding:0}.tray__item{display:flex;gap:8px;padding:8px;border-top:1px solid var(--surface-border)}.tray__dot{flex:0 0 auto;width:8px;height:8px;border-radius:999px;margin-top:6px}.tray__body{min-width:0}.tray__title{font-weight:600;font-size:14px}.tray__detail{font-size:13px;margin-top:2px}.tray__date{margin-top:4px;font-size:11px}.toaster{position:fixed;bottom:16px;right:16px;display:flex;flex-direction:column;gap:8px;z-index:30;max-width:min(360px,90vw)}.toast{position:relative;background:var(--surface-card);border:1px solid var(--surface-border);border-inline-start:4px solid var(--brand-accent);border-radius:10px;box-shadow:0 8px 24px #11151f2e;padding:10px 32px 10px 12px}.toast__title{font-weight:600;font-size:14px}.toast__detail{font-size:13px;margin-top:2px;color:var(--text-muted)}.toast__close{position:absolute;top:4px;right:4px;width:24px;height:24px;padding:0;font-size:16px;line-height:1;border:none;background:transparent;color:var(--text-muted)}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--surface-border)}
