.share-box{margin:2rem 0 1.5rem;padding:1rem 1.2rem;background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--gold-2);border-radius:4px}.share-label{font-family:var(--font-serif);font-weight:700;font-size:.92rem;color:var(--sumi);letter-spacing:.06em;margin-bottom:.6rem}.share-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.share-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .9rem;border-radius:3px;border:1px solid transparent;font-family:var(--font-serif);font-size:.85rem;font-weight:700;cursor:pointer;text-decoration:none;transition:transform .15s,box-shadow .15s,filter .15s}.share-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3e281b33;text-decoration:none;filter:brightness(1.05)}.share-btn svg{flex-shrink:0}.share-btn.share-x{background:#17100b;color:#fbf8f1;border-color:#17100b}.share-btn.share-x:hover{color:#fbf8f1}.share-btn.share-discord{background:#4e59b1;color:#fbf8f1;border-color:#4e59b1}.share-btn.share-copy{background:var(--color-surface-strong);color:var(--sumi);border-color:var(--color-border)}.share-btn.is-copied{background:#49a46e;color:#fbf8f1;border-color:#258651}.share-btn.is-copied .share-label-default{display:none}.share-btn.is-copied .share-label-copied{display:inline!important}@media (max-width: 500px){.share-btn{flex:1 1 auto;justify-content:center}}.ref-link{color:var(--color-accent);text-decoration:underline;text-decoration-color:#c6944973;text-underline-offset:2px;cursor:pointer;transition:text-decoration-color .15s,color .15s}.ref-link:hover{color:var(--color-accent-hover);text-decoration-color:var(--color-accent-hover)}.ref-modal[hidden]{display:none}.ref-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.ref-modal-backdrop{position:absolute;inset:0;background:#3923168c}.ref-modal-panel{position:relative;max-width:560px;width:100%;max-height:80vh;overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;padding:1.25rem 1.5rem 1.5rem;box-shadow:0 8px 32px #3e281b59;color:var(--color-text)}.ref-modal-close{position:absolute;top:.5rem;right:.6rem;background:none;border:none;color:var(--color-accent);font-size:1.4rem;line-height:1;cursor:pointer;padding:.2rem .5rem}.ref-modal-close:hover{color:var(--color-accent-hover)}.ref-modal-title{font-family:var(--font-serif);font-size:1.1rem;font-weight:700;color:var(--color-text);margin-bottom:.75rem;padding-right:2rem;border-bottom:1px solid var(--color-border);padding-bottom:.5rem}.ref-modal-body{font-size:.9rem;line-height:1.65}.ref-modal-body .kv{display:grid;grid-template-columns:5em 1fr;gap:.25rem .75rem;margin-bottom:.5rem}.ref-modal-body .kv dt{color:var(--color-accent);font-weight:700}.ref-modal-body .kv dd{margin:0}.ref-modal-body .section-label{color:var(--color-accent);font-weight:700;margin-top:.75rem;margin-bottom:.25rem}.ref-modal-body .section-body{background:var(--color-surface-strong);border:1px solid var(--color-border);border-radius:4px;padding:.6rem .75rem;white-space:pre-wrap}.ref-modal-body .stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;margin:.25rem 0}.ref-modal-body .stat-cell{background:var(--color-surface-strong);border:1px solid var(--color-border);border-radius:4px;padding:.35rem .55rem;display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.ref-modal-body .stat-label{color:var(--color-accent);font-size:.78rem;font-weight:700}.ref-modal-body .stat-value{color:var(--color-text);font-size:.95rem;font-weight:700;font-variant-numeric:tabular-nums}@media (max-width: 480px){.ref-modal-body .stats-grid{grid-template-columns:repeat(2,1fr)}}.ref-modal-body .tokusei-list{list-style:none;padding:0;margin:.25rem 0 0}.ref-modal-body .tokusei-list li{background:var(--color-surface-strong);border:1px solid var(--color-border);border-radius:4px;padding:.4rem .6rem;margin-bottom:.35rem}.ref-modal-body .tokusei-name{color:var(--color-accent);font-weight:700;font-size:.85rem}.ref-modal-body .tokusei-effect{font-size:.82rem;color:var(--color-muted);margin-top:.15rem}@media (max-width: 768px){.ref-modal-panel{padding:1rem 1.1rem 1.25rem}}
