#share-dialog{width:min(980px,calc(100% - 32px));max-width:980px;max-height:90dvh;padding:24px;border-radius:16px;background:var(--panel);color:var(--text)}.share-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.share-head h2{font-size:21px;margin:0}.share-head button{width:48px;height:48px;border:0;background:none;font-size:28px}.share-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}.share-preview canvas{width:100%;height:auto;display:block;border:1px solid var(--line)}.share-options{display:flex;gap:16px;margin-top:16px}.share-options label{flex:1}.share-settings>label{display:block;margin-bottom:8px}.share-settings textarea{width:100%;font:inherit;font-size:15px;line-height:1.65;resize:vertical;min-height:180px;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:12px}.share-settings>small{display:block;margin:6px 0 20px;color:var(--muted)}.share-settings .check{display:flex;align-items:center;min-height:48px}.share-note,#share-status{font-size:13px;line-height:1.75;color:var(--muted)}.share-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.share-actions button,.share-actions a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px;text-decoration:none;border:1px solid var(--line);border-radius:8px;color:var(--text);font-size:14px}.share-actions .share-primary{grid-column:1/-1;background:var(--accent);color:var(--bg);border-color:var(--accent)}.share-actions [hidden]{display:none!important}.share-actions button:disabled{opacity:.5}.share-actions a:focus-visible,.share-actions button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media(max-width:700px){#share-dialog{padding:16px;width:calc(100% - 20px);max-height:94dvh}.share-layout{grid-template-columns:1fr;gap:24px}.share-preview canvas{max-height:420px;object-fit:contain;border:0}.share-settings textarea{font-size:16px}.share-options select{font-size:16px}}

@media(max-width:700px){.share-preview canvas{max-height:none;object-fit:initial}}
.share-options{align-items:center;flex-wrap:wrap}.share-options .check{font-size:13px;min-width:160px}

/* On phones the format select gets its own row so 「縦長 · 行程向き」 is not cut off. */
@media (max-width:480px){.share-options>label:first-child{flex:1 1 100%}}
