:root{--bg-main: #f4f4f0;--text-main: #1a1a1a;--text-muted: #666666;--accent: #2c3e50;--font-serif: "Outfit", sans-serif;--font-display: "Playfair Display", serif;--spacing-unit: 24px;--max-width: 650px}:root{--font-body: "Inter", sans-serif;--font-heading: "Playfair Display", serif}body{margin:0;padding:0;background-color:var(--bg-main);color:var(--text-main);font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.6}.app-container{max-width:var(--max-width);margin:0 auto;min-height:100vh;padding:var(--spacing-unit);display:flex;flex-direction:column}header{padding:40px 0;border-bottom:2px solid rgba(0,0,0,.05);margin-bottom:40px;display:flex;justify-content:space-between;align-items:baseline}h1{font-family:var(--font-heading);font-size:24px;font-weight:600;letter-spacing:-.5px;color:var(--text-main);margin:0}.current-date{font-size:14px;color:var(--text-muted);font-family:var(--font-body)}.section-title{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:var(--text-muted);margin-bottom:16px;font-weight:600}.sign-card{margin-bottom:60px}.sign-title{font-family:var(--font-heading);font-size:48px;line-height:1.1;margin-bottom:16px;color:var(--text-main)}.key-note{font-size:24px;font-weight:400;color:var(--accent);margin-bottom:8px;line-height:1.4}.vulgarisation-block{background:#fff;padding:32px;border:1px solid rgba(0,0,0,.08);border-radius:4px;box-shadow:0 4px 6px #00000005;margin-bottom:40px}.phase-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid rgba(0,0,0,.05)}.phase-name{font-family:var(--font-heading);font-size:20px;color:var(--text-main)}.teaching-section{margin-bottom:24px}.teaching-label{font-size:15px;font-weight:700;color:var(--text-main);margin-bottom:12px;display:block}.teaching-text{font-size:16px;color:var(--text-main);margin-bottom:0;white-space:pre-wrap}.action-highlight{background-color:#f0f4f8;padding:20px;border-left:4px solid var(--accent);margin-top:32px}.btn-primary{display:inline-block;width:auto;background-color:transparent;color:var(--text-main);border:none;border-bottom:1px solid var(--text-main);padding:4px 8px;text-align:center;font-family:Playfair Display,serif;font-size:20px;font-style:italic;cursor:pointer;transition:all .3s ease;margin-top:40px;border-radius:0;box-shadow:none}.btn-primary:hover{background-color:transparent;color:var(--text-muted);border-bottom-color:var(--text-muted);transform:translateY(-2px)}main section:last-child{text-align:center}.btn-ghost{background:transparent;border:1px solid rgba(0,0,0,.2);color:var(--text-main);padding:12px 24px;border-radius:4px;cursor:pointer}.meditation-overlay{position:fixed;inset:0;background:#fff;z-index:100;display:flex;flex-direction:column;padding:40px}.meditation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:60px}.meditation-content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;max-width:600px;margin:0 auto}.meditation-step-title{font-size:14px;text-transform:uppercase;letter-spacing:2px;color:var(--text-muted);margin-bottom:16px}.meditation-instruction{font-family:var(--font-heading);font-size:32px;line-height:1.4;color:var(--text-main);margin-bottom:40px}.meditation-timer{font-family:monospace;font-size:48px;color:var(--text-muted)}.cc{--cc-surface: #ffffff;--cc-line: rgba(0, 0, 0, .08);--cc-soft: #f0f4f8;--cc-moon-lit: #f3ead0;--cc-glyph: "Noto Sans Symbols", "Segoe UI Symbol", "Apple Symbols", sans-serif;display:grid;gap:16px;margin-top:40px;padding-top:32px;border-top:2px solid rgba(0,0,0,.05);font-family:var(--font-body);color:var(--text-main)}.cc p{margin:0}.cc-eyebrow{display:block;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}.cc-muted{color:var(--text-muted);font-size:14px}.cc-muted strong{color:var(--text-main);font-weight:500}.cc-small{font-size:13px}.cc-yearbar{display:flex;align-items:center;gap:10px}.cc-nav{width:38px;height:38px;border-radius:50%;border:1px solid rgba(0,0,0,.2);background:var(--cc-surface);color:var(--text-main);display:grid;place-items:center;cursor:pointer;padding:0}.cc-nav:disabled{opacity:.3;cursor:default}.cc-year{width:4.2ch;border:0;background:transparent;color:var(--text-main);font:400 48px/1 var(--font-heading);text-align:center;padding:0;-moz-appearance:textfield;appearance:textfield}.cc-year::-webkit-outer-spin-button,.cc-year::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cc-source{width:fit-content;font-size:12px;padding:2px 10px;border:1px solid rgba(0,0,0,.15);border-radius:99px;color:var(--text-muted)}.cc-source.off{border-color:var(--accent);color:var(--accent)}.cc-bar.t-0{background:color-mix(in srgb,var(--accent) 38%,#e6e6e0)}.cc-bar.t-1{background:var(--accent)}.cc-bar.t-2{background:color-mix(in srgb,var(--accent) 62%,#e6e6e0)}.cc-bar.t-3{background:color-mix(in srgb,var(--accent) 12%,#e6e6e0)}.cc-frise{position:relative;display:flex;gap:2px}.cc-seg{flex:var(--days) 1 0;min-width:0;display:grid;gap:5px;padding:0;border:0;background:none;cursor:pointer}.cc-seg .g{font:14px/1 var(--cc-glyph);color:var(--text-muted);text-align:center}.cc-seg.cur .g,.cc-seg:hover .g{color:var(--accent)}.cc-seg .bars{display:flex;gap:1px;height:8px;border-radius:2px;overflow:hidden}.cc-seg .bars .cc-bar{flex:var(--days) 1 0}.cc-today-mark{position:absolute;bottom:-4px;width:2px;height:17px;background:var(--text-main);transform:translate(-1px);pointer-events:none}.cc-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;color:var(--text-muted)}.cc-legend span{display:inline-flex;align-items:center;gap:6px}.cc-legend i{width:14px;height:8px;border-radius:2px;display:inline-block}.cc-now,.cc-cycle{background:var(--cc-surface);border:1px solid var(--cc-line);border-radius:4px;box-shadow:0 4px 6px #00000005}.cc-now{padding:20px;display:grid;gap:14px}.cc-now-away{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.cc-now-head{display:flex;gap:16px;align-items:flex-start}.cc-now-glyph{font:46px/1 var(--cc-glyph);color:var(--accent)}.cc-now-phase{margin:2px 0;font:400 30px/1.15 var(--font-heading)}.cc-now-event{display:flex;align-items:center;gap:8px;font-size:14px}.cc-track{display:flex;gap:3px}.cc-track>div{flex:var(--days) 1 0;min-width:0;display:grid;gap:5px}.cc-track .cc-bar{height:7px;border-radius:2px;position:relative;overflow:hidden}.cc-track .cc-bar.dim{opacity:.35}.cc-track .fill{position:absolute;inset:0 auto 0 0;background:var(--text-main);opacity:.5}.cc-track .lbl{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cc-track .on .lbl{color:var(--text-main);font-weight:600}.cc-btn{border:1px solid var(--accent);color:var(--accent);background:transparent;border-radius:99px;padding:8px 16px;cursor:pointer;font:500 14px var(--font-body)}.cc-cycles{display:grid;gap:14px}.cc-cycle{padding:16px 16px 6px;display:grid;gap:10px;scroll-margin-top:16px}.cc-cycle.cur{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.cc-cycle-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cc-cycle-head>div{flex:1 1 auto;min-width:0}.cc-cycle-head h3{margin:0;font:400 22px/1.1 var(--font-heading)}.cc-cycle-head p{margin-top:2px;font-size:13px;color:var(--text-muted)}.cc-glyph{font:34px/1 var(--cc-glyph);color:var(--accent);width:40px;text-align:center}.cc-fest{display:grid;gap:2px;padding:10px 12px;background:var(--cc-soft);border-left:4px solid var(--accent)}.cc-fest strong{font:400 17px/1.2 var(--font-heading);color:var(--accent)}.cc-fest span{font-size:14px}.cc-chip{display:inline-flex;font-size:12px;font-weight:500;padding:2px 10px;border-radius:99px;background:var(--cc-soft);color:var(--accent);white-space:nowrap}.cc-chip.plain{background:transparent;border:1px solid rgba(0,0,0,.12);color:var(--text-muted)}.cc-phases{list-style:none;margin:0;padding:0}.cc-ph{display:grid;grid-template-columns:5px minmax(0,1fr) auto;gap:2px 10px;padding:9px 8px 9px 0;border-top:1px solid var(--cc-line);align-items:center}.cc-ph .tick{grid-row:span 2;align-self:stretch;border-radius:3px}.cc-ph .name{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.cc-ph .range{grid-column:2;font-size:14px;font-weight:500}.cc-ph .event{grid-column:3;grid-row:1;display:flex;align-items:center;justify-content:flex-end;gap:5px;font-size:12px;color:var(--text-muted)}.cc-ph .when{grid-column:3;grid-row:2;text-align:right;font-size:14px;font-weight:500;font-variant-numeric:tabular-nums}.cc-ph .notes{grid-column:2 / 4;display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.cc-ph.now{background:var(--cc-soft);border-radius:4px;border-top-color:transparent}.cc-ph.now+.cc-ph{border-top-color:transparent}.cc-ph.now .name{color:var(--accent)}.here{margin-left:8px;font-size:10px;letter-spacing:.06em;color:#fff;background:var(--accent);border-radius:99px;padding:1px 7px;vertical-align:1px}.cc-moon{width:15px;height:15px;flex:none}.cc-moon .dark{fill:var(--accent)}.cc-moon .lit{fill:var(--cc-moon-lit)}.cc-moon .rim{fill:none;stroke:var(--text-muted);stroke-width:.9}.cc-method{background:#00000005;border-radius:8px;font-size:14px;line-height:1.7;color:var(--text-muted)}.cc-method summary{padding:16px;cursor:pointer;font-weight:500;font-size:15px;color:var(--text-main)}.cc-method p{padding:0 16px 14px}@media(max-width:420px){.cc-year{font-size:40px}.cc-seg .g{font-size:11px}.cc-track .lbl{font-size:9.5px}.cc-ph .range,.cc-ph .when{font-size:13px}}
