.payx{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,5vw,72px);align-items:center;margin-top:40px}.payx-points{display:grid;gap:26px;margin:0}.payx-points dt{font-family:var(--serif);font-size:19px;font-weight:600;color:var(--ink);margin-bottom:6px}.payx-points dd{margin:0;color:var(--ink-soft);line-height:1.6}.payx-stage{--p: 0;position:relative;isolation:isolate;padding:48px 40px 64px 24px}.payx-stage:before{content:"";position:absolute;z-index:-1;top:12px;right:0;bottom:20px;left:0;border-radius:32px;background:radial-gradient(80% 70% at 80% 10%,rgba(255,255,255,.85),transparent 60%),linear-gradient(160deg,#e9f5ee,#fff4dc 60%,#fde6d6)}.payx-board{background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-md);padding:18px 18px 20px}.payx-board-head{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}.payx-board-head strong{font-size:15px;color:var(--ink)}.payx-board-head span{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}.payx-grid{display:grid;gap:7px;align-items:center}.payx-row{display:contents}.payx-month{font-size:11.5px;font-weight:600;color:var(--muted);text-align:center;padding:3px 0;border-radius:6px}.payx-month.is-now{color:var(--ink);background:var(--subtle)}.payx-family{font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.payx-cell{display:grid;place-items:center;aspect-ratio:1.25;border-radius:8px;border:1px solid transparent}.payx-cell svg,.payx-chip-dot svg{width:62%;height:62%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.payx-cell.c-p{background:var(--sage-light);color:var(--sage-ink)}.payx-cell.c-h{background:linear-gradient(90deg,var(--teal-light) 50%,var(--paper) 50%);border-color:#bfe5ea}.payx-cell.c-o{background:var(--amber-light);border-color:#f1d58b}.payx-cell.c-d{background:var(--paper);border-color:var(--line)}.payx-cell.c-n{background:transparent;border:1px dashed var(--line)}.payx-float{position:absolute;z-index:1;transform:translate3d(0,calc(var(--p) * var(--depth, 0px)),0);will-change:transform}.payx-float-paid{top:8px;right:4px;--depth: -36px}.payx-float-owed{bottom:18px;left:-8px;--depth: 44px}.payx-float-qr{bottom:-6px;right:0;--depth: 70px}.payx-chip,.payx-qr{display:flex;align-items:center;gap:10px;background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-md);animation:payx-bob 7s ease-in-out infinite}.payx-chip{padding:10px 14px 10px 10px}.payx-float-owed .payx-chip{animation-duration:8.5s;animation-delay:-3s}.payx-float-qr .payx-qr{animation-duration:9.5s;animation-delay:-5.5s}.payx-chip strong,.payx-qr strong{display:block;font-size:13.5px;color:var(--ink)}.payx-chip small,.payx-qr small{display:block;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.payx-chip-dot{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;flex:none;font-weight:700;font-size:15px}.payx-chip-dot.is-paid{background:var(--sage-light);color:var(--sage-ink)}.payx-chip-dot.is-owed{background:var(--amber-light);color:var(--amber-ink)}.payx-qr{padding:10px 16px 10px 10px;max-width:250px}.payx-qr-svg{width:64px;height:64px;flex:none;color:var(--ink);border-radius:8px;box-shadow:inset 0 0 0 1px var(--line-light)}@keyframes payx-bob{0%,to{transform:translate(0) rotate(0)}50%{transform:translateY(-8px) rotate(-.4deg)}}.payx-stage.is-armed .payx-cell{opacity:0;scale:.55}.payx-stage.is-armed .payx-chip,.payx-stage.is-armed .payx-qr{opacity:0;translate:0 14px}.payx-stage.is-armed.is-in .payx-cell{opacity:1;scale:1;transition:opacity .4s ease,scale .5s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--i) * 26ms)}.payx-stage.is-armed.is-in .payx-chip,.payx-stage.is-armed.is-in .payx-qr{opacity:1;translate:0 0;transition:opacity .5s ease .55s,translate .7s cubic-bezier(.22,1,.36,1) .55s}.payx-stage.is-armed.is-in .payx-float-owed .payx-chip{transition-delay:.75s}.payx-stage.is-armed.is-in .payx-float-qr .payx-qr{transition-delay:.95s}.payx-flow{grid-column:1 / -1;margin-top:8px}.payx-flow-title{margin:0 0 18px;font-family:var(--serif);font-size:19px;font-weight:600;color:var(--ink)}.payx-steps{--dot: 34px;position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0;padding:0;list-style:none}.payx-steps:before{content:"";position:absolute;z-index:0;top:calc(var(--dot) / 2 - 1px);left:calc(var(--dot) / 2);right:12%;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--line),var(--sage) 70%,var(--amber-light));transform-origin:left center}.payx-step{position:relative;z-index:1}.payx-step-dot{display:grid;place-items:center;width:var(--dot);height:var(--dot);margin-bottom:12px;border-radius:50%;font-weight:700;font-size:14px;font-variant-numeric:tabular-nums;background:var(--paper);color:var(--ink-soft);box-shadow:0 0 0 1px var(--line),0 0 0 5px var(--subtle)}.payx-step:nth-child(2) .payx-step-dot{background:var(--teal-light);color:var(--teal-ink);box-shadow:0 0 0 1px #bfe5ea,0 0 0 5px var(--subtle)}.payx-step:nth-child(3) .payx-step-dot{background:var(--sage);color:#fff;box-shadow:0 0 0 5px var(--subtle)}.payx-step:nth-child(4) .payx-step-dot{background:var(--amber-light);color:var(--amber-ink);box-shadow:0 0 0 1px #f1d58b,0 0 0 5px var(--subtle)}.payx-step strong{display:block;font-size:15.5px;color:var(--ink);margin-bottom:4px}.payx-step p{margin:0;color:var(--ink-soft);font-size:14.5px;line-height:1.55}.payx-steps.is-armed:before{transform:scaleX(0)}.payx-steps.is-armed .payx-step-dot{scale:.4;opacity:0}.payx-steps.is-armed .payx-step strong,.payx-steps.is-armed .payx-step p{opacity:0;translate:0 8px}.payx-steps.is-armed.is-in:before{transform:none;transition:transform 1.6s cubic-bezier(.45,0,.2,1) .1s}.payx-steps.is-armed.is-in .payx-step-dot{scale:1;opacity:1;transition:opacity .3s ease,scale .5s cubic-bezier(.34,1.56,.64,1);transition-delay:calc(.1s + var(--k) * .42s)}.payx-steps.is-armed.is-in .payx-step strong,.payx-steps.is-armed.is-in .payx-step p{opacity:1;translate:0 0;transition:opacity .45s ease,translate .55s cubic-bezier(.22,1,.36,1);transition-delay:calc(.22s + var(--k) * .42s)}@media(max-width:900px){.payx-steps{grid-template-columns:1fr;gap:18px}.payx-steps:before{top:calc(var(--dot) / 2);bottom:calc(var(--dot) / 2);left:calc(var(--dot) / 2 - 1px);right:auto;width:2px;height:auto;background:linear-gradient(180deg,var(--line),var(--sage) 70%,var(--amber-light));transform-origin:center top}.payx-steps.is-armed:before{transform:scaleY(0)}.payx-step{display:grid;grid-template-columns:var(--dot) minmax(0,1fr);column-gap:14px}.payx-step-dot{grid-row:span 2;margin-bottom:0}.payx-step strong{margin-top:6px}}@media(max-width:900px){.payx{grid-template-columns:1fr}.payx-stage{order:-1;padding:52px 8px 92px}.payx-float-paid{top:-6px;right:8px}.payx-float-owed{bottom:34px;left:4px}.payx-float-qr{bottom:0;right:8px}}@media(max-width:480px){.payx-board{padding:14px 12px 16px}.payx-grid{gap:5px}.payx-family{font-size:12px}.payx-month{font-size:10.5px}.payx-chip strong,.payx-qr strong{font-size:12.5px}.payx-stage{padding-bottom:112px}.payx-qr{flex-direction:column;gap:6px;padding:10px 12px 9px;text-align:center;max-width:128px}.payx-qr small{display:none}.payx-qr-svg{width:58px;height:58px}}@media(prefers-reduced-motion:reduce){.payx-float{transform:none}}:root{--pd-coral: #F47B54;--pd-coral-dk: #D65F38;--pd-coral-lt: #FDEAE2;--pd-teal: #4DB6C4;--pd-teal-dk: #2E97A6;--pd-teal-lt: #DFF4F5;--pd-amber: #F5C244;--pd-amber-dk: #C99A1A;--pd-amber-lt: #FFF4DC;--pd-sage: #5BB87A;--pd-sage-dk: #3D9059;--pd-sage-lt: #E4F3EA;--pd-lavender: #8B6FD4;--pd-lavender-dk: #6A4EBB;--pd-lavender-lt: #EEE8FA;--pd-danger: #E8615A;--pd-danger-bg: #FDE8E7;--pd-danger-text: #B83830;--pd-bg-page: #F9F5F1;--pd-bg-card: #FFFFFF;--pd-bg-subtle: #F3EDE8;--pd-bg-hover: #FDF8F5;--pd-border: #E8E2DC;--pd-border-light: #F0EBE6;--pd-border-input: #D5CEC8;--pd-text: #1A1A2E;--pd-text-secondary: #7A7A8E;--pd-text-label: #5A5A6E;--pd-text-muted: #9A95A4;--pd-text-dim: #ADADBE;--pd-placeholder: #C0BAC8;--pd-mood-tired: #7A7A8E;--pd-mood-tired-lt: #F0EFF4;--pd-mood-tired-ink: #5A5A6E;--pd-shadow-sm: 0 1px 4px rgba(140,123,110,.06), 0 4px 12px rgba(140,123,110,.08);--pd-shadow-card: 0 2px 8px rgba(140,123,110,.08), 0 12px 32px rgba(140,123,110,.1);--pd-overlay: rgba(26,26,46,.4);--pd-focus-shadow: rgba(244,123,84,.22);--pd-ease: cubic-bezier(.2, 0, 0, 1);--pd-fast: .15s;--pd-r-ctl: 10px;--pd-r-card: 14px;--pd-r-modal: 16px}[data-theme=dark]{--pd-coral-lt: rgba(244,123,84,.15);--pd-teal-lt: rgba(77,182,196,.15);--pd-amber-lt: rgba(245,194,68,.12);--pd-sage-lt: rgba(91,184,122,.15);--pd-lavender-lt: rgba(139,111,212,.15);--pd-lavender-dk: #A58BE8;--pd-danger-bg: rgba(232,97,90,.15);--pd-danger-text: #F09A94;--pd-bg-page: #141018;--pd-bg-card: #1E1A24;--pd-bg-subtle: #252030;--pd-bg-hover: #2A2535;--pd-border: #38333F;--pd-border-light: #2E2838;--pd-border-input: #40394A;--pd-text: #F0EDE9;--pd-text-secondary: #9A95A4;--pd-text-label: #857F8E;--pd-text-muted: #857F8E;--pd-text-dim: #5A5462;--pd-placeholder: #5A5462;--pd-mood-tired: #9A95A4;--pd-mood-tired-lt: rgba(154,149,164,.14);--pd-mood-tired-ink: #ADA8B8;--pd-shadow-sm: 0 1px 4px rgba(0,0,0,.22), 0 4px 12px rgba(0,0,0,.2);--pd-shadow-card: 0 2px 8px rgba(0,0,0,.32), 0 12px 32px rgba(0,0,0,.28);--pd-overlay: rgba(0,0,0,.55);--pd-focus-shadow: rgba(244,123,84,.3)}.pd-shell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--pd-bg-page);color:var(--pd-text);font-family:Inter,-apple-system,Segoe UI,system-ui,sans-serif;font-size:15px;line-height:1.6}[data-theme=dark] body{background:var(--pd-bg-page)}.pd-shell ::placeholder{color:var(--pd-placeholder)}.pd-shell button:focus-visible,.pd-shell a:focus-visible,.pd-shell select:focus-visible,.pd-shell input:focus-visible,.pd-shell textarea:focus-visible,.pd-modal button:focus-visible,.pd-session-expired-card button:focus-visible{outline:1.5px solid var(--pd-coral);outline-offset:1px;box-shadow:0 0 0 3px var(--pd-focus-shadow)}.pd-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.pd-topbar{display:flex;align-items:center;background:var(--pd-bg-card);border-bottom:1px solid var(--pd-border);padding:0 32px;height:64px;position:sticky;top:0;z-index:100}.pd-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--pd-text);flex-shrink:0;margin-right:32px}.pd-brand img{width:32px;height:32px;border-radius:9px;object-fit:cover}.pd-brand strong{font-size:15px;font-weight:700;letter-spacing:-.01em}.pd-nav{display:flex;align-items:center;gap:4px;flex:1;min-width:0}.pd-nav-btn{position:relative;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border:0;border-radius:var(--pd-r-ctl);background:none;color:var(--pd-text-secondary);font:inherit;font-size:13.5px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background-color var(--pd-fast) var(--pd-ease),color var(--pd-fast) var(--pd-ease)}.pd-nav-btn:hover{background:var(--pd-bg-hover);color:var(--pd-text)}.pd-nav-btn.is-active{background:var(--pd-coral-lt);color:var(--pd-coral-dk);font-weight:600}.pd-nav-icon{flex-shrink:0}.pd-badge{font-style:normal;font-size:10.5px;font-weight:700;font-variant-numeric:tabular-nums;background:var(--pd-coral);color:#fff;border-radius:999px;padding:1px 6px;min-width:18px;text-align:center;line-height:1.5}.pd-topbar-end{display:flex;align-items:center;gap:12px;margin-left:auto;flex-shrink:0;min-width:0}.pd-user-name{font-size:13px;font-weight:600;color:var(--pd-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.pd-signout-btn{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 14px;background:var(--pd-bg-card);border:1px solid var(--pd-border-input);border-radius:var(--pd-r-ctl);font:inherit;font-size:13px;font-weight:500;cursor:pointer;color:var(--pd-text);transition:background-color var(--pd-fast) var(--pd-ease),border-color var(--pd-fast) var(--pd-ease)}.pd-signout-btn:hover{background:var(--pd-bg-hover)}.pd-signout-btn:active{transform:translateY(1px)}.pd-main{flex:1;padding:32px;max-width:1120px;width:100%;margin:0 auto;box-sizing:border-box}.pd-boot-error{display:grid;place-items:center}.pd-card{background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);padding:24px;box-shadow:var(--pd-shadow-sm)}.pd-card-title{font-size:16px;font-weight:600;margin:0 0 16px;color:var(--pd-text);line-height:1.4}.pd-card-body{color:var(--pd-text);line-height:1.6;margin:0 0 8px;font-size:14px}.pd-card-body a{color:var(--pd-coral-dk)}.pd-card-footer{display:flex;justify-content:space-between;gap:12px;margin-top:12px;color:var(--pd-text-muted);font-size:12px}.pd-card-danger{border-color:color-mix(in srgb,var(--pd-danger) 40%,var(--pd-border))}.pd-card-full{grid-column:1 / -1}.pd-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:9px 16px;background:var(--pd-coral);color:#fff;border:0;border-radius:var(--pd-r-ctl);font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:background-color var(--pd-fast) var(--pd-ease),transform var(--pd-fast) var(--pd-ease)}.pd-btn-primary:hover:not(:disabled){background:var(--pd-coral-dk)}.pd-btn-primary:active:not(:disabled){transform:translateY(1px)}.pd-btn-primary:disabled{opacity:.45;cursor:not-allowed}.pd-ghost-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 14px;background:var(--pd-bg-card);border:1px solid var(--pd-border-input);border-radius:var(--pd-r-ctl);font:inherit;font-size:13px;font-weight:500;cursor:pointer;color:var(--pd-text);transition:background-color var(--pd-fast) var(--pd-ease),border-color var(--pd-fast) var(--pd-ease)}.pd-ghost-btn:hover{background:var(--pd-bg-hover)}.pd-ghost-btn:active{transform:translateY(1px)}.pd-icon-btn{width:40px;height:40px;border-radius:var(--pd-r-ctl);border:1px solid var(--pd-border-input);background:var(--pd-bg-card);cursor:pointer;color:var(--pd-text-secondary);display:grid;place-items:center;flex-shrink:0;transition:background-color var(--pd-fast) var(--pd-ease),color var(--pd-fast) var(--pd-ease)}.pd-icon-btn:hover{color:var(--pd-text);background:var(--pd-bg-hover)}.pd-icon-btn:active{transform:translateY(1px)}.pd-btn-danger{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 16px;background:var(--pd-danger);color:#fff;border:0;border-radius:var(--pd-r-ctl);font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:opacity var(--pd-fast) var(--pd-ease),transform var(--pd-fast) var(--pd-ease)}.pd-btn-danger:hover:not(:disabled){background:#d9534c}.pd-btn-danger:active:not(:disabled){transform:translateY(1px)}.pd-btn-danger:disabled{opacity:.45;cursor:not-allowed}.pd-select,.pd-input{border:1px solid var(--pd-border-input);border-radius:var(--pd-r-ctl);padding:10px 12px;font:inherit;font-size:15px;line-height:1.4;background:var(--pd-bg-card);color:var(--pd-text);transition:border-color var(--pd-fast) var(--pd-ease),box-shadow var(--pd-fast) var(--pd-ease)}[data-theme=dark] .pd-select,[data-theme=dark] .pd-input{background:var(--pd-bg-subtle)}.pd-select:focus,.pd-input:focus{outline:none;border-color:var(--pd-coral);box-shadow:0 0 0 3px var(--pd-focus-shadow)}.pd-input[readonly]{color:var(--pd-text-secondary);background:var(--pd-bg-subtle)}.pd-field-group{display:flex;flex-direction:column;gap:6px}.pd-field-label{font-size:11px;font-weight:600;color:var(--pd-text-muted);text-transform:uppercase;letter-spacing:.06em}.pd-form{display:grid;gap:16px;justify-items:start}.pd-form>.pd-label{width:100%}.pd-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pd-label{display:flex;flex-direction:column;gap:6px;font-size:12.5px;font-weight:600;color:var(--pd-text-label)}.pd-toggle-list{display:grid;gap:4px}.pd-toggle{display:flex;align-items:center;gap:10px;font-size:14px;cursor:pointer;min-height:40px;padding:0 4px;border-radius:8px;transition:background-color var(--pd-fast) var(--pd-ease)}.pd-toggle:hover{background:var(--pd-bg-hover)}.pd-toggle input[type=checkbox]{width:18px;height:18px;accent-color:var(--pd-coral);cursor:pointer;flex-shrink:0}.pd-overline{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--pd-text-muted)}.pd-pane-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.pd-pane-header h2{color:var(--pd-text);margin:0;font-size:20px;font-weight:700;letter-spacing:-.02em;line-height:1.3}.pd-pane-actions{display:flex;gap:8px;align-items:center}.pd-stack{display:grid;gap:12px;align-content:start}.pd-error-text{color:var(--pd-danger-text);font-size:13px}.pd-load-icon{width:14px;height:14px;border-radius:50%;border:2px solid var(--pd-coral-lt);border-top-color:var(--pd-coral);animation:pd-spin .7s linear infinite;flex-shrink:0;opacity:0;pointer-events:none;transition:opacity var(--pd-fast) var(--pd-ease)}.pd-load-icon.visible{opacity:1}@keyframes pd-spin{to{transform:rotate(360deg)}}.pd-sec-chip,.pd-stat-chip,.pd-empty-chip,.pd-notif-chip{display:inline-grid;place-items:center;border-radius:999px;background:var(--pd-tone-bg, var(--pd-bg-subtle));color:var(--pd-tone-ink, var(--pd-text-secondary));flex-shrink:0}.pd-sec-chip{width:32px;height:32px}.pd-stat-chip,.pd-notif-chip{width:40px;height:40px}.pd-empty-chip{width:44px;height:44px}.tone-coral{--pd-tone-bg: var(--pd-coral-lt);--pd-tone-ink: var(--pd-coral-dk)}.tone-teal{--pd-tone-bg: var(--pd-teal-lt);--pd-tone-ink: var(--pd-teal-dk)}.tone-amber{--pd-tone-bg: var(--pd-amber-lt);--pd-tone-ink: var(--pd-amber-dk)}.tone-sage{--pd-tone-bg: var(--pd-sage-lt);--pd-tone-ink: var(--pd-sage-dk)}.tone-lavender{--pd-tone-bg: var(--pd-lavender-lt);--pd-tone-ink: var(--pd-lavender-dk)}.tone-danger{--pd-tone-bg: var(--pd-danger-bg);--pd-tone-ink: var(--pd-danger-text)}.tone-neutral{--pd-tone-bg: var(--pd-bg-subtle);--pd-tone-ink: var(--pd-text-secondary)}.pd-pill{display:inline-flex;align-items:center;gap:5px;border-radius:999px;font-size:11.5px;font-weight:600;padding:3px 10px;white-space:nowrap;background:var(--pd-tone-bg, var(--pd-bg-subtle));color:var(--pd-tone-ink, var(--pd-text-secondary))}.pd-avatar{width:32px;height:32px;border-radius:999px;background:var(--pd-tone-bg, var(--pd-coral-lt));color:var(--pd-tone-ink, var(--pd-coral-dk));display:grid;place-items:center;font-size:14px;font-weight:700;flex-shrink:0;-webkit-user-select:none;user-select:none}.pd-avatar-sm{width:24px;height:24px;font-size:11.5px}.pd-avatar-lg{width:40px;height:40px;font-size:16px}.pd-empty-state{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);padding:40px 24px;box-shadow:var(--pd-shadow-sm)}.pd-empty-title{font-size:15px;font-weight:600;color:var(--pd-text);margin-top:4px}.pd-empty-hint{margin:0;font-size:13px;color:var(--pd-text-secondary);max-width:40ch}.pd-empty-state .pd-btn-primary,.pd-empty-state .pd-ghost-btn{margin-top:8px}.pd-skel{display:inline-block;background:var(--pd-bg-subtle);position:relative;overflow:hidden;flex-shrink:0}.pd-skel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:pd-shimmer 1.4s var(--pd-ease) infinite}[data-theme=dark] .pd-skel:after{background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent)}@keyframes pd-shimmer{to{transform:translate(100%)}}.pd-skel-col{display:flex;flex-direction:column;gap:12px;align-items:flex-start}.pd-skel-hero{display:flex;align-items:center;gap:20px}.pd-skel-hero .pd-skel-col{flex:1}.pd-skel-circle{width:64px;height:64px;border-radius:999px}.pd-bubbles-skel{display:flex;flex-direction:column;gap:10px;padding:4px 0}.pd-skel-bubble{height:38px;border-radius:14px 14px 14px 4px;align-self:flex-start}.pd-skel-bubble.mine{align-self:flex-end;border-radius:14px 14px 4px}.pd-theme-btn{border-color:transparent;background:transparent}.pd-toast{position:fixed;bottom:24px;right:24px;z-index:300;display:flex;align-items:center;gap:10px;max-width:min(420px,calc(100vw - 48px));background:var(--pd-bg-card);border:1px solid var(--pd-border);border-left:3px solid var(--pd-sage);border-radius:var(--pd-r-ctl);padding:12px 16px;font-size:13.5px;color:var(--pd-text);box-shadow:var(--pd-shadow-card);animation:pd-toast-in .16s var(--pd-ease)}.pd-toast>svg{color:var(--pd-sage-dk);flex-shrink:0}.pd-toast.is-error{border-left-color:var(--pd-danger)}.pd-toast.is-error>svg{color:var(--pd-danger-text)}@keyframes pd-toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.pd-session-expired-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;background:var(--pd-overlay);display:flex;align-items:center;justify-content:center;padding:24px}.pd-session-expired-card{background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-modal);padding:40px 32px 32px;text-align:center;box-shadow:var(--pd-shadow-card);display:flex;flex-direction:column;align-items:center;gap:8px;max-width:320px;width:100%;animation:pd-modal-in .16s var(--pd-ease)}.pd-session-expired-logo{width:56px;height:56px;object-fit:cover;border-radius:15px;margin-bottom:4px}.pd-session-expired-title{font-size:18px;font-weight:700;color:var(--pd-text);letter-spacing:-.01em}.pd-session-expired-msg{font-size:14px;color:var(--pd-text-secondary);line-height:1.6;margin:0 0 12px}.pd-session-expired-card .pd-btn-primary{width:100%}.pd-today{display:grid;gap:20px}.pd-today-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start}.pd-today-grid:not(:has(>.pd-today-rail:not(:empty))){grid-template-columns:minmax(0,1fr)}.pd-today-main,.pd-today-rail{display:grid;gap:16px;align-content:start;min-width:0}.pd-today-rail:empty{display:none}.pd-today-rail .pd-menu-row{grid-template-columns:1fr;gap:2px}@media(max-width:900px){.pd-today-grid{grid-template-columns:minmax(0,1fr)}}.pd-today-grid.is-short{display:block}.pd-today-grid.is-short>.pd-today-main{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));margin-bottom:16px}.pd-today-grid.is-short>.pd-today-main>.pd-waiting,.pd-today-grid.is-short>.pd-today-main>.pd-card,.pd-today-grid.is-short>.pd-today-main>.pd-empty-state{grid-column:1 / -1}.pd-today-grid.is-short>.pd-today-rail{display:block;columns:2 300px;column-gap:16px}.pd-today-grid.is-short>.pd-today-rail>*{break-inside:avoid;width:100%;margin:0 0 16px}.pd-waiting{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);box-shadow:var(--pd-shadow-sm)}.pd-waiting-chip{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;border-radius:999px;background:var(--pd-bg-subtle, rgba(0, 0, 0, .05));color:var(--pd-text-secondary)}.pd-waiting-text{display:flex;flex-direction:column;gap:2px;min-width:0}.pd-waiting-text strong{font-size:14.5px;font-weight:600;color:var(--pd-text)}.pd-waiting-text span{font-size:13px;color:var(--pd-text-secondary)}.pd-today-toprow{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}.pd-greeting{flex:1;min-width:0}.pd-greeting-text{margin:0 0 2px;font-size:20px;font-weight:700;letter-spacing:-.02em;color:var(--pd-text);line-height:1.3}.pd-greeting-sub{margin:0;font-size:13px;color:var(--pd-text-secondary)}.pd-today-toprow .pd-select{min-width:160px}.pd-child-chips{display:flex;gap:8px;flex-wrap:wrap}.pd-child-chip{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:4px 14px 4px 6px;border:1px solid var(--pd-border);border-radius:999px;background:var(--pd-bg-card);color:var(--pd-text-secondary);font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:background-color var(--pd-fast) var(--pd-ease),border-color var(--pd-fast) var(--pd-ease),color var(--pd-fast) var(--pd-ease)}.pd-child-chip:hover{background:var(--pd-bg-hover)}.pd-child-chip:active{transform:translateY(1px)}.pd-child-chip.is-active{background:var(--pd-coral-lt);border-color:transparent;color:var(--pd-coral-dk)}.pd-child-chip-name{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-datenav{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);padding:8px;box-shadow:var(--pd-shadow-sm)}.pd-datenav-arrow{width:40px;height:40px;border:0;border-radius:var(--pd-r-ctl);background:none;color:var(--pd-text-secondary);cursor:pointer;display:grid;place-items:center;flex-shrink:0;transition:background-color var(--pd-fast) var(--pd-ease),color var(--pd-fast) var(--pd-ease)}.pd-datenav-arrow:hover:not(:disabled){background:var(--pd-bg-hover);color:var(--pd-text)}.pd-datenav-arrow:active:not(:disabled){transform:translateY(1px)}.pd-datenav-arrow:disabled{opacity:.35;cursor:default}.pd-datenav-center{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:0;text-align:center}.pd-datenav-date{font-size:15px;font-weight:600;color:var(--pd-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-variant-numeric:tabular-nums}.pd-datenav-date:first-letter{text-transform:uppercase}.pd-datenav-today-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--pd-text-muted)}.pd-datenav-today-btn{border:0;background:none;padding:2px 8px;border-radius:8px;font:inherit;font-size:12px;font-weight:600;color:var(--pd-coral-dk);cursor:pointer;transition:background-color var(--pd-fast) var(--pd-ease)}.pd-datenav-today-btn:hover{background:var(--pd-coral-lt)}.pd-datenav-pickwrap{position:relative;display:inline-flex;justify-content:center;max-width:100%}.pd-datenav-pick{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border:0;background:none;border-radius:8px;font:inherit;color:inherit;cursor:pointer;max-width:100%;min-width:0;transition:background-color var(--pd-fast) var(--pd-ease)}.pd-datenav-pick:hover{background:var(--pd-bg-hover)}.pd-datenav-cal{color:var(--pd-text-muted);flex-shrink:0}.pd-cal-pop{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);z-index:90;background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);box-shadow:var(--pd-shadow-card);padding:12px;width:max-content;max-width:calc(100vw - 32px);animation:pd-cal-in .14s var(--pd-ease)}@keyframes pd-cal-in{0%{opacity:0;transform:translate(-50%) translateY(-4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.pd-cal-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.pd-cal-month{flex:1;min-width:0;text-align:center;font-size:14px;font-weight:600;color:var(--pd-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-cal-month:first-letter{text-transform:uppercase}.pd-cal-nav{width:32px;height:32px;border:0;border-radius:var(--pd-r-ctl);background:none;color:var(--pd-text-secondary);cursor:pointer;display:grid;place-items:center;flex-shrink:0;transition:background-color var(--pd-fast) var(--pd-ease),color var(--pd-fast) var(--pd-ease)}.pd-cal-nav:hover:not(:disabled){background:var(--pd-bg-hover);color:var(--pd-text)}.pd-cal-nav:active:not(:disabled){transform:translateY(1px)}.pd-cal-nav:disabled{opacity:.35;cursor:default}.pd-cal-grid{display:grid;grid-template-columns:repeat(7,36px);gap:2px;justify-items:stretch}.pd-cal-dow{display:grid;place-items:center;height:26px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--pd-text-muted);-webkit-user-select:none;user-select:none}.pd-cal-blank{height:34px}.pd-cal-day{height:34px;border:0;border-radius:9px;background:none;font:inherit;font-size:13px;font-variant-numeric:tabular-nums;color:var(--pd-text);cursor:pointer;display:grid;place-items:center;transition:background-color var(--pd-fast) var(--pd-ease),color var(--pd-fast) var(--pd-ease)}.pd-cal-day:hover:not(:disabled):not(.is-selected){background:var(--pd-bg-hover)}.pd-cal-day:disabled{color:var(--pd-text-dim);cursor:default;background:none}.pd-cal-day.is-today:not(.is-selected){box-shadow:inset 0 0 0 1.5px var(--pd-coral);color:var(--pd-coral-dk);font-weight:600}.pd-cal-day.is-selected{background:var(--pd-coral);color:#fff;font-weight:700}.pd-cal-day.is-selected:hover{background:var(--pd-coral-dk)}.pd-cal-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--pd-border-light)}.pd-cal-action{border:0;background:none;padding:6px 10px;border-radius:8px;font:inherit;font-size:12.5px;font-weight:600;color:var(--pd-text-secondary);cursor:pointer;transition:background-color var(--pd-fast) var(--pd-ease),color var(--pd-fast) var(--pd-ease)}.pd-cal-action:hover:not(:disabled){background:var(--pd-bg-hover);color:var(--pd-text)}.pd-cal-action:disabled{opacity:.4;cursor:default}.pd-cal-action.is-primary{color:var(--pd-coral-dk)}.pd-cal-action.is-primary:hover:not(:disabled){background:var(--pd-coral-lt);color:var(--pd-coral-dk)}@media(max-width:640px){.pd-cal-grid{grid-template-columns:repeat(7,40px)}.pd-cal-day,.pd-cal-blank{height:40px}.pd-cal-nav{width:40px;height:40px}.pd-cal-action{padding:10px 12px}}.pd-banner{display:flex;align-items:center;gap:12px;padding:14px 20px;background:var(--pd-bg-card);border:1px solid var(--pd-border);border-left:3px solid var(--pd-lavender);border-radius:var(--pd-r-card);cursor:pointer;font:inherit;font-size:14px;font-weight:500;color:var(--pd-text);width:100%;text-align:left;box-shadow:var(--pd-shadow-sm);transition:background-color var(--pd-fast) var(--pd-ease)}.pd-banner:hover{background:var(--pd-bg-hover)}.pd-banner>svg:first-child{color:var(--pd-lavender-dk);flex-shrink:0}.pd-banner-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-banner-chevron{color:var(--pd-text-dim);flex-shrink:0;margin-left:auto}.pd-owe-banner{display:flex;align-items:center;gap:12px;padding:12px 16px 12px 14px;background:var(--pd-bg-card);border:1px solid var(--pd-border);border-left:3px solid var(--pd-teal);border-radius:var(--pd-r-card);cursor:pointer;font:inherit;font-size:14px;font-weight:500;color:var(--pd-text);width:100%;text-align:left;box-shadow:var(--pd-shadow-sm);transition:background-color var(--pd-fast) var(--pd-ease)}.pd-owe-banner:hover{background:var(--pd-bg-hover)}.pd-owe-chip{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--pd-teal-lt);color:var(--pd-teal-dk);flex-shrink:0}.pd-owe-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.pd-owe-banner.is-overdue{border-left-color:var(--pd-amber)}.pd-owe-banner.is-overdue .pd-owe-chip{background:var(--pd-amber-lt);color:var(--pd-amber-dk)}.pd-report-flow{display:grid;gap:16px}.pd-hero{background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);padding:24px;box-shadow:var(--pd-shadow-sm)}.pd-hero.mood-great{--pd-mood: var(--pd-sage);--pd-mood-lt: var(--pd-sage-lt);--pd-mood-ink: var(--pd-sage-dk)}.pd-hero.mood-good{--pd-mood: var(--pd-teal);--pd-mood-lt: var(--pd-teal-lt);--pd-mood-ink: var(--pd-teal-dk)}.pd-hero.mood-okay{--pd-mood: var(--pd-amber);--pd-mood-lt: var(--pd-amber-lt);--pd-mood-ink: var(--pd-amber-dk)}.pd-hero.mood-tired{--pd-mood: var(--pd-mood-tired);--pd-mood-lt: var(--pd-mood-tired-lt);--pd-mood-ink: var(--pd-mood-tired-ink)}.pd-hero.mood-upset{--pd-mood: var(--pd-danger);--pd-mood-lt: var(--pd-danger-bg);--pd-mood-ink: var(--pd-danger-text)}.pd-hero-mood{display:flex;align-items:center;gap:20px}.pd-hero-face{width:72px;height:72px;border-radius:999px;background:var(--pd-mood-lt);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--pd-mood) 30%,transparent);display:grid;place-items:center;font-size:38px;line-height:1;flex-shrink:0}.pd-hero-mood-text{min-width:0;display:grid;gap:1px}.pd-hero-mood-word{font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1.25;color:var(--pd-mood-ink)}.pd-hero-mood-note{margin:2px 0 0;font-size:14px;line-height:1.6;color:var(--pd-text-secondary)}.pd-hero-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--pd-border-light);font-size:13px;color:var(--pd-text-secondary)}.pd-hero-child-name{font-weight:600;color:var(--pd-text)}.pd-hero-classroom{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:24ch}.pd-hero-dot{color:var(--pd-text-dim)}.pd-hero-date{font-variant-numeric:tabular-nums}.pd-hero-posted{display:inline-flex;align-items:center;gap:5px;margin-left:auto;font-size:12.5px;color:var(--pd-text-muted);font-variant-numeric:tabular-nums}.pd-sec{display:block}.pd-sec-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.pd-sec-title{margin:0;font-size:15px;font-weight:600;color:var(--pd-text);line-height:1.4}.pd-sec-body{margin:0 0 8px;font-size:15px;line-height:1.6;color:var(--pd-text);overflow-wrap:break-word}.pd-sec-body:last-child{margin-bottom:0}.pd-sec-body strong{font-weight:600}.pd-sec-byline{display:block;margin-top:8px;font-size:12.5px;color:var(--pd-text-muted)}.pd-duo{display:grid;grid-template-columns:3fr 2fr;gap:16px;align-items:stretch}.pd-duo.single{grid-template-columns:1fr}.pd-meal-list{list-style:none;margin:0;padding:0;display:grid}.pd-meal-row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14.5px;min-height:44px;padding:8px 0;border-bottom:1px solid var(--pd-border-light)}.pd-meal-row:last-child{border-bottom:none;padding-bottom:0}.pd-meal-row:first-child{padding-top:0}.pd-meal-name{flex:1;min-width:0;color:var(--pd-text)}.pd-meal-value{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.pd-meal-label{font-size:12.5px;font-weight:600}.pd-meal-label.ate-all{color:var(--pd-sage-dk)}.pd-meal-label.ate-some{color:var(--pd-amber-dk)}.pd-meal-label.ate-none{color:var(--pd-danger-text)}.pd-portion-dots{display:inline-flex;align-items:center;gap:4px}.pd-portion-dot{display:inline-block;width:10px;height:10px;border-radius:999px;background:var(--pd-bg-subtle);box-shadow:inset 0 0 0 1px var(--pd-border)}.pd-portion-dot.is-on{box-shadow:none}.pd-portion-dot.ate-all{background:var(--pd-sage)}.pd-portion-dot.ate-some{background:var(--pd-amber)}.pd-portion-dot.ate-none{background:var(--pd-danger)}.pd-nap-duration{font-size:30px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--pd-text);line-height:1.2}.pd-stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.pd-stat{display:flex;align-items:center;gap:12px;background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);padding:16px;box-shadow:var(--pd-shadow-sm)}.pd-stat-body{display:grid;gap:1px;min-width:0}.pd-stat-num{font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--pd-text);line-height:1.3;display:inline-flex;align-items:center}.pd-stat-label{font-size:12px;color:var(--pd-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-timeline{display:grid;gap:2px}.pd-timeline-row{display:flex;align-items:center;gap:12px;padding:7px 2px;font-size:14px;color:var(--pd-text)}.pd-timeline-time{min-width:44px;font-variant-numeric:tabular-nums;font-size:13px;color:var(--pd-text-secondary)}.pd-timeline-dot{width:8px;height:8px;border-radius:999px;background:var(--pd-amber, #F5C244);flex-shrink:0}.pd-timeline-label{min-width:0;overflow-wrap:anywhere}.pd-timeline-time.is-label{font-variant-numeric:normal;font-size:12px;font-weight:600;line-height:1.5;color:var(--pd-text-secondary);white-space:nowrap}.pd-timeline-row.is-anchor{align-items:flex-start}.pd-timeline-row.is-anchor .pd-timeline-time.is-label{padding-top:3px}.pd-timeline-row.is-anchor .pd-timeline-dot{margin-top:9px}.pd-timeline-row.is-anchor .pd-timeline-label{flex:1}.pd-timeline-nap{font-weight:600;font-variant-numeric:tabular-nums;color:var(--pd-text)}.pd-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.pd-photo-figure{margin:0}.pd-photo-figure img{width:100%;height:150px;object-fit:cover;border-radius:var(--pd-r-ctl);display:block;background:var(--pd-bg-subtle)}.pd-photo-figure figcaption{font-size:12.5px;color:var(--pd-text-secondary);margin-top:6px;line-height:1.5}.pd-locked-section{display:grid;gap:8px}.pd-locked-header{display:flex;align-items:center;gap:6px}.pd-locked-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--pd-text-dim)}.pd-locked-card{position:relative;background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);padding:20px;overflow:hidden;min-height:84px;box-shadow:var(--pd-shadow-sm)}.pd-locked-skeleton{display:flex;align-items:center;gap:14px;margin-bottom:12px}.pd-locked-icon-wrap{width:40px;height:40px;border-radius:999px;background:var(--pd-bg-subtle);color:var(--pd-text-dim);display:grid;place-items:center;flex-shrink:0}.pd-locked-bars{flex:1;display:flex;flex-direction:column;gap:8px}.pd-locked-bar{height:12px;border-radius:6px;background:var(--pd-bg-subtle)}.pd-locked-bar.wide{opacity:.6}.pd-locked-veil{position:absolute;top:30%;left:0;right:0;bottom:0;background:linear-gradient(to bottom,transparent,var(--pd-bg-card) 85%);pointer-events:none}.pd-locked-pill{position:absolute;bottom:14px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:6px;background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:999px;padding:6px 14px;font-size:12px;font-weight:600;color:var(--pd-text-secondary);white-space:nowrap;box-shadow:var(--pd-shadow-sm)}.pd-messages{display:grid;grid-template-columns:300px 1fr;gap:16px;align-items:start}.pd-conv-list{background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);padding:16px;box-shadow:var(--pd-shadow-sm);position:sticky;top:88px}.pd-conv-list .pd-pane-header{margin-bottom:4px}.pd-conv-list .pd-pane-header h2{font-size:16px}.pd-conv-empty{font-size:13px;color:var(--pd-text-secondary);text-align:center;padding:16px 4px;margin:0;line-height:1.6}.pd-conv-ul{list-style:none;margin:8px -8px 0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:400px;overflow-y:auto}.pd-conv-item{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:10px 10px 10px 8px;border:0;border-left:3px solid transparent;border-radius:var(--pd-r-ctl);background:none;text-align:left;cursor:pointer;font:inherit;color:var(--pd-text);transition:background-color var(--pd-fast) var(--pd-ease)}.pd-conv-item:hover{background:var(--pd-bg-hover)}.pd-conv-item.is-active{background:var(--pd-coral-lt);border-left-color:var(--pd-coral)}.pd-conv-item.is-active .pd-conv-row strong{color:var(--pd-coral-dk)}.pd-conv-info{flex:1;min-width:0}.pd-conv-row{display:flex;justify-content:space-between;align-items:center;gap:6px}.pd-conv-row strong{font-size:13.5px;font-weight:600;color:var(--pd-text)}.pd-conv-row small{font-size:11px;color:var(--pd-text-muted);flex-shrink:0;font-variant-numeric:tabular-nums}.pd-conv-preview{font-size:12.5px;color:var(--pd-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.pd-thread{background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);display:flex;flex-direction:column;min-height:520px;max-height:calc(100vh - 160px);max-height:calc(100dvh - 160px);box-shadow:var(--pd-shadow-sm);overflow:hidden}.pd-thread>.pd-empty-state{border:0;box-shadow:none;flex:1;justify-content:center}.pd-thread-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--pd-border-light)}.pd-thread-back{display:none;border:0;margin-left:-8px}.pd-thread-title{min-width:0;flex:1}.pd-thread-title strong{display:block;font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-thread-title small{font-size:12.5px;color:var(--pd-text-secondary)}.pd-thread-error{padding:10px 20px;font-size:13px;color:var(--pd-danger-text);background:var(--pd-danger-bg);border-bottom:1px solid var(--pd-border-light)}.pd-bubbles{flex:1;padding:20px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;min-height:300px}.pd-bubbles .pd-empty-state{border:0;box-shadow:none;background:none;margin:auto}.pd-bubble{max-width:75%;align-self:flex-start}.pd-bubble.mine{align-self:flex-end}.pd-bubble.is-sending{opacity:.65}.pd-bubble.is-failed{cursor:pointer}.pd-bubble.is-failed p{background:var(--pd-danger-bg);border:1px solid var(--pd-danger);color:var(--pd-danger-text)}.pd-bubble-retry{display:block;font-size:11px;font-weight:600;color:var(--pd-danger-text);margin-top:2px;padding:0 4px}.pd-bubble-name{display:block;font-size:11.5px;font-weight:600;color:var(--pd-text-secondary);margin:4px 0;padding:0 4px}.pd-bubble p{margin:0;padding:10px 14px;border-radius:14px 14px 14px 4px;background:var(--pd-bg-subtle);font-size:14px;line-height:1.5;word-break:break-word;color:var(--pd-text)}.pd-bubble.mine p{background:var(--pd-coral);color:#fff;border-radius:14px 14px 4px}.pd-bubble small{display:block;font-size:11px;color:var(--pd-text-muted);margin-top:3px;padding:0 4px;font-variant-numeric:tabular-nums}.pd-bubble.mine small{text-align:right}.pd-compose{display:flex;gap:10px;padding:16px 20px;border-top:1px solid var(--pd-border-light);align-items:flex-end}.pd-compose-input{flex:1;border:1px solid var(--pd-border-input);border-radius:var(--pd-r-ctl);padding:10px 14px;font:inherit;font-size:14px;line-height:1.5;resize:none;background:var(--pd-bg-card);color:var(--pd-text);transition:border-color var(--pd-fast) var(--pd-ease),box-shadow var(--pd-fast) var(--pd-ease)}[data-theme=dark] .pd-compose-input{background:var(--pd-bg-subtle)}.pd-compose-input:focus{outline:none;border-color:var(--pd-coral);box-shadow:0 0 0 3px var(--pd-focus-shadow)}.pd-send-btn{flex-shrink:0}.pd-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--pd-overlay);display:flex;align-items:center;justify-content:center;padding:24px}.pd-modal{background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-modal);box-shadow:var(--pd-shadow-card);width:100%;max-width:480px;max-height:min(560px,calc(100vh - 48px));max-height:min(560px,calc(100dvh - 48px));display:flex;flex-direction:column;overflow:hidden;animation:pd-modal-in .16s var(--pd-ease)}@keyframes pd-modal-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.pd-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px 16px;border-bottom:1px solid var(--pd-border-light)}.pd-modal-title{min-width:0}.pd-modal-title strong{display:block;font-size:17px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-modal-title small{font-size:12.5px;color:var(--pd-text-secondary)}.pd-modal-header .pd-icon-btn{border:0}.pd-member-list{list-style:none;margin:0;padding:8px 12px 12px;overflow-y:auto}.pd-member-row{display:flex;align-items:center;gap:12px;min-height:48px;padding:8px 12px;border-radius:var(--pd-r-ctl)}.pd-member-row:hover{background:var(--pd-bg-hover)}.pd-member-info{flex:1;min-width:0}.pd-member-info strong{display:block;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-member-info small{font-size:12px;color:var(--pd-text-secondary);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-role-chip{border-radius:999px;font-size:11.5px;font-weight:600;padding:3px 10px;white-space:nowrap;flex-shrink:0;background:var(--pd-bg-subtle);color:var(--pd-text-secondary)}.pd-role-chip.teacher{background:var(--pd-teal-lt);color:var(--pd-teal-dk)}.pd-announce{padding:20px 24px}.pd-announce.is-pinned{border-color:color-mix(in srgb,var(--pd-lavender) 35%,var(--pd-border))}.pd-announce-row{display:flex;gap:16px;align-items:flex-start}.pd-announce-main{flex:1;min-width:0}.pd-announce-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.pd-announce-head .pd-sec-title{flex:1;min-width:0;overflow-wrap:break-word}.pd-announce .pd-sec-body{font-size:14px;color:var(--pd-text);white-space:pre-line}.pd-announce .pd-card-footer{margin-top:10px}.pd-announce-group{display:flex;flex-direction:column;gap:inherit}.pd-announce-group-label{margin:6px 0 -4px 4px;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--pd-text-secondary)}.pd-announce-group:first-child .pd-announce-group-label{margin-top:0}.pd-unread-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--pd-coral);margin-right:8px;vertical-align:.1em}.pd-event-chip{display:inline-flex;align-items:center;gap:6px;margin:0 0 8px;padding:4px 10px;border-radius:999px;background:var(--pd-lavender-lt);color:var(--pd-lavender-dk);font-size:12.5px;font-weight:700}.pd-event-chip.is-soon{font-weight:800}.pd-event-chip.is-past{background:var(--pd-bg-subtle);color:var(--pd-text-dim)}.pd-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.pd-announce.is-ask{border-color:var(--pd-coral);box-shadow:0 0 0 1px var(--pd-coral)}.pd-announce-ask-label{margin:0 0 6px;font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--pd-coral-dk)}.pd-announce-ack{margin-top:14px}.pd-ack-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:10px 20px;border-radius:12px;border:none;background:var(--pd-coral);color:#fff;font-size:14px;font-weight:800;cursor:pointer;transition:background-color var(--pd-fast) var(--pd-ease),transform var(--pd-fast) var(--pd-ease)}.pd-ack-btn:hover{background:var(--pd-coral-dk)}.pd-ack-btn:active{transform:translateY(1px)}.pd-ack-btn:focus-visible{outline:2px solid var(--pd-coral-dk);outline-offset:2px}.pd-ack-done{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--pd-sage-dk)}.pd-notification{background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);display:flex;align-items:stretch;overflow:hidden;box-shadow:var(--pd-shadow-sm);position:relative}.pd-notification.unread:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--pd-coral)}.pd-notification-main{flex:1;min-width:0;display:flex;align-items:center;gap:14px;padding:14px 16px;background:none;border:0;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:background-color var(--pd-fast) var(--pd-ease)}.pd-notification-main:hover{background:var(--pd-bg-hover)}.pd-notif-body{flex:1;min-width:0}.pd-notif-body strong{display:block;font-size:14px;font-weight:600;margin-bottom:1px;color:var(--pd-text)}.pd-notification.unread .pd-notif-body strong{font-weight:700}.pd-notif-body p{margin:0;font-size:13px;line-height:1.5;color:var(--pd-text-secondary)}.pd-notif-time{font-size:11.5px;color:var(--pd-text-muted);flex-shrink:0;font-variant-numeric:tabular-nums}.pd-delete-btn{min-width:44px;padding:0;background:none;border:0;border-left:1px solid var(--pd-border-light);color:var(--pd-text-muted);cursor:pointer;display:grid;place-items:center;transition:background-color var(--pd-fast) var(--pd-ease),color var(--pd-fast) var(--pd-ease)}.pd-delete-btn:hover{color:var(--pd-danger-text);background:var(--pd-danger-bg)}.pd-payments{display:grid;gap:12px;align-content:start}.pd-pay-flow{display:grid;gap:16px}.pd-pay-hero{display:flex;align-items:center;gap:16px;background:var(--pd-bg-card);border:1px solid var(--pd-border);border-left:3px solid var(--pd-teal);border-radius:var(--pd-r-card);padding:20px 24px;box-shadow:var(--pd-shadow-sm)}.pd-pay-hero.is-overdue{border-left-color:var(--pd-amber)}.pd-pay-hero.is-good{border-left-color:var(--pd-sage)}.pd-pay-hero-icon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:999px;background:var(--pd-tone-bg, var(--pd-bg-subtle));color:var(--pd-tone-ink, var(--pd-text-secondary));flex-shrink:0}.pd-pay-hero-main{display:flex;flex-direction:column;gap:2px;min-width:0}.pd-pay-hero-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pd-pay-amount{font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1.2;font-variant-numeric:tabular-nums}.pd-pay-title{font-size:17px;font-weight:700}.pd-pay-hero-sub{margin:0;font-size:13.5px;color:var(--pd-text-secondary)}.pd-pay-month{margin-left:auto;font-size:12.5px;font-weight:600;color:var(--pd-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pd-pay-month:first-letter{text-transform:uppercase}.pd-pay-lines{list-style:none;margin:0;padding:0}.pd-pay-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--pd-border-light);font-size:14px}.pd-pay-line:first-child{padding-top:0}.pd-pay-line:last-child{border-bottom:0}.pd-pay-line-label{display:inline-flex;align-items:baseline;gap:8px;flex-wrap:wrap;min-width:0;color:var(--pd-text);overflow-wrap:anywhere}.pd-pay-line-due{font-size:12px;color:var(--pd-text-muted);white-space:nowrap}.pd-pay-line-amt{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.pd-pay-line.is-deduction .pd-pay-line-amt{color:var(--pd-sage-dk)}.pd-pay-tag{padding:2px 8px;font-size:10.5px;align-self:center}.pd-pay-total{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px;padding-top:12px;border-top:1px solid var(--pd-border);font-size:14px;color:var(--pd-text-label)}.pd-pay-total strong{font-size:18px;font-weight:700;color:var(--pd-text);font-variant-numeric:tabular-nums}.pd-pay-howto-sub{margin:-8px 0 14px;font-size:13.5px;color:var(--pd-text-secondary)}.pd-pay-fields{display:grid;gap:12px}.pd-pay-field{display:grid;gap:4px}.pd-pay-field-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--pd-text-muted)}.pd-pay-field-row{display:flex;align-items:center;gap:8px}.pd-pay-field-value{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13.5px;color:var(--pd-text);background:var(--pd-bg-subtle);border:1px solid var(--pd-border-light);border-radius:var(--pd-r-ctl);padding:9px 12px;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.pd-pay-copy{width:40px;height:40px;border:1px solid var(--pd-border-input);border-radius:var(--pd-r-ctl);background:var(--pd-bg-card);color:var(--pd-text-secondary);cursor:pointer;display:grid;place-items:center;flex-shrink:0;transition:background-color var(--pd-fast) var(--pd-ease),color var(--pd-fast) var(--pd-ease)}.pd-pay-copy:hover{background:var(--pd-bg-hover);color:var(--pd-text)}.pd-pay-copy:active{transform:translateY(1px)}.pd-pay-field-hint{font-size:12px;color:var(--pd-text-muted)}.pd-pay-instructions{margin-top:12px;white-space:pre-wrap;font-size:14px}.pd-pay-month-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.pd-pay-mtile{display:flex;flex-direction:column;gap:2px;padding:10px 11px;border-radius:12px;background:var(--pd-tone-bg);border:1px solid transparent;min-width:0}.pd-pay-mtile.tone-neutral{background:var(--pd-bg-subtle);border-color:var(--pd-border-light)}.pd-pay-mtile.is-now{border-color:var(--pd-tone-ink)}.pd-pay-mtile-name{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:700;color:var(--pd-text)}.pd-pay-mtile-name svg{color:var(--pd-tone-ink)}.pd-pay-mtile-amt{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--pd-text)}.pd-pay-mtile-st{font-size:11.5px;font-weight:600;color:var(--pd-tone-ink);line-height:1.3}.pd-pay-earlier{margin:0 0 10px;padding:9px 12px;border-radius:10px;background:var(--pd-amber-lt);color:var(--pd-amber-dk);font-size:13.5px;font-weight:600}.pd-pay-mhint{margin:10px 0 0;font-size:12.5px}.pd-share-start{display:grid;gap:8px;justify-items:start;margin-top:4px}.pd-share-body{display:flex;gap:20px;align-items:flex-start;margin-top:6px}.pd-share-qr-wrap{flex:0 0 auto;padding:8px;background:#fff;border:1px solid var(--pd-border);border-radius:14px}.pd-share-qr{display:block;width:184px;height:184px}.pd-share-side{flex:1 1 auto;min-width:0;display:grid;gap:10px;align-content:start}.pd-share-actions{display:flex;flex-wrap:wrap;gap:8px}.pd-share-url{margin:0;font-size:12.5px;color:var(--pd-text-secondary);overflow-wrap:anywhere}.pd-share-url code{font:inherit;-webkit-user-select:all;user-select:all}.pd-share-who{margin:0;font-size:13px;line-height:1.5;color:var(--pd-text-secondary)}.pd-share-err{margin:0;font-size:13px;color:var(--pd-danger-text)}.pd-share-renewed{margin:0;padding:8px 12px;border-radius:10px;background:var(--pd-sage-lt);color:var(--pd-sage-dk);font-size:13px}.pd-share-renew{justify-self:start;padding:6px 0;min-height:32px;background:none;border:0;color:var(--pd-danger-text);font:inherit;font-size:13px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.pd-share-confirm{display:grid;gap:10px;padding:12px;border-radius:12px;background:var(--pd-danger-bg)}.pd-share-confirm p{margin:0;font-size:13.5px;line-height:1.5;color:var(--pd-text)}@media(max-width:560px){.pd-share-body{flex-direction:column;align-items:stretch}.pd-share-qr-wrap{align-self:center}.pd-share-qr{width:min(220px,62vw);height:min(220px,62vw)}.pd-share-renew{min-height:44px}}.pd-pay-txn-list{list-style:none;margin:0;padding:0}.pd-pay-txn{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--pd-border-light)}.pd-pay-txn:first-child{padding-top:0}.pd-pay-txn:last-child{border-bottom:0;padding-bottom:0}.pd-pay-txn-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.pd-pay-txn-date{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.pd-pay-txn-method{font-size:13px;color:var(--pd-text-secondary);overflow-wrap:anywhere}.pd-pay-txn-ref{color:var(--pd-text-muted)}.pd-pay-txn-by{font-size:12px;color:var(--pd-text-dim)}.pd-pay-txn-amt{font-size:15px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.pd-pay-child-empty{display:flex;align-items:center;gap:12px}.pd-pay-child-empty p{margin:0;font-size:14px;color:var(--pd-text-secondary)}.pd-pay-muted{color:var(--pd-text-secondary)}@media(max-width:640px){.pd-pay-hero{padding:16px 20px;gap:12px}.pd-pay-amount{font-size:24px}}.pd-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.pd-profile-col{display:grid;gap:16px;align-content:start;min-width:0}@media(max-width:900px){.pd-main{padding:20px}.pd-topbar{padding:0 20px}.pd-nav-label{display:none}.pd-nav-btn{padding:0 12px}.pd-signout-label{display:none}.pd-signout-btn{width:40px;padding:0;justify-content:center}.pd-messages{grid-template-columns:1fr}.pd-conv-list{position:static}.pd-conv-ul{max-height:260px}.pd-profile-grid,.pd-duo{grid-template-columns:1fr}}@media(max-width:640px){.pd-nav{display:none}.pd-topbar{padding:0 16px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));height:56px}.pd-brand{margin-right:16px}.pd-user-name{display:none}.pd-signout-btn{width:44px;min-height:44px}.pd-main{padding:16px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}.pd-icon-btn{width:44px;height:44px}.pd-btn-primary,.pd-ghost-btn,.pd-btn-danger{min-height:44px}.pd-input,.pd-select,.pd-compose-input{font-size:16px}.pd-card{padding:20px}.pd-pane-header{flex-wrap:wrap;row-gap:8px}.pd-form{justify-items:stretch}.pd-today-toprow{align-items:stretch;flex-direction:column;gap:12px}.pd-datenav{gap:4px;padding:6px}.pd-datenav-arrow{width:44px;height:44px}.pd-datenav-pick{min-height:40px}.pd-datenav-today-btn{padding:4px 10px}.pd-hero{padding:20px}.pd-hero-mood{gap:16px}.pd-hero-face{width:60px;height:60px;font-size:32px}.pd-hero-mood-word{font-size:22px}.pd-hero-posted{margin-left:0;width:100%}.pd-stats-row{grid-template-columns:repeat(2,1fr);gap:10px}.pd-stat{padding:12px;gap:10px}.pd-stat-chip{width:36px;height:36px}.pd-form-row{grid-template-columns:1fr}.pd-photo-grid{grid-template-columns:repeat(2,1fr)}.pd-photo-figure img{height:auto;aspect-ratio:4 / 3}.pd-messages{display:block}.pd-messages:not(.is-thread-open) .pd-thread{display:none}.pd-messages.is-thread-open .pd-conv-list{display:none}.pd-conv-ul{max-height:none}.pd-thread-back{display:grid}.pd-thread{min-height:0;height:calc(100vh - 160px - env(safe-area-inset-bottom,0px));height:calc(100dvh - 160px - env(safe-area-inset-bottom,0px));max-height:none}.pd-thread-header{padding:10px 12px;gap:10px}.pd-bubbles{min-height:0;padding:16px}.pd-bubble{max-width:85%}.pd-compose{padding:12px 16px;gap:8px}.pd-modal-overlay{padding:0;align-items:stretch}.pd-modal{max-width:none;height:100vh;height:100dvh;max-height:none;border:0;border-radius:0;animation:pd-sheet-in .2s var(--pd-ease)}.pd-modal-header{padding-top:calc(16px + env(safe-area-inset-top,0px))}.pd-member-list{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.pd-notification-main{flex-wrap:wrap;column-gap:12px;row-gap:2px;padding:12px 14px}.pd-notif-time{flex-basis:100%;padding-left:52px}.pd-announce-row{gap:12px}.pd-ack-btn{width:100%}.pd-toast{left:16px;right:16px;bottom:calc(88px + env(safe-area-inset-bottom,0px));max-width:none}}@keyframes pd-sheet-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.pd-mobile-tabs{display:none}@media(max-width:640px){.pd-mobile-tabs{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:100;background:var(--pd-bg-card);border-top:1px solid var(--pd-border);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.pd-mobile-tab-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px 6px;border:0;background:none;font:inherit;color:var(--pd-text-secondary);cursor:pointer;position:relative;min-height:56px;transition:color var(--pd-fast) var(--pd-ease)}.pd-mobile-tab-btn.is-active{color:var(--pd-coral-dk)}.pd-mobile-tab-icon{line-height:1}.pd-mobile-tab-label{font-size:10px;font-weight:600;letter-spacing:.01em;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-mobile-badge{position:absolute;top:6px;right:50%;transform:translate(14px);font-size:9px;padding:1px 5px;min-width:16px}}@media(prefers-reduced-motion:reduce){.pd-shell *,.pd-shell *:before,.pd-shell *:after,.pd-modal-overlay *,.pd-session-expired-overlay *,.pd-toast{animation:none!important;transition:none!important}}.pd-absent-card{display:flex;align-items:center;flex-wrap:wrap;gap:12px 16px;padding:20px 22px}.pd-absent-body{flex:1 1 260px;display:flex;flex-direction:column;gap:3px;min-width:0}.pd-absent-chip{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border-radius:999px;background:var(--pd-bg-subtle);color:var(--pd-text-label)}.pd-absent-title{font-size:16px;font-weight:700;color:var(--pd-text)}.pd-absent-hint{margin:0;font-size:13.5px;line-height:1.55;color:var(--pd-text-secondary)}.pd-absent-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:4px;font-size:13px;color:var(--pd-text-muted)}.pd-absent-chip.is-confirmed{background:var(--pd-sage-lt);color:var(--pd-sage-dk)}.pd-absence-state-note{margin:2px 0 0;font-size:14px;font-style:italic;line-height:1.6;color:var(--pd-text-secondary);overflow-wrap:break-word}.pd-absence-state-cancel{margin-left:auto}@media(max-width:640px){.pd-absent-card{padding:16px}}.pd-sickday{display:flex;align-items:center;flex-wrap:wrap;gap:12px;background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);padding:12px 16px;box-shadow:var(--pd-shadow-sm)}.pd-sickday-ask{flex:1 1 auto;min-width:0;font-size:14px;color:var(--pd-text-secondary)}.pd-sickday-btn{flex-shrink:0}.pd-sickday.is-confirmed{gap:10px;flex-wrap:nowrap}.pd-sickday-check{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:999px;background:var(--pd-sage-lt);color:var(--pd-sage-dk);flex-shrink:0}.pd-sickday-confirmed-text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px}.pd-sickday-confirmed-text span{font-size:14px;font-weight:600;color:var(--pd-text)}.pd-sickday-confirmed-text small{font-size:12.5px;color:var(--pd-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-sickday-cancel{width:40px;height:40px;border-radius:var(--pd-r-ctl);border:0;background:transparent;color:var(--pd-text-muted);cursor:pointer;display:grid;place-items:center;flex-shrink:0;transition:background-color var(--pd-fast) var(--pd-ease),color var(--pd-fast) var(--pd-ease)}.pd-sickday-cancel:hover:not(:disabled){background:var(--pd-bg-hover);color:var(--pd-text)}.pd-sickday-cancel:active:not(:disabled){transform:translateY(1px)}.pd-sickday-cancel:disabled{opacity:.45;cursor:not-allowed}.pd-pickup{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;background:var(--pd-bg-card);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);padding:12px 16px;box-shadow:var(--pd-shadow-sm)}.pd-pickup-icon{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:999px;background:var(--pd-teal-lt);color:var(--pd-teal-dk);flex-shrink:0}.pd-pickup-text{display:flex;flex-direction:column;gap:1px;flex:1 1 180px;min-width:0}.pd-pickup-prompt{font-size:14.5px;font-weight:700;color:var(--pd-text)}.pd-pickup-hint{font-size:12.5px;color:var(--pd-text-muted)}.pd-pickup-chips{display:flex;flex-wrap:wrap;gap:8px}.pd-pickup-err{flex-basis:100%}.pd-pickup-chip{min-height:40px;padding:8px 16px;border-radius:999px;border:1px solid var(--pd-teal);background:var(--pd-teal-lt);color:var(--pd-teal-dk);font-size:14px;font-weight:700;cursor:pointer;transition:background-color var(--pd-fast) var(--pd-ease),transform var(--pd-fast) var(--pd-ease)}.pd-pickup-chip:hover:not(:disabled){background:var(--pd-teal);color:#fff}.pd-pickup-chip:active:not(:disabled){transform:translateY(1px)}.pd-pickup-chip:disabled{opacity:.5;cursor:not-allowed}.pd-pickup-err{font-size:13px;color:var(--pd-coral-dk)}.pd-menu{display:flex;flex-direction:column;gap:12px}.pd-menu-title{margin:0;font-size:15px;font-weight:700;color:var(--pd-text)}.pd-menu-list{display:flex;flex-direction:column;gap:10px}.pd-menu-row{display:grid;grid-template-columns:116px 1fr;gap:12px;align-items:baseline}.pd-menu-meal{font-size:12.5px;font-weight:700;color:var(--pd-teal-dk)}.pd-menu-dish{display:flex;flex-direction:column;gap:2px}.pd-menu-dish>span:first-child{font-size:14px;color:var(--pd-text)}.pd-menu-allergens{font-size:12px;color:var(--pd-text-muted)}.pd-menu-row+.pd-menu-row{border-top:1px solid var(--pd-border);padding-top:10px}@media(max-width:520px){.pd-menu-row{grid-template-columns:1fr;gap:2px}}.pd-belongings{display:flex;flex-direction:column;gap:12px}.pd-belongings-title{margin:0;font-size:15px;font-weight:700;color:var(--pd-text)}.pd-belongings-reminders{display:flex;flex-direction:column;gap:8px}.pd-belongings-reminder{display:flex;gap:9px;align-items:flex-start;padding:10px 12px;border-radius:var(--pd-r-card);background:var(--pd-amber-lt);border:1px solid color-mix(in srgb,var(--pd-amber) 45%,var(--pd-border))}.pd-belongings-reminder-icon{color:var(--pd-amber-dk);line-height:0;margin-top:1px;flex-shrink:0}.pd-belongings-reminder-text{display:flex;flex-direction:column;gap:2px;min-width:0}.pd-belongings-reminder-text>span{font-size:14px;font-weight:600;color:var(--pd-amber-dk)}.pd-belongings-reminder-text>small{font-size:12.5px;color:var(--pd-text-muted)}.pd-belongings-list{display:flex;flex-direction:column;gap:10px}.pd-belongings-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:baseline}.pd-belongings-row+.pd-belongings-row{border-top:1px solid var(--pd-border);padding-top:10px}.pd-belongings-name{font-size:14px;color:var(--pd-text)}.pd-belongings-detail{display:flex;flex-direction:column;gap:2px;align-items:flex-end;text-align:right;min-width:0}.pd-belongings-status{font-size:12.5px;font-weight:600;color:var(--pd-text-muted)}.pd-belongings-status.is-missing{color:var(--pd-coral-dk)}.pd-belongings-note{font-size:12px;color:var(--pd-text-muted)}@media(max-width:520px){.pd-belongings-row{grid-template-columns:1fr;gap:2px}.pd-belongings-detail{align-items:flex-start;text-align:left}}.pd-safety{display:flex;flex-direction:column;gap:14px}.pd-safety-title{margin:0;font-size:15px;font-weight:700;color:var(--pd-text)}.pd-safety-block{display:flex;flex-direction:column;gap:6px}.pd-safety-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--pd-text-dim)}.pd-safety-chips{display:flex;flex-wrap:wrap;gap:6px}.pd-safety-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:600;color:var(--pd-text-secondary);background:color-mix(in srgb,var(--pd-text) 6%,transparent);border:1px solid var(--pd-border)}.pd-safety-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--pd-text-muted)}.pd-safety-dot.sev-moderate,.pd-safety-dot.sev-severe{background:var(--pd-amber-dk)}.pd-safety-dot.sev-anaphylaxis{background:var(--pd-danger)}.pd-safety-chip.is-consent{color:var(--pd-coral-dk);background:color-mix(in srgb,var(--pd-coral) 10%,transparent);border-color:color-mix(in srgb,var(--pd-coral) 30%,var(--pd-border))}.pd-safety-medical{display:flex;flex-direction:column;gap:3px;font-size:13.5px;color:var(--pd-text)}.pd-safety-muted{color:var(--pd-text-muted);font-weight:400}.pd-safety-guardians{display:flex;flex-direction:column;gap:8px}.pd-safety-guardian{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:8px 12px;border-radius:var(--pd-r-card);background:color-mix(in srgb,var(--pd-text) 4%,transparent)}.pd-safety-guardian-main{display:flex;flex-direction:column;gap:1px;min-width:0}.pd-safety-guardian-name{font-size:13.5px;font-weight:600;color:var(--pd-text)}.pd-safety-guardian-tags{display:flex;gap:6px;flex-shrink:0}.pd-safety-tag{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:11.5px;font-weight:700}.pd-safety-tag.is-emergency{color:var(--pd-amber-dk);background:color-mix(in srgb,var(--pd-amber) 16%,transparent)}.pd-safety-tag.is-pickup{color:var(--pd-coral-dk);background:color-mix(in srgb,var(--pd-coral) 12%,transparent)}.pd-safety-foot{margin:2px 0 0;font-size:12px;color:var(--pd-text-dim)}.pd-tell-entry{display:flex;align-items:center;gap:12px;width:100%;padding:11px 14px;min-height:56px;background:var(--pd-bg-card);color:var(--pd-text-secondary);border:1px solid var(--pd-border);border-radius:var(--pd-r-card);box-shadow:var(--pd-shadow-sm);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--pd-fast) var(--pd-ease),background var(--pd-fast) var(--pd-ease)}.pd-tell-entry:hover{background:var(--pd-bg-hover);border-color:var(--pd-border-input)}.pd-tell-entry-icon{display:inline-grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--pd-coral-lt);color:var(--pd-coral-dk)}.pd-tell-entry-text{flex:1 1 auto;min-width:0;display:grid}.pd-tell-entry-text strong{font-size:15px;font-weight:700;color:var(--pd-text)}.pd-tell-entry-text small{font-size:12.5px}.pd-tell{max-width:460px;max-height:none}.pd-tell-rows{display:grid;gap:10px;padding:16px 20px 22px}.pd-tell-row{display:flex;align-items:center;gap:12px;width:100%;min-height:64px;padding:12px 14px;border:1px solid var(--pd-border);border-radius:16px;background:var(--pd-bg-card);color:var(--pd-text);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--pd-fast) var(--pd-ease),background var(--pd-fast) var(--pd-ease)}.pd-tell-row:hover:not(:disabled){background:var(--pd-bg-hover);border-color:var(--pd-border-input)}.pd-tell-row:disabled{opacity:.55;cursor:default}.pd-tell-icon{display:inline-grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:var(--pd-tone-bg);color:var(--pd-tone-ink)}.pd-tell-text{display:grid;gap:2px;min-width:0}.pd-tell-text strong{font-size:15.5px;font-weight:700}.pd-tell-text small{font-size:13px;line-height:1.4;color:var(--pd-text-secondary)}.pd-tell-pickup{display:grid;gap:10px;padding:2px 4px 4px}.pd-tell-ask{font-size:14px;font-weight:600;color:var(--pd-text)}@media(max-width:640px){.pd-modal-overlay:has(>.pd-tell){align-items:flex-end}.pd-modal.pd-tell{height:auto;max-height:92dvh;overflow-y:auto;border-radius:20px 20px 0 0}.pd-tell .pd-modal-header{padding-top:16px}.pd-tell-rows{padding-bottom:calc(22px + env(safe-area-inset-bottom,0px))}}.pd-sickday-modal{max-width:480px}.pd-seg{display:flex;gap:8px}.pd-seg-btn{min-height:40px;padding:8px 18px;border-radius:999px;border:1px solid var(--pd-border);background:var(--pd-bg-card);color:var(--pd-text-secondary);font:inherit;font-size:14px;font-weight:700;cursor:pointer}.pd-seg-btn.is-on{background:var(--pd-coral);border-color:var(--pd-coral);color:#fff}.pd-sickday-modal-body{display:flex;flex-direction:column;gap:12px;padding:20px 24px 4px}.pd-sickday-desc{margin:0;font-size:14px;line-height:1.6;color:var(--pd-text-secondary)}.pd-sickday-note{resize:vertical;min-height:76px;font-size:14px;line-height:1.5}.pd-sickday-counter{font-size:12px;color:var(--pd-text-dim);text-align:right;font-variant-numeric:tabular-nums}.pd-sickday-modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 24px 20px}@media(max-width:640px){.pd-sickday{padding:12px 14px}.pd-sickday .pd-sickday-btn{flex:1 1 100%}}.nn-select-trigger{width:100%;min-width:0;min-height:44px;display:inline-flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px 10px 13px;border:1px solid var(--pd-border-input);border-radius:var(--pd-r-ctl);background:var(--pd-bg-card);color:var(--pd-text);font:inherit;font-size:14px;line-height:1.4;text-align:left;cursor:pointer;transition:border-color var(--pd-fast) var(--pd-ease),box-shadow var(--pd-fast) var(--pd-ease)}.nn-select-trigger:hover:not(:disabled){border-color:var(--pd-text-muted)}.nn-select-trigger:focus-visible,.nn-select-trigger[data-open]{outline:none;border-color:var(--pd-coral);box-shadow:0 0 0 3px var(--pd-focus-shadow)}.nn-select-trigger:disabled{opacity:.55;cursor:not-allowed}.nn-select-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nn-select-chevron{width:16px;height:16px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;color:var(--pd-text-muted);transition:transform var(--pd-fast) var(--pd-ease)}.nn-select-trigger[data-open] .nn-select-chevron{transform:rotate(180deg)}.nn-select-menu{position:fixed;z-index:5000;overflow:auto;padding:6px;border:1px solid var(--pd-border);border-radius:12px;background:var(--pd-bg-card);box-shadow:var(--pd-shadow-card);overscroll-behavior:contain}.nn-select-option{width:100%;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:0;border-radius:8px;background:transparent;color:var(--pd-text);font:inherit;font-size:14px;line-height:1.4;text-align:left;cursor:pointer}.nn-select-option[data-active]{background:var(--pd-bg-hover)}.nn-select-option[data-selected]{background:var(--pd-coral-lt);color:var(--pd-coral-dk);font-weight:650}.nn-select-option[data-active][data-selected]{background:color-mix(in srgb,var(--pd-coral-lt) 82%,var(--pd-coral) 18%)}.nn-select-option:disabled{opacity:.45;cursor:not-allowed}.nn-select-check{width:17px;height:17px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:0}.nn-select-option[data-selected] .nn-select-check{opacity:1}@media(max-width:640px){.nn-select-trigger,.nn-select-option{font-size:16px}}.fs{min-height:100vh;background:radial-gradient(1200px 420px at 50% -120px,var(--coral-light),transparent 70%),var(--page);color:var(--ink)}.fs-top{display:flex;align-items:center;justify-content:space-between;max-width:640px;margin:0 auto;padding:14px 16px}.fs-brand{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-weight:700;text-decoration:none}.fs-brand img{border-radius:8px}.fs-lang{display:inline-flex;padding:3px;border-radius:999px;background:var(--paper);box-shadow:var(--shadow-xs)}.fs-lang button{min-width:40px;min-height:32px;padding:0 10px;border:0;border-radius:999px;background:none;color:var(--ink-soft);font:inherit;font-size:.8125rem;font-weight:600;cursor:pointer}.fs-lang button[aria-pressed=true]{background:var(--ink);color:#fff}.fs-main{max-width:640px;margin:0 auto;padding:4px 16px 48px}.fs-card{border-radius:20px;background:var(--paper);box-shadow:var(--shadow-md);padding:22px 20px;animation:fs-rise .5s cubic-bezier(.2,0,0,1) both}.fs-skeleton{height:220px;border-radius:20px;background:var(--subtle);animation:fs-pulse 1.4s ease-in-out infinite}.fs-message h1{margin:0;font-family:var(--serif);font-size:1.5rem;line-height:1.25}.fs-message p{margin:10px 0 0;color:var(--ink-soft);font-size:1rem;line-height:1.55}.fs-hero{position:relative;overflow:hidden}.fs-hero:after{content:"";position:absolute;inset:0 0 auto;height:5px;background:var(--sage)}.fs-hero.is-owed:after{background:var(--amber)}.fs-hero.is-overdue:after{background:var(--coral)}.fs-school{color:var(--ink-soft);font-size:.875rem;font-weight:600}.fs-kids{margin-top:2px;font-family:var(--serif);font-size:1.375rem;line-height:1.25}.fs-big-label{margin-top:18px;color:var(--ink-soft);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.fs-big{font-size:2.25rem;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.15}.fs-hero.is-overdue .fs-big{color:var(--coral-deep)}.fs-flag{display:inline-block;margin-top:8px;padding:4px 10px;border-radius:999px;background:var(--coral-light);color:var(--coral-deep);font-size:.8125rem;font-weight:600}.fs-clear{display:flex;align-items:center;gap:12px;margin-top:16px}.fs-clear .fs-big{font-size:1.75rem;color:var(--sage-ink)}.fs-clear-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--sage-light);color:var(--sage-ink);flex-shrink:0}.fs-clear-mark svg{width:26px;height:26px}.fs-sub{margin-top:10px;color:var(--ink-soft);font-size:.9375rem}.fs-section{margin-top:28px}.fs-section h2,.fs-pay h2{margin:0 0 12px;font-family:var(--serif);font-size:1.25rem}.fs-earlier{margin-bottom:12px;padding:10px 14px;border-radius:12px;background:var(--coral-light);color:var(--coral-deep);font-size:.9375rem}.fs-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}@media(min-width:520px){.fs-months{grid-template-columns:repeat(3,minmax(0,1fr))}}.fs-month{display:grid;grid-template-columns:1fr auto;grid-template-areas:"name mark" "status status" "amount amount" "due due";row-gap:2px;padding:12px 12px 12px 14px;border-radius:14px;background:var(--paper);box-shadow:var(--shadow-xs),inset 0 0 0 1px var(--line-light);animation:fs-rise .45s cubic-bezier(.2,0,0,1) both;animation-delay:var(--d, 0ms);position:relative;isolation:isolate;overflow:hidden}.fs-month:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;transform-origin:left center;transform:scaleX(var(--fill, 0));background:var(--sage-light);animation:fs-fill .8s cubic-bezier(.2,0,0,1) both;animation-delay:calc(var(--d, 0ms) + .25s)}.fs-month:not(.is-paid):before{top:1px;right:1px;bottom:1px;left:1px;border-radius:13px 0 0 13px;background:var(--amber-light)}.fs-month.is-overdue:before{top:1.5px;right:1.5px;bottom:1.5px;left:1.5px;border-radius:12.5px 0 0 12.5px}.fs-month.is-paid .fs-month-mark,.fs-month.is-partial .fs-month-mark{animation:fs-mark .42s cubic-bezier(.34,1.56,.64,1) both;animation-delay:calc(var(--d, 0ms) + .8s)}.fs-month-name{grid-area:name;font-weight:700;text-transform:capitalize}.fs-month-mark{grid-area:mark;display:grid;place-items:center;width:26px;height:26px;border-radius:50%}.fs-month-mark svg{width:16px;height:16px}.fs-month-status{grid-area:status;font-size:.8125rem;font-weight:600}.fs-month-amount{grid-area:amount;color:var(--ink-soft);font-size:.875rem;font-variant-numeric:tabular-nums}.fs-month-due{grid-area:due;color:var(--muted);font-size:.75rem}.fs-month.is-paid{box-shadow:none}.fs-month.is-paid .fs-month-mark{background:var(--sage);color:#fff}.fs-month.is-paid .fs-month-status{color:var(--sage-ink)}.fs-month.is-partial .fs-month-mark{background:var(--amber-light);color:var(--amber-ink)}.fs-month.is-partial .fs-month-status{color:var(--amber-ink)}.fs-month.is-due .fs-month-mark{background:var(--subtle);color:var(--ink-soft)}.fs-month.is-due .fs-month-status{color:var(--ink-soft)}.fs-month.is-overdue{box-shadow:inset 0 0 0 1.5px var(--coral)}.fs-month.is-overdue .fs-month-mark{background:var(--coral-light);color:var(--coral-deep)}.fs-month.is-overdue .fs-month-status{color:var(--coral-deep)}.fs-month.is-none{background:transparent;box-shadow:inset 0 0 0 1px var(--line)}.fs-month.is-none .fs-month-name,.fs-month.is-none .fs-month-status,.fs-month.is-none .fs-month-mark{color:var(--muted)}.fs-pay{margin-top:28px}.fs-copy{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line-light)}.fs-copy:first-of-type{border-top:0;padding-top:0}.fs-copy-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.fs-copy-label{color:var(--muted);font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.fs-copy-value{font-size:1.0625rem;font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.fs-copy-hint{color:var(--ink-soft);font-size:.8125rem;line-height:1.45}.fs-copy-btn{flex-shrink:0;min-height:40px;padding:0 14px;border:1px solid var(--input-line);border-radius:999px;background:var(--paper);color:var(--ink);font:inherit;font-size:.875rem;font-weight:600;cursor:pointer}.fs-copy-btn:focus-visible,.fs-btn:focus-visible,.fs-lang button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.fs-instructions{margin:12px 0 0;padding:12px 14px;border-radius:12px;background:var(--subtle);font-size:.9375rem;line-height:1.5}.fs-notice{margin:14px 0 0;color:var(--ink-soft);font-size:.875rem;line-height:1.5}.fs-app{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:20px;padding:16px 18px;border-radius:16px;background:var(--teal-light)}.fs-app p{flex:1 1 240px;margin:0;color:var(--teal-ink);font-size:.9375rem;line-height:1.45}.fs-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:16px;padding:0 18px;border:0;border-radius:999px;background:var(--coral-deep);color:#fff;font:inherit;font-weight:600;text-decoration:none;cursor:pointer}.fs-btn.is-ghost{margin-top:0;background:var(--paper);color:var(--teal-ink);box-shadow:inset 0 0 0 1px #23788459}.fs-asof{margin:20px 0 0;color:var(--muted);font-size:.8125rem;text-align:center}.fs-top-end{display:inline-flex;align-items:center;gap:8px}.fs-aa{min-width:44px;min-height:38px;padding:0 10px;border:0;border-radius:999px;background:var(--paper);box-shadow:var(--shadow-xs);color:var(--ink);font:inherit;font-size:1rem;font-weight:700;letter-spacing:-.01em;cursor:pointer}.fs-aa[aria-expanded=true]{background:var(--ink);color:#fff}.fs-aa:focus-visible{outline:none;box-shadow:var(--focus-ring)}.fs-opts-wrap{max-width:640px;margin:0 auto;padding:0 16px 8px}.fs-opts{border-radius:16px;background:var(--paper);box-shadow:var(--shadow-md);padding:4px 16px;animation:fs-rise .3s cubic-bezier(.2,0,0,1) both}.fs-opt{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 0;cursor:pointer}.fs-opt+.fs-opt{border-top:1px solid var(--line-light)}.fs-opt-text{flex:1;display:flex;flex-direction:column;gap:2px;font-weight:600}.fs-opt-text small{color:var(--ink-soft);font-size:.8125rem;font-weight:500;line-height:1.4}.fs-opt input{position:absolute;opacity:0;width:1px;height:1px}.fs-opt-switch{position:relative;flex-shrink:0;width:46px;height:28px;border-radius:999px;background:var(--line);transition:background .2s ease}.fs-opt-switch span{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .2s ease}.fs-opt input:checked+.fs-opt-switch{background:var(--sage-ink)}.fs-opt input:checked+.fs-opt-switch span{transform:translate(18px)}.fs-opt input:focus-visible+.fs-opt-switch{box-shadow:var(--focus-ring)}html.fs-large{font-size:118.75%}.fs.is-contrast{--ink: #000;--ink-soft: #1a1a1a;--muted: #2e2e2e;--paper: #fff;--page: #fff;--subtle: #f2f2f2;--line: #000;--line-light: #444;--input-line: #000;--coral-deep: #8f1d00;--sage-ink: #0a4a20;--amber-ink: #553800;--teal-ink: #063f47;background:#fff}.fs.is-contrast .fs-card,.fs.is-contrast .fs-month,.fs.is-contrast .fs-opts,.fs.is-contrast .fs-lang,.fs.is-contrast .fs-aa,.fs.is-contrast .fs-home,.fs.is-contrast .fs-app{box-shadow:inset 0 0 0 2px #000}.fs.is-contrast .fs-month.is-paid{background:#fff}.fs.is-contrast .fs-month:before{display:none}.fs.is-contrast .fs-month.is-overdue{box-shadow:inset 0 0 0 3px var(--coral-deep)}.fs.is-contrast .fs-month.is-paid .fs-month-mark{background:var(--sage-ink)}.fs.is-contrast .fs-app,.fs.is-contrast .fs-earlier,.fs.is-contrast .fs-flag{background:#fff}.fs.is-readable{font-family:Verdana,Tahoma,Segoe UI,system-ui,sans-serif;letter-spacing:.03em;word-spacing:.12em;line-height:1.65}.fs.is-readable .fs-kids,.fs.is-readable h1,.fs.is-readable h2{font-family:inherit}.fs.is-readable .fs-big-label,.fs.is-readable .fs-copy-label{letter-spacing:.08em}.fs-home{display:flex;align-items:flex-start;gap:14px;margin-top:20px;padding:16px 18px;border-radius:16px;background:var(--paper);box-shadow:var(--shadow-xs),inset 0 0 0 1px var(--line-light)}.fs-home img{flex-shrink:0;border-radius:12px}.fs-home-text{flex:1;min-width:0}.fs-home-text strong{display:block;font-size:1rem}.fs-home-text p{margin:4px 0 0;color:var(--ink-soft);font-size:.9375rem;line-height:1.45}.fs-home-text .fs-home-how{color:var(--ink);font-weight:600}@keyframes fs-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes fs-pulse{50%{opacity:.55}}@keyframes fs-fill{0%{transform:scaleX(0)}}@keyframes fs-mark{0%{transform:scale(0)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.fs-card,.fs-month,.fs-month:before,.fs-month-mark,.fs-skeleton,.fs-opts{animation:none!important}.fs-opt-switch,.fs-opt-switch span{transition:none}}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-BmRLXWpJ.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-DCQwxkRk.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-cyrillic-700-normal-D_uavGvn.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-700-normal-RFb1v-CK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-greek-700-normal-wyJ6jzdA.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-700-normal-CkZN0sRy.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-vietnamese-700-normal-CkEo6LDy.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-700-normal-BV5B8Are.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-ext-700-normal-aMgXseD4.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-700-normal-DZH6Xh-4.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Literata;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,d09GMgABAAAAAA88ABIAAAAAHIgAAA7cAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGigbhhYcNAZgP1NUQVRMAIFUEQgKoRyZSAtAAAE2AiQDegQgBYU0B4ItDAcXJBh6GzsXsxFVNzirQEn+ywTbmP6T1QVYiaTUjGKlgY0FBGhU23S0o1lrbPqwxrt1HtOvim+m65Z/cs74/Pt3Znev+CHfr0DvhaxAVjkpxTqVO7KCWrAjKhJkQ9bs3dKKRqFQqgjVXC9CEQ8KSRe2Go3QGIEq/ztA2+zMBI4SRDI3UOI8DgQDOzEaq18X1bpo/TcWDats3n0GwP/NlX9ansmWs4Csqg6ECRRQnerzdbs2sQuAx6gQBtdVSjrZD24F8P9/c6XNXzpkVwRhAS2QrlFzM0s/WaJcjiA5YHj+1pdIuGYLAKoszNWWhaurq1C+QtZVSNX9/TQDWG7QV/pBc4gxxNGJHV+3VmsQ4PJNBYUkoLtIoZwUKgR+KMDWqh81vzhqEvK3N61eivz91fOWIP9k1trlyKcAuKH0Ot5dvRwmRHIoVo1sHRgiLwpYSkItU2qOcwOb/O7/x7EpCNk8Czs2Zm7Ej+jij127/ttrFqZ9h8ZPKfj/FqZBDX/iM37bL1+9+dNC+KDk0/B/KGWKn87nB+vu4JPuTGMkQqSnTz5QH2Sw5I/wo+93ZzCeaksu//ENOF85+Hus3jIfkgH9FiRfFluOArGV8sg1YDEZLOBiHWmLBcAGsdhhUpSA2RgkVehQERaEpDNUgQti6IH5hKdSpQo822yx3EJYPNk4Q9IG6KUIkq7fBOAKaWKZbBTVSxSXlWBQ3PqAYuqKupVk1gV+PRNoZEqyU0GRWzcBBH6I4gOOaCjmiVtFynhhZCSSrRUXAbg4GFZpJ1sGDcRVmA6MvDDXJJHAJ4shJAgLaNISgBsonT2TK//foG5jQin4DAD/t6uAUhKRSQIyCUAjcX6xZjNdYMP+wrWU4NfCShhBkBYpkqiKGLhcawgcnh6bgEmOigtg/e43AJQrpQilUg67SUc1J5fk/lyeq3NjDuXBvJtvZ+P6H2gPMzsX575clqtyIAfzQN7JN9WPqp/Hdk6ln/dqIVKfQq58hYqVKlepWq16AGCImGK6kCWDLZMjiyubJ4cvVyAPsf4XAIASANAPUAXaDegHgMoVm59Y2os1CDslaGSyjDPLgHrm7jdVoapNKjr80XlwVRGp8mLbqWz2Iq9014rCUeCElj12PJzhKXdGepqlERTrWqrf5GeesESAQtNdSslhJlc1n4Rv5Bsm8CQIfSuY1iiSwEQLV7CEL5JQrdu/QIJOqBBzP0823orn6Sf0HCTi/x4SSG7SQg1DKCluYmGfB1YBHQHxGswTlMz5TSxTCQerGAMBnNn6tKMc9+bVXGti3BkpNIZwCwfgOXEFNy+rrfXI3Tf63WEurTzhgkeAoGuzT6xwOn3RW2nDJd8SfOS5gmmdQm/Hj0xHJVAOxv02sszT23GHNg/BRbCJxyBTaDqL1Ry6r/3OP/87myE89b8iVqSpGAtl+3kVMFsLXfDGI5iMe7+hbm66jKFOOastsAVpTs8gz6Kkt+X4YwrFOyuWtGcHwja1n58XQMSysm62tWSqwksiFmNI2OtYMJUpvCQvbXY3w8r9wDP+jycvReDfyDj5sI8HbSWc+jR7tNYl5pDQEjzVuMXqUh83u/3vNWWDDsZHwoOovJtGDFG/BEUg7H9CTtzQgf1bV0kMliEQPV54fvEykSfhrwA8eVC4qkrSQLmNLe/UmCOGLpudXuKTORE2QlSKhnqUsKghMUaxGBdPNTe/vv8maYCbTL6ruwmxUoMCmHYNFvLSNFtrszlyT+23o1J2Aemg07IyEw5Mk5D4RcmHKv0EaeVBqyuZ0809DTeIjppiwilionc01Gg0cnmorbhtPBlVx9ARPqZVBPlTSx+pS/265XA0aIA8l0XGZNz/5ardaQxlzIKyQM4yMK1P3f1+oCg7fTqdLJKlUVNsOFWSybIW0zWdOrwbXQ9yuUYudjQLgdFiOsCbE9ri5pSnmePS2l7mpq1keuUoGDvtWuIqbnFBdpRZTdO2KAd7O/KTmSbymPqVfM82EQhr5VIE2PLgpXKiZVZg/7xXKNQQnK3DKdw+FNHg5uLnowm75uccqYS7mxe+aWZejJJhE8lasqxm22gq6VZVlPy04a/mi8cwzPIvxvnBAiTwTwRwSv+Uys0EqFY+goRzTMTr8kjHMtjY+/328lmNiA4kdPNvATwYp+t3In51k6XfXWDLS1pwaIHqNz1OD3hCW+m0NZfgWZeQVc9l6eECiEmd1hpS/ItSYBaMuGn8qOcLuM7AHdobMkJau4d/oqIxDVZAcumMm5Nvu3RdvdXedFfjArk7ppL+YPfjRyR7IUCgnu44gHeg3lrU7AIfczunwVSkiRWhUWy6aaIdsx5pUXurGKgh7FXuFwOFqrrDtYILn21TAWGQG3WYdDzeLcF4kGiVvoJ+hFhjAu9v+3dHcPbbnsSeU8RryDQI2AX9SbUSB1lE0/qsiyZ/2vmLaN1dqx3iQaekN0DXe0DQfJPfBVnhBLJkoOBYgC9SgjHy6YhAh+T9Js6NjHjyJECKBHEFcIQ8IaCvEOgglBnLhUtSPT0J4W1Bep2hhBoJzLrwc2uSMzwKYR1TuFNPmwpDYEPbdz0a8fVKXUJuXRHCzWMaqy0M/TkK9TjBFrIX0kKnf7+rRx0lUklsvYnDiUzoXe8y7zETCP99JW9o/ECrN4o0j26M/ZcE35KA3HOEq1QsJIEUgTbSKQ4oekmGgTBeZB+LuXUGeVOEp7cptslOHDy11Wk1eejm0Judle/vg4FMAwguWkJk5HIiuJ93AYe/wgt6nW1EqxSEJJAxYDToiEtdr/jL4eCLX+7SjGsExNEGEDSAKMz9v7su/To6slbQ4bx543oIj4NHMR7V09W3gO0r2HMPrJ5+zo/iy4h+93rwXQRBdA4/gLAgKaRAluEv4weSB3AppHiBHQGfFk/uCj7jiOXpLNSgTfUgqHBF4Z/s6T7466b940JnG8wXIj9xOO1StAd/OvEW8GFB1x3fzsAR6E/qMOkE4wzBSn0NcSG3QBvp8mmm0GiUOMbYT7Bwu7OdOhL0rfkuoGT1ko7hrxCGEdftuyXxAOMe7M3Ul0mU+YZunI2Brvy/PHUC7w0cZhT+8VnsEZQbBERQYeaQKIRtRlAohfykMyqXFxXNCZVoORRDkCrgTcxZP7UhgB9jmRiTS++OjGbOTKjq1cSmCbRMHoxO4EZ7oj0w1Bg9C5jkU7Mk27SupEg+ryC7h2fIWRqbvrIxQzIn09w9QZsij5Xwq5zSOjmkLGEEZZWhU0lOxyNBHBaMdyNlAHLN1sAesDDBQ2tocFwYeGfNeuKY0Ve9W0SgKPuzkexi34lr+7UeamBAvfXbIkIsjvRGs0Ft8CGODjfRbi4ucYGPut3/cQoz3+BzZ6rRnSBcOHKVrEwJ/sjXhEU30TKrJyTJBCYhpvfqfms/UPuC1Ch9UCTz8BGU2938krCIQ0aL80Ld9CE+VPZ9NCa+RusYj/tsbx1DedKKHsgaSMGvqK9HanfQJvd7N2H7nm5TeahLvy8iWLwljSkPuq23qa+0LOfKFbcA2ZU1aA/dtfaWTF+w6nv/PqhNb76KasP2Pluh8p5+xEb/uiUp5+JPnqbag8fyx2iQuftoMuxXsaDB6bX035WtDwfadj3A+D8XB1KwdIY/ZvAa13XKFgdMLa7/2vhsF3Xpt0n4WnRyU6NzzsgrPZ7MdKMEip8HoB/smnn7vPnEklBH+Uv3a/DrQI9fMzXXgYmrNe66XW0t7/1RL23jNwa9m5YA3m1g37cVKh/13meLCATcwmfjq52lb1CzAB541jzPzkuyBzFcq9dyIwCz7VP7iXMNT0+rxAZF6FV+NdnL/e120nWgregVkYi+hF/DPp0+fN2FBtn/byUXyrG932ZkuaqXOy7EG9ruAUvuadwCR4jFS/uKRs8MK4a8NFsCSmaUkl3MuBnTk9t23YZYKIfDiyZX4KyO42rgh5cqmydLUuET0sIAmv6FQBpBnTroaYFNKRZE0RSdiXS2wFqE8w7UoWwEjI/UBvB8UhrCVU1xxdEd3YroyHo5UpeZretqgxET3YlgQH9Hgo3FOS++KVSuiwgh4SQ9IPARp5K0YfQEWYBaHdoas3ry+J3PLFsZvJr7DeT1i+j/CDCIJ+ZKqO22iSAQRYHlMkKwv9qUFdrYnnRmXNv2PrToQqwjjrxKzgxZ7BZ5Q+fuf1d1+58CKjD4bsrM3vs8L9xJEOyeCdg/y40iRiLCv7ZbIuk/RAhnJ0VJ0gExBwJ0RZcYikkQq3Bak9ZhAvay4KtvX6YMCxZ/tsPKpev2P/v1yJnpv37N3P0d9PllSvkWgMe31mkA8Hpn4Z76LyMHWDpMXwEACM8kcYHA/R0G+YHF8VPS3rPvX/a5oB1R3ubr2XPgZAwzBwu6QHefrAfF3UvCF3uoqwfoaC4a2ml5fS69b+W3LeraIyUNq39SWAlrzlLnNvDTiTtR/HTIGASUOEhKyMkJIpYXuJSMSavgRCTg5VQezcsFP0qXSx0+Tla05ZpeTi3Xlduz3Ndl8vJQaARGoOu1HiVczZPN1HIXubIxUnobY3SjeZhgqSmsjWoKI1VXmOPrmoBFRUoybtpRkl6ixLJyAiYrrLEiYqGlFJugCRt4VIwqbHJKo1K0lhvNDcDECU4RNmJ1iJYEllFOHm8wCU0vGIpPIzABdUstRSaUiENFVVYKgoVMSJidEIVhDqXB1FwypqznqhoQksSyZhy+sIGzZQrqwoa69oZDpU6RiiUKSkoUSkaQwgQsWirjgpknaptDLFd0d8NT2IeUgFBBat5cJDSfSppgBwDLlFRSepDoAQ8nqh60gOP4KtzeS7ATKPmIKt2hI/oYGZKKGnUaNGnRpkOXHn0GDBkxZgYzmcVsyMhhLvOYr6e2Vs9bP89Yd7aoNdwzCQ1dulRCzy5dKiGV6Abb06n4QT3sgyG+Z7uhS5dO6NmtSyek2u1DJPVpfU8jpPpTrZESf7oDz9pet3Ze8z/Ysa1gq190gf9Pfcm5OA1+/6fk24GL3vz+6rIWQF4pHngQD++5Bx5fiUYcHatYqB+zX9ebPtBdcreVoF1FQLeAYfvqlG2uis2VHuCV+voG) format("woff2"),url(/assets/literata-cyrillic-ext-600-normal-DMpAXN3v.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/literata-cyrillic-600-normal-CJ4BZrBr.woff2) format("woff2"),url(/assets/literata-cyrillic-600-normal-CFZV0quP.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Literata;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/literata-greek-ext-600-normal-C9Ui0wVq.woff2) format("woff2"),url(/assets/literata-greek-ext-600-normal-dOBTK4hz.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Literata;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/literata-greek-600-normal-AXWu-DgS.woff2) format("woff2"),url(/assets/literata-greek-600-normal-yjIuBGCY.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Literata;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/literata-vietnamese-600-normal-CKzxoyei.woff2) format("woff2"),url(/assets/literata-vietnamese-600-normal-8qS4Xlwy.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/literata-latin-ext-600-normal-iLkdh2tW.woff2) format("woff2"),url(/assets/literata-latin-ext-600-normal-DYcsrkT4.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/literata-latin-600-normal-A9sHopYh.woff2) format("woff2"),url(/assets/literata-latin-600-normal-BFEFPlMO.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--page: #f9f5f1;--page-deep: #f3ede8;--subtle: #f3ede8;--paper: #ffffff;--card: #ffffff;--hover: #fdf8f5;--ink: #1a1a2e;--ink-soft: #5a5a6e;--muted: #74707e;--line: #e8e2dc;--line-light: #f0ebe6;--input-line: #d5cec8;--coral: #f47b54;--coral-deep: #c4522e;--coral-hover: #ab4524;--coral-light: #fdeae2;--focus-ring: 0 0 0 3px rgba(244, 123, 84, .35);--amber: #f5c244;--amber-light: #fff4dc;--amber-ink: #85600b;--sage: #5bb87a;--sage-light: #e4f3ea;--sage-ink: #2c6e44;--teal: #4db6c4;--teal-light: #dff4f5;--teal-ink: #237884;--lavender: #8b6fd4;--shadow-xs: 0 1px 2px rgba(140, 123, 110, .08);--shadow-sm: 0 1px 4px rgba(140, 123, 110, .06), 0 4px 12px rgba(140, 123, 110, .08);--shadow-md: 0 2px 8px rgba(140, 123, 110, .08), 0 12px 32px rgba(140, 123, 110, .1);--radius-lg: 16px;--radius-md: 14px;--radius-sm: 10px;--serif: "Literata", Georgia, serif;--transition: .16s cubic-bezier(.2, 0, 0, 1);--gutter: clamp(16px, 4vw, 40px);--content: 1260px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--page);overscroll-behavior-y:none}html,body{overflow-x:clip}body{margin:0;font-family:IBM Plex Sans,-apple-system,Segoe UI,system-ui,sans-serif;font-size:16px;line-height:1.6;color:var(--ink);background:var(--page);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea{font:inherit}button{cursor:pointer}h1,h2,h3{margin:0;font-family:var(--serif);font-weight:600;letter-spacing:-.01em;color:var(--ink)}:focus-visible{outline:2px solid var(--coral);outline-offset:2px}.button,.ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border:1px solid transparent;border-radius:999px;font-size:.9375rem;font-weight:600;line-height:1.2;white-space:nowrap;transition:background-color var(--transition),border-color var(--transition),color var(--transition)}.button:active,.ghost-button:active{transform:translateY(1px)}.button:focus-visible,.ghost-button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.button-primary{color:#fff;background:var(--coral-deep)}.button-primary:hover{background:var(--coral-hover)}.button-secondary,.ghost-button{color:var(--ink);background:var(--card);border-color:var(--input-line)}.button-secondary:hover,.ghost-button:hover{background:var(--hover);border-color:#bfb6ae}.button-sm{min-height:38px;padding:0 14px;font-size:.875rem}.site-header{position:sticky;top:0;z-index:40;background:var(--page);border-bottom:1px solid var(--line)}.site-header-inner{display:flex;align-items:center;gap:32px;max-width:var(--content);min-height:64px;margin:0 auto;padding:0 var(--gutter)}.brand{display:flex;align-items:center;gap:10px;color:var(--ink)}.brand-button{padding:0;border:0;background:transparent;text-align:left}.brand img{width:32px;height:32px;border-radius:8px;object-fit:cover}.brand strong{display:block;font-family:var(--serif);font-size:1.125rem;font-weight:600;letter-spacing:-.01em}.brand span{display:block;font-size:.75rem;color:var(--muted)}.site-nav{display:flex;align-items:center;gap:4px;min-width:0}.nav-button{min-height:36px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:var(--ink-soft);font-size:.9375rem;white-space:nowrap;transition:background-color var(--transition),color var(--transition)}.nav-button:hover{background:var(--subtle);color:var(--ink)}.nav-button.active{color:var(--ink);font-weight:500}.header-actions{display:flex;align-items:center;gap:12px;margin-left:auto}@media(max-width:1080px){.site-header-inner{gap:16px}.site-nav{gap:0}.nav-button{padding:0 7px;font-size:.875rem}.header-actions{gap:6px}}.lang-toggle{display:inline-flex;gap:2px}.lang-toggle button{min-width:36px;min-height:32px;padding:0 8px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:.8125rem;font-weight:600;transition:background-color var(--transition),color var(--transition)}.lang-toggle button:hover{color:var(--ink)}.lang-toggle button.active{background:var(--subtle);color:var(--ink)}.header-link{border:0;background:transparent;color:var(--ink-soft);font-size:.9375rem;white-space:nowrap}.header-link:hover{color:var(--ink)}.login-dropdown{position:relative}.login-dropdown-trigger{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 10px;border-radius:8px;transition:background-color var(--transition)}.login-dropdown-trigger:hover{background:var(--subtle)}.login-dropdown-caret{width:10px;height:6px;transition:transform var(--transition)}.login-dropdown.is-open .login-dropdown-caret{transform:rotate(180deg)}.login-dropdown-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:200;display:none;flex-direction:column;gap:2px;min-width:260px;padding:6px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-md)}.login-dropdown.is-open .login-dropdown-menu{display:flex}.login-dropdown-item{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 10px;border-radius:8px;color:var(--ink);font-size:.9375rem}.login-dropdown-item:hover{background:var(--hover)}.login-choice-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;border-radius:10px;background:var(--subtle);color:var(--ink-soft)}.login-choice-text{display:flex;flex-direction:column;gap:1px;min-width:0;line-height:1.3}.login-choice-text strong{font-weight:600;color:var(--ink)}.login-choice-text span{font-size:.8125rem;color:var(--muted)}.nav-burger{display:none;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:44px;height:44px;margin-left:auto;padding:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card);flex-shrink:0}.nav-burger span{display:block;width:18px;height:2px;border-radius:2px;background:var(--ink);transition:transform var(--transition),opacity var(--transition)}.nav-burger.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-burger.is-open span:nth-child(2){opacity:0}.nav-burger.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu-overlay{position:absolute;top:100%;left:0;right:0;height:100vh;height:100dvh;background:#1a1a2e4d}.mobile-menu{position:absolute;top:100%;left:0;right:0;display:grid;gap:4px;max-height:calc(100dvh - 64px);overflow-y:auto;padding:12px var(--gutter) 20px;background:var(--page);border-bottom:1px solid var(--line);box-shadow:var(--shadow-md)}.mobile-menu-nav{display:grid;gap:2px}.mobile-menu-link{display:flex;align-items:center;min-height:48px;padding:0 12px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink);font-size:1rem;font-weight:500;text-align:left}.mobile-menu-link:hover,.mobile-menu-link.active{background:var(--subtle)}.mobile-menu-divider{height:1px;margin:8px 0;background:var(--line)}.mobile-menu-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:0 12px}.mobile-menu-row-label{color:var(--ink-soft);font-size:.9375rem}.mobile-menu-cta{width:100%;min-height:48px;margin-top:8px}.mobile-login{display:grid;gap:8px}.mobile-login-title{padding:0 12px;color:var(--ink-soft);font-size:.8125rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.mobile-login-item{display:flex;align-items:center;gap:12px;min-height:60px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card);color:var(--ink);font-size:1rem}.mobile-login-item:hover{background:var(--subtle)}.hero{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:56px;align-items:center;max-width:var(--content);margin:0 auto;padding:72px var(--gutter) 16px}.hero h1{max-width:14ch;font-size:clamp(2.25rem,4.4vw,3.5rem);line-height:1.08;letter-spacing:-.025em}.hero-lead{max-width:54ch;margin:24px 0 0;color:var(--ink-soft);font-size:1.0625rem;line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.hero-note{max-width:46ch;margin:16px 0 0;color:var(--muted);font-size:.875rem;line-height:1.5}.hero-visual{position:relative;isolation:isolate;padding:0 56px 72px 0}.hero-phone{position:absolute;right:0;bottom:0;width:34%;max-width:236px}.laptop{position:relative}.laptop-frame{display:block;width:100%;height:auto}.laptop-screen{position:absolute;top:4.5946%;left:4.5455%;width:90.9091%;height:84.4595%;overflow:hidden;border-radius:.5%/.8%;background:#f9f5f1}.laptop-screen img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:top left;opacity:0;transition:opacity .25s ease}.laptop-screen img.is-shown{opacity:1}.laptop-screen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(222deg,rgba(255,255,255,.07) 0 24%,transparent 24.2%);pointer-events:none}.cloud-band{max-width:var(--content);margin:0 auto;padding:24px var(--gutter) 8px}.cloud-field{--cloud-scale: .74;display:grid;grid-template-columns:repeat(6,auto);justify-content:space-between;justify-items:center;column-gap:8px;row-gap:24px;margin:0;padding:0;list-style:none}.cloud{--nudge-x: 0px;--nudge-y: 0px;--drift: 12px;--sway: 6px;--tilt: .6deg;position:relative;display:grid;place-items:center;width:calc(var(--cloud-w) * var(--cloud-scale));height:calc(var(--cloud-h) * var(--cloud-scale));translate:var(--nudge-x) var(--nudge-y);animation:cloud-float 11s ease-in-out infinite;transition:translate 1.1s cubic-bezier(.22,1,.36,1),scale .3s ease}.cloud:hover{z-index:2;scale:1.06;transition:translate .5s cubic-bezier(.22,1,.36,1),scale .2s ease}.cloud-0{align-self:start;animation-delay:-.6s;animation-duration:10s}.cloud-1{align-self:end;margin-bottom:20px;--drift: 14px;--sway: 9px;--tilt: -.5deg;animation-delay:-3.8s;animation-duration:13s}.cloud-2{align-self:center;--drift: 15px;--tilt: .4deg;animation-delay:-7.1s}.cloud-3{align-self:start;margin-top:24px;--drift: 11px;--sway: 8px;--tilt: -.7deg;animation-delay:-2.2s;animation-duration:12s}.cloud-4{align-self:end;--drift: 13px;--sway: 5px;animation-delay:-5.4s;animation-duration:14s}.cloud-5{align-self:center;margin-top:18px;--drift: 12px;--sway: 7px;--tilt: .5deg;animation-delay:-8.3s;animation-duration:12.5s}@keyframes cloud-float{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(var(--sway),calc(var(--drift) * -1)) rotate(var(--tilt))}}.cloud-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none;filter:drop-shadow(0 4px 12px rgba(160,190,220,.28))}.cloud-line>*{fill:none;stroke:#bad5eee6;stroke-width:1.8}.cloud-label{position:relative;max-width:calc(var(--cloud-label) * var(--cloud-scale) * 1.1);padding-top:2px;color:var(--ink);font-size:.875rem;font-weight:600;line-height:1.25;text-align:center;text-wrap:balance;text-shadow:0 1px 0 rgba(255,255,255,.55);transition:color .2s ease}.cloud-icon{display:block;margin-bottom:3px;font-size:1.35rem;line-height:1;text-shadow:none}@media(max-width:1180px){.cloud-field{--cloud-scale: .86;grid-template-columns:repeat(3,auto);justify-content:center;column-gap:56px}}.section{max-width:var(--content);margin:0 auto;padding:88px var(--gutter)}.section-band{background:var(--subtle);box-shadow:0 0 0 100vmax var(--subtle);clip-path:inset(0 -100vmax)}.section-head{max-width:620px;margin-bottom:48px}.section-head h2,.faq-grid h2,.closing h2{font-size:clamp(1.625rem,2.8vw,2.125rem);line-height:1.18;letter-spacing:-.02em}.section-head p{margin:14px 0 0;color:var(--ink-soft);font-size:1.0625rem}.how-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;align-items:start}.how-grid .section-head{margin-bottom:40px}.day-timeline{margin:0;padding:0;list-style:none}.day-timeline li{position:relative;padding:0 0 28px 28px;border-left:2px solid var(--line)}.day-timeline li:last-child{padding-bottom:0;border-left-color:transparent}.day-timeline li:before{content:"";position:absolute;top:3px;left:-7px;width:12px;height:12px;border-radius:50%;background:var(--page);border:2px solid var(--ink-soft)}.classroom{position:relative;aspect-ratio:560 / 480;margin-bottom:40px}.classroom-art{display:block;width:100%;height:100%;border-radius:var(--radius-lg)}.classroom-phone{position:absolute;right:4%;bottom:-40px;width:44%}.day-timeline time{display:block;color:var(--ink-soft);font-size:.875rem;font-weight:600;font-variant-numeric:tabular-nums}.day-timeline h3{margin-top:6px;font-size:1.125rem}.day-timeline p{margin:8px 0 0;color:var(--ink-soft);font-size:.9375rem}.scroll-showcase{--header-h: 65px;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:64px;max-width:880px;margin-inline:auto}.showcase-sticky{position:sticky;top:calc(var(--header-h) + 40px);grid-column:1;grid-row:1;align-self:start}.showcase-sticky>.phone{width:min(264px,calc((100vh - var(--header-h) - 96px) * 248 / 538))}.showcase-screens{position:relative;height:100%}.showcase-screen{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transform:translateY(6%) scale(.985);transition:opacity .4s ease,transform .6s cubic-bezier(.2,0,0,1)}.showcase-screen.is-before{transform:translateY(-6%) scale(.985)}.showcase-screen.is-shown{opacity:1;transform:none}.showcase-dots{display:none;justify-content:center;gap:6px;margin:10px 0 0;padding:0;list-style:none}.showcase-dots li{width:6px;height:6px;border-radius:3px;background:var(--line);transition:width .3s ease,background-color .3s ease}.showcase-dots li.is-active{width:18px;background:var(--coral)}.showcase-steps{grid-column:2;grid-row:1;margin:0;padding:0 0 24vh;list-style:none}.showcase-step{display:flex;flex-direction:column;justify-content:center;min-height:64vh;opacity:.28;transition:opacity .4s ease}.showcase-step.is-active{opacity:1}.showcase-step>*{transform:translateY(8px);transition:transform .5s cubic-bezier(.2,0,0,1)}.showcase-step.is-active>*{transform:none}.showcase-num{color:var(--coral-deep);font-size:.8125rem;font-weight:600;letter-spacing:.08em;font-variant-numeric:tabular-nums}.showcase-step h3{margin-top:10px;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.2;letter-spacing:-.015em}.showcase-step p{max-width:40ch;margin:14px 0 0;color:var(--ink-soft);font-size:1.125rem;line-height:1.6}.portal-switch{display:flex;gap:24px;max-width:100%;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line)}.portal-switch::-webkit-scrollbar{display:none}.portal-switch button{flex-shrink:0;min-height:44px;margin-bottom:-1px;padding:0 2px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font-size:.9375rem;font-weight:500;white-space:nowrap;transition:color var(--transition),border-color var(--transition)}.portal-switch button:hover{color:var(--ink)}.portal-switch button.is-active{border-bottom-color:var(--ink);color:var(--ink);font-weight:600}.phone{container-type:inline-size;width:100%}.phone-shell{position:relative;aspect-ratio:248 / 538;padding:3.63cqw;border-radius:16.94cqw;background:linear-gradient(180deg,#1e1e2e,#252538);box-shadow:0 0 0 .4cqw #ffffff24,0 0 0 1cqw #0a0a12,0 0 0 1.4cqw #ffffff12,0 11cqw 29cqw #1a1a2e57}.phone-shell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;border-radius:inherit;background:linear-gradient(145deg,rgba(255,255,255,.11) 0%,transparent 46%);pointer-events:none}.phone-btn{position:absolute;width:1.2cqw;border-radius:1cqw;background:#242438}.phone-silent{left:-.8cqw;top:22%;height:4%}.phone-vol-up{left:-.8cqw;top:30%;height:8%}.phone-vol-down{left:-.8cqw;top:41%;height:8%}.phone-power{right:-.8cqw;top:32%;height:11%}.phone-screen{position:relative;width:100%;height:100%;border-radius:13.71cqw;overflow:hidden;background:#f9f5f1}.phone-status-bar{position:absolute;inset:0 0 auto;z-index:1;display:grid;grid-template-columns:1fr 32% 1fr;align-items:center;justify-items:center;aspect-ratio:390 / 47;padding:0 2% 0 3%;pointer-events:none}.phone-island{position:absolute;top:50%;left:50%;width:32%;height:66%;border-radius:999px;background:#000;transform:translate(-50%,-50%)}.phone-time{grid-column:1;color:#1a1a2e;font-size:4.3cqw;font-weight:600;line-height:1;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.phone-status-icons{grid-column:3;display:flex;align-items:center;gap:1.5cqw;color:#1a1a2e}.phone-status-icons svg{display:block;width:auto;height:3.3cqw}.phone-content{height:100%;overflow:hidden;overflow:clip}.phone-home{position:absolute;bottom:2.2%;left:50%;z-index:1;width:35%;height:1.6cqw;border-radius:1cqw;background:#1a1a2e;transform:translate(-50%);pointer-events:none}.ds{--u: calc(100cqw / 248);--ds-ink: #1a1a2e;--ds-soft: #6b6b80;--ds-coral: #e8704a;display:flex;flex-direction:column;height:100%;background:#f9f5f1;color:var(--ds-ink);font-size:calc(10 * var(--u));line-height:1.35;text-align:left}.ds svg{display:block;width:calc(15 * var(--u));height:calc(15 * var(--u))}.ds-body{flex:1;min-height:0;overflow:hidden;overflow:clip;display:flex;flex-direction:column;gap:calc(8 * var(--u));padding:calc(36 * var(--u)) calc(12 * var(--u)) calc(8 * var(--u))}.ds-banner{display:flex;align-items:center;gap:calc(6 * var(--u));padding:calc(7 * var(--u)) calc(9 * var(--u));border-radius:calc(10 * var(--u));background:#8a6fd6;color:#fff;font-size:calc(9 * var(--u))}.ds-banner svg{width:calc(12 * var(--u));height:calc(12 * var(--u));flex-shrink:0}.ds-head{display:flex;align-items:center;justify-content:space-between;gap:calc(8 * var(--u));padding-top:calc(2 * var(--u))}.ds-head-text{min-width:0}.ds-head-text span{display:block;color:var(--ds-soft);font-size:calc(9 * var(--u));font-weight:600}.ds-head-text strong{display:block;font-size:calc(15 * var(--u));line-height:1.2;letter-spacing:-.01em}.ds-head-actions{display:flex;gap:calc(6 * var(--u));flex-shrink:0}.ds-round{position:relative;display:grid;place-items:center;width:calc(28 * var(--u));height:calc(28 * var(--u));border-radius:50%;background:#fff;box-shadow:0 0 0 calc(1 * var(--u)) #1a1a2e14}.ds-round.has-dot:after{content:"";position:absolute;top:calc(6 * var(--u));right:calc(7 * var(--u));width:calc(6 * var(--u));height:calc(6 * var(--u));border-radius:50%;background:var(--ds-coral);box-shadow:0 0 0 calc(1.5 * var(--u)) #fff}.ds-mood{padding:calc(11 * var(--u));border-radius:calc(14 * var(--u));background:#e3f3ea;box-shadow:inset 0 0 0 calc(1 * var(--u)) #cbe8d7}.ds-mood-top{display:flex;gap:calc(9 * var(--u));align-items:flex-start}.ds-emoji{font-size:calc(22 * var(--u));line-height:1}.ds-mood-top strong{display:block;color:#2f8a57;font-size:calc(13 * var(--u))}.ds-mood-top p{margin:calc(2 * var(--u)) 0 0;color:var(--ds-soft);font-size:calc(9.5 * var(--u))}.ds-pills{display:flex;gap:calc(5 * var(--u));margin-top:calc(9 * var(--u))}.ds-pills span{padding:calc(4 * var(--u)) calc(8 * var(--u));border-radius:999px;background:#fff;font-size:calc(9 * var(--u));font-weight:600}.ds-chev{display:grid;color:var(--ds-soft)}.ds-chev svg{width:calc(12 * var(--u));height:calc(12 * var(--u))}.ds-kicker{margin-top:calc(2 * var(--u));color:var(--ds-soft);font-size:calc(8 * var(--u));font-weight:700;letter-spacing:.08em}.ds-card{border-radius:calc(12 * var(--u));background:#fff;box-shadow:0 0 0 calc(1 * var(--u)) #1a1a2e0f,0 calc(2 * var(--u)) calc(6 * var(--u)) #1a1a2e0a}.ds-row{display:flex;align-items:center;gap:calc(9 * var(--u));padding:calc(8 * var(--u)) calc(10 * var(--u))}.ds-tile{display:grid;place-items:center;width:calc(28 * var(--u));height:calc(28 * var(--u));border-radius:calc(8 * var(--u));flex-shrink:0}.ds-tile.amber{background:#fdf0d5;color:#c98a14}.ds-tile.coral{background:#fde4da;color:#d4603c}.ds-tile.teal{background:#dcf1f0;color:#2a8f8c}.ds-row-text{flex:1;min-width:0}.ds-row-top{display:flex;justify-content:space-between;gap:calc(6 * var(--u))}.ds-row-top strong{font-size:calc(10.5 * var(--u))}.ds-row-top span{color:var(--ds-soft);font-size:calc(8.5 * var(--u))}.ds-row-text p{margin:calc(1 * var(--u)) 0 0;color:var(--ds-soft);font-size:calc(9 * var(--u))}.ds-dots{display:flex;gap:calc(3 * var(--u))}.ds-dots i{width:calc(6 * var(--u));height:calc(6 * var(--u));border-radius:50%;background:#e3ddd6}.ds-dots i.on{background:#4caf7a}.ds-news{padding:calc(10 * var(--u)) calc(11 * var(--u))}.ds-news.is-pinned{box-shadow:inset 0 0 0 calc(1.5 * var(--u)) #f0b8a3;background:#fff8f4}.ds-news strong{display:block;font-size:calc(11 * var(--u));line-height:1.25}.ds-news p{margin:calc(3 * var(--u)) 0 0;color:var(--ds-soft);font-size:calc(9.5 * var(--u))}.ds-tag{display:inline-flex;align-items:center;gap:calc(3 * var(--u));margin-bottom:calc(5 * var(--u));color:#c4553a;font-size:calc(8 * var(--u));font-weight:700;letter-spacing:.04em;text-transform:uppercase}.ds-tag svg,.ds-seen svg{width:calc(10 * var(--u));height:calc(10 * var(--u))}.ds-news-foot{display:flex;justify-content:space-between;align-items:center;margin-top:calc(7 * var(--u));color:var(--ds-soft);font-size:calc(8.5 * var(--u))}.ds-seen{display:inline-flex;align-items:center;gap:calc(2 * var(--u));color:#2f8a57;font-weight:600}.ds-chat .ds-body{gap:calc(6 * var(--u));padding-inline:calc(9 * var(--u))}.ds-chat-head{display:flex;align-items:center;justify-content:space-between;margin:0 calc(-9 * var(--u));padding:0 calc(10 * var(--u)) calc(7 * var(--u));border-bottom:calc(1 * var(--u)) solid rgba(26,26,46,.08);text-align:center}.ds-chat-head strong{display:block;font-size:calc(11.5 * var(--u))}.ds-chat-head span:not(.ds-icon-btn){display:block;color:var(--ds-soft);font-size:calc(8 * var(--u))}.ds-icon-btn{color:var(--ds-ink)}.ds-chat-fill{flex:1}.ds-chat-day{align-self:center;margin:calc(2 * var(--u)) 0;padding:calc(2 * var(--u)) calc(8 * var(--u));border-radius:999px;background:#ece6df;color:var(--ds-soft);font-size:calc(8 * var(--u));font-weight:600}.ds-msg{display:flex;align-items:flex-end;gap:calc(5 * var(--u))}.ds-msg.is-mine{justify-content:flex-end}.ds-avatar{display:grid;place-items:center;width:calc(18 * var(--u));height:calc(18 * var(--u));border-radius:50%;color:#fff;font-size:calc(8 * var(--u));font-weight:700;flex-shrink:0}.ds-avatar.violet{background:#7a5cc7}.ds-avatar.teal{background:#2a9d9a}.ds-avatar.amber{background:#d08a1c}.ds-bubble b.violet{color:#7a5cc7}.ds-bubble b.teal{color:#2a9d9a}.ds-bubble b.amber{color:#b0730f}.ds-bubble{max-width:78%;padding:calc(5 * var(--u)) calc(8 * var(--u));border-radius:calc(11 * var(--u)) calc(11 * var(--u)) calc(11 * var(--u)) calc(3 * var(--u));background:#fff;box-shadow:0 0 0 calc(1 * var(--u)) #1a1a2e0f}.ds-bubble b{display:block;font-size:calc(8 * var(--u))}.ds-bubble p{margin:0;font-size:calc(9.5 * var(--u))}.ds-bubble>span{display:block;margin-top:calc(1 * var(--u));color:var(--ds-soft);font-size:calc(7 * var(--u));text-align:right}.ds-msg.is-mine .ds-bubble{border-radius:calc(11 * var(--u)) calc(11 * var(--u)) calc(3 * var(--u)) calc(11 * var(--u));background:var(--ds-coral);color:#fff;box-shadow:none}.ds-msg.is-mine .ds-bubble>span{color:#fffc}.ds-compose{display:flex;align-items:center;gap:calc(6 * var(--u));margin-top:calc(4 * var(--u))}.ds-compose>span:first-child{flex:1;padding:calc(7 * var(--u)) calc(10 * var(--u));border-radius:999px;background:#fff;box-shadow:inset 0 0 0 calc(1 * var(--u)) #1a1a2e1a;color:var(--ds-soft);font-size:calc(9 * var(--u))}.ds-send{display:grid;place-items:center;width:calc(26 * var(--u));height:calc(26 * var(--u));border-radius:50%;background:var(--ds-coral);color:#fff}.ds-send svg{width:calc(12 * var(--u));height:calc(12 * var(--u))}.ds-choice{display:flex;gap:calc(6 * var(--u))}.ds-choice.is-wrap{flex-wrap:wrap}.ds-choice span{padding:calc(6 * var(--u)) calc(9 * var(--u));border-radius:999px;background:#fff;box-shadow:inset 0 0 0 calc(1 * var(--u)) #1a1a2e1f;font-size:calc(9.5 * var(--u));font-weight:600}.ds-choice span.is-on{background:#fde4da;box-shadow:inset 0 0 0 calc(1.5 * var(--u)) var(--ds-coral);color:#b44a2f}.ds-note{min-height:calc(44 * var(--u));padding:calc(8 * var(--u)) calc(10 * var(--u));border-radius:calc(10 * var(--u));background:#fff;box-shadow:inset 0 0 0 calc(1 * var(--u)) #1a1a2e1a;font-size:calc(9.5 * var(--u))}.ds-cta{padding:calc(9 * var(--u));border-radius:calc(12 * var(--u));background:var(--ds-coral);color:#fff;font-size:calc(10.5 * var(--u));font-weight:700;text-align:center}.ds-sent{display:flex;align-items:center;gap:calc(6 * var(--u));color:var(--ds-soft);font-size:calc(9 * var(--u))}.ds-sent-icon{display:grid;place-items:center;width:calc(18 * var(--u));height:calc(18 * var(--u));border-radius:50%;background:#e3f3ea;color:#2f8a57;flex-shrink:0}.ds-sent-icon svg{width:calc(11 * var(--u));height:calc(11 * var(--u))}.ds-tabs{display:grid;grid-template-columns:repeat(4,1fr);padding:calc(6 * var(--u)) calc(4 * var(--u)) calc(19 * var(--u));border-top:calc(1 * var(--u)) solid rgba(26,26,46,.08);background:#fff}.ds-tab{display:flex;flex-direction:column;align-items:center;gap:calc(2 * var(--u));color:#8a8a9c;font-size:calc(7 * var(--u));font-weight:600}.ds-tab svg{width:calc(16 * var(--u));height:calc(16 * var(--u))}.ds-tab.is-on{color:var(--ds-coral)}.app-shot{display:block;width:100%;height:100%;object-fit:cover;object-position:top;background:#f9f5f1}.portal-switch{margin-bottom:0}.portal-stage{padding:24px 0 0}.portal-caption{max-width:62ch;min-height:3.2em;margin:0 0 28px;color:var(--ink-soft)}.portal-stage .laptop{max-width:min(960px,max(480px,calc((100vh - 260px)*1.486)));max-width:min(960px,max(480px,calc((100svh - 260px)*1.486)));margin:0 auto}.feature-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 32px;margin:72px 0 0}.feature-list dt{font-weight:600}.feature-list dd{margin:4px 0 0;color:var(--ink-soft);font-size:.9375rem}.price-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:stretch;margin:0;padding:0;list-style:none}.price-card{display:flex;flex-direction:column;padding:24px 20px 20px;border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:var(--shadow-xs)}.price-card.is-featured{border-color:#c4522e73;background:linear-gradient(180deg,#fff7f2 0%,var(--card) 70%);box-shadow:var(--shadow-md)}.price-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-height:1.75rem}.price-card h3{font-size:1.25rem}.price-badge{flex-shrink:0;padding:2px 10px;border-radius:999px;background:var(--coral-light);color:#a94322;font-size:.75rem;font-weight:600}.price-size{margin:4px 0 0;color:var(--ink-soft);font-size:.875rem}.price-amount{display:flex;align-items:baseline;gap:6px;margin:18px 0 0}.price-amount strong{font-family:var(--serif);font-size:2rem;font-weight:600;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.price-amount.is-text strong{font-size:1.25rem;line-height:1.3;letter-spacing:-.01em}.price-amount span{color:var(--muted);font-size:.875rem}.price-note{margin:12px 0 0;color:var(--ink-soft);font-size:.875rem;line-height:1.5}.price-features{flex:1;margin:16px 0 20px;padding:16px 0 0;border-top:1px solid var(--line-light);list-style:none;color:var(--ink-soft);font-size:.875rem}.price-features li{position:relative;padding-left:16px;line-height:1.45}.price-features li:before{content:"";position:absolute;top:.55em;left:0;width:6px;height:6px;border-radius:50%;background:var(--coral)}.price-features li+li{margin-top:8px}.price-card .button{width:100%}@supports (grid-template-rows: subgrid){.price-card{display:grid;grid-row:span 6;grid-template-rows:subgrid;row-gap:0}.price-card .button{align-self:end}}.price-footnote{max-width:70ch;margin:20px 0 0;color:var(--muted);font-size:.875rem}.contact-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start}.contact-intro h2{font-size:clamp(1.625rem,2.8vw,2.125rem);line-height:1.18;letter-spacing:-.02em}.contact-intro>p{margin:14px 0 0;color:var(--ink-soft);font-size:1.0625rem}.contact-points{display:grid;gap:12px;margin:28px 0 0;padding:0;list-style:none}.contact-points li{position:relative;padding-left:28px;color:var(--ink)}.contact-points li:before{content:"";position:absolute;left:2px;top:.3em;width:16px;height:16px;border-radius:50%;background:var(--sage-light) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2 7 10.6l4.5-5' fill='none' stroke='%232c6e44' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 16px no-repeat}.contact-direct{margin:28px 0 0;color:var(--ink-soft)}.contact-direct a{color:var(--coral-deep);font-weight:600}.contact-card{padding:32px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.contact-form{display:grid;gap:18px}.contact-topics{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0}.contact-topics legend{width:100%;margin-bottom:8px;color:var(--ink-soft);font-size:.8125rem;font-weight:600}.contact-topics label{position:relative;display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border:1px solid var(--input-line);border-radius:999px;background:#fff;color:var(--ink);font-size:.9375rem;font-weight:600;cursor:pointer;transition:border-color var(--transition),background var(--transition)}.contact-topics label.is-on{border-color:var(--coral);background:var(--coral-light);color:var(--coral-deep)}.contact-topics input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;border-radius:999px;opacity:0;cursor:pointer}.contact-topics label:has(input:focus-visible){box-shadow:var(--focus-ring)}.contact-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.contact-field{display:grid;gap:6px;align-content:start}.contact-field label{color:var(--ink-soft);font-size:.8125rem;font-weight:600}.contact-optional{color:var(--muted);font-weight:400}.contact-field input,.contact-field select,.contact-field textarea{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--input-line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);font:inherit;font-size:.97rem;transition:border-color var(--transition),box-shadow var(--transition)}.contact-field textarea{min-height:112px;padding:12px 14px;resize:vertical;line-height:1.5}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{outline:none;border-color:var(--coral);box-shadow:var(--focus-ring)}.contact-field [aria-invalid=true],.contact-consent input[aria-invalid=true]{border-color:#c2412d}.contact-error,.contact-form-error{margin:0;color:#b3361f;font-size:.8125rem}.contact-form-error{padding:10px 14px;border-radius:var(--radius-sm);background:#fdeae5;font-size:.875rem}.contact-consent{display:flex;gap:10px;align-items:flex-start;color:var(--ink-soft);font-size:.875rem;line-height:1.5}.contact-consent input{flex-shrink:0;width:18px;height:18px;margin:2px 0 0;accent-color:var(--coral-deep)}.contact-consent a{color:var(--coral-deep);text-decoration:underline}.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-submit{justify-self:start;min-width:160px}.contact-sent{display:grid;justify-items:start;gap:10px;padding:12px 0;outline:none}.contact-sent h3{margin:4px 0 0;font-size:1.25rem}.contact-sent p{margin:0 0 8px;color:var(--ink-soft)}.contact-sent-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--sage-light)}.contact-sent-icon svg{width:24px;height:24px;fill:none;stroke:var(--sage-ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}@media(max-width:920px){.contact-grid{grid-template-columns:minmax(0,1fr);gap:32px}}@media(max-width:560px){.contact-card{padding:20px}.contact-row{grid-template-columns:minmax(0,1fr)}.contact-submit{justify-self:stretch;min-height:48px}}.faq-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:48px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:16px 0;font-size:1.0625rem;font-weight:600;list-style:none;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"";flex-shrink:0;width:9px;height:9px;margin-right:4px;border-right:2px solid var(--ink-soft);border-bottom:2px solid var(--ink-soft);transform:translateY(-3px) rotate(45deg);transition:transform var(--transition)}.faq-list details[open] summary:after{transform:translateY(2px) rotate(-135deg)}.faq-list summary:focus-visible{outline-offset:4px}.faq-list p{max-width:62ch;margin:0 0 20px;color:var(--ink-soft)}.closing{position:relative;display:flex;align-items:center;justify-content:space-between;gap:32px;width:min(100% - 2 * var(--gutter),var(--content) - 2 * var(--gutter));margin:24px auto 96px;padding:56px clamp(24px,5vw,64px);overflow:hidden;border-radius:28px;background:radial-gradient(circle at 88% 30%,rgba(245,194,68,.22),transparent 42%),radial-gradient(circle at 12% 110%,rgba(244,123,84,.18),transparent 45%),#1f2238;color:#f4efe9}.closing h2{max-width:24ch;color:#fff}.closing p{max-width:52ch;margin:10px 0 0;color:#f4efe9c7}.closing .button-primary{background:var(--coral);color:#1a1a2e}.closing .button-primary:hover{background:#f68e6c}.closing .button-secondary{background:transparent;border-color:#ffffff59;color:#fff}.closing .button-secondary:hover{background:#ffffff14;border-color:#ffffff8c}.closing-actions{display:flex;flex-wrap:wrap;flex-shrink:0;gap:12px}.site-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 48px;align-items:start;padding:40px max(var(--gutter),calc((100% - var(--content)) / 2 + var(--gutter)));border-top:1px solid var(--line);background:var(--subtle)}.footer-brand{display:flex;gap:12px}.footer-brand img{border-radius:7px}.footer-brand strong{font-family:var(--serif);font-size:1.0625rem;font-weight:600}.footer-brand p{margin:2px 0 0;color:var(--ink-soft);font-size:.9375rem}.footer-links{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:.9375rem}.footer-links a{color:var(--ink-soft)}.footer-links a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.footer-copy{grid-column:1 / -1;margin:0;color:var(--muted);font-size:.8125rem}@media(max-width:1080px){.hero{grid-template-columns:minmax(0,1fr);gap:48px;padding-top:56px}.price-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero h1{max-width:18ch}.hero-visual{max-width:720px}.how-grid{grid-template-columns:minmax(0,1fr);gap:56px}.classroom{max-width:640px}.feature-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:920px){.site-nav,.header-actions{display:none}.nav-burger{display:flex}.cloud-field{--cloud-scale: .8;column-gap:32px}.faq-grid{grid-template-columns:minmax(0,1fr);gap:24px}.price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.closing{flex-direction:column;align-items:flex-start}}@media(max-width:680px){.hero{padding-top:40px;padding-bottom:24px}.hero-lead{font-size:1rem}.hero-actions .button{flex:1 1 100%;min-height:48px}.hero-visual{padding:0 28px 32px 0}.hero-phone{width:38%}.cloud-band{padding-top:24px;padding-bottom:8px}.cloud-field{--cloud-scale: .64;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:8px;row-gap:0}.cloud{max-width:100%;margin:0}.cloud:nth-child(2n){margin-top:16px}.cloud-label{font-size:.8125rem}.cloud-icon{font-size:1.15rem}.classroom{margin-bottom:28px}.classroom-phone{width:40%;bottom:-28px}.portal-caption{min-height:4.8em;margin-bottom:20px}.section{padding-top:52px;padding-bottom:52px}.section-head{margin-bottom:32px}.day-timeline li{padding-left:24px}.feature-list{grid-template-columns:minmax(0,1fr);gap:20px;margin-top:48px}.scroll-showcase{grid-template-columns:minmax(0,1fr)}.showcase-sticky{z-index:2;top:var(--header-h);display:grid;place-items:center;grid-column:1;height:auto;margin-inline:calc(-1 * var(--gutter));padding:12px var(--gutter) 10px;background:var(--subtle)}.showcase-sticky:after{content:"";position:absolute;z-index:-1;top:100%;right:0;left:0;height:28px;background:linear-gradient(var(--subtle),transparent);pointer-events:none}.showcase-sticky>.phone{width:min(220px,calc((100svh - var(--header-h) - 250px) * 248 / 538))}.showcase-dots{display:flex}.showcase-steps{grid-column:1;grid-row:2;padding-bottom:28svh}.showcase-step{align-items:center;justify-content:flex-start;min-height:44svh;padding-top:28px;text-align:center}.showcase-step h3{margin-top:6px;font-size:1.375rem}.showcase-step p{margin-top:10px;font-size:1rem}.price-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:84%;gap:12px;margin-inline:calc(-1 * var(--gutter));padding:4px var(--gutter) 16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);scrollbar-width:none}.price-grid::-webkit-scrollbar{display:none}.price-card{scroll-snap-align:start}.closing-actions{width:100%}.closing-actions .button{flex:1 1 100%;min-height:48px}.site-footer{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.auth-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--page)}.auth-header{display:flex;align-items:center;padding:16px clamp(20px,4vw,48px);border-bottom:1px solid var(--line)}.auth-main{flex:1;display:flex;align-items:center;justify-content:center;padding:48px clamp(16px,4vw,32px)}.auth-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:clamp(28px,5vw,44px);width:100%;max-width:440px;overflow:hidden}.auth-card-done{text-align:center}.auth-back{background:none;border:0;color:var(--ink-soft);font-size:.88rem;cursor:pointer;padding:0;margin-bottom:20px;display:block}.auth-back:hover{color:var(--ink)}.auth-title{font-size:clamp(1.5rem,3vw,1.75rem);font-weight:600;color:var(--ink);margin:0 0 16px;line-height:1.2;letter-spacing:-.015em}.auth-subtitle{font-size:.93rem;color:var(--ink-soft);margin:0 0 28px;line-height:1.5}.auth-subtitle a{color:var(--coral-deep);text-decoration:underline;text-underline-offset:2px}.role-options{display:flex;flex-direction:column;gap:10px;margin-bottom:28px}.role-option{display:flex;align-items:center;gap:14px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition),background-color var(--transition);text-align:left;color:var(--ink);font-size:inherit}.role-option:hover{border-color:var(--input-line);background:var(--hover)}.role-option>svg{width:8px;height:14px;margin-left:auto;color:var(--ink-soft);flex-shrink:0}.role-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;color:var(--coral-deep);background:#fdeae2;flex-shrink:0}.role-option div{display:flex;flex-direction:column;gap:2px}.role-option strong{font-size:.97rem;font-weight:600}.role-option div span{font-size:.83rem;color:var(--ink-soft)}.auth-form{display:flex;flex-direction:column;gap:18px;margin-bottom:20px}.auth-field{display:flex;flex-direction:column;gap:6px;margin-bottom:4px}.auth-field label{font-size:.8125rem;font-weight:600;color:var(--ink-soft)}.auth-field input,.auth-field input[type=search]{width:100%;height:48px;padding:0 14px;border:1px solid var(--input-line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);font-size:.97rem;transition:border-color var(--transition),box-shadow var(--transition)}.auth-field input:focus{outline:none;border-color:var(--coral);box-shadow:var(--focus-ring)}.auth-hint{font-size:.8rem;color:var(--ink-soft)}.auth-pass-wrap{position:relative}.auth-pass-wrap input{padding-right:44px}.auth-pass-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:grid;place-items:center;background:none;border:0;cursor:pointer;color:var(--ink-soft);line-height:1;padding:4px}.auth-pass-toggle:hover{color:var(--ink)}.auth-error{background:#fde8e7;border:1px solid rgba(232,97,90,.3);border-radius:8px;color:#b83830;font-size:.88rem;padding:10px 14px;margin:0}.auth-submit{display:flex;align-items:center;justify-content:center;width:100%;height:48px;border-radius:var(--radius-sm);border:0;background:var(--coral-deep);color:#fff;font-size:.97rem;font-weight:600;cursor:pointer;transition:background-color var(--transition);text-decoration:none;margin-top:8px}.auth-submit:hover:not(:disabled){background:var(--coral-hover)}.auth-submit:focus-visible{outline:none;box-shadow:var(--focus-ring)}.auth-submit:disabled{opacity:.55;cursor:not-allowed}.auth-footer-note{font-size:.86rem;color:var(--ink-soft);text-align:center;margin:16px 0 0}.auth-footer-note a{color:var(--coral-deep);text-decoration:underline;text-underline-offset:2px}.auth-privacy-note{font-size:.8rem;line-height:1.5;color:var(--ink-soft);text-align:center;margin:12px 0 0}.auth-privacy-note a{color:inherit;text-decoration:underline;text-underline-offset:2px}.auth-searching{font-size:.88rem;color:var(--ink-soft);margin:4px 0 0}.school-results{list-style:none;margin:8px 0 0;padding:0;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;background:#fff}.school-result-item{display:flex;flex-direction:column;gap:2px;width:100%;padding:12px 16px;background:none;border:0;border-bottom:1px solid var(--line);cursor:pointer;text-align:left;transition:background-color var(--transition)}.school-results li:last-child .school-result-item{border-bottom:0}.school-result-item:hover{background:var(--hover)}.school-result-name{font-weight:600;font-size:.93rem;color:var(--ink)}.school-result-city{font-size:.82rem;color:var(--ink-soft)}.school-selected{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--subtle);border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px 16px;margin-top:8px}.school-selected-info{display:flex;flex-direction:column;gap:2px}.school-selected-info strong{font-size:.93rem;color:var(--ink)}.school-selected-info span{font-size:.82rem;color:var(--ink-soft)}.school-selected-clear{background:none;border:0;cursor:pointer;color:var(--ink-soft);font-size:.9rem;padding:4px 6px;border-radius:6px;flex-shrink:0}.school-selected-clear:hover{background:#0000000f}.school-not-found{margin-top:28px;padding-top:20px;border-top:1px solid var(--line);font-size:.88rem;color:var(--ink-soft)}.school-not-found p{margin:0 0 6px}.school-not-found-link{color:var(--coral-deep);text-decoration:underline;text-underline-offset:2px}.auth-tabs{display:flex;gap:0;border-radius:var(--radius-sm);padding:4px;margin-bottom:28px;background:var(--subtle)}.auth-tab{flex:1;padding:9px 12px;border:1px solid transparent;border-radius:8px;background:none;color:var(--ink-soft);font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color var(--transition),color var(--transition);white-space:nowrap}.auth-tab.is-active{background:#fff;color:var(--ink);border-color:var(--line);font-weight:600}.auth-tab:hover:not(.is-active){color:var(--ink)}.auth-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:480px){.auth-row{grid-template-columns:1fr}}.auth-select{width:100%;height:46px;padding:0 36px 0 14px;border:1px solid var(--input-line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);font-size:.96rem;font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%235e677d' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:10px;transition:border-color var(--transition),box-shadow var(--transition)}.auth-select:focus{outline:none;border-color:var(--coral);box-shadow:var(--focus-ring)}.auth-optional{font-size:.78rem;font-weight:400;color:var(--ink-soft)}.auth-plan-badge{display:flex;align-items:center;gap:10px;background:var(--subtle);border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:24px;flex-wrap:wrap}.auth-plan-badge>span:first-child{font-size:.92rem;font-weight:600;color:var(--ink);flex:1}.auth-plan-badge>strong{font-size:1rem;color:var(--ink);white-space:nowrap}.auth-plan-note{width:100%;font-size:.78rem;color:var(--ink-soft)}.auth-done-icon{width:56px;height:56px;border-radius:50%;background:var(--sage-light);color:var(--sage-ink);font-size:1.6rem;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}@media(max-width:680px){.auth-main{padding:28px 16px 48px}.auth-field input,.auth-select{font-size:16px}.auth-tab{min-height:44px}.auth-pass-toggle{display:grid;place-items:center;width:44px;height:44px;right:3px;padding:0}}.demo-page{min-height:100vh;background:var(--page);color:var(--ink);display:flex;flex-direction:column;padding:0 20px 64px}.demo-topbar{max-width:1080px;width:100%;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:20px 4px}.demo-back{color:var(--ink-soft);text-decoration:none;font-weight:500;font-size:14px}.demo-back:hover{color:var(--ink)}.demo-main{max-width:1080px;width:100%;margin:0 auto}.demo-head{max-width:680px;margin:16px 0 36px}.demo-head h1{font-size:clamp(28px,4vw,38px);font-weight:600;line-height:1.15;margin:8px 0 10px;letter-spacing:-.02em}.demo-lead{font-size:16px;line-height:1.6;color:var(--ink-soft);margin:0}.demo-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.demo-chip{font-size:12.5px;font-weight:600;color:var(--ink-soft);background:var(--subtle);border-radius:999px;padding:4px 12px}.demo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:860px){.demo-grid{grid-template-columns:1fr;max-width:460px}}.demo-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px 22px;display:flex;flex-direction:column}.demo-card-icon{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--coral-deep);background:var(--coral-light);margin-bottom:14px}.demo-card-teacher .demo-card-icon{color:var(--teal-ink);background:var(--teal-light)}.demo-card-parent .demo-card-icon{color:#6a4ebb;background:#eee8fa}.demo-card h2{font-size:19px;margin:0 0 4px;letter-spacing:-.01em}.demo-card-desc{font-size:14px;color:var(--ink-soft);margin:0 0 14px;line-height:1.5}.demo-card-list{list-style:none;padding:0;margin:0 0 20px;display:flex;flex-direction:column;gap:8px}.demo-card-list li{position:relative;padding-left:16px;font-size:14px;color:var(--ink)}.demo-card-list li:before{content:"";position:absolute;left:2px;top:9px;width:5px;height:5px;border-radius:50%;background:var(--muted)}.demo-card-mobile{font-size:12px;color:var(--ink-soft);margin:12px 0 0;line-height:1.45;text-align:center}.demo-foot{margin-top:30px;display:flex;flex-direction:column;align-items:flex-start;gap:14px}.demo-switch-hint{font-size:14px;color:var(--ink-soft);margin:0}.demo-end{padding:10px 20px;font-size:14px}.demo-loading,.demo-error{max-width:460px;margin:40px auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:40px 28px}.demo-loading strong,.demo-error strong{font-size:17px}.demo-loading span:last-child,.demo-error p{font-size:14px;color:var(--ink-soft);margin:0;line-height:1.5}.demo-spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--coral-light);border-top-color:var(--coral-deep);animation:demoSpin .8s linear infinite;margin-bottom:6px}@keyframes demoSpin{to{transform:rotate(360deg)}}.demo-brand{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:16px;color:var(--ink);letter-spacing:-.01em}.demo-brand img{border-radius:8px}.demo-open{margin-top:auto;width:100%;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:10px 18px;min-height:48px;border:none;border-radius:var(--radius-sm);cursor:pointer;font-family:inherit;font-weight:600;font-size:15px;color:#fff;background:var(--coral-deep);transition:background-color var(--transition),opacity var(--transition)}.demo-open:hover:not(:disabled){background:var(--coral-hover)}.demo-open:focus-visible{outline:none;box-shadow:var(--focus-ring)}.demo-open:disabled{cursor:default}.demo-open.is-waiting{flex-direction:row;gap:9px;opacity:.9}.demo-open-hint{font-size:11px;font-weight:500;color:#ffffffd9}.demo-chip-busy{display:inline-flex;align-items:center;gap:8px;color:var(--ink)}.demo-spinner-sm{width:14px;height:14px;border-width:2px;margin:0}.demo-open .demo-spinner-sm{border-color:#ffffff59;border-top-color:#fff}.demo-error-inline{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:16px;padding:12px 18px;background:#fde8e7;border:1px solid rgba(232,97,90,.3);border-radius:var(--radius-sm);font-size:14px;color:var(--ink)}.demo-retry{padding:7px 16px;font-size:13.5px}
