.auth-card{display:grid;gap:1rem}.auth-form{display:grid;gap:.75rem;max-width:520px}.auth-form label{font-weight:700;font-size:.9rem}.auth-form input{width:100%;min-height:44px;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.7rem .85rem;background:var(--color-surface);color:var(--color-text);font:inherit}.auth-form input:focus{outline:2px solid color-mix(in srgb,var(--color-primary) 28%,transparent);border-color:var(--color-primary)}.auth-actions{display:flex;flex-wrap:wrap;gap:.75rem}.auth-session-summary{display:grid;gap:.65rem}.auth-message{margin:0;padding:.8rem 1rem;border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text)}.button:disabled{cursor:not-allowed;opacity:.55}@media(max-width:640px){.auth-form{max-width:none}.auth-actions .button{flex:1 1 100%}}.notification-center__header{align-items:flex-start}.notification-center__title-row{display:flex;align-items:center;gap:.75rem}.notification-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:999px;background:var(--color-bg);font-size:1rem}.notification-bell strong{position:absolute;inset-inline-start:-.35rem;top:-.35rem;min-width:1.15rem;height:1.15rem;padding-inline:.25rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-danger);color:#fff;font-size:.62rem;line-height:1}.notification-list{display:grid;gap:.65rem}.notification-item{display:grid;grid-template-columns:1fr auto;align-items:stretch;border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;background:var(--color-surface)}.notification-item--unread{border-color:color-mix(in srgb,var(--color-primary) 45%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 5%,white)}.notification-item__content{display:grid;grid-template-columns:auto 1fr;gap:.8rem;align-items:flex-start;width:100%;padding:.9rem 1rem;border:0;background:transparent;color:inherit;text-align:right;cursor:pointer}.notification-item__content>span:last-child{display:grid;gap:.25rem}.notification-item__content strong{font-size:.92rem}.notification-item__content span span{color:var(--color-text-muted);font-size:.84rem;line-height:1.5}.notification-item__content small{color:var(--color-text-muted);font-size:.7rem}.notification-item__dot{width:.62rem;height:.62rem;margin-top:.35rem;border-radius:999px;background:#94a3b8}.notification-item__dot--high,.notification-item__dot--critical{background:var(--color-danger)}.notification-item__dot--normal{background:var(--color-primary)}.notification-item__archive{width:2.5rem;border:0;border-inline-start:1px solid var(--color-border);background:transparent;color:var(--color-text-muted);cursor:pointer;font-size:1.25rem}.notification-item__archive:hover{background:#fef2f2;color:var(--color-danger)}.notification-center__error{margin:0 0 1rem;padding:.75rem 1rem;border-radius:var(--radius-sm);background:#fef2f2;color:var(--color-danger)}@media(max-width:640px){.notification-center__header{align-items:stretch;flex-direction:column}.notification-center__header .button{width:100%}}.app-shell{display:flex;flex-direction:column;min-height:100%}.app-header{padding:1.5rem 2rem;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.app-header__brand{display:flex;align-items:center;gap:1rem;max-width:1100px;margin:0 auto}.app-header__logo{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-size:1.4rem;font-weight:700;flex-shrink:0}.app-header h1{font-size:1.4rem}.app-main{flex:1;max-width:1100px;width:100%;margin:0 auto;padding:2rem;display:flex;flex-direction:column;gap:2rem}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.5rem;box-shadow:var(--shadow-card)}.card__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.card--placeholder h3{font-size:1.05rem}.card--placeholder p{margin-top:.5rem}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem 1.5rem;margin:0 0 1.25rem}.status-grid dt{font-size:.8rem;color:var(--color-text-muted);margin-bottom:.2rem}.status-grid dd{margin:0;font-weight:600;word-break:break-all}.status-badge{display:inline-flex;align-items:center;padding:.3rem .8rem;border-radius:var(--radius-pill);font-size:.8rem;font-weight:700}.status-badge--loading{background:#eef2ff;color:#4338ca}.status-badge--up{background:#ecfdf5;color:var(--color-success)}.status-badge--down{background:#fef2f2;color:var(--color-danger)}.button{border:none;border-radius:var(--radius-sm);padding:.55rem 1.1rem;font-size:.85rem;font-weight:600;cursor:pointer}.button--secondary{background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text)}.button--secondary:hover{background:#eef0f3}.section__title{font-size:1.1rem;margin-bottom:1rem}.grid{display:grid;gap:1rem}.grid--three{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.pill{font-size:.75rem;font-weight:600;padding:.2rem .6rem;border-radius:var(--radius-pill);background:#fff7ed;color:var(--color-warning);white-space:nowrap}.app-footer{text-align:center;padding:1.5rem;border-top:1px solid var(--color-border)}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.section-heading .section__title{margin-bottom:.3rem}.business-selector{display:flex;gap:.75rem;overflow-x:auto;padding:.1rem 0 .8rem;margin-bottom:1rem;scroll-snap-type:x proximity}.business-chip{min-width:200px;display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;padding:.9rem 1rem;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:right;scroll-snap-align:start}.business-chip span{color:var(--color-text-muted);font-size:.78rem}.business-chip--active{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 15%,transparent)}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.catalog-item h3{font-size:1rem}.catalog-price{color:var(--color-primary);font-weight:800;white-space:nowrap}.catalog-options{list-style:none;margin:1rem 0 0;padding:0;border-top:1px solid var(--color-border)}.catalog-options li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--color-border);font-size:.82rem}.empty-state{color:var(--color-text-muted);text-align:center;padding:2rem 1.25rem}@media(max-width:640px){.app-header,.app-main{padding-inline:1rem}.section-heading{align-items:center}.business-chip{min-width:175px}}.error-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center}.error-page__code{font-size:clamp(4rem,14vw,8rem);line-height:1;font-weight:800;color:var(--color-primary);opacity:.18}.error-page h1{font-size:clamp(1.5rem,4vw,2.25rem)}.button--primary{display:inline-flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;text-decoration:none}.button--primary:hover{filter:brightness(.92)}.app-footer{font-size:.8rem}:root{--color-bg: #f7f8fa;--color-surface: #ffffff;--color-border: #e2e5ea;--color-text: #1c2230;--color-text-muted: #6b7280;--color-primary: #0f766e;--color-primary-dark: #0b5c56;--color-success: #0f9d58;--color-danger: #dc2626;--color-warning: #b45309;--radius-sm: 8px;--radius-md: 14px;--radius-pill: 999px;--shadow-card: 0 1px 2px rgba(16, 24, 40, .04), 0 1px 3px rgba(16, 24, 40, .06);--font-family: "Segoe UI", "Tahoma", "Cairo", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-family);background:var(--color-bg);color:var(--color-text);line-height:1.6}h1,h2,h3{margin:0;font-weight:700}p{margin:0}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit}.muted{color:var(--color-text-muted);font-size:.9rem}
