:root{--maroon:#7a1f1f;--maroon-dark:#4d1010;--maroon-soft:#9b2d2d;--gold:#e8c547;--gold-soft:#f4d58d;--cream:#fbf6ee;--paper:#fffaf2;--ink:#2b1616;--muted:#7a5c5c;--line:#ead9c4;--ok:#1f6b3a;--ok-bg:#e8f6ec;--warn:#9a4a00;--warn-bg:#fff1dc;--alert:#8b1c1c;--alert-bg:#fde8e8;--shadow:0 10px 28px #4d10101f;--radius:18px;--sans:"Noto Sans Devanagari", system-ui, sans-serif;--display:"Tiro Devanagari Hindi", "Noto Sans Devanagari", serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{font-family:var(--sans);color:var(--ink);background:radial-gradient(1200px 420px at 10% -10%, #f4d58d55, transparent 60%), radial-gradient(900px 360px at 100% 0%, #7a1f1f18, transparent 55%), var(--cream)}button,input,select,textarea{font-family:inherit}.app{background:var(--paper);max-width:480px;min-height:100svh;box-shadow:var(--shadow);flex-direction:column;margin:0 auto;display:flex}.topbar{background:linear-gradient(160deg, var(--maroon) 0%, var(--maroon-dark) 100%);color:#fffaf2;padding:18px 18px 22px}.brand{align-items:center;gap:12px;display:flex}.logo{width:46px;height:46px;color:var(--maroon-dark);background:#f4d58d;border-radius:14px;flex-shrink:0;place-items:center;font-size:22px;font-weight:800;display:grid}.brand h1{font-family:var(--display);margin:0;font-size:26px;font-weight:400;line-height:1.15}.brand p{opacity:.88;margin:2px 0 0;font-size:13px}.today-chip{color:var(--gold-soft);background:#fffaf21f;border:1px solid #f4d58d59;border-radius:999px;align-items:center;gap:8px;margin-top:14px;margin-right:8px;padding:6px 12px;font-size:13px;display:inline-flex}.today-chip.hijri{color:#d8f0d8;border-color:#b4dcb459}.page{flex:1;padding:16px 16px 92px}.hero-card{border-radius:var(--radius);color:var(--maroon-dark);box-shadow:var(--shadow);background:linear-gradient(#fff4d8 0%,#ffe9b8 100%);border:1px solid #f0d48a;padding:18px}.hero-card.closed{background:linear-gradient(#fde8e8 0%,#f8cfcf 100%);border-color:#e7a3a3}.hero-card.open{background:linear-gradient(#eaf8ee 0%,#d6f0de 100%);border-color:#b4dcc2}.kicker{letter-spacing:.4px;text-transform:uppercase;opacity:.75;margin:0 0 6px;font-size:12px;font-weight:700}.hero-card h2{font-family:var(--display);margin:0;font-size:28px;line-height:1.25}.hero-card .sub{color:var(--muted);margin:8px 0 0;font-size:14px}.badge{border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.badge.warn{background:var(--warn-bg);color:var(--warn)}.badge.alert{background:var(--alert-bg);color:var(--alert)}.badge.ok{background:var(--ok-bg);color:var(--ok)}.section-title{justify-content:space-between;align-items:center;margin:22px 0 10px;display:flex}.section-title h3{margin:0;font-size:18px}.card{border:1px solid var(--line);background:#fff;border-radius:16px;margin-bottom:10px;padding:14px}.card h4{margin:0 0 4px;font-size:16px}.meta{color:var(--muted);margin:0;font-size:13px}.row{align-items:flex-start;gap:10px;display:flex}.date-box{background:var(--maroon);color:#fff;text-align:center;border-radius:12px;flex-shrink:0;place-items:center;min-width:54px;height:54px;line-height:1.1;display:grid}.date-box span{opacity:.85;font-size:11px;display:block}.date-box b{font-size:20px}.field{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.field label{font-size:13px;font-weight:700}.field input,.field select,.field textarea{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:12px;padding:11px 12px;font-size:15px}.field textarea{resize:vertical;min-height:86px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;padding:8px 12px;font-size:13px}.chip.active{background:var(--maroon);color:#fff;border-color:var(--maroon)}.btn{cursor:pointer;border:0;border-radius:12px;padding:12px 14px;font-size:15px;font-weight:700}.btn.primary{background:var(--maroon);color:#fff;width:100%}.btn.ghost{color:var(--maroon);background:0 0}.btn:disabled{opacity:.5;cursor:not-allowed}.nav{border-top:1px solid var(--line);background:#fff;grid-template-columns:repeat(4,1fr);display:grid;position:sticky;bottom:0}.nav button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:10px 4px 12px;font-size:12px}.nav button.active{color:var(--maroon);font-weight:700}.nav .icon{margin-bottom:2px;font-size:18px;display:block}.cal-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.cal-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.cal-grid .dow{text-align:center;color:var(--muted);padding:4px 0;font-size:12px}.day{aspect-ratio:1;cursor:pointer;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;padding:2px 0;font-size:13px;line-height:1.1;display:flex}.day b{font-size:13px;font-weight:700}.day .hijri-n{color:var(--muted);margin-top:1px;font-size:9px}.day.closed .hijri-n,.day.selected .hijri-n{color:inherit;opacity:.8}.day.selected{outline:2px solid var(--maroon)}.day.hijri-fest{box-shadow:inset 0 0 0 1px #2f7a4a}.day.hijri-fest:after{content:"";background:#2f7a4a;border-radius:50%;width:4px;height:4px;margin-top:1px}.cal-mode{margin-bottom:12px}.hijri-card{background:#f4fbf6;border-color:#c8e6d0}.hijri-event{background:#eef8f1;border-color:#b7ddc2}.gcal-bar{flex-wrap:wrap;gap:8px;margin:14px 0 4px;display:flex}.btn.gcal{color:#fff;background:#1a73e8;flex:1;min-width:160px}.gcal-mini{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.gcal-mini button{color:#1a73e8;cursor:pointer;background:#eef4ff;border:1px solid #c5d8f7;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700}.day.muted{color:#c4b4b4}.day.today{border-color:var(--gold);font-weight:800}.day.closed{background:var(--alert-bg);color:var(--alert);font-weight:700}.day.remind{box-shadow:inset 0 -3px 0 var(--gold)}.empty{text-align:center;color:var(--muted);padding:24px 8px}.toggle{justify-content:space-between;align-items:center;gap:12px;display:flex}.switch{cursor:pointer;background:#d7c8b8;border:0;border-radius:999px;width:46px;height:26px;position:relative}.switch.on{background:var(--ok)}.switch i{background:#fff;border-radius:50%;width:20px;height:20px;transition:left .15s;position:absolute;top:3px;left:3px}.switch.on i{left:23px}.toast{background:var(--maroon-dark);color:#fff;z-index:20;border-radius:999px;max-width:90%;padding:10px 14px;font-size:13px;position:fixed;bottom:86px;left:50%;transform:translate(-50%)}.note{background:var(--warn-bg);color:#6d4308;border:1px dashed #e0b36a;border-radius:14px;padding:12px;font-size:13px}.small{color:var(--muted);font-size:12px}
