/* 311 Plans page. Built on the site design system (site.css tokens): night hero, paper plan section, claims, FAQ, CTA band. */
.pl-hero{padding-bottom:var(--space-7,48px)}
.pl-hero h1{max-width:18ch}
.pl-tools{display:flex;flex-wrap:wrap;gap:12px;margin-top:var(--space-6,32px)}
.pl-tog{display:inline-flex;gap:4px;padding:5px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid var(--night-line,rgba(255,255,255,.12))}
.pl-tog button{appearance:none;border:0;cursor:pointer;border-radius:999px;padding:10px 18px;font:600 15.5px var(--font);background:transparent;color:var(--night-mu,#c3c3dd);white-space:nowrap}
.pl-tog button:hover{color:#fff}
.pl-tog button[aria-pressed=true]{background:#fff;color:var(--ink-900,#0d0d1f)}
.pl-tog em{font-style:normal;font-size:12.5px;font-weight:700;margin-left:6px;color:#ff9cc8}.pl-tog button[aria-pressed=true] em{color:var(--accent,#D92A79)}
.pl-tog button:focus-visible{outline:3px solid var(--cyan,#06AFF0);outline-offset:2px}
.pl-note{margin:var(--space-5,24px) 0 0;max-width:760px;padding:14px 18px;border-radius:var(--radius-card,16px);font-size:16px;line-height:1.5}
.night .pl-note{background:rgba(255,255,255,.07);border:1px solid var(--night-line,rgba(255,255,255,.12));border-left:4px solid #4be38b;color:#e6e6f7}.night .pl-note b{color:#fff}
.pl-note.soon{margin:0 0 var(--space-5,24px);background:#fff;border:1px solid var(--line,#dcdce8);border-left:4px solid var(--accent,#D92A79);color:var(--ink-700,#2e2e48)}.pl-note.soon b{color:var(--ink-900,#0d0d1f)}
.pl-plans{padding-top:var(--space-8,64px)}
.pl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5,24px);align-items:stretch}
.pl-c{position:relative;display:flex;flex-direction:column;gap:12px;padding:32px 28px 28px;border-radius:var(--radius-lg,20px);background:#fff;border:1px solid var(--line,#dcdce8);box-shadow:var(--shadow-1,0 10px 30px rgba(15,15,60,.08))}
.pl-c.hot{background:var(--night,#07071c);border-color:transparent;color:var(--night-mu,#c3c3dd);box-shadow:var(--shadow-2,0 24px 70px rgba(25,20,78,.14))}
.pl-c.hot::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;border-radius:var(--radius-lg,20px) var(--radius-lg,20px) 0 0;background:var(--signal-x,linear-gradient(90deg,#FC96A9,#D92A79,#96069D))}
.pl-tag{position:absolute;right:20px;top:22px;font-style:normal;font-size:13px;font-weight:700;background:var(--accent,#D92A79);color:#fff;border-radius:999px;padding:5px 12px}
.pl-c h2{margin:0;font-size:28px}.pl-c.hot h2{color:#fff}
.pl-w{margin:0;font-size:16px;line-height:1.5;color:var(--ink-500,#5a5a75);min-height:3em}.pl-c.hot .pl-w{color:var(--night-mu,#c3c3dd)}
.pl-pr{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:6px}.pl-pr b{font-size:clamp(40px,4.4vw,52px);line-height:1;letter-spacing:-.02em;color:var(--ink-900,#0d0d1f);font-variant-numeric:tabular-nums}.pl-c.hot .pl-pr b{color:#fff}
.pl-pr span{font-size:15px;color:var(--ink-500,#5a5a75)}.pl-c.hot .pl-pr span{color:var(--night-mu,#c3c3dd)}
.pl-sv{margin:0;font-size:15px;font-weight:600;color:var(--accent,#D92A79)}.pl-c.hot .pl-sv{color:#ff9cc8}
.pl-off{display:inline-flex;align-self:flex-start;align-items:center;gap:6px;margin-top:4px;padding:6px 12px;border-radius:999px;background:#fde6f1;color:#b81f63;font-size:14px;font-weight:700}.pl-c.hot .pl-off{background:rgba(255,156,200,.14);color:#ffb3d4}
.pl-c ul{margin:6px 0 14px;padding:16px 0 0;list-style:none;display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line,#dcdce8)}.pl-c.hot ul{border-color:var(--night-line,rgba(255,255,255,.12))}
.pl-c li{position:relative;padding-left:28px;font-size:16px;line-height:1.45;color:var(--ink-700,#2e2e48)}.pl-c.hot li{color:#e6e6f7}
.pl-c li::before{content:"";position:absolute;left:3px;top:7px;width:12px;height:7px;border-left:2.5px solid var(--accent,#D92A79);border-bottom:2.5px solid var(--accent,#D92A79);transform:rotate(-45deg)}.pl-c.hot li::before{border-color:#ff9cc8}
.pl-c .btn{margin-top:auto;align-self:flex-start}
.pl-c:not(.hot) .btn.btn-s{background:#fff!important;color:var(--ink-900,#0d0d1f)!important;border:1.5px solid var(--line,#dcdce8)!important}
.pl-c:not(.hot) .btn.btn-s .ic{background:var(--accent,#D92A79);color:#fff}
.pl-foot{margin:var(--space-6,32px) auto 0;max-width:760px;text-align:center;font-size:15px;line-height:1.55;color:var(--ink-500,#5a5a75)}
.pl-faq .faq{max-width:900px}
#plPay{position:fixed;inset:0;z-index:2147483001;background:rgba(7,7,28,.6);display:flex;align-items:center;justify-content:center;padding:16px}
#plPay[hidden]{display:none}
.pl-pp{position:relative;width:min(540px,100%);max-height:calc(100vh - 32px);overflow:auto;box-sizing:border-box;background:#fff;border-radius:var(--radius-lg,20px);padding:30px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-2,0 24px 70px rgba(25,20,78,.14));font-family:var(--font)}
.pl-pp h2{margin:0;font-size:28px;padding-right:40px}.pl-pk{margin:0;font-size:16px;line-height:1.5;color:var(--ink-500,#5a5a75)}
.pl-px{position:absolute;right:14px;top:14px;appearance:none;border:0;background:var(--surface-1,#f4f4f9);color:var(--ink-900,#0d0d1f);font-size:24px;line-height:1;cursor:pointer;width:40px;height:40px;border-radius:50%}
.pl-px:focus-visible{outline:3px solid var(--indigo,#2F2F91);outline-offset:2px}
.pl-pf{margin-top:4px}
.pl-err{margin:0;min-height:1em;font-size:15px;color:#b81f63}.pl-err a{color:var(--indigo,#2F2F91);font-weight:600}
.pl-go[disabled]{opacity:.7;cursor:wait}
.pl-ptest{margin:0;font-size:14px;color:#5a4300;background:#fff3d6;border-radius:10px;padding:8px 12px}
.pl-done{display:flex;flex-direction:column;gap:10px}.pl-done p{margin:0;font-size:16.5px;line-height:1.55;color:var(--ink-700,#2e2e48)}
@media (max-width:960px){.pl-grid{grid-template-columns:minmax(0,1fr);max-width:560px;margin:0 auto}.pl-w{min-height:0}}
@media (max-width:560px){.pl-tools{flex-direction:column;align-items:flex-start}.pl-tog button{padding:10px 14px;font-size:15px}.pl-c{padding:28px 20px 22px}.pl-pp{padding:24px 18px}.pl-pf{grid-template-columns:minmax(0,1fr)}.pl-c .btn{align-self:flex-start;margin-left:0!important}}
.pl-pp.sent .pl-pf,.pl-pp.sent .pl-err,.pl-pp.sent .pl-go,.pl-pp.sent .pl-ptest{display:none!important}
