/* Shared controls: readable groups and consistent touch targets. */
.party-letter-choice{padding:24px;border-radius:20px;background:#f5f0ff;margin:24px 0}.party-alphabet{display:grid;grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:10px}.party-alphabet .btn{min-height:50px;font-size:20px;padding:8px}.party-letter-choice p{line-height:1.7}
.host-settings::backdrop{background:#22193899;backdrop-filter:blur(4px)}
.host-settings{box-shadow:0 24px 80px #22193840;color:#302743;background:#fff}
.host-settings label{display:block;font-size:14px;font-weight:600;line-height:1.6;margin:16px 0}
.host-settings input:not([type=checkbox]),.host-settings select{display:block;width:100%;min-height:48px;margin-top:8px;border:1px solid #ded4eb;border-radius:12px;padding:12px;background:#faf8fd;color:#302743}
.host-settings label:has(>input[type=checkbox]){display:flex;gap:10px;align-items:center}
.host-settings input[type=checkbox]{width:19px;height:19px;flex:none;accent-color:#7053e9}
.host-settings .btn{min-height:46px;margin:4px 4px 4px 0}
#social-dialog .wide-card{border:0;background:transparent;padding:0;box-shadow:none}
#social-dialog .weekly-grid{grid-template-columns:1fr;gap:12px}
#social-dialog .panel{padding:16px;margin:0;border:1px solid #e6ddef;border-radius:16px;background:#faf8fd}
#social-dialog p,#shop-dialog p{font-size:14px;line-height:1.7;color:#78698c}
#app .panel .btn{max-width:100%}
@media(max-width:600px){#app .mola-cards,#app .weekly-grid{grid-template-columns:minmax(0,1fr)}#app .mola-panel .btn{min-height:48px}#app .section-head{flex-wrap:wrap;gap:8px}#app .mola-hero .action-row{justify-content:flex-start}}
#app fieldset{min-width:0;border:1px solid #e5ddef;border-radius:18px;padding:18px;margin:20px 0}
#app legend{padding:0 8px;font-size:14px;font-weight:700;color:#51416c}
#app label:has(>input[type=checkbox]),#app label:has(>input[type=radio]){display:flex;align-items:center;gap:10px;min-height:44px;line-height:1.5}
#app label>input[type=checkbox],#app label>input[type=radio]{width:19px;height:19px;min-height:19px;margin:0;flex:none;accent-color:#7053e9}
#app .action-row{flex-wrap:wrap;gap:12px}
#app .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.35;text-align:center}
#app details>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;cursor:pointer}
#app details>summary::-webkit-details-marker{display:none}
#app details>summary:after{content:'+';font-size:22px;color:#8b73b1;flex:none}
#app details[open]>summary:after{content:'−'}
#app details[open]>summary{margin-bottom:16px}
#app .party-room{max-width:1000px;padding:32px;background:linear-gradient(150deg,#fff,#fcfaff)}
#app .party-room-head{border-bottom:1px solid #ebe4f3;padding-bottom:20px;margin-bottom:20px}
#app .party-scoreboard{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
#app .party-scoreboard>div{background:#fff;box-shadow:0 4px 14px #35205105}
#app .party-lobby-status{margin:24px 0 0;border:1px solid #dcd0f4;line-height:1.6}
#app .party-lobby-primary{margin:12px 0 24px;padding:16px;background:#f3edff;border-radius:18px;justify-content:flex-end}
#app .party-lobby-primary .btn{min-width:150px;min-height:50px}
#app .party-invite{border:1px solid #e6ddf2;background:#fff;padding:20px;display:flex;flex-wrap:wrap;gap:10px}
#app .party-invite h2,#app .party-invite p{width:100%;margin-bottom:0}
#app .party-invite h2{font-size:18px}
#app .party-invite p{font-size:13px;line-height:1.6;margin-bottom:8px}
#app .party-room details{background:#fff;margin:14px 0;border:1px solid #e5ddef;padding:8px 20px}
#app #party-settings{max-width:none;margin:12px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}
#app #party-settings>p,#app #party-settings>fieldset,#app .party-settings-footer{grid-column:1/-1}
#app #party-settings>label{margin:0;font-weight:600;color:#51416c}
#app #party-settings input:not([type=checkbox]),#app #party-settings select{margin:8px 0 0;background:#faf8fd;min-height:48px}
#app .party-category-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;background:#faf8fd}
#app .party-category-picker p{grid-column:1/-1;font-size:13px;color:#78698c;margin:0 0 4px}
#app .party-category-chip{border:1px solid #e4dbef;border-radius:12px;padding:10px 12px;background:#fff;text-transform:capitalize;cursor:pointer;font-weight:500}
#app .party-category-chip:has(:checked){background:#eee7ff;border-color:#ad95e7;color:#5d3ab2}
#app .party-settings-footer{display:flex;align-items:center;gap:16px;border-top:1px solid #ebe4f3;padding-top:18px}
#app .party-settings-footer small{line-height:1.5}
#app button:disabled{cursor:not-allowed}
@media(max-width:600px){#app .party-room{padding:20px 16px}#app #party-settings{grid-template-columns:1fr}#app .party-category-picker{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}#app .party-lobby-primary .btn{flex:1;min-width:120px}#app .party-settings-footer{flex-direction:column;align-items:stretch}#app .party-invite .btn{flex:1}#app .party-room details{padding:8px 14px}}
