@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}.cartoon-fallback{width:100%;max-width:280px;margin:0}.cartoon-svg{border-radius:1rem;width:100%;height:auto;display:block;box-shadow:0 12px 40px #1e3a8a26}.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}.admin-daily-root{--text-muted:#475569;--text-soft:#64748b;--wave-color:#3b82f6}.admin-daily-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.admin-daily-date-label{flex-direction:column;gap:.15rem;display:flex}.admin-daily-date-primary{font-size:1.1rem;font-weight:700}.admin-daily-date-key{color:var(--text-muted);font-size:.8rem}.admin-daily-lang-toggle{background:#fff;border-radius:999px;gap:.35rem;padding:.25rem;display:flex;box-shadow:0 1px 3px #0f172a14}.admin-daily-lang-toggle button{color:#475569;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.4rem .85rem;font-size:.82rem;font-weight:600}.admin-daily-lang-toggle button.active{color:#fff;background:linear-gradient(120deg,#2563eb,#6366f1)}.admin-daily-layout{grid-template-columns:minmax(240px,280px) 1fr;align-items:start;gap:1.75rem;display:grid}@media (width<=800px){.admin-daily-layout{grid-template-columns:1fr}}.admin-daily-calendar-panel{background:#fff;border-radius:1rem;padding:1rem;box-shadow:0 4px 24px #1e3a8a14}.admin-daily-panel-hint{color:var(--text-muted);margin:0 0 .75rem;font-size:.78rem;line-height:1.35}.admin-daily-calendar-widget.react-calendar{border:none;width:100%;font-family:inherit}.admin-daily-calendar-widget .react-calendar__tile--active{color:#fff!important;background:#3b82f6!important}.admin-daily-calendar-widget .react-calendar__tile.has-public-content{background:#dbeafe;font-weight:600}.admin-daily-article{background:#fff;border-radius:1.25rem;min-height:200px;padding:1.5rem 1.75rem;box-shadow:0 8px 32px #1e3a8a1a}.admin-daily-placeholder{color:var(--text-muted);margin:0;line-height:1.55}.admin-daily-placeholder code{font-size:.9em}.admin-daily-visual{justify-content:center;margin-bottom:1.5rem;display:flex}.admin-daily-cartoon-img{object-fit:cover;border-radius:1rem;width:100%;max-width:280px;height:auto;box-shadow:0 12px 40px #1e3a8a26}.admin-daily-block+.admin-daily-block{border-top:1px solid #e2e8f0;margin-top:1.25rem;padding-top:1.25rem}.admin-daily-block h2{margin:0 0 .5rem;font-size:1.35rem;line-height:1.25}.admin-daily-block-ta h2{font-family:Noto Sans Tamil,Latha,Nirmala UI,system-ui,sans-serif}.admin-daily-body{white-space:pre-wrap;color:#334155;line-height:1.65}.admin-daily-block-ta .admin-daily-body{font-family:Noto Sans Tamil,Latha,Nirmala UI,system-ui,sans-serif;font-size:1.05rem}.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-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}
