:root{--color-bg: #f6f6fb;--color-surface: #ffffff;--color-border: #e7e7f2;--color-text: #1f2033;--color-text-dim: #6b6d84;--color-primary: #4f46e5;--color-primary-dim: #eeecfd;--color-good: #178a5f;--color-good-bg: #e5f6ee;--color-watch: #b45c1c;--color-watch-bg: #fdf0e2;--color-bank: #6d28d9;--color-bank-bg: #f1eafd;--color-danger: #b3261e;--radius-lg: 20px;--radius-md: 14px;--radius-sm: 10px;--shadow-card: 0 1px 2px rgba(30, 30, 60, .04), 0 8px 24px rgba(30, 30, 60, .06);color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-bg);color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}#root{max-width:720px;margin:0 auto;padding:0 16px 96px;min-height:100vh}h1,h2,h3,p{margin:0}button{font-family:inherit}.app-header{display:flex;align-items:center;justify-content:space-between;padding:20px 0 12px;gap:12px}.app-title{font-size:17px;font-weight:700;letter-spacing:-.01em}.nav-tabs{display:flex;gap:4px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;padding:4px;margin-bottom:20px}.nav-tab{flex:1;border:none;background:transparent;padding:9px 12px;border-radius:999px;font-size:14px;font-weight:600;color:var(--color-text-dim);cursor:pointer;transition:background .15s,color .15s}.nav-tab.active{background:var(--color-primary);color:#fff}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px;margin-bottom:16px}.card-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-dim);margin-bottom:10px}.timer-display{font-variant-numeric:tabular-nums;font-size:44px;font-weight:700;letter-spacing:-.01em;text-align:center;margin:6px 0 18px}.timer-sub{text-align:center;color:var(--color-text-dim);font-size:14px;margin-top:-10px;margin-bottom:18px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--radius-md);padding:12px 18px;font-size:15px;font-weight:700;cursor:pointer;transition:transform .05s ease,opacity .15s}.btn:active{transform:scale(.98)}.btn-block{width:100%}.btn-primary{background:var(--color-primary);color:#fff}.btn-stop{background:var(--color-text);color:#fff}.btn-secondary{background:var(--color-primary-dim);color:var(--color-primary)}.btn-ghost{background:transparent;color:var(--color-text-dim);border:1px solid var(--color-border)}.btn-danger{background:transparent;color:var(--color-danger);border:1px solid rgba(179,38,30,.25)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{padding:7px 12px;font-size:13px;border-radius:var(--radius-sm)}.progress-track{height:12px;border-radius:999px;background:#eef0f7;overflow:hidden}.progress-fill{height:100%;border-radius:999px;transition:width .3s ease}.row{display:flex;align-items:center;justify-content:space-between;gap:10px}.row+.row{margin-top:8px}.muted{color:var(--color-text-dim);font-size:13px}.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:700;white-space:nowrap}.badge-good{background:var(--color-good-bg);color:var(--color-good)}.badge-watch{background:var(--color-watch-bg);color:var(--color-watch)}.badge-bank{background:var(--color-bank-bg);color:var(--color-bank)}.bank-number{font-size:38px;font-weight:800;letter-spacing:-.01em}.bank-message{margin-top:8px;font-size:14px;color:var(--color-text-dim);line-height:1.45}.banner{border-radius:var(--radius-md);padding:14px 16px;margin-bottom:16px;display:flex;flex-direction:column;gap:10px;font-size:14px;line-height:1.4}.banner-info{background:var(--color-primary-dim);color:#362f8f}.banner-bank{background:var(--color-bank-bg);color:#4c1d95}.banner-actions{display:flex;gap:8px;flex-wrap:wrap}.week-day-list{display:flex;flex-direction:column;gap:6px;margin-top:14px}.week-day-row{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:var(--radius-sm);background:#fafafe;font-size:13px}.week-day-row.is-today{background:var(--color-primary-dim)}.section-heading{font-size:20px;font-weight:800;margin:4px 0 14px;letter-spacing:-.01em}.week-history-item{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px 16px;margin-bottom:10px;cursor:pointer}.week-history-header{display:flex;align-items:center;justify-content:space-between}.week-history-details{margin-top:12px;padding-top:12px;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:8px}.entry-row{display:flex;align-items:center;justify-content:space-between;font-size:13px;gap:8px}.entry-row-main{display:flex;flex-direction:column;gap:2px}.entry-actions{display:flex;gap:6px}.icon-btn{border:none;background:transparent;color:var(--color-text-dim);cursor:pointer;font-size:13px;padding:4px 6px;border-radius:6px}.icon-btn:hover{background:var(--color-border)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#14142859;display:flex;align-items:flex-end;justify-content:center;z-index:50}@media (min-width: 560px){.modal-backdrop{align-items:center}}.modal{background:var(--color-surface);width:100%;max-width:480px;border-radius:22px 22px 0 0;padding:22px;max-height:90vh;overflow-y:auto}@media (min-width: 560px){.modal{border-radius:var(--radius-lg)}}.modal-title{font-size:17px;font-weight:800;margin-bottom:16px}.field{margin-bottom:14px}.field label{display:block;font-size:12px;font-weight:700;color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.03em;margin-bottom:6px}.field input[type=text],.field input[type=date],.field input[type=number],.field input[type=time],.field select,.field textarea{width:100%;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--color-border);font-size:15px;background:var(--color-bg);color:var(--color-text)}.field-row{display:flex;gap:10px}.field-row .field{flex:1}.type-toggle{display:flex;gap:6px}.type-toggle button{flex:1;border:1px solid var(--color-border);background:var(--color-bg);padding:9px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;color:var(--color-text-dim);cursor:pointer}.type-toggle button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.modal-actions{display:flex;gap:10px;margin-top:18px}.empty-state{text-align:center;padding:30px 10px;color:var(--color-text-dim);font-size:14px}.checkbox-grid{display:flex;gap:6px;flex-wrap:wrap}.day-chip{border:1px solid var(--color-border);background:var(--color-bg);padding:8px 0;width:40px;border-radius:999px;font-size:12px;font-weight:700;cursor:pointer;color:var(--color-text-dim)}.day-chip.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.settings-actions{display:flex;gap:10px;flex-wrap:wrap}a.plain-link{color:var(--color-primary);font-weight:600}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center}.auth-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:28px 24px;width:100%;max-width:380px;text-align:left}
