.social-invite-btn{position:static;display:flex;align-items:center;justify-content:center;gap:7px;flex:none;width:auto;min-width:48px;height:48px;min-height:48px;padding:0 12px;border-radius:14px;color:var(--green,#214c2e)}
.social-invite-btn svg{flex:none;width:24px;height:24px}
.social-invite-btn span{font-size:13px;font-weight:700}
.result-share-btn{display:flex;align-items:center;justify-content:center;min-height:48px;width:100%;grid-column:1/-1;margin-top:14px;text-align:center;text-decoration:none;line-height:1.35;gap:8px}
.social-share-dialog{width:min(94vw,460px);max-height:85svh;padding:26px;overflow:auto;border:1px solid #bb925a;border-radius:24px;background:#fff5e1;color:#273a25;box-shadow:0 24px 80px #27170866;font-family:var(--body,'DM Sans',system-ui,sans-serif)}
.direct-challenge-dialog{box-sizing:border-box;width:min(96vw,540px);max-width:calc(100vw - 24px);border:1px solid #c6aa7bcc;background:linear-gradient(145deg,#fff9eadf,#f5e8cfeb);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:inset 0 1px 0 #ffffffd9,inset 0 0 0 3px #fff7e733,0 8px 0 #7a573522,0 24px 70px #27170866}
.social-share-dialog::backdrop{background:#271d13b8;backdrop-filter:none}
.social-share-dialog .social-share-close{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:1px solid #c9ac7a;border-radius:50%;background:#fff7e8;color:#214c2e;font-size:28px;line-height:1}
.social-share-dialog h2{margin:0 38px 10px 0;font:700 clamp(25px,5vw,30px)/1.12 var(--display,'Fraunces',Georgia,serif);color:#214c2e}
.social-share-dialog .social-share-intro{margin:0 0 16px;font-size:14px;line-height:1.5}
.direct-challenge-dialog .social-share-intro{margin:16px 0 18px;padding:16px 18px;border:1px solid #c5a3748c;border-radius:16px;background:linear-gradient(125deg,#fffdf270,#f4e4c354);box-shadow:inset 0 1px 0 #ffffffb3,0 3px 0 #aa845b1a;color:#30412c;font-size:15px;line-height:1.6}
.social-share-label{display:block;margin:12px 0 6px;font-size:12px;font-weight:700;color:#5f543a}
.social-share-preview{display:block;width:100%;min-height:106px;padding:11px 12px;border:1px solid #c9aa77;border-radius:11px;background:#fffaf0;color:#273a25;font:400 14px/1.5 var(--body,'DM Sans',system-ui,sans-serif);box-sizing:border-box;resize:vertical}
.social-share-dialog .social-share-copy,.direct-challenge-dialog .social-share-native{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;margin-top:16px;padding:12px 14px;border:1px solid #164424;border-radius:13px;background:linear-gradient(#377843,#20552c);box-shadow:0 3px 0 #163f20;color:#fff4dd;text-align:center;font:700 16px/1.35 var(--body,'DM Sans',system-ui,sans-serif);touch-action:manipulation}
.direct-challenge-dialog .social-share-native{margin-top:0}
.social-share-dialog .social-share-status{margin:14px 0 0;font-size:13px;line-height:1.5;color:#214c2e}
.social-share-dialog .social-share-status:empty{display:none}
.social-share-dialog :is(button,textarea,a):focus-visible{outline:3px solid #286c3d;outline-offset:3px}
.social-share-dialog button:disabled{opacity:.6;cursor:wait}
.social-share-fallback[open]{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);margin:0;z-index:10000;box-shadow:0 0 0 100vmax #271d13b8,0 24px 80px #27170866}
@media(max-width:600px){
 .icon-btn.social-invite-btn{position:static;width:48px;min-width:48px;height:48px;min-height:48px;padding:0;flex:none}
 .social-invite-btn span{display:none}
 .social-share-dialog{padding:22px 18px;border-radius:20px}
 .direct-challenge-dialog[open]{position:fixed;inset:max(12px,env(safe-area-inset-top,0px)) auto auto 50%;transform:translateX(-50%);margin:0;max-height:calc(100svh - max(12px,env(safe-area-inset-top,0px)) - max(12px,env(safe-area-inset-bottom,0px)))}
 .social-share-preview{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.social-share-dialog *{scroll-behavior:auto;transition:none}}
