
.danin-portal{--danin-bg:#f3f6f4;--danin-card:#fff;--danin-ink:#1d2a24;--danin-accent:#1f6b4a;--danin-line:#d7e0db;max-width:960px;margin:0 auto;padding:1.25rem;color:var(--danin-ink);font-family:"Hiragino Sans","Noto Sans JP",sans-serif}
.danin-nav ul{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0 0 1.5rem;padding:0}
.danin-nav a{display:block;padding:.55rem .9rem;border-radius:999px;background:#e7efe9;color:var(--danin-ink);text-decoration:none;font-size:.92rem}
.danin-nav li.is-active a,.danin-nav a:hover{background:var(--danin-accent);color:#fff}
.danin-section{background:var(--danin-card);border:1px solid var(--danin-line);border-radius:14px;padding:1.2rem 1.3rem;margin-bottom:1rem;box-shadow:0 8px 24px rgba(29,42,36,.04)}
.danin-section h2,.danin-section h3{margin-top:0}
.danin-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.danin-list{list-style:none;margin:0;padding:0}
.danin-list li{border-bottom:1px solid var(--danin-line);padding:.65rem 0}
.danin-list a{color:inherit;text-decoration:none;display:flex;flex-direction:column;gap:.15rem}
.danin-list small,.danin-meta{color:#5d7268;font-size:.88rem}
.danin-badge{display:inline-block;padding:.15rem .5rem;border-radius:6px;background:#e1f0e7;color:var(--danin-accent);font-size:.78rem;margin-right:.35rem}
.danin-badge.is-muted{background:#eee;color:#666}
.danin-btn{display:inline-block;background:var(--danin-accent);color:#fff!important;border:0;border-radius:8px;padding:.55rem 1rem;text-decoration:none;cursor:pointer}
.danin-filters{display:flex;flex-wrap:wrap;gap:.75rem;align-items:end;margin-bottom:1rem}
.danin-filters label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem}
.danin-member-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.8rem}
.danin-member-card{display:flex;gap:.75rem;padding:.85rem;border:1px solid var(--danin-line);border-radius:12px;text-decoration:none;color:inherit;background:#fbfcfb}
.danin-avatar{width:48px;height:48px;border-radius:50%;background:#d9e8df;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;font-weight:700;color:var(--danin-accent)}
.danin-avatar.is-large{width:96px;height:96px;font-size:2rem}
.danin-avatar img{width:100%;height:100%;object-fit:cover}
.danin-profile{display:flex;gap:1.2rem;align-items:flex-start}
.danin-table{width:100%;border-collapse:collapse;font-size:.92rem}
.danin-table th,.danin-table td{border-bottom:1px solid var(--danin-line);padding:.55rem .4rem;text-align:left}
.danin-form label{display:block;margin-bottom:.8rem}
.danin-form input[type=text],.danin-form input[type=number],.danin-form textarea,.danin-form input[type=file]{width:100%;max-width:480px}
.danin-radio-row{display:flex;flex-wrap:wrap;gap:.6rem;margin:.4rem 0}
.danin-slot-block{padding:.8rem 0;border-bottom:1px solid var(--danin-line)}
.danin-notice{background:#e8f6ee;border:1px solid #b7dfc6;padding:.7rem .9rem;border-radius:8px;margin-bottom:1rem}
.danin-code{display:block;word-break:break-all;background:#f0f4f1;padding:.7rem;border-radius:8px}
.danin-public-calendar{max-width:900px;margin:0 auto;padding:1rem}
@media (max-width:720px){.danin-grid-2,.danin-profile{grid-template-columns:1fr;display:block}.danin-profile .danin-avatar{margin-bottom:1rem}}
