/* Shared rhythm: stable content widths, readable wrapping, gentle route entry. */
#main>.shell{animation:sugar-page-in .22s ease-out both}
@keyframes sugar-page-in{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.app-dialog[open]{animation:sugar-dialog-in .18s ease-out}
@keyframes sugar-dialog-in{from{opacity:.5;transform:translateY(5px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
.section-heading,.rank-preview-heading,.history-heading,.event-page-head{align-items:center;gap:20px}
.section-heading>div,.rank-preview-heading>div,.event-page-head>div,.wallet-user>div{min-width:0}
.section-title,.section-desc,.event-page-head h1,.event-page-head p,.dialog-description,.dialog-note,.side-muted{word-break:keep-all;overflow-wrap:anywhere}
.dialog-actions{align-items:center;flex-wrap:wrap;gap:12px}.dialog-actions>.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center}
.session-expired-panel{width:min(640px,100%);margin:56px auto;padding:40px 32px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}
.session-expired-panel .popup-symbol{margin:0 auto;flex:none}.session-expired-panel .dialog-eyebrow{margin:0}
.session-expired-panel h1{font-size:clamp(24px,4vw,34px);line-height:1.45;letter-spacing:-.04em;word-break:keep-all;text-wrap:balance;margin:0}
.session-expired-panel p{max-width:440px;margin:0;line-height:1.85;font-size:14px;word-break:keep-all;text-wrap:pretty}
.event-announcement{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);align-items:start;gap:20px;padding:25px 28px;margin:24px 0;border:1px solid #ee91c94a;border-left:3px solid #f595cf;border-radius:18px;background:linear-gradient(115deg,#43203d80,#21172c);box-shadow:0 10px 30px #06020e25;text-align:left}
.notice-emblem{width:46px;height:46px;display:grid;place-items:center;border:1px solid #f6b9da38;border-radius:14px;background:#f192c817;color:#ffbfdf}.notice-emblem svg{width:24px;height:24px}
.notice-kicker{color:#f0a7d2;font-size:9px;font-weight:700;letter-spacing:2px}.notice-content h2{margin:6px 0 12px;font-size:20px;font-weight:750;color:#fff0fa;line-height:1.4;letter-spacing:-.5px}
.notice-content p{margin:0;color:#e5cee2;font-size:14px;line-height:1.85;white-space:pre-wrap;word-break:keep-all;overflow-wrap:anywhere;max-width:850px}
.admin-section textarea{line-height:1.8}
@media(max-width:600px){.session-expired-panel{padding:28px 18px;margin:30px auto}.session-expired-panel p{font-size:13px}.event-announcement{grid-template-columns:34px minmax(0,1fr);padding:19px 16px;gap:12px;margin:18px 0}.notice-emblem{width:34px;height:34px;border-radius:10px}.notice-emblem svg{width:20px;height:20px}.notice-content h2{font-size:17px;margin-bottom:9px}.notice-content p{font-size:12px}.notice-kicker{font-size:8px}.dialog-actions>.button{flex:1 1 130px}.section-heading,.rank-preview-heading,.event-page-head{gap:14px}.rank-preview-heading{align-items:flex-start}.rank-preview-heading>.text-button{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){#main>.shell,.app-dialog[open]{animation:none}html{scroll-behavior:auto}}
