@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,600;0,9..40,700;1,9..40,400&family=Noto+Sans+Tamil:wght@400;600;700&display=swap";:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:DM Sans,system-ui,-apple-system,sans-serif;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}body{min-height:100vh;margin:0}#root{min-height:100vh}code{font-family:ui-monospace,Cascadia Code,monospace}.react-calendar{background:#fff;border:1px solid #a0a096;width:350px;max-width:100%;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{margin:-.5em;display:flex}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar :before,.react-calendar :after{box-sizing:border-box}.react-calendar button{border:0;outline:none;margin:0}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{height:44px;margin-bottom:1em;display:flex}.react-calendar__navigation button{background:0 0;min-width:44px}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{font:inherit;justify-content:center;align-items:center;font-size:.75em;font-weight:700;display:flex}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{text-align:center;max-width:100%;font:inherit;background:0 0;padding:10px 6.6667px;font-size:.833em}.react-calendar__tile:disabled{color:#ababab;background-color:#f0f0f0}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{color:#fff;background:#006edc}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}.full-page-calendar{background:linear-gradient(165deg,#f8fafc 0%,#eff6ff 50%,#f1f5f9 100%);flex-direction:column;flex:1;min-height:calc(100vh - 4rem);padding:1rem 1.25rem 2rem;display:flex}.full-page-calendar-header{text-align:center;margin-bottom:.5rem}.full-page-calendar-title{color:#0f172a;margin:0;font-size:clamp(1.5rem,4vw,2rem);font-weight:700}.full-page-calendar-sub{color:#64748b;margin:.35rem 0 0;font-size:.9rem}.full-page-calendar-widget{background:#fff;border-radius:1.25rem;width:100%;max-width:900px;margin:0 auto;padding:1rem 1.25rem 1.5rem;font-family:inherit;box-shadow:0 12px 40px #0f172a14;border:none!important}.full-page-calendar-widget .react-calendar__navigation{margin-bottom:1rem}.full-page-calendar-widget .react-calendar__navigation button{color:#2563eb;background:#eff6ff;border:none;border-radius:.75rem;min-width:3rem;font-size:1.75rem;font-weight:700}.full-page-calendar-widget .react-calendar__navigation button:disabled{opacity:.25;cursor:not-allowed}.full-page-calendar-widget .react-calendar__navigation button:hover:not(:disabled){background:#dbeafe}.full-page-calendar-widget .react-calendar__month-view__weekdays{text-transform:uppercase;color:#64748b;font-size:.75rem;font-weight:700}.full-page-calendar-widget .react-calendar__month-view__weekdays abbr{text-decoration:none}.full-page-calendar-widget .react-calendar__tile{aspect-ratio:1;color:#1e293b;border-radius:.75rem;max-height:none;padding:.5rem;font-size:clamp(.95rem,2.5vw,1.15rem);font-weight:600}.full-page-calendar-widget .react-calendar__tile:enabled:hover{background:#eff6ff}.full-page-calendar-widget .react-calendar__tile--now{background:#fef9c3}.full-page-calendar-widget .react-calendar__tile--active,.full-page-calendar-widget .react-calendar__tile.is-selected{color:#fff;background:#2563eb!important}.full-page-calendar-widget .react-calendar__tile.has-content:not(.react-calendar__tile--active){background:#ecfdf5;box-shadow:inset 0 0 0 2px #34d399}.full-page-calendar-widget .react-calendar__tile:disabled{opacity:.35;background:0 0}@media (width>=768px){.full-page-calendar{padding:1.5rem 2rem 2.5rem}.full-page-calendar-widget{padding:1.5rem 2rem 2rem}}.brand-header{z-index:10;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.75rem 1.25rem .5rem;display:flex;position:relative}.brand-lockup{color:inherit;align-items:center;gap:.65rem;min-width:0;text-decoration:none;display:flex}.brand-waves{width:5.5rem;height:auto;color:var(--wave-color,#2563eb);flex-shrink:0}.brand-text{flex-direction:column;gap:.05rem;min-width:0;display:flex}.brand-title{font-family:var(--font-display,Georgia, serif);letter-spacing:.02em;background:linear-gradient(120deg,#1e3a8a,#3b82f6,#6366f1);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.45rem;font-weight:700;line-height:1.1}.brand-tagline{color:var(--text-muted,#475569);font-size:.78rem;font-weight:600;line-height:1.2}.brand-tagline-en{color:var(--text-soft,#64748b);font-size:.68rem;font-style:italic}.brand-nav{padding-top:.2rem}.brand-admin-link{color:var(--link,#2563eb);font-size:.85rem;font-weight:600;text-decoration:none}.brand-admin-link:hover{text-decoration:underline}.brand-header--monochrome{--wave-color:#000;--text-muted:#000;--text-soft:#000;--link:#000}.brand-header--monochrome .brand-title{background:0 0;-webkit-background-clip:unset;background-clip:unset;color:#000}.brand-header--monochrome .brand-tagline,.brand-header--monochrome .brand-admin-link{color:#000}.wave{stroke-dasharray:8 6;animation:2.2s linear infinite wave-dash}.wave-2{animation-duration:2.8s;animation-direction:reverse}.wave-3{animation-duration:3.4s}@keyframes wave-dash{to{stroke-dashoffset:-28px}}.thought-dot{opacity:.85;animation:2s ease-in-out infinite pulse-dot}.thought-dot.d2{animation-delay:.4s}.thought-dot.d3{animation-delay:.8s}@keyframes pulse-dot{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.admin-page{color:#0f172a;--text-muted:#475569;--text-soft:#64748b;--link:#2563eb;--wave-color:#3b82f6;background:#f1f5f9;min-height:100vh}.admin-page-full{flex-direction:column;display:flex}.admin-topbar{flex-shrink:0}.admin-banner{margin:0 1rem;padding:1rem 1.5rem}.admin-banner.error{color:#b91c1c}.admin-toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;max-width:1200px;margin:0 auto;padding:.5rem 1.25rem 1rem;display:flex}.admin-user{color:var(--text-muted);margin-right:auto;font-size:.85rem}.admin-cal-ok{color:#15803d;font-size:.8rem;font-weight:600}.admin-gate{background:#fff;border-radius:1rem;max-width:480px;margin:2rem auto;padding:2rem;box-shadow:0 8px 30px #0f172a14}.admin-gate h1{margin-top:0;font-size:1.5rem}.admin-muted{color:var(--text-muted)}.admin-muted.small{font-size:.85rem}.admin-muted code{font-size:.85em}.admin-daily-preview-shell{background:linear-gradient(165deg,#f8fafc 0%,#eff6ff 45%,#f1f5f9 100%);padding:0 1rem 1.25rem}.admin-daily-preview-inner{max-width:1100px;margin:0 auto;padding:0 0 .25rem}.admin-after-preview{max-width:1100px;margin:0 auto;padding:0 1rem 2rem}.admin-after-preview-card{background:#fff;border-radius:1rem;flex-direction:column;gap:1rem;padding:1.25rem 1.5rem;display:flex;box-shadow:0 4px 24px #0f172a0f}.admin-key{color:var(--text-muted);margin:0;font-size:.8rem}.admin-key code{font-size:.85em}.admin-gcal-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.75rem;padding:.85rem 1rem}.admin-gcal-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.admin-gcal-head h3{margin:0;font-size:.95rem}.admin-event-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-event-list li{border-bottom:1px solid #e2e8f0;flex-direction:column;gap:.1rem;padding-bottom:.45rem;font-size:.85rem;display:flex}.admin-event-list li:last-child{border-bottom:none;padding-bottom:0}.ev-title{font-weight:600}.ev-time{color:var(--text-soft);word-break:break-all;font-size:.78rem}.admin-error{color:#b91c1c;font-size:.9rem}.admin-error.small{font-size:.85rem}.btn-primary,.btn-secondary,.btn-ghost{cursor:pointer;border:none;border-radius:.6rem;justify-content:center;align-items:center;padding:.55rem 1.1rem;font-family:inherit;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{color:#fff;background:linear-gradient(120deg,#2563eb,#4f46e5)}.btn-primary:hover{filter:brightness(1.05)}.btn-secondary{color:#1e293b;background:#e2e8f0}.btn-secondary:hover{background:#cbd5e1}.btn-ghost{color:#2563eb;background:0 0;padding-left:.65rem;padding-right:.65rem}.btn-ghost.small{padding:.35rem .65rem;font-size:.8rem}.modal-backdrop{z-index:100;background:#0f172a73;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:1rem;width:100%;max-width:520px;max-height:90vh;padding:1.5rem;overflow:auto;box-shadow:0 24px 80px #0f172a33}.modal h2{margin:0 0 .5rem;font-size:1.2rem}.field{color:#334155;flex-direction:column;gap:.35rem;margin-top:.85rem;font-size:.85rem;font-weight:600;display:flex}.field input,.field textarea{font:inherit;border:1px solid #cbd5e1;border-radius:.5rem;padding:.5rem .65rem;font-weight:400}.field textarea{resize:vertical}.modal-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1.25rem;display:flex}.save-ok{color:#15803d;font-size:.85rem;font-weight:600}.home-page{color:#000;--wave-color:#000;background:#fff;min-height:100vh}.home-main{flex-direction:column;justify-content:center;align-items:center;max-width:42rem;min-height:calc(100vh - 5rem);margin:0 auto;padding:1.5rem 1.25rem 3rem;display:flex}.home-daily{text-align:center;width:100%}.home-daily-status{color:#000;margin:0;font-family:Noto Sans Tamil,Latha,Nirmala UI,system-ui,sans-serif;font-size:1.05rem;line-height:1.6}.home-daily-phrase{color:#000;margin:0 0 1.25rem;font-family:Noto Sans Tamil,Latha,Nirmala UI,system-ui,sans-serif;font-size:1.35rem;font-weight:700;line-height:1.35}.home-daily-card{text-align:center;background:#fff;border:1px solid #e5e5e5;border-radius:1rem;padding:1.25rem 1.25rem 1.5rem;box-shadow:0 2px 12px #0000000f}.home-daily-visual{justify-content:center;margin-bottom:1rem;display:flex}.home-daily-bw{filter:grayscale()contrast(1.05)}.home-daily-img{object-fit:contain;border-radius:.75rem;width:100%;max-width:100%;max-height:320px}.home-daily-fallback-wrap{max-width:280px;margin:0 auto}.home-daily-caption{color:#000;margin:0 0 .5rem;font-family:Noto Sans Tamil,Latha,Nirmala UI,system-ui,sans-serif;font-size:1.1rem;font-weight:700;line-height:1.4}.home-daily-body-under{color:#000;white-space:pre-wrap;margin:0;font-family:Noto Sans Tamil,Latha,Nirmala UI,system-ui,sans-serif;font-size:.98rem;line-height:1.65}.home-daily-error{color:#b91c1c}.home-thought-card{text-align:center;background:#fff;border:1px solid #e5e5e5;border-radius:1.25rem;width:100%;max-width:36rem;margin:0 auto;padding:2rem 1.75rem;box-shadow:0 4px 24px #0000000f}.home-thought-date{letter-spacing:.04em;text-transform:uppercase;color:#737373;margin:0 0 1rem;font-size:.85rem;font-weight:600}.home-thought-title{color:#000;margin:0 0 1.25rem;font-family:Noto Sans Tamil,Latha,Nirmala UI,Georgia,serif;font-size:clamp(1.35rem,4vw,1.75rem);font-weight:700;line-height:1.35}.home-thought-body{color:#262626;white-space:pre-wrap;margin:0;font-family:Noto Sans Tamil,Latha,Nirmala UI,system-ui,sans-serif;font-size:1.05rem;line-height:1.75}
