:root{--period: #e91e63;--predicted: #f8bbd0;--fertile: #b3e5fc;--ovulation: #0288d1;--tabbar-h: 64px;--bg: #fdf7f9;--card: #ffffff;--text: #2b1d24;--muted: #7a6670;--accent: #c2185b;--accent-2: #f06292;--border: #eadde3;--shadow: 0 1px 2px rgb(0 0 0 / .04), 0 8px 24px color-mix(in srgb, var(--accent) 8%, transparent);color-scheme:light}:root[data-dark]{--bg: #1a1216;--card: #251a20;--text: #f5e9ee;--muted: #b59ca8;--border: #3a2a32;--predicted: #7a3550;--fertile: #1f4d66;--shadow: 0 0 0 1px var(--border);color-scheme:dark}:root[data-theme=lavanta]{--bg: #f8f6fd;--card: #fff;--text: #241f33;--muted: #6f6885;--accent: #6a3fd1;--accent-2: #b39ddb;--border: #e4def3}:root[data-theme=lavanta][data-dark]{--bg: #15131c;--card: #1f1c29;--text: #eeeaf7;--muted: #a9a1c0;--border: #2e2a3c}:root[data-theme=okyanus]{--bg: #f4f9fc;--card: #fff;--text: #13232d;--muted: #5c7381;--accent: #0277bd;--accent-2: #4fc3f7;--border: #d9e8f0}:root[data-theme=okyanus][data-dark]{--bg: #0f171c;--card: #17222a;--text: #e6f1f7;--muted: #98b0bd;--border: #25343d}:root[data-theme=nane]{--bg: #f3faf6;--card: #fff;--text: #15281e;--muted: #5e7a6b;--accent: #2e7d5b;--accent-2: #66bb8a;--border: #d6ebdf}:root[data-theme=nane][data-dark]{--bg: #101914;--card: #17231c;--text: #e5f4eb;--muted: #9cbca9;--border: #233529}:root[data-theme=seftali]{--bg: #fdf8f3;--card: #fff;--text: #2d2117;--muted: #7d6a5b;--accent: #d8572a;--accent-2: #ffab91;--border: #f0e2d6}:root[data-theme=seftali][data-dark]{--bg: #1b1510;--card: #261e17;--text: #f5ece4;--muted: #bba795;--border: #382c22}*{box-sizing:border-box}html,body{height:100%;overflow:hidden}html{overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 -apple-system,system-ui,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}.appbar,.tabbar,button,.calendar,.legend,.clock,.pet{-webkit-user-select:none;user-select:none}#root{height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto}.appbar{padding:calc(12px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left))}.appbar h1{max-width:520px;margin:0 auto;font-size:2.1rem;font-weight:800;letter-spacing:-.02em;line-height:1.15}.update:not([hidden]){display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:520px;margin:8px auto 0;font-size:.9rem}.update button{padding:6px 12px;font-size:.85rem}main{width:100%;max-width:520px;min-height:0;margin:0 auto;padding:4px max(16px,env(safe-area-inset-right)) 12px max(16px,env(safe-area-inset-left))}.view{height:100%;display:flex;flex-direction:column;gap:12px;overflow-y:auto;scrollbar-width:none}.view[hidden]{display:none}h2{margin:0 0 12px;font-size:1.1rem}.muted{color:var(--muted);font-size:.9rem}.center{text-align:center}.card{background:var(--card);border:none;box-shadow:var(--shadow);border-radius:20px;padding:16px;margin:0}button{font:inherit;padding:12px 18px;border-radius:14px;border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;transition:transform .1s,opacity .1s}button:active{transform:scale(.96);opacity:.85}button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.primary{background:var(--accent);color:#fff;border:none;font-weight:600}.danger{background:var(--period);color:#fff;border:none}.icon{width:44px;height:44px;padding:0;font-size:1.4rem;line-height:1}.row{display:flex;gap:8px;flex-wrap:wrap}.row.end{justify-content:flex-end}#add{width:100%;margin-top:12px}.eyebrow{margin:0;color:var(--muted);font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}#summary{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px}.clock-box{flex:1;min-height:150px;container-type:size;display:grid;place-items:center}.clock{position:relative;width:min(100cqmin,340px);aspect-ratio:1;touch-action:none;cursor:pointer;-webkit-touch-callout:none;transition:scale .12s}.clock.pressed{scale:.97}.clock:focus-visible{outline:3px solid var(--accent);outline-offset:4px;border-radius:50%}.clock svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.seg{fill:var(--border)}.seg.period{fill:var(--period)}.seg.predicted{fill:var(--predicted)}.seg.fertile{fill:var(--fertile)}.seg.ovulation{fill:var(--ovulation)}.seg.future{opacity:.5}.seg.today{stroke:var(--text);stroke-width:2.5}.seg.sel{stroke:var(--accent);stroke-width:3.5;opacity:1}.dnum{font-size:12px;font-weight:600;fill:var(--muted);text-anchor:middle;dominant-baseline:central;pointer-events:none}.dnum.predicted,.dnum.fertile{fill:var(--text)}.dnum.period,.dnum.ovulation{fill:#fff}.dnum.now{font-size:14px;font-weight:800}.hand line{stroke:var(--accent);stroke-width:3.5;stroke-linecap:round}.hand circle{fill:var(--accent)}.glyph{fill:currentColor}.glyph .vein{fill:var(--card);stroke:var(--card);stroke-width:1.6;stroke-linecap:round}.glyph.period{color:var(--period)}.glyph.predicted{color:color-mix(in srgb,var(--period) 45%,var(--predicted))}.glyph.fertile{color:color-mix(in srgb,var(--ovulation) 55%,var(--fertile))}.glyph.ovulation{color:var(--ovulation)}.legend svg{width:14px;height:14px;margin-right:4px;vertical-align:-2px}.clock-center{position:absolute;top:27%;right:27%;bottom:27%;left:27%;display:grid;place-content:center;gap:1px;text-align:center;pointer-events:none;animation:info-in .25s ease-out}@keyframes info-in{0%{opacity:0;translate:0 4px}}.clock-head{display:flex;align-items:center;justify-content:center;gap:4px;margin-bottom:2px}.clock-head button{pointer-events:auto;width:clamp(22px,9cqmin,30px);height:clamp(22px,9cqmin,30px);padding:0;border:none;border-radius:50%;background:var(--bg);color:var(--muted);font-size:clamp(.9rem,6cqmin,1.2rem);line-height:1}.clock-month{font-size:clamp(.72rem,5cqmin,1.02rem);color:var(--muted);font-weight:600;white-space:nowrap}.clock-month b{color:var(--accent);font-weight:800}.clock-center strong{font-size:clamp(1.1rem,10cqmin,2.1rem);font-weight:800;letter-spacing:-.02em;line-height:1.1;font-variant-numeric:tabular-nums}.clock-center>span:not(.clock-month){color:var(--muted);font-size:clamp(.62rem,4.2cqmin,.85rem);line-height:1.25}.clock-ask{display:flex;gap:6px;justify-content:center;margin-top:6px}.clock-ask button{pointer-events:auto;padding:clamp(4px,2cqmin,8px) clamp(8px,3.5cqmin,14px);border-radius:999px;font-size:clamp(.65rem,4cqmin,.85rem);font-weight:600;white-space:nowrap}.clock-center em{margin-top:4px;font-style:normal;font-weight:600;color:var(--accent);font-size:clamp(.55rem,3.6cqmin,.74rem)}.late{color:var(--period)}.cap{text-transform:capitalize}.center-legend{flex:none;justify-content:center;margin:0;gap:2px 12px}.tiles{flex:none;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tiles li{display:grid;gap:2px;padding:10px 12px;border-radius:16px}.tiles span{font-size:.7rem;color:var(--muted)}.tiles strong{font-size:.92rem;white-space:nowrap;font-variant-numeric:tabular-nums}.ring-hint{flex:none;margin:-4px 0 0;font-size:.7rem}.facts{list-style:none;padding:4px 16px;margin:0}.facts li{position:relative;display:flex;align-items:center;gap:12px;padding:12px 0}.facts li+li:before{content:"";position:absolute;top:0;left:40px;right:0;border-top:1px solid var(--border)}.facts li>span:nth-child(2){flex:1}.facts li span:last-child{font-weight:600;text-align:right;font-variant-numeric:tabular-nums}.pet{position:relative;flex:none;height:120px;display:flex;align-items:flex-end;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 6%,var(--card)),var(--card) 75%)}.pet:after{content:"";position:absolute;left:16px;right:16px;bottom:18px;border-top:2px dashed var(--border)}.pet-walker{position:relative;z-index:1;margin:0 auto 2px}.pet svg{display:block}.pet.three .pet-walker{display:none}.pet canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;touch-action:none;-webkit-touch-callout:none}.pet-shadow{fill:#0000001f}.heart{position:absolute;z-index:2;font-size:22px;line-height:1;pointer-events:none}.bubble{position:absolute;z-index:2;padding:3px 10px;border-radius:12px;background:var(--card);color:var(--text);box-shadow:var(--shadow);font-size:.85rem;font-weight:700;white-space:nowrap;pointer-events:none}.pet-hint{flex:none;margin:-4px 0 0;font-size:.75rem}.pet[data-scene=cimen]{background:linear-gradient(to top,#7cc96a 0 18px,transparent 18px),linear-gradient(#bfe6ff,#f2fbff)}.pet[data-scene=cimen]:after{border-top:2px solid #5fae4e}.pet[data-scene=gece]{background:linear-gradient(to top,#2b2547 0 18px,transparent 18px),linear-gradient(#141834,#3a2d5e)}.pet[data-scene=gece]:after{border-top-color:#4b4170}.pet[data-scene=gece] .star{background:#fff;box-shadow:0 0 6px #fff}.pet[data-scene=gunbatimi]{background:linear-gradient(to top,#e8b58a 0 18px,transparent 18px),linear-gradient(#ffd3a5,#fd9fa4 85%)}.pet[data-scene=gunbatimi]:after{border-top:2px solid #d39a6d}.pet[data-scene=cimen] .star,.pet[data-scene=gunbatimi] .star{display:none}.pet-eyes{transform-box:fill-box;transform-origin:center;animation:blink 4.5s infinite}@keyframes blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.1)}}.star{position:absolute;width:4px;height:4px;border-radius:50%;background:#ffc45a;animation:twinkle 3s ease-in-out infinite}.star:nth-child(1){top:22px;left:18%}.star:nth-child(2){top:40px;left:62%;animation-delay:-1s}.star:nth-child(3){top:16px;left:84%;animation-delay:-2s}@keyframes twinkle{50%{opacity:.2;transform:scale(.6)}}#view-takvim>.card{flex:1;min-height:0;display:flex;flex-direction:column}.cal-head{flex:none;display:flex;align-items:center;justify-content:space-between}.cal-box{flex:1;min-height:0;margin-top:8px;container-type:size;display:grid;place-items:center}.cal-head h2{margin:0;text-transform:capitalize}.calendar{--cell: min(calc((100cqw - 24px) / 7), calc((100cqh - 20px - 24px) / 6), 56px);display:grid;grid-template-columns:repeat(7,var(--cell));grid-template-rows:20px;grid-auto-rows:var(--cell);gap:4px;text-align:center;touch-action:pan-y;view-transition-name:cal}.calendar .wd{font-size:.75rem;color:var(--muted)}.day{width:100%;height:100%;display:grid;place-items:center;padding:0;border:none;border-radius:50%;background:transparent;font-size:min(.9rem,calc(var(--cell) * .4))}.day.period{background:var(--period);color:#fff}.day.predicted{background:var(--predicted)}.day.fertile{background:var(--fertile)}.day.ovulation{background:var(--ovulation);color:#fff}.day.today{outline:2px solid var(--text);outline-offset:-2px;font-weight:700}.day{align-content:center;gap:0;line-height:1.1}.day .mini{width:min(12px,calc(var(--cell) * .26));height:min(12px,calc(var(--cell) * .26))}.day.period .glyph,.day.ovulation .glyph{color:#fff}.day.period .vein{fill:var(--period);stroke:var(--period)}.legend{flex:none;list-style:none;padding:0;margin:12px 0 0;display:flex;flex-wrap:wrap;gap:4px 16px;font-size:.8rem;color:var(--muted)}.history{flex:0 1 auto;min-height:0;overflow-y:auto;list-style:none;padding:4px 16px}.history:empty{display:none}.history li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--border)}.history li:first-child{border-top:none}.history button{padding:6px 12px;font-size:.85rem}.tabbar{display:grid;grid-template-columns:repeat(4,1fr);padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--bg);border-top:1px solid var(--border)}.tabbar button{height:var(--tabbar-h);display:grid;place-items:center;align-content:center;gap:2px;border:none;border-radius:0;background:none;color:var(--muted);font-size:.72rem;padding:0}.tabbar button[aria-current]{color:var(--accent);font-weight:600}.tabbar svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}dialog{border:none;background:var(--card);color:var(--text)}dialog:modal{overscroll-behavior:contain}dialog::backdrop{background:#0006;overflow:hidden;overscroll-behavior:contain}.sheet{width:100%;max-width:520px;margin:auto auto 0;border-radius:24px 24px 0 0;padding:8px 20px calc(20px + env(safe-area-inset-bottom))}.sheet[open]{animation:sheet-up .25s ease-out}@keyframes sheet-up{0%{transform:translateY(100%)}}.sheet-head{touch-action:none;padding-top:4px}.grabber{width:40px;height:5px;border-radius:3px;background:var(--border);margin:0 auto 16px}.alert{width:min(88vw,360px);border-radius:20px;padding:20px}.alert p{margin:0 0 16px}.pref+.pref,.pref+.pref-row,.pref-row+.pref{margin-top:10px}.pref h3{margin:0 0 4px;font-size:.8rem;font-weight:600;color:var(--muted)}.pref-row{display:grid;grid-template-columns:3fr 2fr;gap:10px}.pref-row>.pref{margin-top:0}#view-ayarlar h2{margin-bottom:8px}#view-ayarlar .row button{padding:8px 16px}.backup-note{margin:0 0 10px;font-size:.85rem}.fine{margin:0;font-size:.75rem}.segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;border-radius:12px;background:var(--bg)}.segmented label{position:relative;display:grid;place-items:center;padding:8px;border-radius:9px;font-size:.95rem;color:var(--muted);cursor:pointer;transition:background .15s,color .15s}.segmented input,.swatches input{position:absolute;opacity:0;pointer-events:none}.swatches{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px}.swatches label{position:relative;display:grid;justify-items:center;gap:4px;font-size:.72rem;color:var(--muted);cursor:pointer}.swatch{width:36px;height:36px;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px #0000001a}.swatches label:has(input:checked){color:var(--text);font-weight:600}.swatches label:has(input:checked) .swatch{outline:3px solid var(--accent);outline-offset:2px}.swatches label:has(input:focus-visible) .swatch{outline:3px solid var(--text);outline-offset:2px}.segmented label:has(input:checked){background:var(--card);box-shadow:var(--shadow);color:var(--accent);font-weight:600}.segmented label:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}form{display:grid;gap:12px}label{display:grid;gap:4px;font-size:.9rem}input[type=date]{width:100%;min-width:0;font:inherit;padding:10px;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--text)}.error{color:var(--period);min-height:1.5em;margin:0}.toast{position:fixed;left:50%;bottom:calc(var(--tabbar-h) + 16px + env(safe-area-inset-bottom));z-index:3;max-width:calc(100% - 32px);padding:10px 16px;border-radius:12px;background:var(--text);color:var(--bg);font-size:.9rem;opacity:0;transform:translate(-50%,8px);transition:opacity .2s,transform .2s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%)}::view-transition-group(*){animation-duration:.2s}@keyframes out-left{to{transform:translate(-30%);opacity:0}}@keyframes in-right{0%{transform:translate(30%);opacity:0}}@keyframes out-right{to{transform:translate(30%);opacity:0}}@keyframes in-left{0%{transform:translate(-30%);opacity:0}}html:active-view-transition-type(forward)::view-transition-old(cal){animation-name:out-left}html:active-view-transition-type(forward)::view-transition-new(cal){animation-name:in-right}html:active-view-transition-type(backward)::view-transition-old(cal){animation-name:out-right}html:active-view-transition-type(backward)::view-transition-new(cal){animation-name:in-left}@media (max-height: 700px){.appbar h1{font-size:1.7rem}.facts li{padding:8px 0}.pet{height:100px}.pet-hint,.backup-note,.ring-hint{display:none}.card{padding:12px}.swatch{width:28px;height:28px}.segmented label{padding:6px}}@media (prefers-reduced-motion: reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}.sheet[open],.clock-center,.pet-eyes,.star{animation:none}.clock,button,.toast{transition:none}}
