/* コンポーネント一覧ページ(components.html)専用のスタイル */
.cgrid{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));padding-bottom:110px}
.ccard{background:var(--card);border-radius:20px;overflow:hidden;box-shadow:0 2px 0 var(--line);display:flex;flex-direction:column;transition:box-shadow .3s}
.ccard:hover{box-shadow:var(--shadow)}
.cstage{min-height:190px;display:flex;align-items:center;justify-content:center;padding:26px 20px;background:#fff;border-bottom:1px solid var(--line);position:relative}
.cstage[data-tone="dark"]{background:#111218}
.cbody{padding:18px 20px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.cmeta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.cid{font-weight:900;font-size:.86rem;letter-spacing:.04em;background:var(--ink);color:var(--bg);padding:3px 12px;border-radius:99px}
.ccard h3{margin:2px 0 0;font-size:1.12rem}
.cdesc{margin:0;color:var(--sub);font-size:.9rem;line-height:1.7}
.cacts{display:flex;gap:6px;flex-wrap:wrap;margin:0}
.cact{font-size:.74rem;font-weight:700;padding:2px 10px;border-radius:99px;border:1px solid var(--line);color:var(--sub)}
.ctags{margin:0;font-size:.78rem;color:var(--a1,#7b6cf6);display:flex;gap:8px;flex-wrap:wrap}
.cbtns{display:flex;gap:8px;margin-top:auto;padding-top:8px}
.cbtns button{font:inherit;font-size:.86rem;font-weight:700;padding:8px 16px;border-radius:99px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;transition:background .2s,color .2s}
.cbtns button:hover{border-color:var(--ink)}
.cbtns .cpick[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.ctray{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:40;width:min(calc(100% - 24px),760px);background:var(--ink);color:var(--bg);border-radius:18px;padding:12px 16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;box-shadow:0 14px 40px rgba(0,0,0,.45)}
.ctray[hidden]{display:none}
.ctray .ids{flex:1;min-width:180px;font-weight:700;font-size:.9rem;word-break:break-all}
.ctray .ids small{display:block;font-weight:400;opacity:.7;font-size:.76rem}
.ctray button{font:inherit;font-size:.84rem;font-weight:700;border:0;border-radius:99px;padding:8px 16px;cursor:pointer;background:var(--bg);color:var(--ink)}
.ctray button.ghost{background:transparent;color:var(--bg);border:1px solid rgba(255,255,255,.35)}
.ctoast{position:fixed;left:50%;bottom:92px;transform:translateX(-50%);background:#2e9e6b;color:#fff;font-weight:700;font-size:.85rem;padding:8px 18px;border-radius:99px;z-index:50}
#cq{width:100%;font:inherit;padding:14px 20px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink)}
#cq:focus{outline:3px solid var(--a3);outline-offset:2px}
.ccard[hidden]{display:none}
