.ym .state{position:relative}.ym .state:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:currentColor;opacity:0;transition:opacity .12s ease;pointer-events:none}.ym .state:hover:after{opacity:var(--state-hover)}.ym .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 24px;border:none;cursor:pointer;border-radius:var(--r-full);font-family:var(--font-body);font-weight:700;font-size:14px;letter-spacing:.1px;position:relative;overflow:hidden;transition:box-shadow .15s ease,background .15s ease;white-space:nowrap;text-decoration:none}.ym .btn .ic{width:18px;height:18px;display:inline-flex}.ym .btn:has(.ic:first-child){padding-left:16px}.ym .btn-filled{background:var(--primary);color:var(--on-primary)}.ym .btn-filled:hover{box-shadow:var(--elev-1)}.ym .btn-filled:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--on-primary);opacity:0;transition:opacity .12s}.ym .btn-filled:hover:after{opacity:var(--state-hover)}.ym .btn-tonal{background:var(--secondary-container);color:var(--on-secondary-container)}.ym .btn-tonal:hover{box-shadow:var(--elev-1)}.ym .btn-elevated{background:var(--surface-container-low);color:var(--primary);box-shadow:var(--elev-1)}.ym .btn-elevated:hover{box-shadow:var(--elev-2)}.ym .btn-outlined{background:transparent;color:var(--primary);border:1px solid var(--outline-variant)}.ym .btn-outlined:hover{background:color-mix(in srgb,var(--primary) 8%,transparent)}.ym .btn-text{background:transparent;color:var(--primary);padding:0 12px}.ym .btn-text:hover{background:color-mix(in srgb,var(--primary) 8%,transparent)}.ym .btn-magic{background:linear-gradient(135deg,var(--magic-1),var(--primary));color:#fff;box-shadow:0 2px 12px var(--magic-glow)}.ym .btn-magic:hover{box-shadow:0 4px 18px var(--magic-glow)}.ym .btn-sm{height:32px;padding:0 16px;font-size:13px}.ym .btn-lg{height:52px;padding:0 28px;font-size:16px;border-radius:var(--r-full)}.ym .btn-block{width:100%}.ym .btn:disabled{background:color-mix(in srgb,var(--on-surface) 12%,transparent);color:color-mix(in srgb,var(--on-surface) 38%,transparent);box-shadow:none;cursor:not-allowed}.ym .icon-btn{width:40px;height:40px;border-radius:var(--r-full);border:none;cursor:pointer;background:transparent;color:var(--on-surface-variant);display:inline-flex;align-items:center;justify-content:center;position:relative;transition:background .12s}.ym .icon-btn:hover{background:color-mix(in srgb,var(--on-surface) 8%,transparent)}.ym .icon-btn-filled{background:var(--primary);color:var(--on-primary)}.ym .icon-btn-tonal{background:var(--secondary-container);color:var(--on-secondary-container)}.ym .fab{height:56px;min-width:56px;padding:0 20px;border:none;cursor:pointer;border-radius:var(--r-lg);background:var(--primary-container);color:var(--on-primary-container);box-shadow:var(--elev-3);display:inline-flex;align-items:center;justify-content:center;gap:12px;font-family:var(--font-body);font-weight:700;font-size:14px}.ym .fab-magic{background:linear-gradient(135deg,var(--magic-1),var(--primary));color:#fff;box-shadow:0 6px 20px var(--magic-glow)}.ym .card{border-radius:var(--r-lg);padding:16px;position:relative}.ym .card-elevated{background:var(--surface-container-low);box-shadow:var(--elev-1)}.ym .card-filled{background:var(--surface-container-highest)}.ym .card-outlined{background:var(--surface);border:1px solid var(--outline-variant)}.ym .appbar{height:64px;display:flex;align-items:center;gap:4px;padding:0 8px 0 4px;background:var(--surface);color:var(--on-surface)}.ym .appbar.scrolled{background:var(--surface-container)}.ym .appbar .appbar-title{font-family:var(--font-display);font-weight:600;font-size:22px;flex:1}.ym .appbar.center .appbar-title{text-align:center}.ym .navbar{height:80px;background:var(--surface-container);display:flex;align-items:stretch;justify-content:space-between;padding:12px 4px 16px;gap:0}.ym .navdest{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;border:none;background:transparent;color:var(--on-surface-variant);font-family:var(--font-body);font-weight:700;font-size:11px;letter-spacing:.2px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ym .navdest .nav-ic-wrap{width:100%;max-width:56px;height:32px;border-radius:var(--r-full);display:flex;align-items:center;justify-content:center;position:relative;transition:background .15s}.ym .navdest.active{color:var(--on-surface)}.ym .navdest.active .nav-ic-wrap{background:var(--secondary-container);color:var(--on-secondary-container)}.ym .navdest .nav-ic{width:24px;height:24px}.ym .navdest .nav-badge{position:absolute;top:2px;right:12px;min-width:16px;height:16px;padding:0 4px;border-radius:var(--r-full);background:var(--error);color:var(--on-error);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.ym .navrail{width:88px;background:var(--surface);display:flex;flex-direction:column;align-items:center;padding:20px 0;gap:8px}.ym .navrail.drawer{width:240px;align-items:stretch;padding:20px 12px}.ym .rail-dest{display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;border:none;background:transparent;color:var(--on-surface-variant);font-family:var(--font-body);font-weight:700;font-size:12px}.ym .rail-dest .nav-ic-wrap{width:56px;height:32px;border-radius:var(--r-full);display:flex;align-items:center;justify-content:center;transition:background .15s;position:relative}.ym .rail-dest.active{color:var(--on-surface)}.ym .rail-dest.active .nav-ic-wrap{background:var(--secondary-container);color:var(--on-secondary-container)}.ym .drawer-item{display:flex;align-items:center;gap:12px;height:56px;padding:0 16px;border-radius:var(--r-full);cursor:pointer;color:var(--on-surface-variant);font-family:var(--font-body);font-weight:700;font-size:14px;border:none;background:transparent;width:100%;text-align:left}.ym .drawer-item.active{background:var(--secondary-container);color:var(--on-secondary-container)}.ym .drawer-item:hover:not(.active){background:color-mix(in srgb,var(--on-surface) 6%,transparent)}.ym .drawer-item .nav-badge{margin-left:auto;background:var(--error);color:var(--on-error);border-radius:var(--r-full);min-width:18px;height:18px;padding:0 5px;font-size:11px;display:flex;align-items:center;justify-content:center}.ym .chip{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 16px;border-radius:var(--r-sm);border:1px solid var(--outline-variant);background:transparent;color:var(--on-surface-variant);font-family:var(--font-body);font-weight:700;font-size:14px;cursor:pointer;white-space:nowrap;flex-shrink:0}.ym .chip .chip-ic{width:18px;height:18px}.ym .chip.selected{background:var(--secondary-container);color:var(--on-secondary-container);border-color:transparent}.ym .chip.elevated{border:none;box-shadow:var(--elev-1);background:var(--surface-container-low)}.ym .field{position:relative}.ym .field-filled{background:var(--surface-container-highest);border-radius:var(--r-xs) var(--r-xs) 0 0;border-bottom:1px solid var(--on-surface-variant);padding:8px 16px}.ym .field-filled.focused{border-bottom:2px solid var(--primary);padding-bottom:7px}.ym .field-outlined{background:transparent;border:1px solid var(--outline);border-radius:var(--r-xs);padding:14px 16px}.ym .field-outlined.focused{border:2px solid var(--primary);padding:13px 15px}.ym .field .field-label{font-family:var(--font-body);font-weight:600;font-size:12px;color:var(--on-surface-variant)}.ym .field.focused .field-label{color:var(--primary)}.ym .field input{border:none;background:transparent;outline:none;width:100%;font-family:var(--font-body);font-weight:600;font-size:16px;color:var(--on-surface)}.ym .field input::placeholder{color:var(--on-surface-variant);opacity:.7}.ym .list-item{display:flex;align-items:center;gap:16px;padding:8px 16px;min-height:56px;cursor:pointer;position:relative}.ym .list-item:hover{background:color-mix(in srgb,var(--on-surface) 5%,transparent)}.ym .list-leading{width:40px;height:40px;border-radius:var(--r-full);display:flex;align-items:center;justify-content:center;background:var(--primary-container);color:var(--on-primary-container);flex-shrink:0}.ym .list-text{flex:1;min-width:0}.ym .list-headline{font-family:var(--font-body);font-weight:700;font-size:16px;color:var(--on-surface)}.ym .list-support{font-family:var(--font-body);font-weight:500;font-size:14px;color:var(--on-surface-variant)}.ym .switch{width:52px;height:32px;border-radius:var(--r-full);background:var(--surface-container-highest);border:2px solid var(--outline);position:relative;cursor:pointer;flex-shrink:0;transition:all .15s}.ym .switch:after{content:"";position:absolute;width:16px;height:16px;border-radius:var(--r-full);background:var(--outline);top:6px;left:6px;transition:all .18s cubic-bezier(.2,0,0,1)}.ym .switch.on{background:var(--primary);border-color:var(--primary)}.ym .switch.on:after{width:24px;height:24px;background:var(--on-primary);top:2px;left:22px}.ym .segmented{display:inline-flex;border:1px solid var(--outline);border-radius:var(--r-full);overflow:hidden;height:40px;max-width:100%}.ym .segmented .seg{display:flex;align-items:center;justify-content:center;gap:6px;padding:0 14px;cursor:pointer;border:none;background:transparent;min-width:0;color:var(--on-surface);font-family:var(--font-body);font-weight:700;font-size:14px;border-right:1px solid var(--outline);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ym .segmented .seg:last-child{border-right:none}.ym .segmented .seg.selected{background:var(--secondary-container);color:var(--on-secondary-container)}.ym .linear-prog{height:4px;border-radius:var(--r-full);background:var(--surface-container-highest);overflow:hidden}.ym .linear-prog>i{display:block;height:100%;background:var(--primary);border-radius:var(--r-full)}.ym .linear-prog.thick{height:8px}.ym .pill{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:var(--r-full);font-family:var(--font-body);font-weight:700;font-size:12px;letter-spacing:.4px;white-space:nowrap;background:var(--secondary-container);color:var(--on-secondary-container)}.ym .pill-primary{background:var(--primary-container);color:var(--on-primary-container)}.ym .pill-magic{background:color-mix(in srgb,var(--magic-1) 18%,transparent);color:var(--magic-1)}.ym .pill-gold{background:color-mix(in srgb,var(--gold) 22%,transparent);color:color-mix(in srgb,var(--gold) 80%,var(--on-surface))}.ym .pill-success{background:var(--success-container);color:var(--on-success-container)}.ym .pill-error{background:var(--error-container);color:var(--on-error-container)}.ym .pill-outline{background:transparent;border:1px solid var(--outline-variant);color:var(--on-surface-variant)}.ym .scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;align-items:center;justify-content:center;padding:24px;z-index:40}.ym .dialog{background:var(--surface-container-high);border-radius:var(--r-xl);padding:24px;max-width:360px;width:100%;box-shadow:var(--elev-3);color:var(--on-surface)}.ym .dialog-icon{color:var(--primary);display:flex;justify-content:center;margin-bottom:16px}.ym .dialog-title{font-family:var(--font-display);font-weight:600;font-size:24px;text-align:center;margin-bottom:16px}.ym .dialog-body{font-family:var(--font-body);font-weight:500;font-size:14px;line-height:20px;color:var(--on-surface-variant)}.ym .dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}.ym .sheet-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;align-items:flex-end;z-index:40}.ym .bottom-sheet{background:var(--surface-container-low);border-radius:var(--r-xl) var(--r-xl) 0 0;width:100%;padding:12px 0 24px;box-shadow:var(--elev-3);max-height:88%;overflow-y:auto}.ym .sheet-handle{width:32px;height:4px;border-radius:var(--r-full);background:var(--outline-variant);margin:0 auto 16px}.ym .side-sheet{background:var(--surface-container-low);border-radius:var(--r-lg);padding:20px;box-shadow:var(--elev-2)}.ym .divider{height:1px;background:var(--outline-variant);border:none;margin:0}.ym .divider-inset{margin-left:16px}.ym .snackbar{background:var(--inverse-surface);color:var(--inverse-on-surface);border-radius:var(--r-xs);padding:14px 16px;display:flex;align-items:center;gap:12px;box-shadow:var(--elev-3);font-family:var(--font-body);font-weight:600;font-size:14px;min-width:280px}.ym .snackbar .snack-action{color:var(--inverse-primary);font-weight:700;cursor:pointer}.ym .tappable{text-decoration:underline dotted;text-underline-offset:3px;text-decoration-color:var(--primary);cursor:pointer}
