:root{--color-ink: #1e2a30;--color-ink-muted: rgba(30, 42, 48, .72);--color-surface: #f7f3ea;--color-surface-glass: rgba(255, 252, 245, .72);--color-accent-green: #3f625a;--color-accent-warm: rgba(245, 202, 120, .35);--color-stale: #8b4c2a;--radius-lg: 24px;--radius-md: 16px;--shadow-soft: 0 12px 40px rgba(36, 48, 54, .08);font-family:IBM Plex Sans,Segoe UI,system-ui,sans-serif;color:var(--color-ink);background:radial-gradient(circle at top right,rgba(243,176,96,.22),transparent 38%),linear-gradient(180deg,#eee4d2,#ddd0b7);font-size:clamp(1rem,.95rem + .35vw,1.125rem);line-height:1.45}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh}#root{min-height:100vh}.status-screen{min-height:100vh;display:grid;place-items:center;padding:2rem;font-size:clamp(1.25rem,3vw,2rem);font-weight:500;color:var(--color-ink-muted);text-align:center;max-width:28ch}html:has(main.dashboard-shell){background:#06080b}.dashboard-shell{--color-ink: #e9eef2;--color-ink-muted: rgba(233, 238, 242, .78);--color-surface: #0c0f14;--color-surface-glass: rgba(18, 22, 30, .88);--color-accent-green: #5eead4;--color-accent-warm: rgba(251, 191, 36, .16);--color-stale: #fbbf24;--shadow-soft: 0 20px 56px rgba(0, 0, 0, .55);color:var(--color-ink);background:radial-gradient(ellipse 100% 70% at 100% -10%,rgba(56,120,140,.18),transparent 55%),radial-gradient(ellipse 70% 50% at -5% 110%,rgba(140,90,40,.1),transparent 50%),linear-gradient(165deg,#020203,#0a0d12 38%,#06080b);min-height:100vh;max-width:min(1320px,100%);margin:0 auto;padding:clamp(16px,3vw,28px);display:flex;flex-direction:column;gap:clamp(14px,2vw,22px);font-size:clamp(1.0625rem,.95rem + .65vw,1.3rem);line-height:1.5;text-rendering:optimizeLegibility}@media(min-width:768px){.dashboard-shell{font-size:clamp(1.125rem,1rem + .85vw,1.45rem);padding:clamp(22px,3.2vw,36px);gap:clamp(18px,2.4vw,28px)}.dashboard-shell .top-band,.dashboard-shell .bottom-band{gap:clamp(18px,2.2vw,26px)}}@media(prefers-reduced-motion:reduce){.dashboard-shell *{transition-duration:.01ms!important}.dashboard-shell .date-time-section__time,.dashboard-shell .agenda-panel h1.agenda-panel__headline{text-shadow:none}}.dashboard-shell .panel{padding:clamp(20px,2.8vw,28px);background:var(--color-surface-glass);border:1px solid rgba(255,255,255,.09);box-shadow:var(--shadow-soft),inset 0 1px #ffffff0a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.dashboard-shell .eyebrow{font-size:clamp(.78rem,.68rem + .4vw,.92rem);letter-spacing:.1em;opacity:.88;color:#e9eef2b8}.dashboard-shell .date-time-section__watch{flex:1;min-height:0;background:radial-gradient(120% 90% at 50% 15%,#ffffff14,#00000047);border-color:#ffffff24;box-shadow:inset 0 3px 20px #00000073,0 12px 32px #00000059}.dashboard-shell .date-time-section__date{font-size:clamp(.95rem,2vw + .35rem,1.2rem);font-weight:600}.dashboard-shell .date-time-section__hijri{font-size:clamp(.78rem,1.45vw,.95rem);color:var(--color-ink-muted)}.dashboard-shell .date-time-section__time{font-size:clamp(2.25rem,5vw + .75rem,3.35rem);letter-spacing:.06em;text-shadow:0 0 48px rgba(94,234,212,.22)}.dashboard-shell .date-time-section__meta{border-top-color:#ffffff1a}.dashboard-shell .date-time-section.panel{display:flex;flex-direction:column;min-height:0;padding:0;background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.dashboard-shell .forecast-current__icon{width:clamp(4rem,9vw,5.5rem);height:auto;color:#e9eef2d9}.dashboard-shell .forecast-current__temp{font-size:clamp(2.1rem,5vw + .4rem,3.25rem)}.dashboard-shell .forecast-current__cond{font-size:clamp(1.05rem,2.2vw,1.3rem);color:var(--color-ink-muted)}.dashboard-shell .forecast-current__hl{font-size:clamp(.92rem,1.6vw,1.05rem);color:var(--color-ink-muted)}.dashboard-shell .forecast-list{flex-wrap:nowrap;width:max-content}.dashboard-shell .forecast-list__icon{width:clamp(1.4rem,3vw,1.85rem);height:auto;color:#e9eef2cc}.dashboard-shell .forecast-list li{flex:0 0 auto;min-width:3.15rem;padding:5px 3px 6px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.dashboard-shell .forecast-list__label{font-size:clamp(.62rem,1.15vw,.76rem)}.dashboard-shell .forecast-list__temp{font-size:clamp(.72rem,1.5vw,.88rem)}.dashboard-shell .agenda-panel h1.agenda-panel__headline{font-size:clamp(1.45rem,3.8vw + .35rem,2.15rem);font-weight:700;line-height:1.2;color:var(--color-ink);border-bottom-width:2px;border-bottom-color:#ffffff1f;padding-bottom:.85rem;margin-bottom:.85rem;text-shadow:0 0 40px rgba(255,255,255,.06)}.dashboard-shell .agenda-list li{grid-template-columns:minmax(10.5rem,15rem) 1fr;gap:14px 20px}.dashboard-shell .agenda-list__time{font-size:clamp(1.05rem,2.1vw,1.25rem);padding-top:4px;color:#5eead4eb}.dashboard-shell .agenda-list__body strong{font-size:clamp(1.2rem,2.8vw,1.55rem);font-weight:600;line-height:1.25}.dashboard-shell .agenda-list__loc{font-size:clamp(.98rem,2vw,1.12rem);color:var(--color-ink-muted)}.dashboard-shell .panel-empty{font-size:1.05em;color:var(--color-ink-muted)}.dashboard-shell .task-list__row{color:inherit;font:inherit;text-align:left;cursor:pointer;width:100%;border:none;background:transparent;padding:6px 2px;margin:-6px -2px;border-radius:10px;transition:background .15s ease}.dashboard-shell .task-list__row:hover:not(:disabled){background:#ffffff0f}.dashboard-shell .task-list__row:focus-visible{outline:2px solid rgba(94,234,212,.65);outline-offset:2px}.dashboard-shell .task-list__row:disabled{opacity:.65;cursor:wait}.dashboard-shell .task-list__check{border-color:#ffffff59;color:#10b981f2}.dashboard-shell .task-list__check--on{background:#10b98138;border-color:#34d3998c}.dashboard-shell .task-list__row--done .task-list__label{text-decoration:line-through;text-decoration-thickness:1px;opacity:.72}.dashboard-shell .task-list__label{font-size:clamp(1.05rem,2vw,1.2rem);font-weight:500}.dashboard-shell .task-list__assignee{font-size:clamp(.98rem,1.8vw,1.1rem);color:var(--color-ink-muted)}.dashboard-shell .task-list li{border-bottom-color:#ffffff14}.dashboard-shell .note-card{font-size:clamp(1.02rem,2vw,1.15rem);line-height:1.45;padding:16px 18px;background:#fbbf241f;border:1px solid rgba(251,191,36,.22);color:var(--color-ink)}.dashboard-shell .stale-badge{font-size:clamp(.82rem,1.4vw,.95rem);padding:8px 14px;color:#fde68a;background:#fbbf241f;border-color:#fbbf2459}.dashboard-shell .forecast-strip{scrollbar-color:rgba(255,255,255,.2) transparent}.dashboard-shell .prayer-times-grid__item{background:#ffffff0d;border-color:#ffffff1a}.dashboard-shell .prayer-times-grid__item--next{border-color:#5eead473;background:#5eead417;box-shadow:0 0 32px #5eead424}.dashboard-shell .prayer-times-grid__time{font-size:clamp(1.15rem,2.5vw,1.5rem)}@media(min-width:640px){.dashboard-shell .prayer-times-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.date-time-section.panel{display:flex;flex-direction:column;min-height:0;padding:0;background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.date-time-section__watch{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.2rem;min-height:0;width:100%;max-width:min(100%,19rem);margin-inline:auto;padding:clamp(14px,2.2vw,22px) clamp(16px,3vw,26px) clamp(16px,2.5vw,24px);border-radius:9999px;background:#ffffff47;border:1px solid rgba(255,255,255,.45);box-shadow:inset 0 2px 14px #ffffff59,inset 0 -8px 20px #1e2a300f}.date-time-section__label{margin:0 0 .15rem}.date-time-section__meta{display:flex;flex-direction:column;gap:.35rem;align-items:center;margin-top:.35rem;padding-top:.55rem;width:100%;max-width:17rem;border-top:1px solid rgba(30,42,48,.1)}.date-time-section__date{margin:0;font-size:clamp(.88rem,1.85vw,1.05rem);font-weight:600;line-height:1.25;max-width:100%}.date-time-section__hijri{margin:0;font-size:clamp(.75rem,1.45vw,.88rem);font-weight:500;line-height:1.3;color:var(--color-ink-muted)}.date-time-section__hijri-label{text-transform:uppercase;letter-spacing:.1em;font-size:.72em;font-weight:600;opacity:.75}.date-time-section__time{margin:0;font-size:clamp(1.75rem,4.5vw + .5rem,2.65rem);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.05em;color:var(--color-accent-green);line-height:1}.date-time-section__time time{display:inline-block}.header-band{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-end;gap:16px;flex-shrink:0}.header-band__intro{flex:1;min-width:min(100%,240px)}.stale-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.stale-badge{display:inline-block;font-size:.8rem;font-weight:500;color:var(--color-stale);background:#f5dcc88c;border:1px solid rgba(139,76,42,.22);border-radius:999px;padding:6px 12px}.top-band{display:flex;flex-direction:column;gap:16px;flex-shrink:0}.top-band__row{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr);gap:16px;align-items:stretch;align-content:start}.prayer-band{width:100%;min-width:0;flex-shrink:0}.prayer-times-panel{width:100%}.bottom-band{display:grid;gap:16px;grid-template-columns:1.35fr 1fr;align-items:start;min-height:0}.prayer-times-panel__head{margin-bottom:.65rem}.prayer-times-panel__meta{margin:.15rem 0 0;font-size:clamp(.72rem,1.25vw,.88rem);color:var(--color-ink-muted);line-height:1.35}.prayer-times-grid{list-style:none;margin:0;padding:0;display:grid;width:100%;grid-template-columns:repeat(auto-fit,minmax(5.75rem,1fr));gap:10px}.prayer-times-grid__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:4.5rem;padding:12px 8px;border-radius:var(--radius-md);background:#ffffff1f;border:1px solid rgba(30,42,48,.1)}.prayer-times-grid__item--next{border-color:#3f625a73;background:#3f625a1f;box-shadow:0 4px 20px #3f625a1f}.prayer-times-grid__label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--color-ink-muted);text-align:center}.prayer-times-grid__time{font-size:clamp(1.05rem,2.2vw,1.35rem);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--color-ink)}@media(max-width:820px){.top-band__row,.bottom-band{grid-template-columns:1fr}}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:600;opacity:.62;margin:0 0 .25rem}.agenda-panel h1.agenda-panel__headline{margin:0 0 1rem;padding-bottom:1rem;border-bottom:1px solid rgba(30,42,48,.12);font-size:.95rem;font-weight:500;line-height:1.35;color:var(--color-ink-muted)}.agenda-panel .agenda-list{padding-top:4px}.agenda-panel__empty{margin-top:.25rem}.panel{background:var(--color-surface-glass);border-radius:var(--radius-lg);padding:clamp(18px,2.5vw,22px);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.35);box-shadow:var(--shadow-soft)}.top-band .date-time-section{min-width:0;align-self:stretch;height:100%}.forecast-panel{min-width:0}.forecast-panel__main{display:flex;flex-direction:column;align-items:stretch;gap:12px 16px}.forecast-panel .forecast-current{display:grid;grid-template-columns:auto 1fr;gap:12px 14px;align-items:center;flex:0 0 auto;width:100%;max-width:min(100%,22rem);margin:0}.forecast-current__icon{color:var(--color-ink-muted);flex-shrink:0}.forecast-current__body{display:flex;flex-direction:column;gap:4px;min-width:0}.forecast-current__temp{font-size:clamp(1.65rem,4vw,2.1rem);font-weight:700;letter-spacing:-.03em;line-height:1}.forecast-current__cond{font-size:1rem;color:var(--color-ink-muted)}.forecast-current__hl{font-size:.85rem;color:var(--color-ink-muted)}.forecast-strip{width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;padding:2px 0 8px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.panel-empty{margin:.5rem 0 0;font-size:.95rem;color:var(--color-ink-muted)}.agenda-list,.task-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}.forecast-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:row;flex-wrap:nowrap;gap:6px 8px;width:max-content;max-width:none}.agenda-list li{display:grid;grid-template-columns:minmax(8.5rem,11.5rem) 1fr;align-items:start;gap:12px 16px}.forecast-list li{display:flex;flex:0 0 auto;flex-direction:column;align-items:center;justify-content:flex-start;gap:1px;min-width:3.15rem;max-width:4.25rem;padding:5px 3px 6px;background:#ffffff73;border-radius:10px;border:1px solid rgba(255,255,255,.5)}.forecast-list__icon{color:var(--color-ink-muted);flex-shrink:0}.forecast-list__mid{display:flex;flex-direction:column;align-items:center;gap:0;text-align:center;min-width:0}.forecast-list__label{font-weight:700;font-variant-numeric:tabular-nums;font-size:.68rem;line-height:1.15}.forecast-list__temp{font-size:.82rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1}.agenda-list__time{font-variant-numeric:tabular-nums;font-weight:600;color:var(--color-ink-muted);padding-top:2px;white-space:nowrap}.agenda-list__body strong{font-size:1.05rem;font-weight:600}.agenda-list__loc{margin:4px 0 0;font-size:.88rem;color:var(--color-ink-muted)}.note-card{margin-top:14px;padding:14px 16px;border-radius:var(--radius-md);background:var(--color-accent-warm);border:1px solid rgba(180,130,60,.15);font-size:.98rem;line-height:1.4}.task-list li{padding:4px 0;border-bottom:1px solid rgba(30,42,48,.08)}.task-list__row{display:flex;align-items:flex-start;gap:10px;width:100%;box-sizing:border-box}.task-list__check{flex-shrink:0;width:1.35rem;height:1.35rem;margin-top:2px;border-radius:6px;border:2px solid rgba(30,42,48,.35);display:grid;place-items:center;font-size:.85rem;font-weight:700;line-height:1}.task-list__main{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;flex:1;min-width:0}.task-list__row--done .task-list__label{text-decoration:line-through;opacity:.75}.task-list__label{font-weight:500}.task-list__assignee{font-size:.88rem;color:var(--color-ink-muted);font-weight:500}.task-list li:last-child{border-bottom:none}.admin-shell{max-width:32rem;margin:0 auto;padding:clamp(20px,4vw,40px);min-height:100vh}.admin-title{margin:0 0 .5rem;font-size:1.5rem;font-weight:700}.admin-muted{margin:0 0 1.25rem;color:var(--color-ink-muted);font-size:.95rem}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:1.25rem}.admin-form{display:flex;flex-direction:column;gap:12px}.admin-label{display:flex;flex-direction:column;gap:6px;font-size:.85rem;font-weight:600}.admin-input{border:1px solid rgba(30,42,48,.2);border-radius:10px;padding:10px 12px;font:inherit;background:#ffffffd9}.admin-input--grow{flex:1;min-width:0}.admin-row{display:flex;gap:10px;margin-bottom:1.25rem}.admin-row--add{flex-wrap:wrap;align-items:stretch}.admin-btn{border:1px solid rgba(30,42,48,.2);border-radius:10px;padding:10px 14px;font:inherit;font-weight:600;background:#ffffffbf;cursor:pointer}.admin-btn--primary{background:var(--color-accent-green);color:#f7f3ea;border-color:transparent}.admin-btn--danger{color:#7a1e1e;border-color:#7a1e1e59;font-size:.85rem;padding:6px 10px}.admin-error{margin:0;color:#7a1e1e;font-size:.9rem}.admin-task-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.admin-task{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px;background:#fffcf5b8;border:1px solid rgba(255,255,255,.35)}.admin-task-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.admin-assignee{font-size:.88rem;padding:8px 10px;max-width:100%}.admin-task-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;min-width:0}.admin-task-done{text-decoration:line-through;opacity:.7}
