:root{--tone-good: #5f3f98;--tone-good-bar: #7a5bb5;--tone-neutral: #665a73;--tone-neutral-bar: #b3a4c9;--tone-caution: #9c4330;--tone-caution-bar: #d98e70}.profile-picker{border:0;margin:0 0 22px;padding:0;min-width:0}.profile-picker>legend{font-size:13px;font-weight:600;margin-bottom:10px;padding:0}.profile-picker-options{display:flex;gap:8px;overflow-x:auto;padding:3px 3px 8px;margin:0 -3px;scrollbar-width:thin;scroll-snap-type:x proximity}.profile-choice{flex:0 0 auto;scroll-snap-align:start;display:flex;align-items:center;gap:9px;min-height:52px;max-width:190px;padding:7px 14px 7px 8px;border:1px solid #e3d9ec;border-radius:14px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}.profile-choice:hover{border-color:#c9b6de}.profile-choice.selected{border-color:var(--purple);background:var(--purple-soft);box-shadow:inset 0 0 0 1px var(--purple)}.profile-choice:focus-within{outline:3px solid #aa8bd4;outline-offset:2px}.profile-choice-mark{flex:0 0 auto;width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#efe7f8;color:var(--purple-dark);font-size:13px;font-weight:700}.profile-choice.selected small{color:#5a4c6a}.profile-choice.selected .profile-choice-mark{background:var(--purple);color:#fff}.profile-choice.add .profile-choice-mark{background:#f6f2ea;color:#6d5a3f}.profile-choice-text{display:flex;flex-direction:column;min-width:0;line-height:1.35}.profile-choice-text strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-choice-text small{font-size:11px;color:var(--muted);white-space:nowrap}.save-profile{border:1px solid var(--line);background:#fff;border-radius:18px;margin:22px 0;overflow:hidden}.save-profile-toggle{width:100%;display:flex;align-items:center;gap:12px;padding:16px 18px;min-height:64px;text-align:left;color:var(--ink)}.save-profile-toggle>svg:first-child{flex:0 0 auto;color:var(--purple)}.save-profile-toggle>span{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.save-profile-toggle strong{font-size:14px}.save-profile-toggle small{font-size:12px;color:var(--muted);line-height:1.6;word-break:keep-all}.save-profile-chevron{flex:0 0 auto;color:var(--muted);transition:transform .2s}.save-profile-toggle[aria-expanded=true] .save-profile-chevron{transform:rotate(180deg)}.save-profile-form{padding:4px 18px 18px;border-top:1px solid var(--line)}.save-profile-form .field{margin:16px 0 12px}.save-profile.saved{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;padding:12px 18px;background:#f7f3fb;border-color:#e6dbef}.save-profile.saved>svg{color:var(--purple)}.save-profile.saved>p{flex:1;font-size:13px;line-height:1.7;min-width:180px}.relation-choices{border:0;margin:8px 0 12px;padding:0;min-width:0}.relation-choices>legend{font-size:13px;font-weight:600;margin-bottom:10px;padding:0}.relation-choices>div{display:flex;flex-wrap:wrap;gap:7px}.relation-choices .chip{display:inline-flex;align-items:center;cursor:pointer;color:#6e5c7b}.relation-choices .chip.selected{color:#fff}.relation-choices .chip:focus-within{outline:3px solid #aa8bd4;outline-offset:2px}.relation-choices .field-help{margin:10px 0 0}.check-label.save-consent{align-items:flex-start;line-height:1.75;margin:12px 0 8px}.check-label.save-consent input,.move-offer .check-label input{margin-top:5px;flex:0 0 auto}.save-profile-actions{display:flex;margin-top:14px}.save-profile-actions>.button{flex:1}.text-link.inline{display:inline;min-height:0;font-size:inherit;text-decoration:underline;text-underline-offset:3px}.today-card{margin:22px 0 8px;padding:20px;border-radius:20px;background:linear-gradient(160deg,#f5effb,#fdfbf7);border:1px solid #e6dcef}.today-card-eyebrow{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#6b4f8c}.today-card-body{display:flex;align-items:center;gap:16px;margin-top:14px}.today-card-body>div{min-width:0}.today-card-owner{font-size:12px;color:var(--muted);line-height:1.5}.today-card h2{font-family:var(--serif);font-weight:600;font-size:19px;line-height:1.55;letter-spacing:-.4px;margin:2px 0 4px}.today-card.empty h2{margin-top:10px}.today-card.empty>p{font-size:13px;color:#6f6479;line-height:1.8}.today-card-advice{font-size:12px;color:#6f6479;line-height:1.75}.today-card-link{display:flex;align-items:center;justify-content:space-between;min-height:44px;margin-top:14px;padding-top:10px;border-top:1px solid #e3d8ec;font-size:13px;font-weight:600;color:var(--purple-dark)}.today-card-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.today-card-actions>.button{flex:1 1 172px;min-height:48px;white-space:nowrap}.score-ring{position:relative;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center}.score-ring svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;transform:rotate(-90deg)}.score-ring circle{fill:none;stroke-width:7}.score-ring-track{stroke:#e9e1f1}.score-ring-value{stroke:var(--purple);stroke-linecap:round;transition:stroke-dashoffset .6s ease}.score-ring strong{position:relative;font-size:22px;font-weight:700;color:var(--purple-dark);font-variant-numeric:tabular-nums}.score-ring.placeholder{width:76px;height:76px;border-radius:50%;border:7px solid #ece5f3}.score-index{flex:0 0 auto;display:inline-grid;justify-items:center;gap:4px}.score-index>small{font-size:11px;font-weight:600;line-height:1.3;color:#6f6479;white-space:nowrap}.today-score-note,.today-week-hint{margin:10px 2px 16px;font-size:12px;line-height:1.65;color:#6f6479;word-break:keep-all}.today-week-hint{margin:4px 0 10px}.today-page .page-heading{margin-bottom:22px}.today-date-nav{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;padding:8px;border-radius:16px;background:#fff;border:1px solid var(--line)}.today-date-nav .icon-button:disabled{opacity:.35}.today-date{text-align:center;display:flex;flex-direction:column;line-height:1.5}.today-date strong{font-size:16px}.today-date span{font-size:12px;color:var(--muted)}.today-back{display:flex;margin:6px auto 0;font-size:12px}.today-status{display:flex;align-items:center;justify-content:center;gap:8px;margin:28px 0;font-size:13px;color:var(--muted)}.today-status.error{flex-direction:column;padding:18px;border-radius:14px;background:#fff0f2;color:#9c4155;text-align:center}.today-hero{display:flex;align-items:center;gap:18px;margin:18px 0 16px;padding:22px 20px;border-radius:22px;background:linear-gradient(155deg,#efe6f9,#fbf8f3);border:1px solid #e3d7ee}.today-hero .score-ring strong{font-size:30px}.today-hero>div{min-width:0}.today-hero-meta{font-size:12px;color:#6b5a7c;font-weight:600}.today-hero h2{font-family:var(--serif);font-size:21px;line-height:1.5;font-weight:600;letter-spacing:-.5px;margin:4px 0 8px}.today-advice{font-size:13px;color:#5d5068;line-height:1.75}.today-advice>span,.today-tip>span{display:block;font-size:11px;font-weight:700;color:var(--purple-dark);letter-spacing:.2px;margin-bottom:2px}.today-bars{list-style:none;margin:0 0 8px;padding:6px 14px;border-radius:18px;background:#fff;border:1px solid var(--line)}.today-bars a{display:grid;grid-template-columns:58px 1fr 34px;align-items:center;gap:12px;min-height:44px}.today-bar-label{font-size:13px;font-weight:600}.today-bar{height:8px;border-radius:8px;background:#eee8f3;overflow:hidden}.today-bar>span{display:block;height:100%;border-radius:8px;background:var(--tone-neutral-bar)}[data-tone=good] .today-bar>span{background:var(--tone-good-bar)}[data-tone=caution] .today-bar>span{background:var(--tone-caution-bar)}.today-bars strong{text-align:right;font-variant-numeric:tabular-nums;font-size:14px}.today-areas{display:flex;flex-direction:column;gap:12px;margin:16px 0}.today-area{padding:18px 18px 16px;border-radius:18px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--tone-neutral-bar);scroll-margin-top:110px}.today-area[data-tone=good]{border-left-color:var(--tone-good-bar)}.today-area[data-tone=caution]{border-left-color:var(--tone-caution-bar)}.today-area header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.today-area h2{font-size:16px}.today-area>p{font-size:14px;line-height:1.85;color:#43384f}.today-chip{flex:0 0 auto;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600;background:#f1ecf6;color:var(--tone-neutral)}[data-tone=good] .today-chip{background:#efe7fb;color:var(--tone-good)}[data-tone=caution] .today-chip{background:#fcefe9;color:var(--tone-caution)}.today-tip{margin-top:10px;padding:10px 12px;border-radius:12px;background:#faf7f1;font-size:13px;line-height:1.7;color:#4e4358}.today-lucky,.today-week{margin:20px 0;padding:18px;border-radius:18px;background:#fff;border:1px solid var(--line)}.today-lucky h2,.today-week h2{font-size:16px}.today-lucky dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 0}.today-lucky dl>div{padding:12px;border-radius:14px;background:#faf7fc;min-width:0}.today-lucky dl>div.wide{grid-column:1 / -1}.today-lucky dt{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);font-weight:600}.today-lucky dd{display:flex;align-items:center;gap:8px;margin:6px 0 0;font-size:14px;font-weight:600;line-height:1.5;word-break:keep-all;flex-wrap:wrap}.lucky-swatch{width:18px;height:18px;border-radius:50%;border:1px solid #0000002e;flex:0 0 auto}.today-lucky .small-note,.today-share+.small-note{justify-content:flex-start;text-align:left}.today-week-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.today-strip{list-style:none;padding:0;margin:12px 0 0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.today-strip button{width:100%;min-height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border-radius:12px;border:1px solid #ece5f1;background:#fcfbfd;font-variant-numeric:tabular-nums}.today-strip button span{font-size:11px;color:var(--muted)}.today-strip button strong{font-size:15px}.today-strip button small{font-size:11px;font-weight:700;color:var(--tone-neutral)}.today-strip button[data-tone=good] small{color:var(--tone-good)}.today-strip button[data-tone=caution] small{color:var(--tone-caution)}.today-strip button[aria-pressed=true] span{color:#5a4c6a}.today-strip button[aria-pressed=true]{border-color:var(--purple);background:var(--purple-soft);box-shadow:inset 0 0 0 1px var(--purple)}.today-suggestion{display:block;margin:20px 0;padding:20px;border-radius:20px;background:#2c2140;color:#fff}.today-suggestion .eyebrow{color:#d6c6ec}.today-suggestion strong{display:block;font-size:15px;line-height:1.7;word-break:keep-all}.today-suggestion-price{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:12px;border-top:1px solid #ffffff2b;font-size:13px;color:#eadff7}.today-basis summary{cursor:pointer;font-size:14px;font-weight:600;min-height:44px;display:flex;align-items:center}.today-basis ul{margin:8px 0 0;padding-left:18px;font-size:13px;line-height:1.85;color:#4d4258}.today-share{margin-top:8px;gap:8px}.today-disclaimer strong{color:var(--ink)}.today-empty h2{font-size:17px;line-height:1.6}.today-empty p{font-size:13px;line-height:1.8;margin-top:8px}.zodiac-preview ol{margin:10px 0 4px;padding-left:20px;font-size:13px;line-height:1.9}.zodiac-note{margin:-8px 0 16px}.zodiac-grid{list-style:none;padding:0;margin:0;display:grid;gap:12px}.zodiac-card{padding:16px 18px;border-radius:18px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--tone-neutral-bar)}.zodiac-card[data-tone=good]{border-left-color:var(--tone-good-bar)}.zodiac-card[data-tone=caution]{border-left-color:var(--tone-caution-bar)}.zodiac-card header{display:flex;align-items:center;gap:12px}.zodiac-card header>div{flex:1;min-width:0}.zodiac-card h2{font-size:16px;line-height:1.4}.zodiac-card header small{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.zodiac-hanja{width:40px;height:40px;flex:0 0 auto;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:20px;background:#f1eaf8;color:var(--purple-dark)}.zodiac-headline{display:block;margin:12px 0 4px;font-size:15px;font-family:var(--serif)}.zodiac-card>p{font-size:13px;line-height:1.8;color:#4a3f55;margin-top:4px}.today-chart-link{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 22px;padding:16px 18px;min-height:64px;border-radius:18px;background:#2c2140;color:#fff}.today-chart-link span{display:flex;flex-direction:column;gap:2px}.today-chart-link strong{font-size:14px}.today-chart-link small{font-size:12px;color:#e3d8f1;line-height:1.6}.saved-profiles-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.saved-profiles-head h2{margin-bottom:8px}.saved-profile-list{list-style:none;padding:0;margin:6px 0 0}.saved-profile-list>li{padding:12px 0;border-bottom:1px solid var(--line)}.saved-profile-list>li:last-child{border-bottom:0}.saved-profile-info{display:flex;flex-direction:column;gap:2px;min-width:0}.saved-profile-info strong{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:14px;word-break:break-all}.saved-profile-info small{font-size:12px;color:var(--muted);line-height:1.6}.relation-badge{padding:1px 8px;border-radius:12px;font-size:11px;font-weight:600;background:#f0e9f7;color:var(--purple-dark)}.relation-badge.device{background:#f6f1e7;color:#6b5634}.saved-profile-actions{display:flex;flex-wrap:wrap;gap:2px 14px;margin-top:2px}.saved-profile-actions .text-link{font-size:12px;gap:4px}.text-link.danger{margin-top:0;color:#9d4a63}.saved-profiles-foot{margin-top:14px}.saved-profiles-foot>.button{gap:8px;min-height:46px}.saved-profiles-foot .field-help{margin:10px 0 0}.move-offer{padding:14px;margin:8px 0 12px;border-radius:14px;background:#f7f2fb;border:1px solid #e6dbef}section.panel.move-offer,.panel>.move-offer:only-child{margin:0}.move-offer>p{font-size:13px;line-height:1.75;color:var(--ink)}.move-offer .check-label{align-items:flex-start;margin:10px 0 4px}.profile-dialog .form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.profile-dialog h2{font-size:17px;margin-bottom:8px;line-height:1.5}.profile-dialog>p,.profile-dialog form>p.muted{font-size:13px;line-height:1.75}.profile-dialog .field{margin:16px 0 10px}.device-profiles-setting .danger{margin-top:12px}@media(max-width:380px){.today-hero{flex-direction:column;text-align:center}.today-strip{gap:3px}.today-strip button{min-height:66px}}@media(prefers-reduced-motion:reduce){.score-ring-value,.save-profile-chevron,.profile-choice{transition:none}}[data-reduced-motion=true] .score-ring-value,[data-reduced-motion=true] .save-profile-chevron,[data-reduced-motion=true] .profile-choice{transition:none}
