.reader-chapter-nav{position:static!important;bottom:auto!important;margin-top:42px!important;background:#fff!important;box-shadow:none!important}
.thought-search-page .global-search-box{margin:8px 0 18px}.thought-filter-tabs{grid-template-columns:repeat(4,1fr)}.thought-response-tabs{grid-template-columns:repeat(3,1fr)}.thought-filter-tabs button,.thought-response-tabs button{padding:9px 3px;font-size:9px}.date-range-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ai-background-pill{position:fixed;left:50%;bottom:86px;z-index:40;transform:translateX(-50%);display:flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid #eee4de;border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 8px 28px rgba(55,40,30,.13);font-size:10px;color:#5b544f;white-space:nowrap}.ai-background-pill span{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:aiPulse 1s infinite alternate}

/* 0.8 · 高频记录与长期记忆 */
.top-actions{display:flex;align-items:center;gap:2px}.preserve-lines{white-space:pre-wrap}.moment-text{display:block!important;height:auto!important;max-height:none!important;white-space:pre-wrap;overflow:visible!important;overflow-wrap:anywhere;-webkit-line-clamp:unset!important}.moment-post>footer{gap:14px;justify-content:flex-start!important;flex-wrap:wrap}.moment-post>footer button:last-child{margin-left:auto}.moment-response .ai-message p{display:block!important;height:auto!important;max-height:none!important;white-space:pre-wrap;overflow:visible!important;overflow-wrap:anywhere;-webkit-line-clamp:unset!important}
.moment-text.is-collapsed{display:-webkit-box!important;max-height:10.5em!important;overflow:hidden!important;-webkit-box-orient:vertical;-webkit-line-clamp:6!important}.moment-text-toggle{margin:-2px 0 10px;padding:0;border:0;background:transparent;color:var(--accent);font-size:9px}
.idea-filter{display:grid;gap:10px;margin:14px 0 18px;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff}.idea-filter>div{display:flex;align-items:center;gap:6px;overflow-x:auto}.idea-filter small{min-width:28px;color:var(--muted)}.idea-filter button{white-space:nowrap;padding:7px 10px;border:0;border-radius:999px;background:#f6f3f1;color:#777;font-size:9px}.idea-filter button.active{background:var(--accent-soft);color:var(--accent);font-weight:700}
.relationship-entry{width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:20px;background:#fff;text-align:left}.relationship-entry>span:nth-child(2){display:grid;gap:4px}.relationship-entry small{color:var(--muted)}.relationship-mini-nodes{display:flex;align-items:center}.relationship-mini-nodes i{width:34px;height:34px;margin-left:-7px;display:grid;place-items:center;border:2px solid #fff;border-radius:50%;background:#fff0e8;color:var(--accent);font-style:normal;font-size:9px}.relationship-mini-nodes i:first-child{margin-left:0}.relationship-map{position:relative;height:360px;margin:18px 0 24px;overflow:hidden;border:1px solid rgba(220,127,89,.18);border-radius:28px;background:radial-gradient(circle at 50% 48%,#fff5ee 0,#fff 48%,#faf9f7 100%)}.relationship-map:before,.relationship-map:after{content:"";position:absolute;left:18%;right:18%;top:50%;height:1px;background:rgba(220,127,89,.2);transform:rotate(27deg)}.relationship-map:after{transform:rotate(-27deg)}.relation-line.main-line{position:absolute;left:37%;right:37%;top:50%;height:2px;background:var(--accent);opacity:.45}.relation-node{position:absolute;z-index:2;display:grid;justify-items:center;gap:3px;border:0;background:transparent;color:var(--ink)}.relation-node img,.relation-node>span{width:48px;height:48px;display:grid;place-items:center;object-fit:cover;border:3px solid #fff;border-radius:50%;background:#fff1e9;box-shadow:0 8px 20px rgba(70,45,35,.12);color:var(--accent)}.relation-node small{max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px}.relation-node.core{top:50%;transform:translateY(-50%)}.relation-node.core.self{left:25%}.relation-node.core.character{right:25%}.relation-node.core img,.relation-node.core>span{width:58px;height:58px}.relation-node.npc{left:var(--node-left);top:var(--node-top);transform:translate(-50%,-50%)}.relation-node.npc img,.relation-node.npc>span{width:42px;height:42px}.relation-overflow{position:absolute;left:0;right:0;bottom:12px;text-align:center;color:var(--muted);font-size:8px}.relation-list{display:grid;gap:10px}.relation-list>button{display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:17px;background:#fff;text-align:left}.relation-list img,.relation-avatar{width:46px;height:46px;display:grid;place-items:center;object-fit:cover;border-radius:50%;background:#fff1e9;color:var(--accent)}.relation-list>button>span:nth-child(2){min-width:0;display:grid;gap:3px}.relation-list small,.relation-list em{overflow:hidden;color:var(--muted);font-size:8px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.relation-avatar-editor{margin-bottom:20px}.relation-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.relation-editor-grid .field{min-width:0}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin:14px 0 18px}.calendar-toolbar button{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#fff}.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.calendar-week{color:var(--muted);font-size:9px;margin-bottom:8px}.calendar-grid>button,.calendar-grid>span{aspect-ratio:1;border:0;background:transparent;border-radius:50%;display:grid;place-items:center;position:relative;font-size:11px}.calendar-grid>button.has-posts{background:#fff7f2}.calendar-grid>button.active{background:var(--accent);color:#fff}.calendar-grid i{position:absolute;bottom:4px;width:3px;height:3px;border-radius:50%;background:var(--accent)}.calendar-grid .active i{background:#fff}.calendar-help{text-align:center;color:var(--muted);font-size:9px;margin-top:22px}
.journal-author-tabs{display:flex;gap:8px;margin:10px 0 16px}.journal-author-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 14px;font-size:10px}.journal-author-tabs button.active{background:#191817;color:#fff;border-color:#191817}.journal-author-mark{color:var(--accent);font-size:9px}.journal-detail-author{display:flex;align-items:center;gap:10px;margin:12px 0}.journal-detail-author img{width:34px;height:34px;border-radius:50%;object-fit:cover}
.diary-generate-intro{padding:26px 22px;margin:10px 0 18px;border-radius:28px;background:linear-gradient(145deg,#fff2e8,#fff 70%);border:1px solid #f4e6dc}.diary-generate-intro small{letter-spacing:.15em;color:var(--accent)}.diary-generate-intro h2{font-family:"Songti SC","STSong",serif;font-size:27px;margin:14px 0 8px}.diary-generate-intro p{font-size:11px;line-height:1.8;color:var(--muted)}.diary-material-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.diary-material-summary div{padding:20px;border:1px solid var(--line);border-radius:20px}.diary-material-summary strong,.diary-material-summary small{display:block}.diary-material-summary strong{font-size:24px}.diary-material-summary small{color:var(--muted);margin-top:5px}.his-diary-textarea{min-height:48vh!important;line-height:2!important}
.memory-manage-list{display:grid;gap:12px;margin:18px 0}.memory-manage-list section{padding:17px;border:1px solid var(--line);border-radius:20px;background:#fff}.memory-manage-list small{color:var(--muted)}.memory-manage-list p{white-space:pre-wrap;line-height:1.75}.memory-manage-list section>div{display:flex;gap:16px}.memory-manage-list button{border:0;background:none;color:var(--accent);padding:0}.profile-import-entry{width:100%;display:grid;grid-template-columns:1fr auto;text-align:left;padding:17px;margin:12px 0 18px;border:1px solid #f0ded2;border-radius:20px;background:linear-gradient(120deg,#fff7f1,#fff)}.profile-import-entry strong,.profile-import-entry small{display:block}.profile-import-entry small{grid-column:1;color:var(--muted);margin-top:5px}.profile-import-entry span{grid-column:2;grid-row:1/3;align-self:center;color:var(--accent)}

/* 冰箱上的手写便签 */
.fridge-home-card{width:100%;margin:12px 0 8px;padding:18px 18px 17px;display:grid;grid-template-columns:36px 1fr 20px;gap:13px;align-items:center;text-align:left;border:1px solid #e5e2dd;border-radius:22px;background:linear-gradient(145deg,#f5f4f1,#fff);box-shadow:0 8px 24px rgba(61,55,50,.05)}.fridge-home-card .fridge-magnet{width:27px;height:27px;border-radius:50%;background:linear-gradient(145deg,#ee9d78,#d97954);box-shadow:inset 0 2px 5px rgba(255,255,255,.5),0 4px 9px rgba(90,60,45,.15)}.fridge-home-card small,.fridge-home-card strong,.fridge-home-card em{display:block}.fridge-home-card small{color:#9a918a;font-size:9px;letter-spacing:.08em}.fridge-home-card strong{font-family:"Songti SC","STSong",serif;font-size:16px;margin-top:4px}.fridge-home-card em{font-style:normal;color:var(--muted);font-size:9px;margin-top:4px}.fridge-home-card b{font-weight:400;color:var(--accent)}
.fridge-page{padding-bottom:110px}.fridge-door{min-height:calc(100vh - 150px);margin:0 -18px -40px;padding:16px 25px 90px;background:linear-gradient(100deg,#e8e8e5,#f6f6f3 48%,#e5e5e1);box-shadow:inset 16px 0 24px rgba(255,255,255,.45),inset -8px 0 18px rgba(78,75,70,.05)}.fridge-date{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;text-align:center;margin-bottom:8px}.fridge-date button{height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.6)}.fridge-date small,.fridge-date strong{display:block}.fridge-date small{font-size:8px;letter-spacing:.14em;color:#99928b}.fridge-date strong{font-family:"Songti SC","STSong",serif;font-size:14px;margin-top:3px}.weather-mini{text-align:center;color:#878079;font-size:9px;margin-bottom:17px}.fridge-paper{position:relative;margin:24px 5px 34px;padding:35px 24px 19px;transform:rotate(var(--note-rotate));transform-origin:50% 16%;background:#fffaf0;box-shadow:0 13px 22px rgba(58,52,47,.14);border-radius:2px}.fridge-paper.peach{background:#fff0e6}.fridge-paper.lilac{background:#f6f1fb}.paper-tape{position:absolute;top:-12px;left:50%;width:76px;height:29px;transform:translateX(-50%) rotate(-1deg);background:rgba(224,196,162,.62);box-shadow:0 1px 2px rgba(80,60,40,.05)}.fridge-paper>header{display:flex;justify-content:space-between;color:#9b918a;font-size:9px}.fridge-paper>header button{border:0;background:none;color:inherit}.hand-line{margin:18px 0 12px}.hand-line p{margin:0;white-space:pre-wrap;font-family:"KaiTi","STKaiti","Songti SC",serif;font-size:17px;line-height:1.85;color:#3b3937;overflow-wrap:anywhere}.hand-line small{display:block;text-align:right;margin-top:7px;font-family:"KaiTi","STKaiti",serif;color:#8f6b58}.hand-line.user{padding:15px 6px 0;border-top:1px dashed rgba(100,89,81,.18)}.hand-line.user p{color:#93624f}.hand-line.character:not(:first-of-type) p{color:#4d5966}.note-write-row{margin-top:18px;padding-top:14px;border-top:1px dashed rgba(100,89,81,.22)}.note-write-row textarea{width:100%;min-height:64px;border:0;background:rgba(255,255,255,.25);resize:none;outline:0;font-family:"KaiTi","STKaiti","Songti SC",serif;font-size:15px;line-height:1.7}.note-write-row button{display:block;margin-left:auto;border:0;border-radius:999px;background:#31302e;color:#fff;padding:7px 13px;font-size:9px}.fridge-paper>footer{display:flex;gap:13px;margin-top:17px}.fridge-paper>footer button{border:0;background:none;padding:0;color:#8d7a6e;font-size:9px}.empty-fridge{text-align:center;padding:85px 20px}.empty-magnet{display:block;width:40px;height:40px;margin:0 auto 20px;border-radius:50%;background:#df8964;box-shadow:0 7px 14px rgba(91,61,46,.15)}.empty-fridge h3{font-family:"Songti SC","STSong",serif;font-size:18px}.empty-fridge p{font-size:10px;color:var(--muted)}.empty-fridge button{margin-top:14px;border:0;border-radius:999px;background:#252422;color:#fff;padding:10px 18px}
.profile-tool-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.profile-tool-row button{padding:13px 8px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);font-size:10px}.profile-source-text{min-height:320px!important;line-height:1.8}.profile-parse-preview{display:grid;gap:4px}
.chapter-list-item{margin-bottom:10px;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}.chapter-list-item>button{width:100%;border:0!important;border-radius:0!important}.chapter-list-item>div{display:flex;justify-content:flex-end;gap:8px;padding:0 12px 10px}.chapter-list-item>div button{padding:6px 11px;border:0;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:9px}
.chapter-writing-page{padding-bottom:130px}.chapter-title-input{width:100%;margin:10px 0 14px;padding:12px 0;border:0;border-bottom:1px solid var(--line);border-radius:0!important;background:transparent;font-family:"Songti SC","STSong",serif;font-size:24px}.chapter-writing-textarea{width:100%;min-height:62vh;padding:8px 0 30px;border:0!important;background:transparent!important;font-family:"Songti SC","STSong",serif;font-size:15px;line-height:2.05;resize:vertical}
.chapter-illustration-editor{display:grid;gap:14px}.chapter-illustration-item{display:grid;grid-template-columns:92px 1fr auto;gap:8px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:15px}.chapter-illustration-item .zoomable-image{grid-row:span 2;width:92px;height:92px}.chapter-illustration-item select,.chapter-illustration-item input{min-width:0}.chapter-illustration-item>button{grid-column:3;grid-row:1/span 2;padding:6px;border:0;background:transparent;color:#b36e59}
.reader-page article figure{margin:28px 0}.reader-page article figure .zoomable-image{width:100%;border:0;background:none;padding:0}.reader-page article figure img{width:100%;max-height:70vh;object-fit:contain;border-radius:14px}.reader-page article figcaption{text-align:center;margin-top:8px;color:var(--muted);font-size:9px}
.note-generating{margin:12px 5px 4px;padding:13px 15px;display:flex;align-items:center;gap:11px;border:1px solid rgba(126,113,103,.12);border-radius:16px;background:rgba(255,255,255,.62);color:#504b47}.note-generating>span{width:18px;height:18px;border:2px solid #e5b29b;border-top-color:#d87650;border-radius:50%;animation:note-writing .8s linear infinite}.note-generating strong,.note-generating small{display:block}.note-generating strong{font-size:11px}.note-generating small{margin-top:3px;color:#928981;font-size:8px}@keyframes note-writing{to{transform:rotate(360deg)}}
.fridge-paper,.fridge-paper .hand-line,.fridge-paper .hand-line p{height:auto!important;max-height:none!important;overflow:visible!important;-webkit-line-clamp:unset!important}.fridge-paper .hand-line p{display:block!important;white-space:pre-wrap!important;overflow-wrap:anywhere}

/* Full-bleed fridge surface: prevents white side gutters while the note feed scrolls. */
.fridge-page{padding:0 0 110px!important;background:linear-gradient(100deg,#e8e8e5,#f6f6f3 48%,#e5e5e1)!important}
.fridge-page>.topbar{padding:0 18px;background:rgba(255,255,255,.96)}
.fridge-page>.fridge-door{width:100%;box-sizing:border-box;min-height:calc(100vh - 66px);margin:0!important;padding:16px 25px 90px}
.idea-home-card{width:100%;margin:4px 0 8px;padding:17px 18px;display:grid;grid-template-columns:34px 1fr 18px;gap:12px;align-items:center;text-align:left;border:1px solid #eee7e2;border-radius:20px;background:#fff}.idea-home-card>span:first-child{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff1e8;color:var(--accent)}.idea-home-card small,.idea-home-card strong,.idea-home-card em{display:block}.idea-home-card small{font-size:8px;color:#9a918a}.idea-home-card strong{margin-top:3px;font-family:"Songti SC","STSong",serif;font-size:14px}.idea-home-card em{margin-top:4px;font-size:8px;font-style:normal;color:var(--muted)}.idea-list{display:grid;gap:10px}.idea-list>button{padding:16px;text-align:left;border:1px solid var(--line);border-radius:17px;background:#fff}.idea-list span{color:var(--accent);font-size:8px}.idea-list strong{display:block;margin-top:6px;font-family:"Songti SC","STSong",serif;font-size:14px}.idea-list p{margin:6px 0;color:var(--muted);font-size:10px;white-space:pre-wrap}.idea-list small{font-size:8px;color:#999}
.album-wrap{position:relative}.album-wrap>.album{width:100%}.album-manage{position:absolute;right:6px;top:6px;width:28px;height:28px;border:0;border-radius:50%;background:rgba(255,255,255,.88);color:#777}.share-response-picker{margin:12px 0;padding:15px;border:1px solid var(--line);border-radius:17px;background:#fff}.share-response-picker>strong,.share-response-picker>small{display:block}.share-response-picker>small{margin:4px 0 10px;color:var(--muted);font-size:8px}.share-response-picker label{display:grid;grid-template-columns:20px 1fr;gap:8px;padding:9px 0;border-top:1px solid #f1eeeb}.share-response-picker span,.share-response-picker b{display:block}.share-response-picker span{font-size:9px;line-height:1.55}.share-response-picker b{margin-bottom:2px;color:var(--accent)}
.diary-doodle{margin:22px 0;padding:15px 17px;border:1px dashed #dfc9bc;border-radius:16px;background:#fffaf6}.diary-doodle small{color:#b68168;font-size:8px;letter-spacing:.08em}.diary-doodle p{margin:7px 0 0;font-family:"KaiTi","STKaiti",serif;color:#6d625b;line-height:1.7}.doodle-input{min-height:76px!important}.diary-writing-status{margin:30px 0;padding:24px;text-align:center;border:1px solid var(--line);border-radius:18px}.diary-writing-status span{display:block;width:22px;height:22px;margin:0 auto;border:2px solid #efd0c1;border-top-color:var(--accent);border-radius:50%;animation:note-writing .8s linear infinite}.diary-writing-status p{color:var(--muted);font-size:10px}.journal-author-head.text-only{display:block}.ai-translate{margin-top:6px;padding:0;border:0;background:transparent;color:var(--accent);font-size:8px}.ai-translation{margin-top:8px!important;padding:9px 11px;border-left:2px solid #ebaa8c;background:#fff8f4;color:#655e59!important}

.profile-display-group{margin:24px 0;padding-top:4px}.profile-display-group>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.profile-display-group>header h3{margin:0;font-family:"Songti SC","STSong",serif;font-size:19px}.profile-display-group>header button{border:0;background:none;color:var(--accent);font-size:12px}.profile-summary-row{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;padding:15px 2px}.profile-summary-row small{display:block;color:var(--muted);font-size:11px;margin-bottom:6px}.profile-summary-row p{margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;white-space:normal;line-height:1.65;color:var(--ink)}.profile-summary-row .quiet-placeholder{color:#aaa39d}.world-count-row{display:grid;grid-template-columns:repeat(3,1fr) 24px;align-items:center;width:100%;margin-top:12px;padding:15px;border:1px solid var(--line);border-radius:18px;background:#fff}.world-count-row span{text-align:center}.world-count-row strong,.world-count-row small{display:block}.world-count-row strong{font-size:20px}.world-count-row small{color:var(--muted);margin-top:3px}.profile-edit-menu{padding-bottom:120px}.profile-edit-card{display:flex;align-items:center;justify-content:space-between;width:100%;margin:12px 0;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;text-align:left}.profile-edit-card span>*{display:block}.profile-edit-card strong{font-family:"Songti SC","STSong",serif;font-size:19px}.profile-edit-card small{margin-top:6px;color:var(--muted);line-height:1.5}.profile-edit-card em{margin-top:10px;color:var(--accent);font-style:normal;font-size:11px}.profile-edit-card b{font-weight:400}.parsed-field>label{display:flex;align-items:center;justify-content:space-between}.parsed-field>label select{width:auto;padding:5px 9px}.export-choice-intro{margin:10px 0 24px;padding:24px;border-radius:24px;background:linear-gradient(145deg,#fff5ee,#fff)}.export-choice-intro small{color:var(--accent);letter-spacing:.12em}.export-choice-intro h2{margin:12px 0 8px;font-family:"Songti SC","STSong",serif}.export-choice-intro p{margin:0;color:var(--muted);line-height:1.7}

.daily-card,.home-shortcuts button,.home-shortcuts button:last-child,.fridge-home-card{background:#fff!important}
.relation-import-list{display:grid;gap:12px}.relation-import-card{padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff}.relation-import-card>label{display:flex;align-items:center;gap:9px;margin-bottom:12px;font-weight:700}.relation-import-card .field{margin:10px 0}.relation-import-status{margin:24px 0;padding:22px;text-align:center;border:1px solid var(--line);border-radius:18px}.relation-import-status span{display:block;width:22px;height:22px;margin:0 auto 12px;border:2px solid #efd0c1;border-top-color:var(--accent);border-radius:50%;animation:note-writing .8s linear infinite}
.relationship-source-page .profile-source-text{min-height:430px!important}.shared-relation-note{margin:16px 0 20px;padding:18px;border:1px solid var(--line);border-radius:20px;background:#fff}.shared-relation-note small{color:var(--accent)}.shared-relation-note h3{margin:7px 0;font-family:"Songti SC","STSong",serif}.shared-relation-note p{line-height:1.7}.shared-relation-note button{border:0;background:none;color:var(--accent);padding:6px 0}

/* Equal-node relationship graph with labeled directional connections. */
.relationship-map.graph-map{height:var(--graph-height);min-height:390px;margin-bottom:10px;overflow:hidden;background:#fff;border-color:var(--line);border-radius:24px}
.relationship-map.graph-map:before,.relationship-map.graph-map:after{display:none}
.graph-map>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.relation-edge path{fill:none;stroke-width:1.35;stroke-linecap:round;opacity:.72}
.relation-edge text{paint-order:stroke;stroke:#fff;stroke-width:5px;stroke-linejoin:round;fill:#615b57;font-size:8px;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}
.relation-graph-node{position:absolute;z-index:2;left:var(--x);top:var(--y);width:76px;display:grid;justify-items:center;gap:5px;transform:translate(-50%,-50%);border:0;background:transparent;color:var(--ink);cursor:pointer}
.relation-graph-node img,.relation-graph-node>span{width:52px;height:52px;display:grid;place-items:center;object-fit:cover;border:3px solid #fff;border-radius:50%;background:#f5eee9;box-shadow:0 0 0 1px #ddd4ce,0 7px 18px rgba(70,45,35,.11);color:#a96347;font-size:16px;font-family:"Songti SC","STSong",serif}
.relation-graph-node.self img,.relation-graph-node.self>span{background:#fde9df;box-shadow:0 0 0 2px #e5a181,0 7px 18px rgba(70,45,35,.12)}
.relation-graph-node.character img,.relation-graph-node.character>span{background:#f0e9f5;box-shadow:0 0 0 2px #b9a1c7,0 7px 18px rgba(70,45,35,.12)}
.relation-graph-node strong{max-width:74px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:2px 5px;border-radius:999px;background:rgba(255,255,255,.9);font-size:9px;font-weight:600}
.relation-legend{display:flex;justify-content:space-between;margin:0 4px 22px;color:var(--muted);font-size:8px}
.relation-edge{cursor:pointer;pointer-events:all}.relation-edge path{pointer-events:stroke}.relation-edge text{pointer-events:all}
.edge-list{display:grid;gap:9px;margin:8px 0 14px}.edge-list>button{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:11px;width:100%;padding:12px;border:1px solid var(--line);border-radius:17px;background:#fff;text-align:left}.edge-list img,.edge-list>button>span:first-child{width:42px;height:42px;display:grid;place-items:center;object-fit:cover;border-radius:50%;background:#fff1e9;color:var(--accent)}.edge-list>button>span:nth-child(2){min-width:0}.edge-list strong,.edge-list small,.edge-list em{display:block}.edge-list small{margin:3px 0;color:var(--accent)}.edge-list em{overflow:hidden;color:var(--muted);font-size:9px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.legacy-relation-note{margin:14px 0;padding:14px;border:1px solid var(--line);border-radius:16px;background:#faf9f7}.legacy-relation-note summary{color:var(--muted);font-size:10px}.legacy-relation-note p{line-height:1.65}.compact-empty{padding:18px!important}
.relationship-quick-actions{display:grid;gap:9px}.relationship-quick-actions .profile-import-entry{margin-bottom:0}.relationship-quick-actions .secondary-btn{margin-top:0}
.profile-primary-textarea{min-height:48vh;line-height:1.85;resize:vertical}
.relationship-book{background:#fff}
.core-relationship-card{position:relative;width:100%;margin:8px 0 22px;padding:22px;text-align:left;border:1px solid #ece8e4;border-radius:24px;background:linear-gradient(135deg,#fff8f3,#fff);box-shadow:0 10px 28px rgba(71,51,39,.06)}
.core-relationship-card small{display:block;color:#c97655;font-size:12px;letter-spacing:.08em}
.core-relationship-card strong{display:block;margin:8px 0 5px;font-family:var(--serif);font-size:24px;color:#211e1c}
.core-relationship-card p{margin:0;padding-right:32px;color:#77706b;line-height:1.55}
.core-relationship-card>span{position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:20px}
.relationship-book-tools{margin-bottom:18px}
.relationship-search{display:flex;align-items:center;gap:10px;padding:0 15px;height:48px;border:1px solid #ece8e4;border-radius:18px;background:#faf9f8}
.relationship-search svg{width:19px;height:19px;fill:none;stroke:currentColor;color:#777}
.relationship-search input{min-width:0;flex:1;border:0;background:transparent;outline:0;font-size:15px}
.relationship-filter-chips{display:flex;gap:8px;overflow-x:auto;margin:12px 0 0;padding:0 0 4px;scrollbar-width:none}
.relationship-filter-chips button{flex:0 0 auto;white-space:nowrap}
.relationship-book-list button{align-items:flex-start}
.relationship-book-list em{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}
.relationship-add-edge{margin-top:12px}
.relationship-book .empty-state button{display:none}

/* Compact setting home: one glance at status, details stay in their own pages. */
.profile-overview-cards{display:grid;gap:12px;margin:20px 0 28px}
.profile-overview-card{width:100%;min-height:126px;padding:20px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;text-align:left;border:1px solid #ebe7e3;border-radius:24px;background:#fff;color:var(--ink);box-shadow:0 8px 26px rgba(57,43,34,.035)}
.profile-overview-card:first-child{background:linear-gradient(135deg,#fff8f3 0,#fff 68%)}
.profile-overview-card span>*{display:block}
.profile-overview-card small{margin-bottom:7px;color:var(--accent);font-size:9px;letter-spacing:.08em}
.profile-overview-card strong{font-family:"Songti SC","STSong",serif;font-size:20px;font-weight:600}
.profile-overview-card p{margin:7px 0 0;color:#77716c;font-size:10px;line-height:1.55;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.profile-overview-card em{margin-top:10px;color:#aaa29c;font-size:9px;font-style:normal}
.profile-overview-card b{font-size:17px;font-weight:400;color:#a8a09a}

/* Relationship map is a share composition, not the editing surface. */
.relationship-share-page{padding-bottom:120px;background:#fff}.relationship-share-heading{margin:10px 0 18px}.relationship-share-heading small{color:var(--accent);font-size:8px;letter-spacing:.14em}.relationship-share-heading h2{margin:8px 0 5px;font-family:"Songti SC","STSong",serif;font-size:25px}.relationship-share-heading p{margin:0;color:var(--muted);font-size:10px;line-height:1.6}.graph-style-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:14px;padding:4px;border-radius:15px;background:#f5f2f0}.graph-style-switch button{height:38px;border:0;border-radius:12px;background:transparent;color:#8c8580}.graph-style-switch button.active{background:#fff;color:#26211f;box-shadow:0 4px 12px rgba(52,40,32,.07)}.relationship-share-canvas{padding:12px 3px 4px;overflow:hidden;border:1px solid #ebe5e1;border-radius:25px;background:#fff;box-shadow:0 12px 34px rgba(61,44,34,.05)}.relationship-share-svg{display:block;width:100%;height:auto;overflow:visible}.share-graph-edge path{fill:none;stroke:#d3a89c;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.share-graph-edge rect{fill:#fff;stroke:#eaded8;stroke-width:.7}.share-graph-edge text{text-anchor:middle;fill:#615954;font-size:8px;font-weight:600}.share-graph-person circle{fill:#f7f1ed}.share-graph-person.core circle{fill:#fff0e8}.share-graph-person .ring{fill:none;stroke:#d9cec7;stroke-width:1.2}.share-graph-person.core .ring{stroke:#df987a;stroke-width:1.8}.share-graph-person .initial{text-anchor:middle;fill:#aa6b51;font-family:"Songti SC","STSong",serif;font-size:15px}.share-graph-person .name{text-anchor:middle;fill:#241f1d;font-size:8px;font-weight:600}.relationship-share-tip{margin:12px 5px 22px;color:#938b85;font-size:9px;line-height:1.65}
