/* 関係を結ぶ（親友・恋人）2026-09-29 inc/bond-rel.php・js/bond-rel.js */
.bdr-lock,.bdr-lock body{overflow:hidden}
.bdr-sheet{position:fixed;inset:0;z-index:10060;background:rgba(40,20,50,.5);display:flex;align-items:flex-end;justify-content:center;animation:bdrFade .18s ease}
.bdr-sheet__in{position:relative;width:100%;max-width:480px;max-height:88vh;max-height:88dvh;overflow:auto;-webkit-overflow-scrolling:touch;background:#fff;border-radius:20px 20px 0 0;padding:18px 16px calc(18px + env(safe-area-inset-bottom,0px));box-sizing:border-box;outline:0;color:#3a2a55;font-size:14px;line-height:1.7;animation:bdrUp .22s ease}
@media (min-width:600px){.bdr-sheet{align-items:center}.bdr-sheet__in{border-radius:20px}}
@keyframes bdrFade{from{opacity:0}to{opacity:1}}
@keyframes bdrUp{from{transform:translateY(40px)}to{transform:none}}
.bdr-x{position:absolute;top:8px;right:8px;width:36px;height:36px;min-height:0!important;border:0;border-radius:50%;background:#f5eef8;color:#6b5f7d;font-size:20px;line-height:1;cursor:pointer;padding:0}
.bdr-k{margin:0 0 2px;font-size:11px;font-weight:900;letter-spacing:.12em;color:#c0418a}
.bdr-h{margin:0 0 10px;font-size:18px;line-height:1.45;font-weight:900;color:#3a2a55;padding-right:34px}
.bdr-p{margin:0 0 10px}
.bdr-wait{margin:24px 0;text-align:center;color:#8a7b9c}
.bdr-note{margin:10px 0;font-size:12px;color:#7b6d8d;line-height:1.7}
.bdr-msg{margin:6px 0 0;font-size:12.5px;color:#c0418a;font-weight:800;min-height:1em}
.bdr-msg a{color:#8b6cc1}
.bdr-btn{display:block;width:100%;box-sizing:border-box;margin:10px 0 0;padding:12px 14px;min-height:46px;border:0;border-radius:999px;background:linear-gradient(135deg,#e56aa6,#b06ad6);color:#fff!important;font-size:15px;font-weight:900;text-align:center;text-decoration:none!important;cursor:pointer;line-height:1.4;box-shadow:0 4px 12px rgba(176,106,214,.28)}
.bdr-btn:disabled{opacity:.55;cursor:default;box-shadow:none}
.bdr-btn--big{font-size:16px;padding:14px}
.bdr-btn--ghost{background:#fff;color:#8b6cc1!important;border:1.5px solid #d9c8ee;box-shadow:none}
.bdr-link{display:block;margin:10px auto 0;padding:6px;min-height:0!important;background:none;border:0;color:#8b6cc1;font-size:13px;font-weight:800;text-decoration:underline;cursor:pointer;text-align:center}
.bdr-link.is-sure{color:#c0418a}
.bdr-mini{flex:0 0 auto;display:inline-block;padding:6px 12px;min-height:0!important;height:auto;border:1.5px solid #e2b6d4;border-radius:999px;background:#fff;color:#c0418a!important;font-size:12.5px;font-weight:900;text-decoration:none!important;cursor:pointer;line-height:1.3}
.bdr-mini:disabled{opacity:.7}
.bdr-av{display:inline-block;border-radius:50%;object-fit:cover;background:#f5eef8;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.12);vertical-align:middle;margin:0!important}
.bdr-av--n{display:inline-flex;align-items:center;justify-content:center;font-weight:900;color:#8b6cc1}
.bdr-bar{position:relative;display:block;height:10px;border-radius:999px;background:#f1e8f6;overflow:visible;margin:4px 0 16px}
.bdr-bar em{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#f59ac6,#b06ad6)}
.bdr-bar s{position:absolute;top:12px;transform:translateX(-50%);font-size:10.5px;font-weight:900;color:#8b6cc1;text-decoration:none;white-space:nowrap}
.bdr-bar s::before{content:"";position:absolute;left:50%;top:-14px;width:2px;height:12px;background:#8b6cc1;opacity:.5}
.bdr-pair{display:flex;justify-content:center;margin:4px 0 6px}
.bdr-pair__who{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:13px}
.bdr-now{background:#fff6fb;border:1.5px solid #f6d3e6;border-radius:14px;padding:10px 12px 6px;margin:0 0 12px}
.bdr-now p{margin:0;font-size:12px;color:#7b6d8d}
.bdr-now__n{font-size:13px!important;color:#3a2a55!important}
.bdr-now__n b{font-size:26px;color:#c0418a;margin-right:2px}
.bdr-now__n small{margin-left:8px;font-size:12px;color:#8b6cc1;font-weight:800}
.bdr-opt{border:1.5px solid #eadff3;border-radius:14px;padding:12px;margin:0 0 10px;background:#fff}
.bdr-opt.is-ok{border-color:#e56aa6;background:#fff8fc}
.bdr-opt--love{background:linear-gradient(180deg,#fffaf0,#fff)}
.bdr-opt__hd{display:flex;align-items:center;gap:10px}
.bdr-opt__ic{flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:#f7f1fb;display:flex;align-items:center;justify-content:center;font-size:22px}
.bdr-opt__ic img{width:34px!important;height:34px!important;object-fit:contain;margin:0!important}
.bdr-opt__hd b{font-size:16px;font-weight:900}
.bdr-opt__hd b small{margin-left:6px;font-size:11px;color:#c0418a;font-weight:900}
.bdr-opt__hd p{margin:0;font-size:12px;color:#6b5f7d}
.bdr-opt__pg{display:flex;align-items:center;gap:8px;margin:10px 0 0}
.bdr-opt__pg .bdr-bar{flex:1;margin:0}
.bdr-opt__pg span{font-size:12px;font-weight:900;color:#8b6cc1;white-space:nowrap}
.bdr-opt__st{margin:8px 0 0;font-size:13px;font-weight:900;color:#6b5f7d}
.bdr-opt__st small{display:block;font-size:11.5px;font-weight:700;color:#8a7b9c}
.bdr-opt__st.is-ok{color:#2f9a62}
.bdr-opt__st.is-on{color:#c0418a;display:flex;align-items:center;gap:6px}
.bdr-opt__st.is-on img{width:22px!important;height:22px!important;margin:0!important}
.bdr-opt__st.is-got{color:#c0418a}
.bdr-opt__note{margin:6px 0 0;font-size:11.5px;color:#8a7b9c}
.bdr-how{margin:14px 0 4px;padding:10px 12px;border-radius:14px;background:#f8f5fc}
.bdr-how__h{margin:0 0 6px;font-size:12px;font-weight:900;color:#8b6cc1}
.bdr-how__r{display:flex;align-items:center;gap:10px;padding:6px 0;border-top:1px dashed #e4d9ef}
.bdr-how__r:first-of-type{border-top:0}
.bdr-how__r>span{font-size:20px;flex:0 0 26px;text-align:center}
.bdr-how__r>div{flex:1;min-width:0}
.bdr-how__r b{display:block;font-size:13px}
.bdr-how__r small{display:block;font-size:11.5px;color:#7b6d8d}
.bdr-lbl{margin:12px 0 6px;font-size:13px;font-weight:900;color:#3a2a55}
.bdr-rings{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.bdr-ring{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;min-height:0!important;height:auto;border:2px solid #eadff3;border-radius:14px;background:#fff;cursor:pointer;color:#3a2a55;font:inherit;line-height:1.35}
.bdr-ring img{width:56px!important;height:56px!important;object-fit:contain;margin:0!important}
.bdr-ring b{font-size:11.5px;font-weight:900;text-align:center}
.bdr-ring__q{font-size:11px;font-weight:900;color:#2f9a62}
.bdr-ring__buy{font-size:11px;font-weight:900;color:#c0418a;text-align:center}
.bdr-ring.is-pick{border-color:#e56aa6;background:#fff3f9;box-shadow:0 0 0 3px rgba(229,106,166,.2)}
.bdr-ring.is-sure{border-color:#c0418a}
.bdr-rings__foot{grid-column:1/-1;margin:2px 0 0;font-size:11.5px;color:#7b6d8d}
.bdr-rings__foot a{color:#8b6cc1;font-weight:900}
.bdr-word{display:block;width:100%;box-sizing:border-box;padding:10px 12px;border:1.5px solid #e4d9ef;border-radius:12px;font-size:16px;line-height:1.5;font-family:inherit;resize:none;color:#3a2a55;background:#fff}
.bdr-ck{display:block;margin:10px 0 0;font-size:13px;font-weight:800;color:#3a2a55;cursor:pointer}
.bdr-ck input{margin-right:6px;vertical-align:-2px;width:18px;height:18px}
.bdr-ck small{display:block;margin-left:26px;font-size:11.5px;font-weight:700;color:#8a7b9c}
.bdr-req{position:relative;text-align:center;padding-top:6px}
.bdr-req .bdr-h{padding-right:0}
.bdr-req__glow{position:absolute;left:50%;top:-10px;width:260px;height:260px;margin-left:-130px;border-radius:50%;background:radial-gradient(circle,rgba(255,214,236,.9),rgba(255,255,255,0) 70%);pointer-events:none;animation:bdrPulse 2.4s ease-in-out infinite}
.bdr-req.is-love .bdr-req__glow{background:radial-gradient(circle,rgba(255,226,150,.85),rgba(255,255,255,0) 70%)}
@keyframes bdrPulse{50%{transform:scale(1.08);opacity:.75}}
.bdr-req>*:not(.bdr-req__glow){position:relative}
.bdr-req__who{margin:6px 0}
.bdr-req__ring{margin:0 0 6px}
.bdr-req__ring img{width:120px!important;height:120px!important;object-fit:contain;margin:0 auto!important;display:block;animation:bdrRing 1.1s cubic-bezier(.2,1.4,.4,1) both,bdrFloat 3s ease-in-out 1.1s infinite}
.bdr-req__ring p{margin:0;font-size:12.5px;font-weight:900;color:#b07d1a}
@keyframes bdrRing{from{transform:scale(.2) rotate(-40deg);opacity:0}to{transform:none;opacity:1}}
@keyframes bdrFloat{50%{transform:translateY(-6px)}}
.bdr-req__word{margin:4px auto 8px;max-width:22em;padding:10px 14px;border-radius:14px;background:#fff6fb;border:1.5px dashed #f0b6d4;font-weight:800;color:#6a3b62}
.bdr-req .bdr-ck{text-align:left}
.bdr-done{text-align:center;padding-top:8px}
.bdr-done img{width:96px!important;height:96px!important;object-fit:contain;margin:0 auto 4px!important;display:block}
.bdr-done__ic{display:block;font-size:56px}
.bdr-done .bdr-h{padding-right:0}
.bdr-steps{list-style:none;margin:6px 0 0;padding:0}
.bdr-steps li{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-top:1px dashed #eadff3}
.bdr-steps li:first-child{border-top:0}
.bdr-steps__pic{flex:0 0 84px;min-height:64px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#fff6fb;font-size:20px;padding:6px;box-sizing:border-box}
.bdr-steps__pic img{width:60px!important;height:60px!important;object-fit:contain;margin:0!important}
.bdr-steps__pic .bdr-bar{width:100%;margin:0 0 14px}
.bdr-steps__pic .bdr-bar s{font-size:9px}
.bdr-steps__pic--how b{font-weight:400;margin:0 2px}
.bdr-steps__pic .bdr-tag{font-size:10.5px;padding:2px 7px 2px 2px}
.bdr-steps b{font-size:14px}
.bdr-steps p{margin:2px 0 0;font-size:12.5px;color:#5c4f70}
.bdr-steps p b{font-size:inherit;color:#c0418a}
/* プロフィールの中の札 */
.bdr-card-wrap{margin:10px 0 0}
.bdr-card{border-top:1px dashed #eadff3;padding-top:10px}
.bdr-card__hd{display:flex;align-items:center;justify-content:space-between;gap:8px}
.bdr-card__k{margin:0;font-size:11px;font-weight:900;color:#8b6cc1}
.bdr-q{padding:3px 10px;min-height:0!important;height:auto;border:1.5px solid #d9c8ee;border-radius:999px;background:#fff;color:#8b6cc1;font-size:11.5px;font-weight:900;cursor:pointer;line-height:1.4}
.bdr-card__none{margin:6px 0 0;font-size:12.5px;color:#6b5f7d;line-height:1.75}
.bdr-card__none b{color:#c0418a}
.bdr-card .bdr-btn{font-size:14px;padding:10px 12px;min-height:42px}
.bdr-tags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0}
.bdr-tag{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:3px 10px 3px 3px;border-radius:999px;font-size:12px;font-weight:800;line-height:1.5;text-decoration:none!important;box-sizing:border-box;vertical-align:middle}
.bdr-tag img{width:22px!important;height:22px!important;object-fit:contain;margin:0!important;flex:0 0 22px}
.bdr-tag span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bdr-tag b{font-weight:900}
.bdr-tag small{font-size:10.5px;opacity:.75}
.bdr-tag--love{background:linear-gradient(135deg,#fff4d6,#ffe6f1);border:1.5px solid #f2c45a;color:#7a4b00}
.bdr-tag--bff{background:#eef6ff;border:1.5px solid #9cc7f0;color:#1f5a8f;padding-left:8px}
.bdr-inrow{display:flex;align-items:center;gap:8px;width:100%;margin:8px 0 0;padding:8px 10px;min-height:0!important;height:auto;border:1.5px solid #f0a6c9;border-radius:12px;background:#fff3f9;color:#3a2a55;font:inherit;font-size:13px;text-align:left;cursor:pointer;animation:bdrPulse2 2s ease-in-out infinite}
.bdr-inrow img{width:30px!important;height:30px!important;object-fit:contain;margin:0!important}
.bdr-inrow b{flex:1;font-weight:900}
.bdr-inrow i{font-style:normal;color:#c0418a;font-weight:900;white-space:nowrap}
@keyframes bdrPulse2{50%{box-shadow:0 0 0 4px rgba(229,106,166,.15)}}
.bdr-outrow{margin:6px 0 0;font-size:12px;color:#7b6d8d}
/* チャット・グループ・卓のプロフィールのシートの1行 */
.bdr-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0 4px}
.bdr-rowbtn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;min-height:0!important;height:auto;border:0;border-radius:999px;background:linear-gradient(135deg,#e56aa6,#b06ad6);color:#fff;font-size:13px;font-weight:900;cursor:pointer;line-height:1.4}
.bdr-rowbtn small{font-size:10.5px;font-weight:800;opacity:.9;background:rgba(255,255,255,.22);border-radius:999px;padding:0 6px}
/* 印・帯 */
.bdr-hmark{position:fixed;right:12px;top:calc(env(safe-area-inset-top,0px) + var(--bdr-top,60px));z-index:10030;display:inline-flex;align-items:center;gap:4px;padding:4px 10px 4px 8px;min-height:0!important;height:30px;box-shadow:0 4px 12px rgba(192,65,138,.35);border:2px solid #fff!important;border:0;border-radius:999px;background:#e56aa6;color:#fff;font-size:13px;font-weight:900;cursor:pointer;animation:bdrPulse2 1.6s ease-in-out infinite;line-height:1}
.bdr-hmark b{font-size:11.5px}.bdr-hmark small{font-size:11px;font-weight:900}
.bdr-navdot{position:absolute;top:4px;right:calc(50% - 18px);width:9px;height:9px;border-radius:50%;background:#e56aa6;border:2px solid #fff}
.cmsocial-bottom a,.cmsh__drawer a{position:relative}
.bdr-band{position:fixed;left:50%;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:10040;display:flex;align-items:center;gap:8px;width:calc(100% - 24px);max-width:460px;box-sizing:border-box;padding:10px 12px;border-radius:16px;background:#fff;border:2px solid #f0a6c9;box-shadow:0 8px 24px rgba(120,40,110,.22);transform:translate(-50%,140%);transition:transform .35s cubic-bezier(.2,1.3,.4,1)}
.bdr-band.is-on{transform:translate(-50%,0)}
.bdr-band.is-love{border-color:#f2c45a;background:linear-gradient(135deg,#fffaf0,#fff)}
.bdr-band img{width:36px!important;height:36px!important;object-fit:contain;margin:0!important;flex:0 0 36px}
.bdr-band>span{font-size:26px}
.bdr-band p{flex:1;margin:0;font-size:12.5px;line-height:1.5;color:#3a2a55}
.bdr-band .bdr-btn{width:auto;margin:0;padding:8px 14px;min-height:0;font-size:13px;flex:0 0 auto}
.bdr-band__x{flex:0 0 28px;width:28px;height:28px;min-height:0!important;padding:0;border:0;border-radius:50%;background:#f5eef8;color:#6b5f7d;font-size:16px;cursor:pointer}
.bdr-toast{position:fixed;left:50%;top:calc(70px + env(safe-area-inset-top,0px));z-index:10080;transform:translate(-50%,-20px);opacity:0;max-width:calc(100% - 32px);padding:10px 16px;border-radius:999px;background:rgba(58,42,85,.94);color:#fff;font-size:13px;font-weight:800;transition:all .25s ease;pointer-events:none;text-align:center}
.bdr-toast.is-on{transform:translate(-50%,0);opacity:1}
/* 祝いの一行 */
.bdr-news{margin:8px 12px 0}
.bdr-has-mark .bdr-news{margin-top:44px}
.bdr-news__r{display:flex;align-items:center;gap:8px;margin:0 0 6px;padding:8px 10px;border-radius:14px;background:linear-gradient(135deg,#eef6ff,#fff);border:1.5px solid #b8d6f3}
.bdr-news__r.is-love{background:linear-gradient(135deg,#fff4d6,#ffeef6);border-color:#f2c45a}
.bdr-news__r img{width:30px!important;height:30px!important;object-fit:contain;margin:0!important;flex:0 0 30px}
.bdr-news__r>span{font-size:22px}
.bdr-news__r p{flex:1;margin:0;font-size:12.5px;line-height:1.5;color:#3a2a55;font-weight:700}
.bdr-news__r p a{color:#c0418a;font-weight:900;text-decoration:none}
.bdr-news__r small{font-size:12px;font-weight:900;color:#b07d1a}
/* 自前の控えめな演出（特別演出の口が無いとき） */
.bdr-fx{position:fixed;inset:0;z-index:10090;pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:opacity .5s ease}
.bdr-fx.is-out{opacity:0}
.bdr-fx__rays{position:absolute;left:50%;top:50%;width:520px;height:520px;margin:-260px 0 0 -260px;border-radius:50%;background:repeating-conic-gradient(rgba(255,214,120,.28) 0 8deg,rgba(255,214,120,0) 8deg 20deg);-webkit-mask:radial-gradient(circle,#000 0,transparent 68%);mask:radial-gradient(circle,#000 0,transparent 68%);animation:bdrSpin 6s linear infinite,bdrFade .4s ease}
.bdr-fx:not(.is-big) .bdr-fx__rays{opacity:.6;transform:scale(.7)}
@keyframes bdrSpin{to{transform:rotate(360deg)}}
.bdr-fx__ring{position:relative;width:150px!important;height:150px!important;object-fit:contain;filter:drop-shadow(0 6px 18px rgba(255,190,80,.6));animation:bdrRing 1s cubic-bezier(.2,1.4,.4,1) both}
.bdr-fx__icon{position:relative;font-size:84px;animation:bdrRing 1s cubic-bezier(.2,1.4,.4,1) both}
.bdr-fx__t{position:relative;margin:10px 0 0;padding:6px 16px;border-radius:999px;background:rgba(255,255,255,.92);color:#c0418a;font-size:16px;font-weight:900;box-shadow:0 4px 14px rgba(0,0,0,.12)}
.bdr-fx__pet{position:absolute;inset:0;overflow:hidden}
.bdr-fx__pet i{position:absolute;top:-24px;font-style:normal;font-size:18px;color:#f07ab4;animation:bdrFall 2.4s ease-in both}
.bdr-fx__pet i:nth-child(3n){color:#f2c45a}
@keyframes bdrFall{from{transform:translateY(0) rotate(0)}to{transform:translateY(105vh) rotate(260deg);opacity:.2}}
@media (prefers-reduced-motion:reduce){.bdr-fx__rays,.bdr-fx__pet,.bdr-req__glow,.bdr-inrow,.bdr-hmark{animation:none!important}}
/* 結婚までの道のり（無料でも届く・急ぐなら） */
.bdr-plan{margin:10px 0 0}
.bdr-plan__h{margin:0 0 6px;font-size:13.5px;font-weight:900;color:#7a4b00}
.bdr-plan__h b{color:#c0418a;font-size:15px}
.bdr-plan__h small{margin-left:4px;font-size:11px;font-weight:700;color:#8a7b9c}
.bdr-plan.is-all .bdr-plan__h{color:#2f9a62}
.bdr-plan__r{display:flex;gap:8px;align-items:flex-start;margin:8px 0 0;font-size:13px;line-height:1.55}
.bdr-plan__r i{flex:0 0 22px;height:22px;border-radius:50%;background:#f1e8f6;color:#8b6cc1;font-style:normal;font-weight:900;font-size:12px;display:flex;align-items:center;justify-content:center}
.bdr-plan__r.is-ok i{background:#2f9a62;color:#fff}
.bdr-plan__r b{font-weight:900}
.bdr-plan__r em{font-style:normal;font-weight:900;color:#c0418a}
.bdr-plan__r small{display:block;font-size:11.5px;color:#7b6d8d}
.bdr-plan__fast{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0 0;padding:8px 10px;border-radius:12px;background:#fff4dc}
.bdr-plan__fast>b{font-size:12px;color:#7a4b00;margin-right:2px}
.bdr-econ{margin:6px 0 0}
.bdr-plan__fastnote{flex-basis:100%;font-size:11.5px;color:#7a4b00;line-height:1.5}

/* 2026-09-29 絵の取り込み: 結婚・親友の絵（images/community/bond/）。無い絵は今の絵文字・CSS のまま IMG0929 */
.bdr-steps__pic.is-art{padding:4px}
.bdr-steps__pic.is-art img{width:72px!important;height:72px!important}
.bdr-req .bdr-req__glow.is-art{width:320px;height:320px;margin-left:-160px;top:-44px;border-radius:0;background-color:transparent;background-size:contain;background-repeat:no-repeat;background-position:center}
.bdr-req__ring.is-bff img{width:96px!important;height:96px!important}
.bdr-done img.bdr-done__art{width:min(240px,64vw)!important;height:auto!important}

/* ===== 2026-10-01 MARRY1001 カップルの枠（プロフィール）・人のカードの小さな枠・絆の一覧の印 =====
   指輪の種類で見た目だけ変える: is-dawn（夜明け★1 桃色と金）／is-sera（セラ★2 白と金・光の輪）／is-lucifer（ルシフェル★3 夜の紫と紅） */
.bdr-cp-wrap{margin:12px 0 4px}
.bdr-cp-wrap.is-blank{display:none}
.bdr-cp{--cp-bg:linear-gradient(165deg,#fff4f7 0%,#ffe6ef 55%,#fff6e6 100%);--cp-bd:#f2bfd0;--cp-ac:#d2578a;--cp-tx:#4a2a45;--cp-sub:#8a6a80;--cp-glow:rgba(255,170,200,.55);
	position:relative;overflow:hidden;border-radius:18px;padding:12px 12px 10px;background:var(--cp-bg);border:2px solid var(--cp-bd);color:var(--cp-tx);text-align:center;box-shadow:0 6px 18px rgba(210,87,138,.14)}
.bdr-cp.is-sera{--cp-bg:radial-gradient(120% 80% at 50% 0%,#fffef6 0%,#fff6d8 45%,#fdf3ff 100%);--cp-bd:#e3c065;--cp-ac:#b98612;--cp-tx:#4a3a1a;--cp-sub:#8a7650;--cp-glow:rgba(255,224,130,.75);box-shadow:0 0 0 4px rgba(227,192,101,.18),0 8px 22px rgba(185,134,18,.18)}
.bdr-cp.is-lucifer{--cp-bg:radial-gradient(120% 90% at 50% 0%,#4a1d45 0%,#2a1232 55%,#150a1c 100%);--cp-bd:#b8344f;--cp-ac:#ff8fb0;--cp-tx:#fbeaf2;--cp-sub:#d5b3c8;--cp-glow:rgba(220,40,80,.6);box-shadow:0 0 0 4px rgba(184,52,79,.22),0 10px 26px rgba(40,10,40,.35)}
.bdr-cp.is-empty{--cp-bg:#fffafc;--cp-bd:#ecd6e2;box-shadow:none;border-style:dashed}
.bdr-cp__k{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 4px;font-size:12px;font-weight:900;letter-spacing:.2em;color:var(--cp-ac)}
.bdr-cp__k span::before,.bdr-cp__k span::after{content:"";display:inline-block;width:18px;height:1.5px;margin:0 6px;vertical-align:middle;background:currentColor;opacity:.55}
.bdr-cp__k em{font-style:normal;letter-spacing:0;font-size:12px;color:#e3a92a}
.bdr-cp.is-lucifer .bdr-cp__k em{color:#ffcf5a}
.bdr-cp__pair{display:flex;align-items:center;justify-content:center;gap:4px;margin:2px 0 0}
.bdr-cp__p{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--cp-tx)!important;text-decoration:none!important}
.bdr-cp__p .bdr-av{border:3px solid #fff;box-shadow:0 0 0 2px var(--cp-bd),0 4px 10px rgba(0,0,0,.12)}
.bdr-cp.is-lucifer .bdr-cp__p .bdr-av{border-color:#2a1232}
.bdr-cp__p b{display:block;max-width:100%;font-size:13.5px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bdr-cp__ring{position:relative;flex:0 0 96px;width:96px;height:96px;display:flex;align-items:center;justify-content:center}
.bdr-cp__ring img{position:relative;z-index:1;width:96px!important;height:96px!important;object-fit:contain;margin:0!important;filter:drop-shadow(0 4px 8px rgba(0,0,0,.18));animation:bdrCpFloat 3.2s ease-in-out infinite}
.bdr-cp__halo{position:absolute;inset:6px;border-radius:50%;background:radial-gradient(circle,var(--cp-glow) 0%,transparent 68%);animation:bdrCpGlow 2.6s ease-in-out infinite}
.bdr-cp.is-sera .bdr-cp__halo{inset:-4px}
.bdr-cp.is-sera .bdr-cp__halo::after{content:"";position:absolute;left:50%;top:8px;width:40px;height:10px;margin-left:-20px;border-radius:50%;border:2px solid rgba(227,192,101,.9);box-shadow:0 0 8px rgba(255,220,120,.9)}
.bdr-cp.is-lucifer .bdr-cp__halo{inset:-2px;background:radial-gradient(circle,rgba(220,40,80,.55) 0%,rgba(120,20,80,.25) 45%,transparent 70%)}
.bdr-cp__ring.is-none img{opacity:.28;filter:grayscale(.6);animation:none}
.bdr-cp__slot{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;border:2.5px dashed #e3b9cd;color:#d9a5bd;font-size:26px;font-weight:900;background:#fff}
.bdr-cp__p.is-none b{color:#b28aa0;font-weight:800}
.bdr-cp__rn{margin:6px 0 0;font-size:13px;line-height:1.4}
.bdr-cp__rn b{font-weight:900;color:var(--cp-ac)}
.bdr-cp__rn small{display:block;font-size:11.5px;color:var(--cp-sub);font-weight:700}
.bdr-cp__days{display:flex;align-items:baseline;justify-content:center;flex-wrap:wrap;gap:2px 4px;margin:6px 0 0;line-height:1.2}
.bdr-cp__days b{font-size:30px;font-weight:900;color:var(--cp-ac);font-variant-numeric:tabular-nums}
.bdr-cp__days span{font-size:13px;font-weight:900}
.bdr-cp__days small{flex-basis:100%;font-size:11.5px;color:var(--cp-sub);font-weight:700}
.bdr-cp__next{margin:6px auto 0;display:inline-block;padding:3px 12px;border-radius:999px;background:rgba(255,255,255,.65);font-size:12px;font-weight:700;color:var(--cp-sub)}
.bdr-cp.is-lucifer .bdr-cp__next{background:rgba(255,255,255,.08)}
.bdr-cp__next b{color:var(--cp-ac);font-weight:900}
.bdr-cp__next small{font-size:11px}
.bdr-cp__anniv{position:relative;z-index:1;margin:8px auto 0;display:inline-block;padding:5px 14px;border-radius:999px;background:linear-gradient(135deg,#ff7aa8,#ffb347);color:#fff;font-size:13.5px;font-weight:900;box-shadow:0 4px 12px rgba(255,122,168,.35);animation:bdrCpPop 1.6s ease-in-out infinite}
.bdr-cp__ft{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:10px 0 0;padding:8px 0 0;border-top:1px dashed var(--cp-bd)}
.bdr-cp__bl{font-size:12px;font-weight:800;color:var(--cp-sub)}
.bdr-cp__bl b{font-size:16px;color:var(--cp-ac);margin-left:2px}
.bdr-cp .bdr-mini{background:rgba(255,255,255,.9)}
.bdr-cp.is-lucifer .bdr-mini{background:#3a1838;color:#ffd0e0!important;border-color:#b8344f}
.bdr-cp__none{margin:8px 0 0;font-size:12.5px;line-height:1.7;color:#7b6d8d}
.bdr-cp__none b{color:#c0418a}
.bdr-cp__go{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:8px 0 2px}
.bdr-cp__go [hidden]{display:none!important}
.bdr-cp__conf{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.bdr-cp>*:not(.bdr-cp__conf){position:relative;z-index:1}
.bdr-cp__conf i{position:absolute;top:-10px;width:7px;height:11px;border-radius:2px;background:#ff8fb0;opacity:.55;animation:bdrCpConf 3.2s linear infinite}
.bdr-cp__conf i:nth-child(3n){background:#ffd166}.bdr-cp__conf i:nth-child(3n+1){background:#9ad0ff}
.bdr-cp.is-anniv{border-width:2.5px;animation:bdrCpRing 2.4s ease-in-out infinite}
@keyframes bdrCpFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes bdrCpGlow{0%,100%{opacity:.7;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}
@keyframes bdrCpPop{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
@keyframes bdrCpConf{0%{transform:translateY(0) rotate(0)}100%{transform:translateY(340px) rotate(540deg)}}
@keyframes bdrCpRing{0%,100%{box-shadow:0 0 0 3px rgba(255,170,200,.25),0 6px 18px rgba(210,87,138,.14)}50%{box-shadow:0 0 0 7px rgba(255,170,200,.35),0 6px 18px rgba(210,87,138,.2)}}
@media (prefers-reduced-motion:reduce){.bdr-cp__ring img,.bdr-cp__halo,.bdr-cp__anniv,.bdr-cp.is-anniv,.bdr-cp__conf i{animation:none}}
@media (max-width:360px){.bdr-cp__ring{flex-basis:80px;width:80px;height:80px}.bdr-cp__ring img{width:80px!important;height:80px!important}.bdr-cp__p .bdr-av{width:54px!important;height:54px!important}.bdr-cp__days b{font-size:26px}}

/* 人のカードの小さな枠 */
.bdr-mcp{--cp-bg:linear-gradient(135deg,#fff3f7,#fff7e8);--cp-bd:#f2bfd0;--cp-ac:#d2578a;--cp-tx:#4a2a45;display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;margin:6px 0 0;padding:5px 10px 5px 8px;border-radius:14px;background:var(--cp-bg);border:1.5px solid var(--cp-bd);color:var(--cp-tx);font-size:12px;line-height:1.3}
.bdr-mcp.is-sera{--cp-bg:linear-gradient(135deg,#fffdf3,#fff1c9);--cp-bd:#e3c065;--cp-ac:#a87808;--cp-tx:#4a3a1a}
.bdr-mcp.is-lucifer{--cp-bg:linear-gradient(135deg,#3a1838,#1d0d22);--cp-bd:#b8344f;--cp-ac:#ff9cbb;--cp-tx:#fbeaf2}
.bdr-mcp__k{font-weight:900;color:var(--cp-ac);font-size:11px;letter-spacing:.08em}
.bdr-mcp__k em{font-style:normal;margin-left:3px;color:#e3a92a;letter-spacing:0}
.bdr-mcp__pair{display:inline-flex;align-items:center;gap:2px;min-width:0}
.bdr-mcp__pair .bdr-av{border-width:2px}
.bdr-mcp__ring{width:38px!important;height:38px!important;object-fit:contain;margin:0 -2px!important;filter:drop-shadow(0 2px 3px rgba(0,0,0,.18))}
.bdr-mcp__p{display:inline-flex;align-items:center;gap:4px;min-width:0;max-width:150px;padding:0;margin:0;min-height:0!important;border:0;background:none;color:var(--cp-tx)!important;font:inherit;font-weight:900;text-decoration:none!important;cursor:pointer}
.bdr-mcp__p b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:underline;text-decoration-color:rgba(0,0,0,.2);text-underline-offset:2px}
.bdr-mcp__d{margin-left:auto;font-weight:800;color:var(--cp-ac);white-space:nowrap}

/* 絆の一覧の印（マイページ） */
.bdr-mk{display:flex;flex-wrap:wrap;gap:4px;margin:2px 0 1px}
.bdr-mk i,.bdr-mksum__p i{font-style:normal;display:inline-block;padding:1px 7px;border-radius:999px;font-size:10.5px;font-weight:900;line-height:1.5;border:1px solid transparent}
.bdr-mk .is-love-ok,.bdr-mksum__p .is-love-ok{background:linear-gradient(135deg,#fff1c9,#ffe0ee);border-color:#efc15a;color:#8a5200}
.bdr-mk .is-bff-ok,.bdr-mksum__p .is-bff-ok{background:#eaf4ff;border-color:#9cc7f0;color:#1f5a8f}
.bdr-mk .is-love-on{background:#ffe6f1;border-color:#f2a6c8;color:#b0336f}
.bdr-mk .is-bff-on{background:#eef6ff;border-color:#bcd8f3;color:#3a6e9c}
.bdr-mk .is-wait{background:#f5f0fa;border-color:#dccbee;color:#7b5aa6}
.bdr-mk .is-got,.bdr-mksum__p .is-got{background:#ff6f9f;color:#fff}
.bdr-mk .is-near{background:#f8f6f2;border-color:#e6dfd2;color:#8a7b6a;font-weight:800}
.bdr-mk__go{flex:0 0 auto;align-self:center;margin-left:6px;padding:6px 11px;border-radius:999px;background:linear-gradient(135deg,#e56aa6,#b06ad6);color:#fff;font-size:12px;font-weight:900;white-space:nowrap;cursor:pointer;box-shadow:0 2px 8px rgba(176,106,214,.25)}
.bdr-mksum{margin:6px 0 10px;padding:10px 10px 8px;border-radius:14px;background:linear-gradient(180deg,#fff8fc,#fff);border:1.5px solid #f2cfe1}
.bdr-mksum__h{margin:0 0 6px;font-size:13px;font-weight:900;color:#c0418a}
.bdr-mksum__h small{margin-left:6px;font-size:11px;font-weight:700;color:#8a7b9c}
.bdr-mksum__r{display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:2px 2px 4px}
.bdr-mksum__p{flex:0 0 74px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 2px;min-height:0!important;border:0;background:none;cursor:pointer;color:#3a2a55;font:inherit}
.bdr-mksum__p b{max-width:72px;font-size:11.5px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
