.su-grad{background:linear-gradient(90deg,#c4735c,#8a5a86);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}.su-card{padding:22px 24px 18px;margin-bottom:32px;background:#fff}.su-card:hover{transform:none;box-shadow:var(--shadow-rest)}.su-card-loading{min-height:214px}.su-top{display:flex;justify-content:space-between;gap:12px;min-height:22px}.su-chip,.su-top{align-items:center}.su-chip{display:inline-flex;gap:7px;white-space:nowrap;font-family:Adrianna Extended,Cerebri Sans,sans-serif;font-size:9.5px;letter-spacing:.12em;color:#8a5a86}.su-headline{font-family:Juana,Playfair Display,Georgia,serif;font-weight:200;font-size:30px;line-height:1.15;color:#4c2047;margin:10px 0 16px;display:flex;flex-wrap:wrap;align-items:baseline;-moz-column-gap:8px;column-gap:8px}.su-headline .su-grad{font-style:italic}.su-streak{font-family:Cerebri Sans,sans-serif;font-size:13px;color:rgba(76,32,71,.6);margin-left:auto}.su-week{display:grid;grid-template-columns:repeat(7,1fr);width:100%;gap:4px;background:none;border:none;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.su-day{display:flex;flex-direction:column;align-items:center;gap:8px}.su-day-label{font-family:Adrianna Extended,Cerebri Sans,sans-serif;font-size:10px;letter-spacing:.08em;color:rgba(76,32,71,.45)}.su-day-label.is-today{color:#4c2047}.su-n1{--su-fill:linear-gradient(135deg,#cce3cd,#f1ffd9)}.su-n2{--su-fill:linear-gradient(135deg,#cbdaff,#e5fff3)}.su-n3{--su-fill:linear-gradient(135deg,#f0e0ff,#d5e1ff)}.su-n4{--su-fill:linear-gradient(135deg,#ffc9be,#f1dbff)}.su-n5,.su-n6{--su-fill:linear-gradient(135deg,#c4735c,#8a5a86);--su-ink:#fff;--su-glow:rgba(138,90,134,.65)}.su-dot{width:clamp(30px,8.6vw,40px);aspect-ratio:1;border-radius:50%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:rgba(76,32,71,.05);box-shadow:inset 0 0 0 1px rgba(76,32,71,.1);transition:transform .2s ease}.su-dot.is-done{background:var(--su-fill,linear-gradient(135deg,#cce3cd,#f1ffd9));color:var(--su-ink,#4c2047);box-shadow:0 4px 10px -4px var(--su-glow,rgba(76,32,71,.3))}.su-dot.is-future{background:transparent;box-shadow:inset 0 0 0 1px rgba(76,32,71,.08)}.su-dot.is-today:not(.is-done){background:#fff;box-shadow:inset 0 0 0 1.5px #c4735c}.su-dot.is-today.is-done{outline:2px solid rgba(196,115,92,.3);outline-offset:2px}.su-week:hover .su-dot.is-done{transform:translateY(-1px)}.su-line{font-size:15px;line-height:1.5;color:#3a2438;margin:16px 0 8px}.su-line,.su-link{font-family:Cerebri Sans,sans-serif}.su-link{background:none;border:none;padding:4px 0;cursor:pointer;font-size:13px;color:rgba(76,32,71,.6);display:inline-flex;gap:6px}.su-link:hover{color:#4c2047}.su-sheet-wrap{position:fixed;inset:0;z-index:1000;background:rgba(40,18,38,.42);display:flex;align-items:center;justify-content:center;animation:suFade .2s ease;overscroll-behavior:contain;padding:calc(env(safe-area-inset-top, 0px) + 16px) 16px calc(env(safe-area-inset-bottom, 0px) + 16px)}.su-sheet{position:relative;width:100%;max-width:440px;max-height:100%;display:flex;flex-direction:column;overflow:hidden;background:#fff;border-radius:var(--r-lg,20px);animation:suRise .28s cubic-bezier(.2,.8,.3,1)}.su-sheet-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:28px 26px 24px}.su-sheet-close{position:absolute;top:10px;right:10px;z-index:1;width:40px;height:40px;border:none;border-radius:50%;background:hsla(0,0%,100%,.92);font-size:24px;line-height:1;color:rgba(76,32,71,.6);cursor:pointer}.su-sheet-handle{display:none}@media (max-width:767px){.su-sheet-handle{display:block;position:absolute;top:8px;left:50%;transform:translateX(-50%);z-index:1;width:36px;height:4px;border-radius:2px;background:rgba(76,32,71,.18)}}.su-sheet-title{font-family:Juana,Playfair Display,Georgia,serif;font-weight:200;font-size:28px;color:#4c2047;margin:8px 0 20px}.su-sheet-title .su-grad{font-style:italic}.su-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:8px 4px;justify-items:center}.su-cal-head{font-family:Adrianna Extended,Cerebri Sans,sans-serif;font-size:9.5px;letter-spacing:.08em;color:rgba(76,32,71,.45)}.su-cal-cell{display:flex;flex-direction:column;align-items:center;gap:3px}.su-cal .su-dot{width:30px}.su-cal-num{font-family:Cerebri Sans,sans-serif;font-size:10.5px;color:rgba(76,32,71,.45)}.su-cal-num.is-today{color:#4c2047}.su-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0 18px}.su-stats>div{background:rgba(76,32,71,.03);border-radius:var(--r-md,14px);padding:12px 14px}.su-stat-num{display:block;font-family:Juana,Playfair Display,Georgia,serif;font-weight:200;font-size:26px;color:#4c2047}.su-stat-label{font-family:Cerebri Sans,sans-serif;font-size:12px;color:rgba(76,32,71,.65)}.su-how-title{font-family:Juana,Playfair Display,Georgia,serif;font-weight:200;font-style:italic;font-size:20px;color:#4c2047;margin:0 0 8px}.su-how{font-size:14px;line-height:1.55;margin:0 0 10px}.su-how,.su-remind{font-family:Cerebri Sans,sans-serif;color:#3a2438}.su-remind{display:flex;gap:10px;align-items:flex-start;margin-top:16px;padding-top:14px;border-top:1px solid rgba(76,32,71,.08);font-size:13.5px;line-height:1.4;cursor:pointer}.su-remind input{margin-top:2px;accent-color:#8a5a86;width:16px;height:16px;flex-shrink:0}.su-starters{margin-top:14px}.su-starters-label{font-family:Cerebri Sans,sans-serif;font-size:13px;color:rgba(76,32,71,.6);margin-bottom:10px}.su-starters-row{display:flex;flex-wrap:wrap;gap:8px}.su-others{margin-top:8px}.su-chip-loading{height:39px;width:210px;max-width:100%;border-radius:var(--r-pill,999px);background:linear-gradient(90deg,rgba(76,32,71,.04),rgba(76,32,71,.09),rgba(76,32,71,.04));background-size:200% 100%;animation:suShimmer 1.3s linear infinite}.su-starters.is-centered{text-align:center}.su-starters.is-centered .su-starters-row{justify-content:center}.su-toast{position:fixed;left:50%;top:calc(env(safe-area-inset-top, 0px) + 16px);transform:translateX(-50%);z-index:1100;display:flex;align-items:center;gap:12px;max-width:calc(100vw - 32px);width:-moz-max-content;width:max-content;cursor:pointer;background:#fff;border-radius:var(--r-pill,999px);padding:10px 22px 10px 12px;box-shadow:0 12px 32px -10px rgba(76,32,71,.4),0 0 0 1px rgba(76,32,71,.06);animation:suToast .45s cubic-bezier(.2,1.2,.4,1)}.su-toast-dot{width:30px;height:30px;border-radius:50%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:var(--su-fill,linear-gradient(135deg,#cce3cd,#f1ffd9));color:var(--su-ink,#4c2047);animation:suPop .5s cubic-bezier(.2,1.5,.4,1) .1s backwards}.su-toast-title{display:block;font-family:Juana,Playfair Display,Georgia,serif;font-weight:200;font-size:17px;line-height:1.2;color:#4c2047}.su-toast-line{display:block;font-family:Cerebri Sans,sans-serif;font-size:12.5px;color:rgba(76,32,71,.7)}.su-celebrate{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(40,18,38,.5);animation:suFade .25s ease}.su-confetti{position:fixed;inset:0;width:100vw;height:100dvh;pointer-events:none;z-index:1}.su-celebrate-card{position:relative;z-index:2;width:100%;max-width:400px;max-height:100%;overflow-y:auto;text-align:center;background:#fff;border-radius:var(--r-lg,20px);padding:34px 26px 28px;animation:suRise .5s cubic-bezier(.2,1.2,.4,1)}.su-burst{width:104px;height:104px;margin:0 auto 18px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#c4735c,#8a5a86);box-shadow:0 16px 36px -12px rgba(138,90,134,.8);animation:suPop .7s cubic-bezier(.2,1.6,.4,1) .15s backwards}.su-celebrate-title{font-family:Juana,Playfair Display,Georgia,serif;font-weight:200;font-style:italic;font-size:32px;line-height:1.15;margin:0 0 12px}.su-celebrate-line{font-size:16px;color:#3a2438;margin:0 0 10px}.su-celebrate-detail,.su-celebrate-line{font-family:Cerebri Sans,sans-serif;line-height:1.5}.su-celebrate-detail{font-size:13.5px;color:rgba(76,32,71,.65);margin:0 0 22px}@keyframes suFade{0%{opacity:0}to{opacity:1}}@keyframes suRise{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}@keyframes suPop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@keyframes suToast{0%{opacity:0;transform:translate(-50%,-16px)}to{opacity:1;transform:translate(-50%)}}@keyframes suShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.su-burst,.su-celebrate,.su-celebrate-card,.su-chip-loading,.su-sheet,.su-sheet-wrap,.su-toast,.su-toast-dot{animation:none}}.su-starters{width:100%}