@layer components{.ca-page{color:#121212;background:#f7f7f5;min-height:100%;overflow-x:hidden}.ca-pixel-banner-top,.ca-pixel-banner-bottom{background:repeating-linear-gradient(90deg,#121212 0 6px,#f7f7f5 6px 8px,#9e9e9e 8px 10px,#fff 10px 16px);border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;height:10px}.ca-top{z-index:30;color:#121212;background:#fff;border-bottom:1px solid #e2e2e2;justify-content:space-between;align-items:center;gap:8px;height:56px;padding:0 16px;display:flex;position:sticky;top:0}@media (width<=620px){.ca-top{height:calc(56px + var(--safe-area-inset-top));padding-top:var(--safe-area-inset-top)}}.ca-back{color:#121212;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0 8px;font-size:20px;font-weight:700;line-height:1;display:inline-flex}.ca-back:focus-visible{outline-offset:2px;outline:2px solid #121212}.ca-back:active{transform:translate(1px,1px)}.ca-top-titles{flex-direction:column;flex:1;min-width:0;margin-left:6px;line-height:1.35;display:flex}.ca-top-title{color:#121212;letter-spacing:.1em;font-size:16px;font-weight:700}.ca-top-sub{color:#9e9e9e;letter-spacing:.12em;white-space:nowrap;text-overflow:ellipsis;font-size:9px;font-weight:600;overflow:hidden}.ca-top-spacer{flex:1}.ca-top-location{color:#121212;white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:inline-flex}.ca-top-location .ca-loc-icon{font-size:12px;line-height:1}.ca-top-location .ca-loc-text{font-weight:600}.ca-top-location .ca-loc-star{color:#121212;font-size:10px}.ca-rel-btn{white-space:nowrap;color:#121212;cursor:pointer;letter-spacing:.08em;background:#fff;border:1px solid #121212;border-radius:6px;align-items:center;gap:4px;min-height:44px;padding:7px 12px;font-size:12px;font-weight:800;display:inline-flex}.ca-rel-btn:active{transform:translate(1px,1px)}.ca-wrap{box-sizing:border-box;background:#f7f7f5;flex-direction:column;gap:0;width:100%;max-width:460px;min-height:100%;margin:0 auto;padding:0 0 36px;display:flex;overflow:visible}.ca-hero{background:#fff;border:1px solid #e2e2e2;border-radius:6px;align-items:flex-start;gap:12px;margin:12px 14px 0;padding:12px;display:flex;position:relative}.ca-nav{scrollbar-width:none;-webkit-overflow-scrolling:touch;z-index:1;background:0 0;border:none;border-radius:0;flex:none;align-items:flex-start;gap:8px;padding:12px 12px 10px;display:flex;position:relative;overflow-x:auto}.ca-nav::-webkit-scrollbar{display:none}.ca-tabs{background:#fff;border:1px solid #e2e2e2;border-radius:6px;display:flex;overflow-x:auto}.ca-rel{cursor:pointer;background:#fff;border:1px solid #e2e2e2;border-radius:8px;flex-direction:column;align-items:center;gap:5px;min-width:56px;max-width:68px;min-height:44px;padding:8px 4px;transition:transform .12s;display:flex;position:relative;box-shadow:3px 3px #12121224}.ca-rel:active{box-shadow:none;transform:translate(2px,2px)}.ca-rel-avatar{color:#121212;background:#f2f2f2;border:1px solid #e2e2e2;border-radius:6px;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;line-height:1;display:flex;overflow:hidden}.ca-rel-avatar .avatar-img{object-fit:cover;object-position:center;border-radius:4px;width:100%;height:100%;display:block}.ca-rel-name{color:#333;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:11px;line-height:1.3;overflow:hidden}.ca-rel.on{background:#121212;border-color:#121212;box-shadow:3px 3px #12121224,0 0 0 2px #fff,0 0 0 4px #121212}.ca-rel.on:after{content:"●";color:#fff;font-size:9px;line-height:1;position:absolute;top:3px;right:5px}.ca-rel.on .ca-rel-avatar{background:#fff;border:2px solid #fff}.ca-rel.on .ca-rel-name{color:#fff;text-underline-offset:2px;font-weight:800;text-decoration:underline}.ca-rel-add .ca-rel-avatar{background:0 0;border-style:dashed}.ca-nav-item{color:#525252;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;min-height:44px;padding:0 2px;font-size:12px;font-weight:600;display:inline-flex}.ca-nav-item.active{color:#121212;background:#faf9f7;border-bottom-color:#121212;font-weight:700}.ca-hero{z-index:0;background:#fff;border:1px solid #e2e2e2;border-radius:6px;align-items:flex-start;gap:12px;margin:12px 14px 0;padding:12px;display:flex;position:relative}.ca-watermark{color:#9e9e9e;letter-spacing:.06em;pointer-events:none;font-size:14px;font-style:italic;position:absolute;top:8px;right:12px}.ca-avatar{background:#fff;border:2px solid #121212;border-radius:2px;flex:0 0 112px;justify-content:center;align-items:center;width:112px;min-width:112px;height:140px;min-height:140px;font-size:30px;line-height:1;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fff,inset 0 0 0 2px #e2e2e2}.ca-avatar:before{content:"✦";color:#121212;text-shadow:96px 0 #121212;pointer-events:none;font-size:8px;line-height:1;position:absolute;top:3px;left:4px}.ca-avatar:after{content:"✦";color:#121212;text-shadow:96px 0 #121212;pointer-events:none;font-size:8px;line-height:1;position:absolute;bottom:3px;left:4px}.ca-avatar .avatar-img{object-fit:cover;object-position:center;border-radius:0;width:100%;height:100%;display:block}.ca-hero-main{flex-direction:column;flex:1;gap:6px;min-width:0;padding-top:1px;display:flex}.ca-name{color:#121212;letter-spacing:.03em;flex-wrap:wrap;align-items:center;gap:6px;font-size:24px;font-weight:800;display:flex}.ca-name .star{font-size:14px;font-weight:400}.ca-kind{color:#fff;letter-spacing:.1em;white-space:nowrap;background:#888;border:1px solid #888;border-radius:4px;padding:1px 7px;font-size:10px;font-weight:700}.ca-roleline{color:#525252;letter-spacing:.04em;flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-size:12px;display:flex}.ca-roleline .ca-role-desc{color:#525252}.ca-quote{color:#121212;word-break:break-word;border-left:2px solid #121212;max-width:100%;margin-top:4px;padding-left:8px;font-size:12px;line-height:1.45}.ca-hero .ca-rel{width:100%;min-width:0;max-width:none;box-shadow:none;background:0 0;border:none;border-radius:0;flex-direction:row;justify-content:flex-start;align-items:center;gap:6px;min-height:0;padding:0}.ca-hero .ca-rel:after{content:none}.ca-hero .ca-rel-avatar{background:0 0;border:none;border-radius:0;flex:0 0 20px;width:20px;min-width:20px;height:20px;min-height:20px;font-size:14px}.ca-hero .ca-rel-name{color:#525252;white-space:normal;text-overflow:clip;font-size:12px;overflow:visible}.ca-mini-grid{flex-direction:column;gap:4px;margin-top:2px;display:flex}.ca-mini-row{align-items:baseline;gap:8px;font-size:12px;display:flex}.ca-mini-row .k{color:#525252;flex:none}.ca-mini-row .v{color:#121212;flex:1;min-width:0;font-weight:600}.ca-aff{background:#fff;border:1px solid #e2e2e2;border-radius:6px;flex-direction:column;gap:8px;margin-top:10px;padding:12px;display:flex}.ca-aff-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.ca-aff-title{color:#121212;align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.ca-heart{color:#121212;font-size:13px;line-height:1}.ca-aff-num{color:#121212;white-space:nowrap;align-items:center;gap:4px;margin-left:auto;font-size:13px;font-weight:800;display:inline-flex}.ca-aff-bar{background:#ecece9;border:1px solid #dcdcd8;border-radius:0;flex:1;width:100%;min-width:60px;height:8px;display:block;overflow:hidden}.ca-aff-bar:has(>.ca-aff-seg){background:0 0;border:none;gap:3px;height:8px;padding:0;display:flex;overflow:visible}.ca-aff-seg{box-sizing:border-box;background:#ecece9;border:1px solid #dcdcd8;flex:1;height:8px;min-height:8px}.ca-aff-fill{background:#121212;height:100%;display:block}.ca-aff-seg.ca-aff-fill{background:#121212!important;border-color:#121212!important}.ca-doc{background:#fff;border:1px solid #e2e2e2;border-radius:6px;flex-direction:column;gap:12px;margin:12px 14px 0;padding:14px;display:flex}.ca-doc-grid{flex-direction:column;gap:12px;display:flex}.ca-doc-left{flex-direction:column;gap:2px;display:flex}.ca-paper-card{background:#fff;border:1px solid #d9d9d9;border-radius:4px;padding:12px;position:relative;box-shadow:3px 3px #eaeae7,0 0 0 1px #d9d9d9}.ca-slash{color:#9e9e9e;letter-spacing:.08em;margin-bottom:6px;font-size:11px;display:block}.ca-sec{border-top:1px solid #ececec;padding:12px 0}.ca-sec:first-child{border-top:none;padding-top:0}.ca-sec-label{letter-spacing:.08em;color:#121212;margin-bottom:8px;font-size:13px;font-weight:700}.ca-kv{gap:8px;padding:1px 0;font-size:12px;line-height:1.9;display:flex}.ca-k{color:#525252;letter-spacing:.06em;flex:0 0 52px;font-size:12px}.ca-k:before{content:"✦ ";color:#9e9e9e}.ca-v{color:#121212;white-space:pre-wrap;word-break:break-word;flex:1;min-width:0;font-weight:600}.ca-v.hl{color:#121212;font-weight:700}.ca-para{color:#525252;white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.7}.ca-paper-card .ca-para{color:#525252}.ca-more{color:#525252;cursor:pointer;background:0 0;border:none;min-height:44px;margin-left:8px;padding:0;font-size:12px}.ca-tags{flex-wrap:wrap;gap:6px;padding-top:2px;display:flex}.ca-tag{color:#121212;background:#f2f2f2;border:1px solid #121212;border-radius:4px;padding:2px 9px;font-size:11px}.ca-face{object-fit:cover;object-position:center;border:1px solid #e2e2e2;border-radius:6px;width:100%;max-height:240px;margin-top:8px;display:block}.ca-actions{flex-direction:column;gap:10px;margin:12px 14px 0;padding:0;display:flex}.ca-edit-main{color:#121212;letter-spacing:.14em;cursor:pointer;background:#fff;border:2px solid #121212;border-radius:6px;width:100%;min-height:46px;padding:11px;font-size:14px;font-weight:700;transition:transform .12s;box-shadow:0 2px #121212}.ca-edit-main:active{box-shadow:none;transform:translate(2px,2px)}.ca-edit-sub{color:#121212;cursor:pointer;background:#fff;border:2px solid #121212;border-radius:6px;min-height:44px;padding:9px;font-size:13px;font-weight:700;transition:transform .12s}.ca-edit-sub:active{transform:translate(2px,2px)}.ca-edit-sub:disabled,.ca-edit-main:disabled{opacity:.55}.ca-ai-status{color:#121212;background:#fff;border:2px solid #121212;border-radius:6px;align-items:center;gap:8px;margin:10px 14px 0;padding:8px 10px;font-size:12px;display:flex}.ca-ai-msg{word-break:break-all;flex:1;line-height:1.4}.ca-ai-cancel{color:#121212;cursor:pointer;background:#fff;border:1px solid #121212;border-radius:4px;flex:none;padding:3px 10px;font-size:12px;font-weight:700}.ca-ai-cancel:active{transform:translate(1px,1px)}.ca-ai-spinner{border:2px solid #cfcfcf;border-top-color:#121212;border-radius:50%;flex:none;width:12px;height:12px;animation:.8s linear infinite ca-spin}@keyframes ca-spin{to{transform:rotate(360deg)}}.ca-future{color:#9e9e9e;text-align:center;background:#fff;border:1px dashed #d9d9d9;border-radius:8px;padding:12px;font-size:11px;line-height:2}.relations-wrap{box-sizing:border-box;flex-direction:column;gap:12px;max-width:460px;margin:0 auto;padding:12px;display:flex}.relations-graph-card{background:#fff;border:1px solid #e2e2e2;border-radius:8px;padding:12px;box-shadow:3px 3px #12121224}.relations-svg{width:100%;max-width:100%;height:auto;display:block}.rel-form-card,.rel-list-card{background:#fff;border:1px solid #e2e2e2;border-radius:8px;padding:12px;box-shadow:3px 3px #12121224}.rel-add-btn{color:#fff;cursor:pointer;background:#121212;border:2px solid #121212;border-radius:6px;align-items:center;gap:6px;min-height:44px;padding:9px 12px;font-size:13px;font-weight:800;transition:transform .12s;display:inline-flex;box-shadow:3px 3px #12121224}.rel-add-btn:active{box-shadow:none;transform:translate(2px,2px)}.rel-edge-del{cursor:pointer;color:#121212;background:#fff;border:1px solid #e2e2e2;border-radius:4px;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;min-height:44px;display:inline-flex}@media (width<=360px){.ca-top-sub{display:none}.ca-hero{flex-wrap:nowrap}.ca-avatar{flex-basis:96px;width:96px;min-width:96px}.ca-name{font-size:20px}}.ca-hero-dense{padding:14px}.ca-kindrow{align-items:center;gap:8px;margin-top:2px;display:flex}.ca-kinddesc{color:#9e9e9e;letter-spacing:.06em;font-size:11px}.ca-vitals{grid-template-columns:1fr 1fr;gap:2px 10px;margin-top:6px;display:grid}.ca-vital{align-items:baseline;gap:6px;min-width:0;font-size:11px;line-height:1.8;display:flex}.ca-vital .k{color:#525252;flex:none}.ca-vital .v{color:#121212;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:700;overflow:hidden}.ca-tabs-single{margin:12px 14px 0;padding:0 12px}.ca-doc-dense{gap:10px}.ca-doc-grid2{grid-template-columns:1fr;align-items:start;gap:12px;display:grid}.ca-persona{min-height:120px}.ca-tachie{background:#f2f2f2}.ca-tachie img{object-fit:contain;width:100%;height:100%;display:block}.ca-aff-dense{margin-top:2px}@media (width<=360px){.ca-doc-grid2{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.ca-back,.ca-rel-btn,.ca-rel,.ca-edit-main,.ca-edit-sub,.rel-add-btn,.ca-aff-fill{transition:none}}.char-body{flex-direction:column;gap:12px;display:flex}.char-tabs{gap:8px;display:flex;overflow-x:auto}.char-tabs::-webkit-scrollbar{display:none}.char-tab{background:var(--card,#fff);color:var(--ink,#121212);white-space:nowrap;border:1px solid var(--mist,#dcdcdc);transition:transform var(--t-fast,.12s) ease;border-radius:8px;flex-direction:column;align-items:center;gap:3px;padding:8px 12px;font-size:10.5px;display:flex;box-shadow:3px 3px #12121224}.char-tab:active{box-shadow:none;transform:translate(2px,2px)}.char-tab span:first-child{font-size:21px}.char-tab-active{background:var(--ink,#121212);border-color:var(--ink,#121212);color:#fff;box-shadow:3px 3px #12121224}body .module-app .char-tab.char-tab-active{color:#fff!important;background:#161616!important;border-color:#161616!important;box-shadow:3px 3px #12121259,0 0 0 2px #fff,0 0 0 4px #161616!important}body .module-app .char-tab.char-tab-active span{color:#fff!important}body .module-app .char-tab.char-tab-active:before{content:"● 已选";letter-spacing:.1em;font-size:10px;font-weight:800;display:block;color:#fff!important}.char-tab-bond{background:var(--card,#fff);color:var(--ink,#121212);border-color:var(--mist,#dcdcdc)}.char-tab-bond.char-tab-active{background:var(--ink,#121212);border-color:var(--ink,#121212);color:#fff;box-shadow:3px 3px #12121224}.char-tab-npc{background:var(--card,#fff);color:var(--ink-2,#333);border-color:var(--mist,#dcdcdc)}.char-tab-npc.char-tab-active{background:var(--ink,#121212);border-color:var(--ink,#121212);color:#fff;box-shadow:3px 3px #12121224}.char-kind-dot{font-size:10px;line-height:1}.char-tab-bond .char-kind-dot,.char-tab-npc .char-kind-dot{color:inherit}.char-kind-badge{vertical-align:middle;border-radius:4px;margin-left:6px;padding:2px 8px;font-size:10px}.char-kind-badge-bond{background:var(--ink,#121212);color:#fff;border:1.5px solid var(--ink,#121212)}.char-kind-badge-npc{background:var(--paper,#f2f2f2);color:var(--ink,#121212);border:1.5px solid var(--ink,#121212)}.char-card-bond{border-color:var(--ink,#121212)}.char-card-npc{border-color:var(--mist,#dcdcdc)}.ai-modal-mask{z-index:90;background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.ai-modal{border:2px solid var(--ink,#121212);background:#fff;border-radius:8px 8px 0 0;width:100%;max-width:480px;max-height:85vh;padding:16px;overflow-y:auto}.ai-modal h4{color:var(--ink,#121212);align-items:center;gap:6px;margin-bottom:8px;font-size:15px;display:flex}.ai-modal.ca-gen-modal{flex-direction:column;gap:10px;display:flex}.ai-modal.ca-gen-modal h4{margin:0}.ai-modal .ca-gen-fields{grid-template-columns:minmax(0,1fr) 112px;align-items:start;gap:12px;display:grid}.ai-modal .ca-gen-fields .form-field{min-width:0}.ai-modal .ca-gen-fields .form-field-label{white-space:nowrap;margin:0 0 5px}.ai-modal .ca-gen-request .form-textarea{resize:vertical;height:88px;min-height:88px}.ai-modal .ca-gen-count .form-input{height:44px;min-height:44px;padding-inline:8px}.ai-modal .ca-gen-count-hint{color:#888;margin-top:4px;font-size:10px}.ai-modal .ca-gen-actions{z-index:auto;background:0 0;border:0;justify-content:space-between;gap:10px;width:100%;padding:0;position:static;inset:auto}@media (width<=380px){.ai-modal.ca-gen-modal{padding:14px}.ai-modal .ca-gen-fields{grid-template-columns:minmax(0,1fr) 96px;gap:8px}.ai-modal .ca-gen-fields .form-field-label{letter-spacing:.04em;font-size:9px}}.char-card{background:var(--card,#fff);border:1px solid var(--mist,#dcdcdc);border-radius:8px;overflow:hidden;box-shadow:3px 3px #12121224}.char-card-header{background:var(--ink,#121212);color:#fff;align-items:center;gap:12px;padding:16px;display:flex}.char-card-avatar{background:#fff;border:2px solid #fff;border-radius:6px;justify-content:center;align-items:center;width:60px;height:60px;font-size:33px;display:flex}.char-card-title h3{color:#fff;font-size:17px}.char-role{color:var(--ink,#121212);background:#fff;border:1px solid #fff;border-radius:4px;margin-top:5px;padding:3px 10px;font-size:10.5px;display:inline-block}.char-card-tags{border-bottom:2px dashed var(--mist-2,#ececec);flex-wrap:wrap;gap:5px;padding:10px 16px;display:flex}.char-tag{background:var(--paper,#f2f2f2);color:var(--ink,#121212);border:1px solid var(--ink,#121212);border-radius:4px;padding:3px 9px;font-size:10px}.char-info-list{flex-direction:column;gap:8px;padding:8px 16px 14px;display:flex}.char-info-row{gap:10px;font-size:13px;line-height:1.6;display:flex}.char-info-label{color:var(--ink,#121212);flex-shrink:0;min-width:56px;font-weight:700}.char-info-value{color:var(--ink-2,#333);flex:1;min-width:0}.char-info-highlight{background:var(--paper,#f2f2f2);margin:0 -8px;padding:8px}.char-info-highlight .char-info-value{color:var(--ink,#121212)}@media (prefers-reduced-motion:reduce){.char-tab{transition:none}}.module-app.ca-page,.module-app.ca-page.theme-moonlit{height:100%;min-height:100%;color:#faf6ee!important;background:radial-gradient(at 50% -10%,#c9c2b61a,#0000 52%),radial-gradient(circle at 90% 25%,#a7a0920b,#0000 45%),radial-gradient(circle at 10% 65%,#c9c2b606,#0000 40%),linear-gradient(#100e0c 0%,#171411 48%,#0d0c0a 100%)!important;overflow:hidden!important}.ca-page .ca-wrap{max-width:580px;min-height:0;padding:0 0 calc(32px + var(--safe-area-inset-bottom,0px));scrollbar-width:none;box-sizing:border-box;flex:auto;margin:0 auto;background:0 0!important;overflow:hidden auto!important}.ca-page .ca-wrap::-webkit-scrollbar{width:0;height:0;display:none}.ca-page .ca-top{z-index:40;height:calc(56px + var(--safe-area-inset-top,0px));padding:var(--safe-area-inset-top,0px) 16px 0;align-items:center;gap:10px;display:flex;position:sticky;top:0;box-shadow:0 4px 20px #00000073;color:#faf6ee!important;-webkit-backdrop-filter:blur(20px)saturate(140%)!important;background:#120f0df0!important;border-bottom:1px solid #c9c2b633!important}.ca-page .ca-back{cursor:pointer;place-items:center;width:38px;min-width:38px;height:38px;transition:color .2s;display:grid;color:#faf6ee!important;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important}.ca-page .ca-back:active{transform:none;color:#c9c2b6!important;background:0 0!important}.ca-page .ca-top-titles{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.ca-page .ca-top-title{letter-spacing:.08em;font-size:16px;font-weight:800;color:#faf6ee!important}.ca-page .ca-top-sub{letter-spacing:.14em;white-space:nowrap;text-overflow:ellipsis;font-size:9px;font-weight:600;overflow:hidden;color:#c9c2b6d9!important}.ca-page .ca-rel-btn{letter-spacing:.06em;cursor:pointer;align-items:center;gap:6px;height:34px;padding:0 14px;font-size:11px;font-weight:700;transition:all .2s;display:inline-flex;box-shadow:0 2px 10px #00000040,inset 0 1px #e8e2d81f;color:#faf6ee!important;background:linear-gradient(135deg,#261e18cc,#16120fcc)!important;border:1px solid #c9c2b659!important;border-radius:999px!important}.ca-page .ca-rel-btn:hover{box-shadow:0 0 12px #c9c2b64d;border-color:#c9c2b6b3!important}.ca-page .ca-world-picker{flex:0 auto;min-width:0;padding:0;position:relative}.ca-page .ca-world-current{width:auto;max-width:min(47vw,190px);min-height:31px;box-shadow:none;cursor:pointer;align-items:center;gap:6px;padding:5px 9px;transition:border-color .2s,background .2s;display:flex;color:#faf6ee!important;background:#c9c2b606!important;border:1px solid #c9c2b629!important;border-radius:9px!important}.ca-page .ca-world-current:hover{background:#c9c2b60f!important;border-color:#c9c2b652!important}.ca-page .ca-world-current-icon{color:#c9c2b6;flex:none;align-items:center;font-size:14px;display:inline-flex}.ca-page .ca-world-current-copy{text-align:left;flex-direction:column;flex:0 auto;min-width:0;display:flex}.ca-page .ca-world-current-label{display:none}.ca-page .ca-world-current-copy strong{white-space:nowrap;text-overflow:ellipsis;max-width:130px;font-size:10px;font-weight:700;overflow:hidden;color:#faf6ee!important}.ca-page .ca-world-current-count{display:none}.ca-page .ca-world-chevron{color:#c9c2b6;background:0 0;border:0;border-radius:0;flex:none;place-items:center;width:14px;height:14px;transition:transform .2s;display:grid}.ca-page .ca-world-chevron svg{width:14px;height:14px}.ca-page .ca-world-current.open .ca-world-chevron{transform:rotate(180deg)}.ca-page .ca-world-list{z-index:80;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#16120ff7;border:1px solid #c9c2b63d;border-radius:12px;flex-direction:column;gap:3px;min-width:176px;max-width:min(240px,100vw - 28px);padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 28px #00000073}.ca-page .ca-world-chip{cursor:pointer;align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:flex;color:#faf6eecc!important;background:#191512bf!important;border:1px solid #c9c2b629!important;border-radius:10px!important}.ca-page .ca-world-icon{color:#c9c2b6b8;flex:0 0 14px;align-items:center;display:inline-flex}.ca-page .ca-world-chip.active{font-weight:700;box-shadow:0 0 14px #c9c2b633;color:#c9c2b6!important;background:linear-gradient(135deg,#2e241cf2,#1b1612f2)!important;border-color:#c9c2b6a6!important}.ca-page .ca-board-controls{z-index:60;justify-content:flex-end;align-items:center;gap:8px;padding:10px 14px 4px;display:flex;position:relative}.ca-page .ca-world-tools,.ca-page .ca-board-actions,.ca-page .ca-kind-switch{align-items:center;display:flex}.ca-page .ca-world-tools{flex:0 auto;gap:6px;min-width:0}.ca-page .ca-board-actions{flex:none;gap:6px}.ca-page .ca-kind-switch{box-sizing:border-box;background:#08070638;border:1px solid #c9c2b62e;border-radius:9px;gap:0;height:31px;padding:2px}.ca-page .ca-board-controls .ca-board-relations{height:31px;min-height:31px;box-shadow:none;letter-spacing:0;flex:none;gap:5px;padding:0 7px;font-size:10px;color:#ebdac4b3!important;background:0 0!important;border:1px solid #c9c2b61f!important;border-radius:8px!important}.ca-page .ca-board-controls .ca-board-relations svg{color:#c9c2b6;width:12px;height:12px}.ca-page .ca-board-controls .ca-board-relations:hover{box-shadow:none;background:#c9c2b60a!important;border-color:#c9c2b647!important}.ca-page .ca-board-controls .ca-board-back{z-index:2;flex:0 0 24px;width:24px;min-width:24px;height:31px;min-height:31px;margin-top:-15.5px;padding:0;position:absolute;top:50%;left:12px;color:#faf6eedb!important}.ca-page .ca-board-controls .ca-board-back:hover,.ca-page .ca-board-controls .ca-board-back:active{color:#e8e2d8!important}.ca-page .ca-kind-button{color:#faf6eea3;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:5px;height:25px;min-height:25px;padding:0 8px;font-size:10px;font-weight:700;transition:color .18s,border-color .18s,background .18s;display:inline-flex}.ca-page .ca-kind-button.active{color:#17110a;background:linear-gradient(135deg,#c9c2b6,#a7a092);border-color:#e8e2d8d1;box-shadow:0 1px 6px #c9c2b633}.ca-page .ca-kind-button:disabled{opacity:.38;cursor:default}.ca-page .ca-kind-count{color:#ebdac494;font-size:8px;font-weight:600}.ca-page .ca-kind-button.active .ca-kind-count{color:#17110aad}.ca-page .ca-add-trigger{color:#e8e2d8;cursor:pointer;background:#c9c2b60b;border:1px solid #c9c2b661;border-radius:9px;place-items:center;width:31px;min-width:31px;height:31px;transition:background .18s,border-color .18s,box-shadow .18s;display:grid;box-shadow:inset 0 0 0 1px #c9c2b60a}.ca-page .ca-add-trigger:hover{background:#c9c2b61f;border-color:#c9c2b694;box-shadow:0 0 10px #c9c2b61a}.ca-page .ca-card-swipe-hint{color:#ebdac47a;letter-spacing:.04em;justify-content:space-between;align-items:center;padding:4px 18px 0;font-size:9px;display:flex}.ca-page .ca-card-swipe-hint span:first-child{color:#c9c2b6b8}.ca-page .ca-card-swipe-area{touch-action:pan-y}.ca-page .ca-card-swipe-page{width:100%}.ca-page .ca-card-swipe-page.next{animation:.18s ease-out both caCardSwipeNext}.ca-page .ca-card-swipe-page.previous{animation:.18s ease-out both caCardSwipePrevious}@keyframes caCardSwipeNext{0%{opacity:.72;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes caCardSwipePrevious{0%{opacity:.72;transform:translate(-18px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.ca-page .ca-card-swipe-page.next,.ca-page .ca-card-swipe-page.previous{animation:none}}.ca-page .ca-nav{scrollbar-width:none;-webkit-overflow-scrolling:touch;align-items:center;gap:12px;padding:8px 16px 12px;display:flex;overflow-x:auto}.ca-page .ca-nav::-webkit-scrollbar{display:none}.ca-page .ca-rel{cursor:pointer;flex-direction:column;align-items:center;gap:5px;min-width:52px;max-width:62px;padding:0;transition:transform .2s;display:flex;background:0 0!important;border:none!important}.ca-page .ca-rel:hover{transform:translateY(-2px)}.ca-page .ca-rel-avatar{color:#faf6ee;flex:0 0 48px;place-items:center;width:48px;height:48px;transition:all .25s;display:grid;position:relative;overflow:hidden;box-shadow:0 4px 12px #00000059;background:#1c1713cc!important;border:1.5px solid #c9c2b647!important;border-radius:50%!important}.ca-page .ca-rel-avatar img,.ca-page .ca-rel-avatar .avatar-img{object-fit:cover;width:100%;height:100%}.ca-page .ca-rel.on .ca-rel-avatar{transform:scale(1.06);border:2px solid #c9c2b6!important;box-shadow:0 0 16px #c9c2b68c,inset 0 0 6px #c9c2b659!important}.ca-page .ca-rel-name{white-space:nowrap;text-overflow:ellipsis;max-width:56px;font-size:10px;overflow:hidden;color:#ebdac4b3!important;text-decoration:none!important}.ca-page .ca-rel.on .ca-rel-name{font-weight:800;color:#c9c2b6!important}.ca-page .ca-bond-badge{color:#fff9f0;background:linear-gradient(135deg,#a7a092,#817b70);border:1px solid #e8e2d8;border-radius:50%;place-items:center;width:16px;height:16px;font-size:9px;display:grid;position:absolute;bottom:0;right:0;box-shadow:0 2px 6px #0006}.ca-page .ca-rel-add .ca-rel-avatar{color:#c9c2b6cc!important;background:#ffffff0a!important;border-style:dashed!important;border-color:#c9c2b659!important}.ca-page .ca-rel-add-bond .ca-rel-avatar{color:#c9c2b6!important;border-color:#c9c2b699!important}.ca-otome-stage{box-sizing:border-box;flex-direction:column;align-items:center;width:100%;min-height:520px;padding:8px 16px 20px;display:flex;position:relative}.ca-standee-box{z-index:10;flex-direction:column;justify-content:flex-end;align-items:center;width:100%;max-width:380px;height:430px;margin:10px auto 14px;display:flex;position:relative}.ca-standee-wrap{pointer-events:none;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.ca-standee-frame{box-sizing:border-box;background:linear-gradient(145deg,#48453f,#201e1a 42%,#36322d);border:1px solid #c9c2b685;border-radius:4px;justify-content:center;align-items:center;width:max-content;max-width:100%;height:calc(100% - 28px);padding:5px;display:flex;position:relative;overflow:visible;box-shadow:0 0 0 1px #080706d9,0 14px 34px #0000007a,0 0 16px #c9c2b60d}.ca-standee-frame:before{content:"";pointer-events:none;border:1px solid #e8e2d833;border-radius:2px;position:absolute;inset:4px}.ca-standee-frame:after{content:"";opacity:.5;pointer-events:none;background:linear-gradient(#e8e2d8,#e8e2d8) 0 0/11px 1px no-repeat,linear-gradient(#e8e2d8,#e8e2d8) 0 0/1px 11px no-repeat,linear-gradient(#e8e2d8,#e8e2d8) 100% 0/11px 1px no-repeat,linear-gradient(#e8e2d8,#e8e2d8) 100% 0/1px 11px no-repeat,linear-gradient(#e8e2d8,#e8e2d8) 0 100%/11px 1px no-repeat,linear-gradient(#e8e2d8,#e8e2d8) 0 100%/1px 11px no-repeat,linear-gradient(#e8e2d8,#e8e2d8) 100% 100%/11px 1px no-repeat,linear-gradient(#e8e2d8,#e8e2d8) 100% 100%/1px 11px no-repeat;position:absolute;inset:0}.ca-standee-img{object-fit:contain;filter:drop-shadow(0 14px 28px #000000bf);-webkit-user-select:none;user-select:none;pointer-events:auto;max-width:100%;max-height:100%;display:block}.ca-standee-breathe{animation:4.5s ease-in-out infinite caStandeeBreathe}@keyframes caStandeeBreathe{0%,to{transform:scale(1)translateY(0)}50%{transform:scale(1.016)translateY(-5px)}}.ca-standee-empty{cursor:pointer;background:radial-gradient(circle at 50% 35%,#2e2c286b,#12110fb8);border:1.5px dashed #c9c2b659;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:220px;height:330px;transition:all .25s;display:flex;position:relative;box-shadow:0 8px 24px #00000059}.ca-standee-empty:hover{background:radial-gradient(circle at 50% 35%,#3c39338c,#181715d9);border-color:#c9c2b68c}.ca-standee-silhouette{color:#c9c2b6;background:#c9c2b61f;border:1px solid #c9c2b640;border-radius:50%;justify-content:center;align-items:center;gap:4px;width:80px;height:80px;font-size:22px;display:flex}.ca-standee-upload-cta{color:#1a140e;cursor:pointer;background:linear-gradient(135deg,#c9c2b6,#a7a092);border:1px solid #e8e2d8;border-radius:999px;padding:7px 16px;font-size:11px;font-weight:800;box-shadow:0 4px 12px #c9c2b64d}.ca-standee-empty .ca-standee-upload-cta{align-self:center}.ca-empty-tip{color:#ebdac48c;font-size:10px}.ca-emotion-pills{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:20;pointer-events:auto;background:#14100dd9;border:1px solid #c9c2b64d;border-radius:999px;gap:6px;padding:4px 10px;display:flex;position:absolute;bottom:4px}.ca-emotion-pill{color:#ebdac4a6;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:3px 8px;font-size:10px}.ca-emotion-pill.active{color:#18120c;background:#c9c2b6;font-weight:800}.ca-widget{z-index:25;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .25s,box-shadow .25s,border-color .25s;position:absolute}.ca-widget:hover{transform:translateY(-2px)scale(1.02)}.ca-widget-polaroid{background:#1c1815;border:1.5px solid #c9c2b659;border-radius:8px;width:96px;padding:18px 6px 8px;top:14px;left:16px;transform:rotate(-3.5deg);box-shadow:0 10px 24px #0000008c,0 0 12px #c9c2b61a}.ca-widget-polaroid:hover{border-color:#c9c2b6b3;transform:rotate(0)scale(1.05)}.ca-polaroid-tape{color:#18120c;white-space:nowrap;letter-spacing:.05em;background:linear-gradient(90deg,#c9c2b6e6,#a7a092e6);border-radius:2px;padding:2px 8px;font-size:7px;font-weight:800;position:absolute;top:-8px;left:50%;transform:translate(-50%);box-shadow:0 2px 6px #00000059}.ca-polaroid-photo{background:#120f0d;border:1px solid #c9c2b633;border-radius:4px;place-items:center;width:82px;height:82px;margin:0 auto;display:grid;overflow:hidden}.ca-polaroid-photo img,.ca-polaroid-photo .avatar-img{object-fit:cover;width:100%;height:100%}.ca-polaroid-foot{flex-direction:column;align-items:center;gap:1px;margin-top:5px;display:flex}.ca-polaroid-name{color:#faf6ee;white-space:nowrap;text-overflow:ellipsis;max-width:80px;font-size:11px;font-weight:800;overflow:hidden}.ca-polaroid-tag{color:#c9c2b6;letter-spacing:.05em;font-size:8px}.ca-widget-vitals{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto;background:#1a1512e0;border:1px solid #c9c2b64d;border-radius:12px;width:104px;padding:7px 8px;top:auto;bottom:14px;right:-10px;transform:rotate(2deg);box-shadow:0 8px 22px #00000073}.ca-widget-vitals:hover{border-color:#c9c2b6b3;transform:rotate(0)scale(1.05)}.ca-vitals-header{color:#c9c2b6;letter-spacing:.05em;border-bottom:1px solid #c9c2b62e;align-items:center;gap:5px;margin-bottom:5px;padding-bottom:5px;font-size:10px;font-weight:700;display:flex}.ca-vitals-grid{flex-direction:column;gap:3px;display:flex}.ca-vitals-item{justify-content:space-between;font-size:10px;display:flex}.ca-vitals-item .k{color:#ebdac4a6}.ca-vitals-item .v{color:#faf6ee;white-space:nowrap;text-overflow:ellipsis;text-align:right;max-width:65px;font-weight:600;overflow:hidden}.ca-aff-seal{color:#fff8f0;background:radial-gradient(circle at 35% 35%,#c9c2b6,#817b70);border:1px solid #e8e2d8;border-radius:50%;place-items:center;width:26px;height:26px;font-size:13px;display:grid;box-shadow:0 2px 8px #0006}.ca-aff-info{flex-direction:column;gap:3px;min-width:120px;display:flex}.ca-aff-row{justify-content:space-between;font-size:10px;display:flex}.ca-aff-tier{color:#c9c2b6;font-weight:700}.ca-aff-val{color:#faf6ee;font-weight:800}.ca-aff-track{background:#ffffff14;border:.5px solid #c9c2b633;border-radius:999px;width:100%;height:6px;overflow:hidden}.ca-aff-shine{background:linear-gradient(90deg,#a7a092,#c9c2b6 60%,#e8e2d8);border-radius:999px;height:100%;box-shadow:0 0 8px #c9c2b699}.ca-widget-secret{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#181411e6;border:1px solid #c9c2b652;border-radius:14px;max-width:155px;padding:8px 11px;bottom:84px;left:14px;box-shadow:0 8px 24px #00000080}.ca-widget-secret:hover{border-color:#c9c2b6b3;transform:translateY(-3px)scale(1.03)}.ca-secret-badge{color:#c9c2b6;align-items:center;gap:4px;margin-bottom:4px;font-size:9px;font-weight:700;display:flex}.ca-secret-quote{color:#faf6ee;-webkit-line-clamp:3;text-overflow:ellipsis;-webkit-box-orient:vertical;font-size:10px;font-style:italic;line-height:1.5;display:-webkit-box;overflow:hidden}.ca-secret-quirk{margin-top:5px}.ca-quirk-tag{color:#c9c2b6;background:#c9c2b626;border:1px solid #c9c2b640;border-radius:4px;padding:1px 6px;font-size:8.5px}.ca-widget-cassette{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#1a1512e6;border:1px solid #c9c2b652;border-radius:12px;max-width:155px;padding:8px 10px;bottom:84px;right:14px;box-shadow:0 8px 24px #00000080}.ca-widget-cassette:hover{border-color:#c9c2b6b3;transform:translateY(-3px)scale(1.03)}.ca-cassette-spool{border-bottom:1px solid #c9c2b62e;justify-content:space-between;align-items:center;margin-bottom:5px;padding-bottom:5px;display:flex}.ca-spool-hole{background:#110e0c;border:1px solid #c9c2b673;border-radius:50%;width:9px;height:9px}.ca-spool-tape{background:#c9c2b64d;flex:1;height:2px;margin:0 6px}.ca-cassette-content{flex-direction:column;gap:4px;display:flex}.ca-cassette-row{flex-direction:column;gap:1px;font-size:9.5px;display:flex}.ca-cassette-row .k{font-weight:700}.ca-cassette-row.like .k{color:#c9c2b6}.ca-cassette-row.dislike .k{color:#c48a73}.ca-cassette-row .v{color:#faf6ee;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ca-bottom-dossier{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:30;background:linear-gradient(135deg,#1d1814eb,#120f0df2);border:1px solid #c9c2b647;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;width:100%;max-width:520px;margin-top:10px;padding:10px 14px;display:flex;position:relative;box-shadow:0 10px 30px #0009,inset 0 1px #e8e2d81a}.ca-dossier-main{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;align-items:stretch;margin:0;padding:0;display:flex}.ca-dossier-main:hover .ca-dossier-name{color:#c9c2b6}.ca-dossier-main:focus-visible{outline-offset:3px;outline:2px solid #c9c2b6}.ca-dossier-name-row{align-items:baseline;gap:8px;display:flex}.ca-dossier-name{color:#faf6ee;letter-spacing:.04em;font-size:17px;font-weight:800}.ca-dossier-role{color:#c9c2b6;font-size:11px;font-weight:600}.ca-dossier-gender{color:#ebdac499;font-size:10px}.ca-dossier-sub-row{flex-wrap:wrap;gap:5px;margin-top:4px;font-size:10px;display:flex}.ca-dossier-chip,.ca-dossier-tag{color:#faf6eecc;background:#c9c2b61a;border:1px solid #c9c2b633;border-radius:999px;padding:1px 7px}.ca-dossier-rel{color:#ebdac4a6}.ca-bottom-dossier .ca-dossier-affinity{z-index:auto;box-sizing:border-box;width:154px;min-width:118px;max-width:154px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;color:inherit;font:inherit;text-align:left;cursor:pointer;background:#ffffff06;border:1px solid #c9c2b629;border-radius:10px;flex:0 154px;align-items:center;gap:7px;margin:0;padding:5px 8px;line-height:normal;display:flex;position:relative;inset:auto;transform:none}.ca-bottom-dossier .ca-dossier-affinity:hover{box-shadow:none;background:#c9c2b60e;border-color:#c9c2b657;transform:translateY(-1px)}.ca-bottom-dossier .ca-dossier-affinity:focus-visible{outline-offset:2px;outline:2px solid #e8e2d8b3}.ca-dossier-affinity .ca-aff-seal{color:#c9c2b6d1;width:18px;height:18px;box-shadow:none;background:0 0;border:0;flex:0 0 18px;font-size:12px;display:grid}.ca-dossier-affinity .ca-aff-info{flex:1;gap:4px;min-width:0}.ca-dossier-affinity .ca-aff-row{align-items:center;gap:6px;min-width:0}.ca-dossier-affinity .ca-aff-tier{color:#ebdac4c2;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:9px;overflow:hidden}.ca-dossier-affinity .ca-aff-val{color:#faf6eed1;flex:none;font-size:9px}.ca-dossier-affinity .ca-aff-track{background:#ffffff14;border:0;height:3px;display:block}.ca-dossier-affinity .ca-aff-shine{box-shadow:none;background:linear-gradient(90deg,#a7a092,#c9c2b6);display:block}.ca-dossier-actions{flex:none;align-items:center;gap:6px;display:flex}.ca-btn-dock{cursor:pointer;color:#faf6ee;background:#ffffff0f;border:1px solid #c9c2b64d;border-radius:10px;height:34px;padding:0 11px;font-size:11px;font-weight:750;transition:all .2s;box-shadow:0 2px 8px #00000040}.ca-btn-dock:hover{background:#c9c2b62e;border-color:#c9c2b699}.ca-btn-dock.ca-btn-edit{color:#17110a;background:linear-gradient(135deg,#c9c2b6,#a7a092);border-color:#e8e2d8;font-weight:800;box-shadow:0 3px 12px #c9c2b659}.ca-ai-status-dock{z-index:90;color:#faf6ee;background:#14100df2;border:1px solid #c9c2b6;border-radius:999px;align-items:center;gap:8px;padding:8px 18px;font-size:12px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0009,0 0 20px #c9c2b666}.ca-ai-spinner{border:2px solid #c9c2b64d;border-top-color:#c9c2b6;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite caSpin}@keyframes caSpin{to{transform:rotate(360deg)}}.ca-ai-cancel{color:#c9c2b6;cursor:pointer;background:0 0;border:1px solid #c9c2b666;border-radius:6px;padding:2px 8px;font-size:10px}.ca-empty-collector{text-align:center;background:#1a1512b3;border:1.5px dashed #dfa85b59;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:12px;max-width:380px;margin:40px auto;padding:36px 20px;display:flex;box-shadow:0 12px 32px #0006}.ca-empty-stars{color:#dfa85b;letter-spacing:.2em;font-size:20px}.ca-empty-title{color:#faf6ee;margin:0;font-size:17px;font-weight:800}.ca-empty-desc{color:#ebdac4a6;margin:0;font-size:12px;line-height:1.6}.ca-empty-actions{flex-direction:column;gap:8px;width:100%;margin-top:8px;display:flex}.ca-empty-btn{cursor:pointer;color:#faf6ee;background:#ffffff0d;border:1px solid #dfa85b66;border-radius:12px;width:100%;height:44px;font-size:13px;font-weight:800;transition:all .2s}.ca-empty-btn.primary{color:#17110a;background:linear-gradient(135deg,#dfa85b,#b97d34);border-color:#ffd894;box-shadow:0 4px 16px #dfa85b59}.ca-modal-mask{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#080706bf;justify-content:center;align-items:flex-end;animation:.2s caFadeIn;display:flex;position:fixed;inset:0}@keyframes caFadeIn{0%{opacity:0}to{opacity:1}}.ca-modal-panel{background:linear-gradient(#1b1c1e 0%,#131416 100%);border:1px solid #c9c2b647;border-bottom:none;border-radius:24px 24px 0 0;flex-direction:column;gap:16px;width:100%;max-width:520px;max-height:85vh;padding:18px 20px 28px;animation:.25s caSlideUp;display:flex;overflow-y:auto;box-shadow:0 -10px 40px #000000b3}@keyframes caSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.ca-modal-header{border-bottom:1px solid #c9c2b633;justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.ca-modal-header h4{color:#c9c2b6;letter-spacing:.05em;margin:0;font-size:15px;font-weight:800}.ca-modal-close{color:#faf6ee;cursor:pointer;background:#ffffff0d;border:1px solid #c9c2b640;border-radius:50%;place-items:center;width:30px;height:30px;font-size:16px;display:grid}.ca-modal-body{flex-direction:column;gap:12px;display:flex}.ca-form-row{flex-direction:column;gap:5px;display:flex}.ca-label{color:#c9c2b6e6;font-size:11px;font-weight:700}.ca-input,.ca-textarea,.ca-select{color:#faf6ee;box-sizing:border-box;background:#0d0e10e0;border:1px solid #c9c2b638;border-radius:10px;width:100%;padding:10px 12px;font-size:12px;transition:border-color .2s}.ca-input:focus,.ca-textarea:focus,.ca-select:focus{border-color:#c9c2b6;outline:none;box-shadow:0 0 10px #c9c2b633}.ca-modal-footer{gap:10px;margin-top:8px;display:flex}.ca-modal-btn{cursor:pointer;color:#faf6ee;background:#ffffff0f;border:1px solid #c9c2b64d;border-radius:12px;flex:1;height:44px;font-size:13px;font-weight:800}.ca-modal-btn.confirm{color:#171411;background:linear-gradient(135deg,#c9c2b6,#a7a092);border-color:#e8e2d8;box-shadow:0 4px 16px #c9c2b63d}.ca-affinity-preview{flex-direction:column;align-items:center;gap:4px;display:flex}.ca-aff-big-heart{color:#c9c2b6;filter:drop-shadow(0 0 10px #c9c2b659);font-size:32px}.ca-aff-big-num{color:#faf6ee;font-size:26px;font-weight:900}.ca-aff-big-tier{color:#c9c2b6;background:#c9c2b61f;border:1px solid #c9c2b647;border-radius:999px;padding:2px 10px;font-size:12px}.ca-range-slider{accent-color:#c9c2b6;width:100%}.ca-affinity-hint{color:#e8e2d89e;margin:8px 0 0;font-size:11px;line-height:1.5}.ca-photo-desc{color:#e8e2d8a6;margin:0;font-size:11px}.ca-photo-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;display:grid}.ca-photo-card{background:#0d0e10e0;border:1px solid #c9c2b633;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:10px;display:flex}.ca-photo-card-title{color:#c9c2b6;text-align:center;flex-direction:column;align-items:center;gap:2px;font-size:11px;font-weight:700;line-height:1.2;display:flex}.ca-photo-card-size{color:#e8e2d894;white-space:nowrap;max-width:100%;font-size:8px;font-weight:500}.ca-photo-card-preview{background:#0006;border-radius:8px;place-items:center;width:100%;height:120px;display:grid;overflow:hidden}.ca-photo-card-preview.square{width:90px;height:90px}.ca-photo-card-preview img{object-fit:cover;width:100%;height:100%}.ca-photo-card-preview-polaroid .avatar-img,.ca-polaroid-photo .avatar-img{border-radius:0}.ca-photo-card-empty{color:#e8e2d86b;font-size:10px}.ca-photo-card-btn{cursor:pointer;color:#faf6ee;background:#c9c2b61a;border:1px solid #c9c2b64d;border-radius:8px;width:100%;height:32px;font-size:10.5px;font-weight:750;transition:all .2s}.ca-photo-card-btn:hover{background:#c9c2b633;border-color:#c9c2b6}.ca-modal-panel.ca-photo-panel{scrollbar-width:none;-ms-overflow-style:none;max-width:580px}.ca-modal-panel.ca-photo-panel::-webkit-scrollbar{width:0;height:0;display:none}.ca-photo-panel .ca-photo-prompt-box .ca-textarea::-webkit-scrollbar{width:0;height:0;display:none}.ca-photo-panel .ca-photo-prompt-box .ca-textarea{scrollbar-width:none;-ms-overflow-style:none}.ca-photo-card-btns{gap:6px;width:100%;margin-top:auto;display:flex}.ca-photo-card-clear{cursor:pointer;color:#faf6eeb3;background:#ffffff0d;border:1px solid #c9c2b633;border-radius:8px;height:32px;padding:0 10px;font-size:10.5px;font-weight:700;transition:all .2s}.ca-photo-card-clear:hover{color:#f59e94;background:#ff504626;border-color:#ff645a66}.ca-photo-lock-row{background:#0d0e10b8;border:1px solid #c9c2b633;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;display:flex;box-shadow:inset 0 2px 8px #00000073}.ca-photo-lock-info{flex-direction:column;gap:3px;display:flex}.ca-photo-lock-title-wrap{align-items:center;gap:8px;display:flex}.ca-photo-lock-title{color:#c9c2b6;letter-spacing:.04em;font-size:13px;font-weight:800}.ca-photo-lock-tag{color:#e8e2d8;letter-spacing:.06em;background:#c9c2b61f;border:1px solid #c9c2b647;border-radius:3px;padding:1px 6px;font-size:9px}.ca-photo-lock-desc{color:#e8e2d8ad;font-size:11px;line-height:1.4}.ca-photo-toggle{cursor:pointer;background:#ffffff24;border:1px solid #ffffff14;border-radius:999px;width:44px;min-width:44px;height:24px;transition:background .25s,border-color .25s;position:relative}.ca-photo-toggle.is-on{background:linear-gradient(135deg,#c9c2b6,#a7a092);border-color:#e8e2d8;box-shadow:0 0 12px #c9c2b647}.ca-photo-toggle-knob{background:#faf6ee;border-radius:50%;width:18px;height:18px;transition:left .25s;position:absolute;top:2px;left:2px;box-shadow:0 1px 4px #0006}.ca-photo-toggle.is-on .ca-photo-toggle-knob{left:22px}.ca-photo-prompt-box{background:#0d0e10b8;border:1px solid #c9c2b633;border-radius:12px;flex-direction:column;gap:10px;padding:14px;display:flex;box-shadow:inset 0 2px 8px #00000073}.ca-photo-prompt-header{flex-direction:column;gap:3px;display:flex}.ca-photo-prompt-hint{color:#e8e2d899;font-size:10.5px}.ca-photo-chips{flex-wrap:wrap;gap:6px;display:flex}.ca-photo-chip{color:#e8e2d8;cursor:pointer;background:#c9c2b61a;border:1px solid #c9c2b63d;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:600;transition:all .2s}.ca-photo-chip:hover{color:#fff;background:#c9c2b633;border-color:#c9c2b6;transform:translateY(-1px)}.ca-ai-box-tip{color:#e8e2d8a6;margin:0;font-size:11px}.ca-ai-actions-list{flex-direction:column;gap:8px;display:flex}.ca-ai-action-item{color:#faf6ee;cursor:pointer;text-align:left;background:#0d0e10e0;border:1px solid #c9c2b638;border-radius:12px;align-items:center;gap:12px;padding:12px;transition:all .2s;display:flex}.ca-ai-action-item:hover{background:#1f2022f5;border-color:#c9c2b6;transform:translateY(-1px)}.ca-ai-action-icon{font-size:22px}.ca-ai-action-copy{flex-direction:column;gap:2px;display:flex}.ca-ai-action-copy strong{color:#c9c2b6;font-size:12.5px}.ca-ai-action-copy span{color:#e8e2d8a6;font-size:10.5px}.ca-rel-badge-pill{color:#ffd894;letter-spacing:.04em;background:#dfa85b24;border:1px solid #dfa85b59;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:11px;font-weight:700;display:inline-flex}.ca-rel-badge-star{color:#dfa85b;font-size:10px;animation:2.5s ease-in-out infinite ca-star-twinkle}@keyframes ca-star-twinkle{0%,to{opacity:.4;transform:scale(.9)}50%{opacity:1;transform:scale(1.15)}}.ca-page .relations-wrap.ca-rel-matrix{max-width:640px;padding:14px 16px calc(42px + var(--safe-area-inset-bottom,0px));flex-direction:column;gap:20px;margin:0 auto;display:flex}.rel-cosmic-header{background:linear-gradient(135deg,#201914d9,#100c0af2);border:1px solid #dfa85b47;border-radius:20px;flex-direction:column;gap:12px;padding:16px 18px;display:flex;box-shadow:0 8px 24px #0006,inset 0 1px #ffebcd14}.rel-cosmic-title-wrap{flex-direction:column;gap:4px;display:flex}.rel-cosmic-title{color:#dfa85b;letter-spacing:.05em;align-items:center;gap:8px;font-size:15px;font-weight:850;display:flex}.rel-title-glyph{color:#ffd894;font-size:13px}.rel-cosmic-sub{color:#ebdac4ad;margin:0;font-size:11px;line-height:1.5}.rel-cosmic-stats{flex-wrap:wrap;gap:10px;display:flex}.rel-stat-pill{background:#0d0a08a6;border:1px solid #dfa85b33;border-radius:999px;align-items:center;gap:8px;padding:5px 12px;display:flex}.rel-stat-label{color:#ebdac499;font-size:10.5px}.rel-stat-val{color:#faf6ee;font-size:12px;font-weight:800}.rel-stat-val.highlight{color:#ffd894}.rel-avatar-frame{cursor:pointer;background:#14100d;border:1.5px solid #dfa85b59;border-radius:50%;flex-shrink:0;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 2px 8px #0006}.rel-avatar-frame:hover{border-color:#dfa85b;transform:scale(1.05);box-shadow:0 0 12px #dfa85b59}.rel-avatar-frame.is-char{border-color:#ffd894;box-shadow:0 0 14px #ffd89459}.rel-avatar-frame.is-bond{border-color:#dfa85b}.rel-avatar-frame.is-selected{border-color:#ffd894;box-shadow:0 0 16px #ffd894a6}.rel-avatar-img{object-fit:cover;width:100%;height:100%;display:block}.rel-avatar-fallback{color:#ffd894;background:radial-gradient(circle,#2b221a 0%,#15110e 100%);place-items:center;width:100%;height:100%;font-size:16px;font-weight:700;display:grid}.rel-frame-tag{background:#120e0c;border:1px solid #dfa85b80;border-radius:50%;padding:2px;font-size:10px;line-height:1;position:absolute;bottom:-1px;right:-1px}.rel-frame-tag.crown{color:#ffd894}.rel-frame-tag.heart{color:#f59e94}.rel-astrolabe-card{background:linear-gradient(145deg,#1c1612f2,#0f0c0afa);border:1px solid #dfa85b47;border-radius:22px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 16px 40px #0000008c,inset 0 1px #ffebcd14}.rel-chart-bar{border-bottom:1px solid #dfa85b29;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.rel-chart-legend{align-items:center;gap:12px;display:flex}.rel-legend-item{color:#ebdac4a6;align-items:center;gap:5px;font-size:10.5px;display:flex}.rel-dot{border-radius:50%;width:7px;height:7px}.rel-dot.char{background:#ffd894;box-shadow:0 0 6px #ffd89499}.rel-dot.bond{background:#dfa85b}.rel-dot.npc{background:#dfa85b59}.rel-filter-pills{flex-wrap:wrap;gap:6px;display:flex}.rel-filter-pill{cursor:pointer;color:#ebdac4b3;background:#ffffff0a;border:1px solid #dfa85b38;border-radius:999px;padding:4px 10px;font-size:10.5px;font-weight:700;transition:all .2s}.rel-filter-pill:hover{color:#ffd894;background:#dfa85b26;border-color:#dfa85b}.rel-filter-pill.is-active{color:#17110a;background:linear-gradient(135deg,#dfa85b,#b97d34);border-color:#ffd894;box-shadow:0 2px 8px #dfa85b59}.pill-count{opacity:.85;margin-left:2px;font-size:9.5px}.rel-astrolabe-viewport{-webkit-user-select:none;user-select:none;background:radial-gradient(#1e171280 0%,#0a0807f2 100%);width:100%;padding:10px 10px 4px;position:relative}.rel-constellation-svg{width:100%;height:auto;display:block;overflow:visible}.rel-orbit-ring{fill:none;stroke:#dfa85b24;stroke-dasharray:4 5}.rel-orbit-ring.outer{stroke-width:1.2px;stroke:#dfa85b2e}.rel-orbit-ring.mid{stroke-width:1px;stroke:#dfa85b1f}.rel-orbit-ring.inner{stroke-width:1.5px;stroke:#dfa85b40}.rel-orbit-axis{stroke:#dfa85b12;stroke-width:1px;stroke-dasharray:2 4}.rel-edge-group{cursor:pointer;transition:opacity .3s}.rel-edge-group.is-dimmed{opacity:.15}.rel-edge-group.is-focused,.rel-edge-group.is-hovered{opacity:1}.rel-edge-pill-bg{fill:#120e0beb;stroke:#dfa85b73;stroke-width:1px;filter:drop-shadow(0 2px 4px #00000080);transition:stroke .2s,fill .2s}.rel-edge-group:hover .rel-edge-pill-bg,.rel-edge-group.is-focused .rel-edge-pill-bg{stroke:#ffd894;fill:#1c140ff5}.rel-edge-pill-text{fill:#faf6ee;letter-spacing:.03em;font-size:8.5px;font-weight:750}.rel-node-group{cursor:pointer;transition:transform .25s cubic-bezier(.2,0,0,1)}.rel-node-group:hover{transform:translateY(-2px)}.rel-node-ripple{animation:2s ease-out infinite ca-node-pulse}@keyframes ca-node-pulse{0%{opacity:.9;transform:scale(.9)}to{opacity:0;transform:scale(1.25)}}.rel-node-avatar-container{background:#14100d;border-radius:50%;position:relative;overflow:hidden}.rel-node-avatar-img{object-fit:cover;width:100%;height:100%;display:block}.rel-node-avatar-fallback{color:#ffd894;background:radial-gradient(circle,#2a2018 0%,#120e0c 100%);place-items:center;width:100%;height:100%;font-size:15px;font-weight:800;display:grid}.rel-node-crown{animation:3s ease-in-out infinite ca-crown-bob}@keyframes ca-crown-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.rel-name-pill-bg{fill:#0e0b09e0;stroke:#dfa85b59;stroke-width:1px;filter:drop-shadow(0 2px 4px #00000080)}.rel-name-pill-text{fill:#faf6ee;letter-spacing:.02em;font-size:9px;font-weight:700}.rel-empty-guide{color:#ebdac4b3;background:#0e0b0999;border-top:1px dashed #dfa85b33;justify-content:center;align-items:center;gap:10px;padding:16px 20px;font-size:11px;line-height:1.5;display:flex}.rel-empty-icon{color:#dfa85b;font-size:14px}.rel-focus-inspector{background:linear-gradient(135deg,#1e1813e6,#120e0cf2);border-top:1px solid #dfa85b40;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:14px 18px;display:flex}.rel-focus-left{align-items:center;gap:12px;display:flex}.rel-focus-info{flex-direction:column;gap:2px;display:flex}.rel-focus-name-row{align-items:center;gap:8px;display:flex}.rel-focus-name{color:#ffd894;font-size:14px;font-weight:850}.rel-focus-role{color:#dfa85b;background:#dfa85b26;border:1px solid #dfa85b47;border-radius:4px;padding:1px 7px;font-size:10px}.rel-focus-desc{color:#ebdac4b3;font-size:11px}.rel-focus-desc strong{color:#ffd894}.rel-focus-actions{gap:8px;display:flex}.rel-focus-btn{cursor:pointer;border-radius:8px;align-items:center;gap:6px;height:32px;padding:0 14px;font-size:11px;font-weight:750;transition:all .2s;display:inline-flex}.rel-focus-btn.primary{color:#17110a;background:linear-gradient(135deg,#dfa85b,#b97d34);border:1px solid #ffd894}.rel-focus-btn.primary:hover{transform:translateY(-1px);box-shadow:0 0 12px #dfa85b66}.rel-focus-btn.secondary{color:#faf6eecc;background:#ffffff0d;border:1px solid #dfa85b40}.rel-focus-btn.secondary:hover{color:#faf6ee;background:#dfa85b26}.rel-create-card,.rel-roster-card{background:linear-gradient(145deg,#1c1612f2,#0f0c0afa);border:1px solid #dfa85b47;border-radius:22px;flex-direction:column;gap:16px;padding:20px 22px;display:flex;box-shadow:0 16px 40px #0000008c,inset 0 1px #ffebcd14}.rel-card-header{border-bottom:1px solid #dfa85b29;flex-direction:column;gap:4px;padding-bottom:12px;display:flex}.rel-card-title-group{align-items:center;gap:10px;display:flex}.rel-card-title{color:#dfa85b;letter-spacing:.04em;font-size:14.5px;font-weight:850}.rel-card-tag{color:#ffd894;letter-spacing:.06em;background:#dfa85b26;border:1px solid #dfa85b4d;border-radius:4px;padding:1px 7px;font-size:9.5px}.rel-card-sub{color:#ebdac4a6;font-size:11px;line-height:1.4}.rel-crucible-stage{background:#0d0a08a6;border:1px solid #dfa85b33;border-radius:16px;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;padding:14px;display:grid}.rel-crucible-stage.mini{margin-bottom:10px;padding:10px 12px}.rel-person-pod{align-items:center;gap:12px;display:flex}.rel-pod-picker-wrap{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.rel-pod-label{color:#dfa85bcc;text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:700}.rel-select{color:#faf6ee;cursor:pointer;background:#120e0bf2;border:1px solid #dfa85b4d;border-radius:8px;outline:none;width:100%;height:34px;padding:0 8px;font-size:11.5px;transition:border-color .2s}.rel-select:focus{border-color:#ffd894;box-shadow:0 0 10px #dfa85b4d}.rel-swap-btn{color:#ffd894;cursor:pointer;white-space:nowrap;background:#dfa85b1f;border:1px solid #dfa85b59;border-radius:999px;height:38px;padding:0 12px;font-size:11px;font-weight:800;transition:all .2s}.rel-swap-btn:hover{background:#dfa85b40;border-color:#ffd894;transform:scale(1.05)}.rel-swap-mini{color:#dfa85b;padding:0 4px;font-size:11px}.rel-error-tip{color:#f59e94;background:#f59e941a;border:1px solid #f59e9440;border-radius:8px;padding:8px 12px;font-size:11px}.rel-preset-box{flex-direction:column;gap:8px;display:flex}.rel-field-label{color:#dfa85b;letter-spacing:.03em;font-size:11px;font-weight:750}.rel-preset-chips{flex-wrap:wrap;gap:7px;display:flex}.rel-preset-chip{color:#ffd894;cursor:pointer;background:#dfa85b1a;border:1px solid #dfa85b40;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:600;transition:all .2s}.rel-preset-chip:hover{background:#dfa85b38;border-color:#dfa85b;transform:translateY(-1px)}.rel-preset-chip.is-selected{color:#17110a;background:linear-gradient(135deg,#dfa85b,#b97d34);border-color:#ffd894;font-weight:800;box-shadow:0 2px 8px #dfa85b59}.rel-input-row{flex-direction:column;gap:6px;display:flex}.rel-form-input{color:#faf6ee;background:#0e0b09d9;border:1px solid #dfa85b47;border-radius:10px;outline:none;width:100%;height:38px;padding:0 12px;font-size:12px;transition:border-color .2s}.rel-form-input:focus{border-color:#ffd894;box-shadow:0 0 10px #dfa85b4d}.rel-affinity-row{background:#0d0a08a6;border:1px solid #dfa85b33;border-radius:14px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.rel-affinity-header{justify-content:space-between;align-items:center;display:flex}.rel-affinity-badge{align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.rel-aff-desc{opacity:.85;font-size:10.5px;font-weight:600}.rel-slider{accent-color:#dfa85b;cursor:pointer;background:#ffffff1f;border-radius:3px;outline:none;width:100%;height:6px}.rel-submit-btn{color:#17110a;cursor:pointer;letter-spacing:.05em;background:linear-gradient(135deg,#dfa85b,#b97d34);border:1px solid #ffd894;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;height:42px;font-size:13px;font-weight:850;transition:all .25s;display:flex;box-shadow:0 4px 16px #dfa85b59}.rel-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#f0b768,#c9883d);transform:translateY(-1px);box-shadow:0 6px 20px #dfa85b80}.rel-submit-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.rel-btn-star{color:#fff;font-size:14px}.rel-roster-empty{color:#ebdac48c;flex-direction:column;align-items:center;gap:8px;padding:30px 20px;font-size:12px;display:flex}.empty-glyph{color:#dfa85b;font-size:20px}.rel-cards-grid{flex-direction:column;gap:12px;display:flex}.rel-bond-item{background:#0e0b09c7;border:1px solid #dfa85b38;border-radius:16px;transition:border-color .2s,box-shadow .2s;overflow:hidden}.rel-bond-item:hover{border-color:#dfa85b73;box-shadow:0 4px 16px #00000059}.rel-bond-item.is-editing{border-color:#dfa85b;box-shadow:0 0 16px #dfa85b40}.rel-bond-summary{grid-template-columns:1fr auto 1fr auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.rel-side-person{align-items:center;gap:10px;min-width:0;display:flex}.rel-side-person.right{justify-content:flex-end}.rel-side-text{flex-direction:column;gap:2px;min-width:0;display:flex}.rel-side-text.right-align{align-items:flex-end}.rel-side-name{color:#faf6ee;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:800;overflow:hidden}.rel-side-role{color:#ebdac48c;white-space:nowrap;font-size:9.5px}.rel-bond-bridge{flex-direction:column;align-items:center;gap:4px;padding:0 6px;display:flex}.rel-bridge-pill{background:#dfa85b26;border:1px solid #dfa85b59;border-radius:999px;padding:2px 10px;box-shadow:0 2px 6px #0000004d}.rel-pill-label{color:#ffd894;white-space:nowrap;font-size:10.5px;font-weight:800}.rel-bridge-line{background:linear-gradient(90deg,#0000,#dfa85b,#0000);width:60px;height:1px;position:relative}.rel-line-dot{background:#ffd894;border-radius:50%;width:5px;height:5px;position:absolute;top:-2px;left:50%;transform:translate(-50%);box-shadow:0 0 6px #ffd894cc}.rel-bridge-aff{align-items:center;gap:4px;font-size:10px;font-weight:750;display:flex}.tier-badge{background:#dfa85b1f;border-radius:3px;padding:1px 4px;font-size:8.5px}.rel-card-actions{align-items:center;gap:6px;display:flex}.rel-card-action-btn{cursor:pointer;border-radius:6px;height:28px;padding:0 10px;font-size:10.5px;font-weight:700;transition:all .2s}.rel-card-action-btn.edit{color:#dfa85b;background:#dfa85b1f;border:1px solid #dfa85b4d}.rel-card-action-btn.edit:hover{color:#ffd894;background:#dfa85b40}.rel-card-action-btn.del{color:#ebdac499;background:#ffffff0d;border:1px solid #dfa85b33;padding:0 8px}.rel-card-action-btn.del:hover{color:#f59e94;background:#f59e942e;border-color:#f59e9466}.rel-inline-editor{background:#140f0cf2;border-top:1px solid #dfa85b40;flex-direction:column;gap:12px;padding:14px;display:flex}.rel-edit-footer{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.rel-edit-cancel{color:#faf6eeb3;cursor:pointer;background:#ffffff0d;border:1px solid #dfa85b40;border-radius:8px;height:32px;padding:0 14px;font-size:11px;font-weight:700}.rel-edit-save{color:#17110a;cursor:pointer;background:linear-gradient(135deg,#dfa85b,#b97d34);border:1px solid #ffd894;border-radius:8px;height:32px;padding:0 16px;font-size:11px;font-weight:800}.rel-edit-save:disabled{opacity:.5;cursor:not-allowed}.ca-page .hero-edit{color:#faf6ee!important}.ca-page .dossier-card{background:#1a1512e6!important;border:1px solid #c9c2b640!important}.ca-page .dossier-card-title-zh,.ca-page .form-field-label{color:#c9c2b6!important}.ca-page .form-input,.ca-page .form-textarea,.ca-page .form-select{color:#faf6ee!important;background:#0e0b09d9!important;border:1px solid #c9c2b63d!important}.ca-page .form-actions{background:#100d0bf5!important;border-top:1px solid #c9c2b633!important}.ca-page .form-save{font-weight:800;color:#17110a!important;background:linear-gradient(135deg,#c9c2b6,#a7a092)!important;border:1px solid #e8e2d8!important}.ca-page .form-cancel{color:#faf6ee!important;background:#ffffff0d!important;border:1px solid #c9c2b640!important}.ca-page .preset-delete-btn{color:#f59e94!important;background:#b4322826!important;border:1px solid #c9c2b666!important}.ca-page .ca-character-editor-body{background:0 0!important}.ca-page .hero-edit.ca-npc-detail-edit{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#faf6ee!important;background:0 0!important}.ca-page .ca-npc-detail-edit .dossier-card{border-radius:12px;background:linear-gradient(145deg,#1c1713f5,#120f0dfa)!important;border-color:#c9c2b647!important;box-shadow:0 10px 26px #00000040!important}.ca-page .ca-npc-detail-edit .dossier-card-header{border-bottom-color:#c9c2b633!important}.ca-page .ca-npc-detail-edit .dossier-card-tag{color:#ebdac480!important}.ca-page .ca-npc-detail-edit .rel-form-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px;display:grid}.ca-page .ca-npc-detail-edit .char-tab{box-sizing:border-box;color:#faf6eec7;white-space:nowrap;background:#ffffff09;border:1px solid #c9c2b642;border-radius:8px;flex-direction:row;justify-content:center;align-items:center;gap:6px;min-width:0;height:33px;min-height:33px;padding:8px 10px;font-size:11px;line-height:1.2;display:flex}.ca-page .ca-npc-detail-edit .char-tab span:first-child{font-size:11px;line-height:1.2}body .module-app.ca-page .ca-npc-detail-edit .char-tab.char-tab-active{color:#17110a!important;background:linear-gradient(135deg,#c9c2b6,#a7a092)!important;border-color:#e8e2d8!important;box-shadow:0 4px 12px #c9c2b62e!important}body .module-app.ca-page .ca-npc-detail-edit .char-tab.char-tab-active span,body .module-app.ca-page .ca-npc-detail-edit .char-tab.char-tab-active:before{color:#17110a!important}body .module-app.ca-page .ca-npc-detail-edit .char-tab.char-tab-active:before{content:none!important}.ca-page .ca-npc-detail-edit .form-input:hover,.ca-page .ca-npc-detail-edit .form-textarea:hover,.ca-page .ca-npc-detail-edit .form-select:hover{border-color:#c9c2b68c!important}.ca-page .ca-npc-detail-edit .form-input:focus,.ca-page .ca-npc-detail-edit .form-textarea:focus,.ca-page .ca-npc-detail-edit .form-select:focus{outline:none;border-color:#c9c2b6!important;box-shadow:0 0 0 2px #c9c2b62e!important}.ca-page .ca-npc-detail-edit .form-input::placeholder,.ca-page .ca-npc-detail-edit .form-textarea::placeholder{color:#ebdac461!important}.ca-page .ca-npc-detail-edit .form-select option{color:#faf6ee;background:#171411}.ca-page .ca-npc-detail-edit .persona-expand-trigger{border-radius:7px;color:#e8e2d8!important;background:#c9c2b61f!important;border-color:#c9c2b673!important}.ca-page .ca-npc-detail-edit .persona-expand-trigger:hover{background:#c9c2b638!important}.ca-page .ca-npc-detail-edit .persona-expand-mask{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#050403c7!important}.ca-page .ca-npc-detail-edit .persona-expand-panel{border-radius:14px;background:linear-gradient(160deg,#201a15,#100e0c)!important;border-color:#c9c2b661!important;box-shadow:0 20px 60px #000000b8!important}.ca-page .ca-npc-detail-edit .persona-expand-header h3{color:#e8e2d8!important}.ca-page .ca-npc-detail-edit .persona-expand-header p,.ca-page .ca-npc-detail-edit .persona-expand-footer{color:#ebdac49e!important}.ca-page .ca-npc-detail-edit .persona-expand-close{color:#faf6ee!important;background:#ffffff0f!important;border-color:#c9c2b64d!important}.ca-pure-persona-banner{color:#faf6eed9;background:#dfa85b14;border:1px solid #dfa85b40;border-radius:10px;align-items:flex-start;gap:8px;padding:9px 12px;font-size:11px;line-height:1.5;display:flex}.ca-pure-persona-badge{color:#dfa85b;background:#dfa85b33;border:1px solid #dfa85b66;border-radius:4px;flex-shrink:0;padding:1px 6px;font-size:10px;font-weight:800}.ca-form-grid-2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ca-form-label-row{justify-content:space-between;align-items:center;display:flex}.ca-form-counter{color:#dfa85bb3;font-size:10px}.ca-pure-persona-subhint{color:#ebdac48c;margin-top:3px;font-size:10px;line-height:1.4}.ca-detail-fullscreen-mask{z-index:1200;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-sizing:border-box;background:#060504e0;justify-content:center;align-items:center;padding:20px;animation:.25s caFadeIn;display:flex;position:fixed;inset:0}@media (width<=768px){.ca-detail-fullscreen-mask{padding:0}}.ca-detail-fullscreen-panel{background:linear-gradient(#17130f 0%,#0e0c0a 100%);border:1px solid #c9c2b633;border-radius:20px;flex-direction:column;width:100%;max-width:1180px;height:92vh;max-height:92vh;animation:.25s caZoomIn;display:flex;overflow:hidden;box-shadow:0 20px 60px #000c,0 0 24px #c9c2b609}@keyframes caZoomIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media (width<=768px){.ca-detail-fullscreen-panel{border:none;border-radius:0;height:100vh;max-height:100vh}}.ca-detail-fullscreen-header{background:#16120ef2;border-bottom:1px solid #c9c2b624;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex}.ca-detail-header-left{align-items:center;gap:12px;display:flex}.ca-detail-header-title{color:#c9c2b6;letter-spacing:.06em;align-items:center;gap:8px;margin:0;font-size:16px;font-weight:800;display:flex}.ca-detail-header-tag{color:#e8e2d8;letter-spacing:.08em;background:#c9c2b614;border:1px solid #c9c2b638;border-radius:4px;padding:2px 8px;font-size:10px}.ca-detail-header-banner{color:#faf6eed1;background:#c9c2b60a;border:1px dashed #c9c2b633;border-radius:8px;flex:1;max-width:620px;padding:6px 12px;font-size:11px;line-height:1.45}@media (width<=960px){.ca-detail-header-banner{display:none}}.ca-detail-fullscreen-body{flex:1;padding:24px;overflow-y:auto}.ca-detail-fullscreen-panel .ca-label{color:#c9c2b6}.ca-detail-fullscreen-panel .ca-input,.ca-detail-fullscreen-panel .ca-textarea,.ca-detail-fullscreen-panel .ca-select{border-color:#c9c2b62e}.ca-detail-fullscreen-panel .ca-input:focus,.ca-detail-fullscreen-panel .ca-textarea:focus,.ca-detail-fullscreen-panel .ca-select:focus{border-color:#c9c2b6;box-shadow:0 0 8px #c9c2b624}.ca-detail-fullscreen-panel .ca-form-counter{color:#c9c2b6ad}@media (width<=600px){.ca-detail-fullscreen-body{padding:14px}}.ca-detail-columns-layout{grid-template-columns:1fr 1.15fr;align-items:start;gap:20px;display:grid}@media (width<=860px){.ca-detail-columns-layout{grid-template-columns:1fr;gap:16px}}.ca-detail-col-left,.ca-detail-col-right{flex-direction:column;gap:16px;display:flex}.ca-dossier-card{background:#16110ed9;border:1px solid #c9c2b62e;border-radius:14px;transition:border-color .2s;overflow:hidden;box-shadow:0 4px 16px #0006}.ca-dossier-card:hover{border-color:#c9c2b64d}.ca-dossier-card.featured{background:linear-gradient(#1c1611eb 0%,#140f0cf2 100%);border:1.5px solid #c9c2b64d;box-shadow:0 6px 24px #00000080,0 0 16px #c9c2b60a}.ca-dossier-header{background:#ffffff05;border-bottom:1px solid #c9c2b61f;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.ca-dossier-title{color:#c9c2b6;letter-spacing:.04em;align-items:center;gap:6px;font-size:13px;font-weight:800;display:flex}.ca-dossier-tag{color:#c9c2b6;letter-spacing:.06em;background:#c9c2b614;border-radius:3px;padding:2px 6px;font-size:9px}.ca-dossier-content{flex-direction:column;gap:14px;padding:16px;display:flex}.ca-role-kind-tabs{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ca-role-kind-tab{color:#faf6eeb3;cursor:pointer;text-align:center;background:#ffffff0a;border:1px solid #c9c2b629;border-radius:8px;padding:8px 10px;font-size:11px;transition:all .2s}.ca-role-kind-tab.active{color:#e8e2d8;background:#c9c2b61a;border-color:#c9c2b6;font-weight:700;box-shadow:0 0 8px #c9c2b61a}.ca-persona-notice{color:#ebdac4b8;background:#c9c2b60a;border-left:3px solid #c9c2b6;border-radius:8px;margin:0;padding:8px 12px;font-size:11px;line-height:1.55}.ca-persona-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ca-persona-tool-btn{color:#e8e2d8;cursor:pointer;box-sizing:border-box;background:#c9c2b614;border:1px solid #c9c2b64d;border-radius:7px;justify-content:center;align-items:center;min-height:32px;padding:4px 10px;font-size:10.5px;font-weight:750;display:inline-flex}.ca-persona-tool-btn:hover:not(:disabled){background:#c9c2b624;border-color:#c9c2b6}.ca-persona-tool-btn:disabled{opacity:.58;cursor:wait}.ca-persona-tool-status{color:#e3d6b7b8;margin:0;font-size:10px;line-height:1.45}.ca-persona-expand-btn{color:#c9c2b6;cursor:pointer;background:#c9c2b61a;border:1px solid #c9c2b63d;border-radius:6px;padding:3px 10px;font-size:10px;font-weight:700;transition:all .2s}.ca-persona-expand-btn:hover{color:#fff;background:#c9c2b626}.ca-detail-fullscreen-panel .mem-link-box,.ca-page .mem-link-box,.ca-dossier-card .mem-link-box,.ca-npc-detail-edit .mem-link-box{box-sizing:border-box!important;background:#0d0a08a6!important;border:1px solid #c9c2b624!important;border-radius:12px!important;flex-direction:column!important;gap:10px!important;padding:12px!important;display:flex!important;box-shadow:inset 0 2px 8px #00000073!important}.ca-detail-fullscreen-panel .mem-link-row,.ca-page .mem-link-row,.ca-dossier-card .mem-link-row,.ca-npc-detail-edit .mem-link-row{cursor:pointer!important;box-sizing:border-box!important;background:#16110ed9!important;border:1px solid #c9c2b629!important;border-radius:10px!important;justify-content:space-between!important;align-items:center!important;padding:10px 14px!important;transition:all .2s!important;display:flex!important}.ca-detail-fullscreen-panel .mem-link-row:hover,.ca-page .mem-link-row:hover,.ca-dossier-card .mem-link-row:hover,.ca-npc-detail-edit .mem-link-row:hover{background:#1c1612f2!important;border-color:#c9c2b652!important}.ca-detail-fullscreen-panel .mem-link-row.ml-on,.ca-page .mem-link-row.ml-on,.ca-dossier-card .mem-link-row.ml-on,.ca-npc-detail-edit .mem-link-row.ml-on{background:#c9c2b61a!important;border-color:#c9c2b6!important;box-shadow:0 0 8px #c9c2b61a!important}.ca-detail-fullscreen-panel .ml-dir,.ca-page .ml-dir,.ca-dossier-card .ml-dir,.ca-npc-detail-edit .ml-dir{color:#faf6eec7!important;font-size:11.5px!important;font-weight:700!important;transition:color .2s!important}.ca-detail-fullscreen-panel .ml-on .ml-dir,.ca-page .ml-on .ml-dir,.ca-dossier-card .ml-on .ml-dir,.ca-npc-detail-edit .ml-on .ml-dir{color:#e8e2d8!important}.ca-detail-fullscreen-panel .ml-switch,.ca-page .ml-switch,.ca-dossier-card .ml-switch,.ca-npc-detail-edit .ml-switch{background:#ffffff24!important;border:1px solid #ffffff14!important;border-radius:999px!important;flex-shrink:0!important;width:38px!important;height:20px!important;transition:background .25s,border-color .25s!important;position:relative!important}.ca-detail-fullscreen-panel .ml-on .ml-switch,.ca-page .ml-on .ml-switch,.ca-dossier-card .ml-on .ml-switch,.ca-npc-detail-edit .ml-on .ml-switch{background:linear-gradient(135deg,#c9c2b6,#a7a092)!important;border-color:#e8e2d8!important;box-shadow:0 0 8px #c9c2b633!important}.ca-detail-fullscreen-panel .ml-switch i,.ca-page .ml-switch i,.ca-dossier-card .ml-switch i,.ca-npc-detail-edit .ml-switch i{background:#faf6ee!important;border-radius:50%!important;width:14px!important;height:14px!important;transition:left .25s!important;position:absolute!important;top:2px!important;left:2px!important;box-shadow:0 1px 4px #0006!important}.ca-detail-fullscreen-panel .ml-on .ml-switch i,.ca-page .ml-on .ml-switch i,.ca-dossier-card .ml-on .ml-switch i,.ca-npc-detail-edit .ml-on .ml-switch i{background:#faf6ee!important;left:20px!important}.ca-detail-fullscreen-footer{background:#120e0bfa;border-top:1px solid #c9c2b624;flex-shrink:0;justify-content:flex-end;align-items:center;gap:12px;padding:14px 24px;display:flex}.ca-detail-footer-btn{cursor:pointer;border-radius:10px;height:42px;padding:0 24px;font-size:13px;font-weight:700;transition:all .2s}.ca-detail-footer-btn.cancel{color:#faf6ee;background:#ffffff0d;border:1px solid #c9c2b62e}.ca-detail-footer-btn.cancel:hover{background:#ffffff17}.ca-detail-footer-btn.delete{color:#e9a5a5;background:#7d252529;border:1px solid #d669696b;margin-right:auto}.ca-detail-footer-btn.delete:hover{background:#7d25254d;border-color:#d66969a8}.ca-detail-footer-btn.save{color:#16110a;background:linear-gradient(135deg,#c9c2b6 0%,#a7a092 100%);border:1px solid #e8e2d8;font-weight:800;box-shadow:0 3px 12px #c9c2b62e}.ca-detail-footer-btn.save:hover{transform:translateY(-1px);box-shadow:0 3px 14px #c9c2b642}.bond-voice-settings{flex-direction:column;gap:12px;display:flex}.bond-voice-preview{flex:none;width:100%}.bond-voice-preview:disabled{opacity:.5;cursor:not-allowed}.bond-voice-audio{width:100%;height:40px;display:block}}@media (width<=620px){.module-app.ca-page .ca-wrap{flex-direction:column;min-height:0;padding-bottom:calc(6px + env(safe-area-inset-bottom,0px))!important;display:flex!important;overflow:hidden!important}.module-app.ca-page .ca-board-controls{gap:6px;padding:8px 12px 4px}.module-app.ca-page .ca-world-picker{padding:0!important}.module-app.ca-page .ca-world-current{max-width:min(44vw,160px);min-height:31px;box-shadow:none!important;background:#c9c2b606!important;border:1px solid #c9c2b624!important;border-radius:9px!important;padding:4px 8px!important}.module-app.ca-page .ca-world-current:hover{border-color:#c9c2b638!important}.module-app.ca-page .ca-world-current-copy strong{max-width:100px}.module-app.ca-page .ca-world-chevron{background:0 0;border:0;border-radius:0;width:13px;height:13px}.module-app.ca-page .ca-world-list{background:#16120ff7;border:1px solid #c9c2b62e;border-radius:12px;gap:3px;padding:6px;box-shadow:0 10px 28px #00000073}.module-app.ca-page .ca-world-chip{padding:8px 6px;box-shadow:none!important;background:0 0!important;border-top:0!important;border-bottom:1px solid #c9c2b61a!important;border-left:2px solid #0000!important;border-right:0!important;border-radius:6px!important}.module-app.ca-page .ca-world-chip.active{background:#c9c2b612!important;border-left-color:#c9c2b6!important}.module-app.ca-page .ca-kind-button{padding-inline:8px}.module-app.ca-page .ca-kind-count{display:none}.module-app.ca-page .ca-card-swipe-hint{padding-inline:16px}.module-app.ca-page .ca-card-swipe-area{touch-action:pan-y;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.module-app.ca-page .ca-card-swipe-page{flex-direction:column;flex:auto;height:100%;min-height:0;display:flex}@media (width<=360px){.module-app.ca-page .ca-world-tools{gap:4px}.module-app.ca-page .ca-world-current{gap:4px;max-width:min(34vw,112px);padding-inline:6px!important}.module-app.ca-page .ca-world-current-copy strong{max-width:48px}.module-app.ca-page .ca-board-controls .ca-board-relations{padding-inline:6px;font-size:8px}.module-app.ca-page .ca-board-controls .ca-board-relations svg{width:10px;height:10px}.module-app.ca-page .ca-board-actions{gap:4px}.module-app.ca-page .ca-kind-switch{gap:0}.module-app.ca-page .ca-kind-button{gap:3px;padding-inline:6px;font-size:9px}.module-app.ca-page .ca-add-trigger{width:28px;min-width:28px;height:28px}}.module-app.ca-page .ca-otome-stage{box-sizing:border-box;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;grid-template-rows:clamp(280px,46vh,430px) auto auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:8px 12px;width:100%;max-height:100%;padding:8px 12px 4px;position:relative;height:100%!important;min-height:0!important;display:grid!important;overflow:hidden auto!important}.module-app.ca-page .ca-widget-polaroid{z-index:25;box-sizing:border-box;width:94px;max-width:94px;padding:12px 6px 7px;position:absolute!important;inset:14px auto auto 16px!important;transform:rotate(-3.5deg)!important}.module-app.ca-page .ca-widget-vitals{z-index:25;box-sizing:border-box;pointer-events:auto;width:min(104px,100% - 16px);max-width:104px;padding:6px 7px;position:absolute!important;inset:auto -14px 10px auto!important;transform:rotate(2deg)!important}.module-app.ca-page .ca-vitals-header{margin-bottom:4px;padding-bottom:4px}.module-app.ca-page .ca-vitals-grid{gap:2px}.module-app.ca-page .ca-polaroid-photo{width:76px;height:76px}.module-app.ca-page .ca-standee-box{z-index:10;grid-area:1/1/auto/-1;justify-content:center;align-self:stretch;width:100%;max-width:380px;height:100%;min-height:0;max-height:100%;margin:0 auto;position:relative}.module-app.ca-page .ca-standee-empty{width:min(72vw,220px);height:100%;min-height:0}.module-app.ca-page .ca-widget-secret,.module-app.ca-page .ca-widget-cassette{box-sizing:border-box;align-self:stretch;width:100%;min-width:0;max-width:none;padding:7px 8px;position:relative!important;inset:auto!important;transform:none!important}.module-app.ca-page .ca-widget-secret{grid-area:2/1}.module-app.ca-page .ca-widget-cassette{grid-area:2/2}.module-app.ca-page .ca-secret-quote{-webkit-line-clamp:3;overflow-wrap:anywhere}.module-app.ca-page .ca-cassette-row .v{max-width:100%}.module-app.ca-page .ca-bottom-dossier{box-sizing:border-box;z-index:30;flex-wrap:wrap;grid-area:3/1/auto/-1;gap:6px;width:100%;max-width:none;margin:0;padding:8px 10px;position:relative!important;inset:auto!important}.module-app.ca-page .ca-dossier-main{flex:100%}.module-app.ca-page .ca-bottom-dossier .ca-dossier-affinity{flex:100%;width:100%;min-width:0;max-width:none}.module-app.ca-page .ca-dossier-actions{justify-content:flex-end;width:100%}.module-app.ca-page .ca-btn-dock{flex:1 1 0;min-width:0;min-height:36px;padding-inline:7px}.module-app.ca-page .ca-ai-status-dock{box-sizing:border-box;z-index:35;grid-area:4/1/auto/-1;width:100%;position:relative}@media (height<=560px){.module-app.ca-page .ca-card-swipe-hint{display:none}.module-app.ca-page .ca-otome-stage{gap:5px 8px;padding:4px 8px 2px}.module-app.ca-page .ca-widget-secret,.module-app.ca-page .ca-widget-cassette{padding:5px 6px}.module-app.ca-page .ca-secret-quote{-webkit-line-clamp:2}.module-app.ca-page .ca-bottom-dossier{gap:4px;padding:6px 8px}.module-app.ca-page .ca-btn-dock{min-height:30px;padding-inline:4px;font-size:9px}.module-app.ca-page .ca-bottom-dossier .ca-dossier-affinity{padding:3px 6px}}.module-app.ca-page .ca-detail-fullscreen-mask{padding:0!important}.module-app.ca-page .ca-detail-fullscreen-panel{box-sizing:border-box;min-height:0;border-radius:0!important;height:100%!important;max-height:100%!important}.module-app.ca-page .ca-detail-fullscreen-header{padding-top:calc(12px + env(safe-area-inset-top,0px));padding-left:14px;padding-right:14px}.module-app.ca-page .ca-detail-fullscreen-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;min-height:0;padding:12px 12px calc(16px + env(safe-area-inset-bottom,0px))}.module-app.ca-page .ca-detail-fullscreen-body::-webkit-scrollbar{width:0;height:0;display:none}.module-app.ca-page .ca-detail-fullscreen-footer{padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px))}}.module-app.ca-page .relations-map{color:#f7eee2;padding:18px}.relations-map-heading{justify-content:space-between;align-items:center;gap:12px;max-width:1000px;margin:0 auto 14px;display:flex}.relations-map-heading h2{color:#f1c77e;margin:0;font-size:20px}.relations-map-heading p{color:#fff4e5a6;margin:5px 0 0;font-size:12px}.relations-map-heading>span{white-space:nowrap;color:#fff4e58c;font-size:12px}.relations-map-canvas-wrap{background:radial-gradient(#ae77381f,#0e0c0bf0 72%);border:1px solid #e1b87533;border-radius:18px;max-width:1000px;height:min(68vh,640px);min-height:380px;margin:auto;position:relative;overflow:hidden}.relations-map-canvas{touch-action:none;width:100%;height:100%}.relations-map-empty{z-index:1;color:#e8c98f;pointer-events:none;font-size:12px;position:absolute;top:12px;left:50%;transform:translate(-50%)}.relations-map-edge{cursor:pointer}.relations-map-edge line{stroke:#e5bf8394;stroke-width:2px}.relations-map-edge rect{fill:#211a15;stroke:#e5bf8359;stroke-width:1px;opacity:.96}.relations-map-edge text{fill:#f4dfbd;font-size:10px}.relations-map-edge:hover line{stroke:#ffd890;stroke-width:3px}.relations-map-person{cursor:grab;touch-action:none}.relations-map-person:active{cursor:grabbing}.relations-map-hit{fill:#0000}.relations-map-avatar-ring{fill:#191410;stroke:#e3be84ad;stroke-width:2px}.relations-map-person.is-selected .relations-map-avatar-ring{stroke:#ffd58b;stroke-width:4px;filter:drop-shadow(0 0 8px #ffd58b8c)}.relations-map-emoji{pointer-events:none;font-size:25px}.relations-map-avatar{border-radius:50%;width:50px;height:50px;overflow:hidden}.relations-map-avatar img{object-fit:cover;width:100%;height:100%}.relations-map-name{fill:#fff3df;paint-order:stroke;stroke:#17120e;stroke-width:4px;stroke-linejoin:round;pointer-events:none;font-size:12px;font-weight:700}.relations-map-hint{color:#f6d99e;max-width:1000px;margin:10px auto;font-size:12px}.relations-map-hint button{color:inherit;background:0 0;border:0;margin-left:10px;text-decoration:underline}.relations-map-editor{z-index:1000;background:#0000009e;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.relations-map-editor-card{background:#211a15;border:1px solid #e5bf8352;border-radius:18px;width:min(440px,100%);padding:22px;box-shadow:0 20px 70px #0000008c}.relations-map-editor-card h3{color:#f1c77e;margin:0 0 18px}.relations-map-editor-card label{color:#f5e6d1;gap:7px;margin:12px 0;font-size:12px;display:grid}.relations-map-editor-card input{box-sizing:border-box;color:#fff5e7;background:#15110e;border:1px solid #e5bf8340;border-radius:9px;outline:none;width:100%;padding:11px 12px}.relations-map-editor-card details{color:#cdb99e;margin-top:12px;font-size:12px}.relations-map-editor-card details input{margin-top:8px}.relations-map-editor-actions{align-items:center;gap:8px;margin-top:20px;display:flex}.relations-map-editor-actions span{flex:1}.relations-map-editor-actions button{color:#f5e6d1;background:#33271d;border:1px solid #e5bf8340;border-radius:8px;padding:8px 12px}.relations-map-editor-actions button.primary{color:#21180d;background:#e8bd71;border-color:#e8bd71;font-weight:700}.relations-map-editor-actions button.danger{color:#ffb8a7}.relations-map-edge-hit{stroke:#0000;stroke-width:18px;pointer-events:stroke}.relations-map-edge-line{stroke:#e5bf83ad;stroke-width:2px;pointer-events:none}.relations-map-person-relations{background:#14100dd9;border:1px solid #e1b87533;border-radius:14px;gap:8px;max-width:1000px;margin:12px auto 4px;padding:14px;display:grid}.relations-map-person-relations>strong{color:#f1c77e;font-size:13px}.relations-map-person-relations>button{text-align:left;color:#f5e6d1;background:#ffffff09;border:1px solid #e5bf832b;border-radius:9px;gap:3px;padding:9px 11px;font-size:11px;display:grid}.relations-map-person-relations small{color:#fff4e599}@media (width<=600px){.module-app.ca-page .relations-map{padding:12px 12px calc(18px + env(safe-area-inset-bottom))}.relations-map-heading{align-items:flex-start;margin-bottom:10px}.relations-map-heading h2{font-size:18px}.relations-map-heading p{max-width:250px;font-size:11px;line-height:1.45}.relations-map-heading>span{padding-top:4px;font-size:10px}.relations-map-canvas-wrap{aspect-ratio:1;border-radius:14px;width:100%;height:auto;min-height:0}.relations-map-canvas.is-compact .relations-map-edge rect,.relations-map-canvas.is-compact .relations-map-edge text{display:none}.relations-map-canvas.is-compact .relations-map-edge-line{stroke-width:2.5px}.relations-map-canvas.is-compact .relations-map-avatar-ring{r:34px}.relations-map-canvas.is-compact .relations-map-emoji{font-size:28px}.relations-map-canvas.is-compact .relations-map-name{font-size:15px}.relations-map-person-relations{margin-top:10px;padding:12px}.relations-map-person-relations>button{font-size:12px}.ca-top:has(.ca-rel-badge-pill){gap:8px;min-height:58px;padding-inline:10px}.ca-top:has(.ca-rel-badge-pill) .ca-top-titles{flex:1;min-width:0}.ca-top:has(.ca-rel-badge-pill) .ca-top-title{white-space:normal;overflow-wrap:anywhere;font-size:15px;line-height:1.2;display:block}.ca-top:has(.ca-rel-badge-pill) .ca-top-sub{text-overflow:ellipsis;white-space:nowrap;max-width:38vw;font-size:9px;display:block;overflow:hidden}.ca-top:has(.ca-rel-badge-pill) .ca-rel-badge-pill{flex-shrink:0;padding:5px 8px;font-size:10px}}.module-app.ca-page:has(.relations-map){background:#100d0b}.module-app.ca-page:has(.relations-map) .module-body{background:#100d0b;min-height:100%}.module-app.ca-page:has(.relations-map){color:#fff7eb!important;background-color:#100d0b!important}.module-app.ca-page:has(.relations-map) .module-body{color:#fff7eb!important;background-color:#100d0b!important}.module-app.ca-page:has(.relations-map) .relations-map{color:#fff7eb!important;background-color:#100d0b!important}:is(.module-app.ca-page:has(.relations-map) .relations-map-heading h2,.module-app.ca-page:has(.relations-map) .relations-map-person-relations>strong){color:#ffd98f!important}.module-app.ca-page:has(.relations-map) .relations-map-heading p{color:#e0d2bd!important}.module-app.ca-page:has(.relations-map) .relations-map-heading>span{color:#e0d2bd!important}.module-app.ca-page:has(.relations-map) .relations-map-hint{color:#e0d2bd!important}.module-app.ca-page:has(.relations-map) .relations-map-canvas-wrap{background:radial-gradient(#30251b 0%,#19130f 58%,#100d0b 100%)!important;border-color:#80643d!important}.module-app.ca-page:has(.relations-map) .relations-map-edge-line{opacity:.92;stroke:#f0cb82!important}.module-app.ca-page:has(.relations-map) .relations-map-avatar-ring{fill:#17110d!important;stroke:#e4bd78!important}.module-app.ca-page:has(.relations-map) .relations-map-name{fill:#fff8ee!important;stroke:#100d0b!important}.module-app.ca-page:has(.relations-map) .relations-map-person-relations{color:#fff4e2!important;background:#1c1712!important;border-color:#695537!important}.module-app.ca-page:has(.relations-map) .relations-map-person-relations>button{color:#fff4e2!important;background:#1c1712!important;border-color:#695537!important}.module-app.ca-page:has(.relations-map) .relations-map-editor-card{color:#fff4e2!important;background:#1c1712!important;border-color:#9a7847!important}.module-app.ca-page:has(.relations-map) .relations-map-editor-card h3{color:#ffd98f!important}.module-app.ca-page:has(.relations-map) .relations-map-editor-card label{color:#fff0d8!important}.module-app.ca-page:has(.relations-map) .relations-map-editor-card input{color:#fffaf2!important;background:#100d0b!important;border-color:#826943!important}.module-app.ca-page:has(.relations-map) .relations-map-editor-actions button{color:#fff4e2!important;background:#30251b!important;border-color:#80643d!important}.module-app.ca-page:has(.relations-map) .relations-map-editor-actions button.primary{color:#21180d!important;background:#ffd98f!important;border-color:#ffd98f!important}.module-app.ca-page:has(.relations-map) .relations-map-person-relations>button span:first-child{color:#ffd98f!important}.module-app.ca-page:has(.relations-map) .relations-map-person-relations>button span:last-child{color:#c9dcff!important}.module-app.ca-page.relations-page,.module-app.ca-page.relations-page .relations-map-body,.module-app.ca-page.relations-page .relations-map{color:#fff7eb!important;background:#100d0b!important}.module-app.ca-page.relations-page .relations-map-body{padding:18px 14px 14px}@media (width<=600px){.module-app.ca-page.relations-page .relations-map-body{padding:10px 0 14px}.module-app.ca-page.relations-page .relations-map{padding:12px 12px calc(18px + env(safe-area-inset-bottom))}}.module-app.ca-page.relations-page{min-height:100dvh!important}.module-app.ca-page.relations-page .relations-map-body{min-height:calc(100vh - 56px)!important;min-height:calc(100dvh - 56px - var(--safe-area-inset-top,0px))!important;background:#100d0b!important;flex:1 0 auto!important}.module-app.ca-page.relations-page .relations-map{box-sizing:border-box;min-height:calc(100vh - 56px)!important;min-height:calc(100dvh - 56px - var(--safe-area-inset-top,0px))!important;background:#100d0b!important}@media (width<=600px){.module-app.ca-page.relations-page .relations-map-body{padding-bottom:0!important}.module-app.ca-page.relations-page .relations-map{padding-bottom:calc(20px + env(safe-area-inset-bottom))!important}}.module-app.ca-page.relations-page>.ca-top{box-shadow:none!important;-webkit-backdrop-filter:none!important;background:#100d0b!important;border:0!important}.module-app.ca-page.relations-page:before{content:"";z-index:35;top:calc(56px + var(--safe-area-inset-top,0px) - 1px);pointer-events:none;background:#100d0b;height:14px;position:absolute;left:0;right:0}
