/* Diver MAX front-end core styles (modules append their own blocks below)
 * 子テーマ（Diver Child MAX UI）と同じトーン: 角丸 12px、影 0 8px 24px rgba(0,0,0,.08)、フォントはサイトの設定を継承。
 * ダークモードは html[data-theme="dark"]（子テーマの切替）に追従する。
 */
:root{--dmf-accent:#5B5BD6;--dmf-ink:#1B1F27;--dmf-ink-2:#4B5563;--dmf-muted:#7B8794;--dmf-surface:#fff;--dmf-surface-2:#F1F3F6;--dmf-line:#E4E8EE;--dmf-radius:12px;--dmf-radius-sm:8px;--dmf-shadow:0 8px 24px rgba(0,0,0,.08);--dmf-shadow-lg:0 16px 48px rgba(0,0,0,.18)}
html[data-theme="dark"],html.dark,body.dark{--dmf-ink:#E8EDF3;--dmf-ink-2:#B7C0CC;--dmf-muted:#8391A1;--dmf-surface:#171C25;--dmf-surface-2:#202836;--dmf-line:#2A3340;--dmf-shadow:0 8px 24px rgba(0,0,0,.35);--dmf-shadow-lg:0 16px 48px rgba(0,0,0,.6)}
.dmf-hidden{display:none!important}
.dmf-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--dmf-accent);color:#fff;border:0;border-radius:999px;padding:10px 18px;font:inherit;font-size:14px;font-weight:700;line-height:1.4;cursor:pointer;text-decoration:none;box-shadow:0 6px 16px rgba(91,91,214,.22);transition:transform .15s cubic-bezier(.2,.7,.2,1),filter .2s,box-shadow .2s}
.dmf-btn:hover{filter:brightness(1.06);transform:translateY(-1px);color:#fff;text-decoration:none}
.dmf-btn:focus-visible{outline:2px solid var(--dmf-accent);outline-offset:2px}
.dmf-btn-ghost{background:transparent;color:var(--dmf-ink);border:1px solid var(--dmf-line);box-shadow:none}
.dmf-btn-ghost:hover{color:var(--dmf-ink);background:var(--dmf-surface-2)}
.dmf-modal-back{position:fixed;inset:0;background:rgba(10,12,20,.55);z-index:99990;display:grid;place-items:center;padding:16px;backdrop-filter:blur(2px)}
.dmf-modal{background:var(--dmf-surface);color:var(--dmf-ink);border:1px solid var(--dmf-line);border-radius:var(--dmf-radius);width:min(560px,100%);max-height:92vh;overflow:auto;box-shadow:var(--dmf-shadow-lg);position:relative;font:inherit;line-height:1.7}
.dmf-modal-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--dmf-line);font-weight:800}
.dmf-modal-b{padding:18px}
.dmf-x{background:transparent;border:0;font:inherit;font-size:22px;line-height:1;cursor:pointer;color:var(--dmf-muted);padding:4px 8px;border-radius:var(--dmf-radius-sm)}
.dmf-x:hover{background:var(--dmf-surface-2);color:var(--dmf-ink)}
.dmf-input{width:100%;border:1px solid var(--dmf-line);border-radius:var(--dmf-radius-sm);padding:10px 12px;font:inherit;line-height:1.5;background:var(--dmf-surface-2);color:var(--dmf-ink);box-sizing:border-box;transition:border-color .2s,box-shadow .2s}
.dmf-input:focus{outline:none;border-color:var(--dmf-accent);box-shadow:0 0 0 3px rgba(91,91,214,.2)}
.dmf-field{display:grid;gap:4px;margin-bottom:12px;font-size:14px}
.dmf-field span{font-weight:700;font-size:13px;color:var(--dmf-ink-2)}
.dmf-note{font-size:12.5px;color:var(--dmf-muted);line-height:1.6}
