.detail-header--view[data-v-62257fc0]{flex-direction:column;align-items:center;gap:16px;text-align:center}.detail-headline--view[data-v-62257fc0]{display:flex;flex-direction:column;align-items:center;text-align:center}.detail-list--view[data-v-62257fc0]{grid-template-columns:1fr}.detail-item--inline[data-v-62257fc0]{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.detail-item--inline strong[data-v-62257fc0]{text-align:right}.detail-item--responsibilities[data-v-62257fc0]{align-items:flex-start}.form-field--full[data-v-62257fc0]{grid-column:1 / -1}.form-field--full textarea[data-v-62257fc0]{width:100%;resize:vertical;min-height:80px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;line-height:1.5;box-sizing:border-box}.form-field--full textarea[data-v-62257fc0]:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.responsibilities-text[data-v-62257fc0]{white-space:pre-wrap;word-break:break-word}.form-field--avatar[data-v-62257fc0]{display:flex;flex-direction:column;gap:6px}.avatar-upload-area[data-v-62257fc0]{position:relative;width:72px;height:72px;border:2px solid rgba(95,28,18,.16);border-radius:50%;overflow:hidden;cursor:pointer;background:#fffaf3;transition:border-color .2s ease,box-shadow .2s ease,opacity .2s ease}.avatar-upload-area[data-v-62257fc0]:hover,.avatar-upload-area[data-v-62257fc0]:focus{border-color:#b7791f8c;box-shadow:0 0 0 4px #b7791f24;outline:none}.avatar-upload-area--loading[data-v-62257fc0]{pointer-events:none;opacity:.7}.avatar-upload-preview[data-v-62257fc0]{width:100%;height:100%;display:block;object-fit:cover}.avatar-upload-overlay[data-v-62257fc0]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:8px;color:#fffaf1;background:#25190f85;font-size:12px;font-weight:800;text-align:center;opacity:0;transition:opacity .2s ease}.avatar-upload-area:hover .avatar-upload-overlay[data-v-62257fc0],.avatar-upload-area:focus .avatar-upload-overlay[data-v-62257fc0],.avatar-upload-area--loading .avatar-upload-overlay[data-v-62257fc0]{opacity:1}.avatar-file-input[data-v-62257fc0]{display:none}.avatar-upload-error[data-v-62257fc0]{margin:0;color:#a42b1b;font-size:12px;font-weight:700}.primary-button[data-v-62257fc0]:disabled{cursor:not-allowed;opacity:.68;transform:none}:root{font-family:Microsoft YaHei,PingFang SC,Noto Sans SC,sans-serif;--ink: #25190f;--muted: #786b5e;--paper: #fffdfa;--warm-bg: #f7f0e4;--brand: #8f2e1b;--brand-dark: #5f1c12;--brand-soft: #fff1df;--accent: #b7791f;--accent-strong: #9a5d13;--green: #486a43;--line: #c99a54;--line-soft: rgba(201, 154, 84, .48);--node-card-width: 176px;--root-card-width: 216px;--root-card-height: 158px;--root-branch-padding: 8px;--child-branch-padding: 14px;--root-branch-gap: 8px;--root-shared-stem-height: 30px;--root-shared-child-offset: 72px;--connector-color: var(--line);--connector-thickness: 2px;--connector-parent-height: 42px;--connector-child-height: 42px;--avatar-width: 54px;--avatar-height: 76px;--root-avatar-width: 76px;--root-avatar-height: 106px;color:var(--ink);background:linear-gradient(135deg,rgba(143,46,27,.08) 0 25%,transparent 25% 100%),linear-gradient(180deg,#fffaf1 0%,var(--warm-bg) 100%);line-height:1.5;font-weight:400;color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%}body{min-width:320px}button,input,textarea{font:inherit}button{border:0;background:none;cursor:pointer}.app-shell{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,#fffcf6,#f5ecde)}.auth-gate{flex:1;min-height:100vh;display:grid;place-items:center;padding:32px;color:var(--brand-dark);text-align:center}.auth-gate p{max-width:520px;margin:0;padding:22px 28px;border:1px solid rgba(143,46,27,.14);border-radius:8px;background:#fffdfadb;box-shadow:0 18px 48px #25190f14;font-size:18px;font-weight:800}.topbar{position:sticky;top:0;z-index:35;min-height:86px;display:grid;grid-template-columns:minmax(260px,1fr) auto minmax(180px,1fr);align-items:center;gap:24px;padding:18px 48px;border-bottom:1px solid rgba(95,28,18,.12);background:linear-gradient(90deg,#fffffffa,#fffbf4f0);box-shadow:0 8px 28px #25190f14}.brand-block{display:flex;align-items:center;color:var(--brand-dark)}.brand-block h1{margin:0;font-size:28px;font-weight:800;letter-spacing:.08em}.mobile-search-toggle{display:none}.page-title{display:flex;flex-direction:column;align-items:center;color:var(--brand-dark);font-size:25px;font-weight:800;letter-spacing:0}.canvas-area{position:relative;flex:1;min-height:0;overflow:hidden auto;padding:26px 32px 22px;-webkit-overflow-scrolling:touch}.canvas-area::-webkit-scrollbar{width:10px;height:10px}.canvas-area::-webkit-scrollbar-thumb{border-radius:999px;background:#8f2e1b47}.toolbar{position:relative;z-index:10;display:grid;grid-template-columns:minmax(360px,1fr) minmax(340px,560px);align-items:center;gap:24px;margin-bottom:18px;padding:18px 22px;border:1px solid rgba(95,28,18,.08);border-radius:24px;background:#fffdfab8;box-shadow:0 14px 34px #25190f0f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.campus-switch{display:flex;align-items:center;flex-wrap:wrap;gap:12px;color:var(--brand-dark);font-size:17px;font-weight:800}.switch-label{white-space:nowrap}.campus-button{min-width:132px;min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:1px solid rgba(143,46,27,.16);border-radius:999px;color:var(--ink);background:#ffffffb8;box-shadow:0 10px 26px #25190f0f;transition:transform .28s cubic-bezier(.22,1,.36,1),background-color .28s ease,color .28s ease,box-shadow .28s ease}.campus-button span{display:block;font-size:16px;font-weight:800}.pin-icon{width:20px;height:20px;display:grid;place-items:center;color:currentColor;font-size:18px;line-height:1}.campus-button.active{background:linear-gradient(135deg,var(--brand),#b65b27);color:#fffaf1;box-shadow:0 14px 26px #8f2e1b38;transform:translateY(-1px)}.search-box{position:relative;width:min(100%,400px);justify-self:end;display:flex;align-items:stretch;border:1px solid rgba(95,28,18,.14);border-radius:8px;background:#ffffffe6;box-shadow:0 12px 30px #25190f12}.toolbar-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px}.toolbar-edit-button{min-width:92px;min-height:44px;padding:0 18px;border:1px solid rgba(143,46,27,.14);border-radius:999px;background:#ffffffd1;box-shadow:0 10px 24px #25190f14}.toolbar-edit-button.active{color:#fffaf1;background:linear-gradient(135deg,var(--brand),#7c2a18);box-shadow:0 14px 28px #8f2e1b33}.search-icon{width:46px;display:grid;place-items:center;color:#998979;font-size:24px}.search-box input{min-width:0;flex:1;padding:0 12px;border:0;color:var(--ink);background:transparent;outline:none}.search-box input::placeholder{color:#9d9286}.search-box:focus-within{border-color:#8f2e1b66;box-shadow:0 0 0 4px #b7791f24,0 12px 30px #25190f12}.search-submit{min-width:96px;padding:0 20px;border-radius:0 7px 7px 0;color:#fffaf1;background:linear-gradient(135deg,var(--brand),#7c2a18);font-weight:800}.search-clear{position:absolute;top:50%;right:104px;width:26px;height:26px;margin-top:-13px;border-radius:999px;color:var(--muted);background:#f4eadb}.search-dropdown{position:absolute;top:calc(100% + 10px);left:0;right:0;z-index:30;overflow:hidden;border-radius:10px;border:1px solid rgba(143,46,27,.18);background:#fffdfa;box-shadow:0 18px 40px #25190f38;transform-origin:top center}.search-item{width:100%;display:flex;align-items:center;gap:12px;padding:12px 14px;color:var(--ink);background:#fffdfa;border-bottom:1px solid rgba(143,46,27,.08);text-align:left;transition:background .2s ease}.search-item:last-child{border-bottom:0}.search-item:hover{background:var(--brand-soft)}.search-item img{width:40px;height:40px;flex:0 0 auto;border-radius:999px;object-fit:cover}.search-item>div{min-width:0}.search-item strong,.search-item span,.search-item small{display:block}.search-item strong{font-size:14px}.search-item span{margin-top:2px;font-size:12px;color:var(--muted)}.search-item small{display:-webkit-box;margin-top:4px;overflow:hidden;color:#7f6f62;font-size:12px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.search-empty{padding:18px 14px;color:var(--muted);font-size:14px;text-align:center}.editor-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1440px;margin:0 auto 18px}.status-note{flex:1;min-height:38px;display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border:1px solid rgba(183,121,31,.18);border-radius:999px;color:var(--brand-dark);background:#fff1dfb8;font-size:13px;font-weight:700;text-align:center}.editor-meta{min-height:38px;display:inline-flex;align-items:center;padding:8px 14px;border:1px solid rgba(143,46,27,.12);border-radius:999px;color:var(--muted);background:#ffffffad;font-size:14px;font-weight:700}.tree-stage{width:100%;height:clamp(580px,calc(100vh - 220px),920px);margin:0 auto;position:relative;z-index:1;overflow:hidden;overscroll-behavior:contain;border:1px solid rgba(95,28,18,.1);border-radius:8px;background:linear-gradient(90deg,rgba(143,46,27,.035) 1px,transparent 1px),linear-gradient(180deg,rgba(143,46,27,.035) 1px,transparent 1px),#ffffff9e;background-size:40px 40px;box-shadow:inset 0 1px #ffffffbf,0 18px 48px #25190f14;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.tree-stage.is-panning{cursor:grabbing}.tree-stage-inner{width:max-content;min-width:max-content;min-height:max-content;transform-origin:0 0;will-change:transform}.tree-stage-content{width:max-content;min-width:max-content;min-height:max-content;display:flex;justify-content:center;align-items:flex-start;padding:34px 42px 38px}.tree-loading{padding:48px 0;color:#a89880;font-size:15px;letter-spacing:.04em}.root-forest{position:relative;width:max-content;display:flex;flex-direction:column;align-items:center}.root-row{position:relative;display:inline-flex;align-items:flex-start;justify-content:center;gap:var(--root-branch-gap);width:max-content}.root-branch{position:relative;display:flex;justify-content:center;min-width:calc(var(--root-card-width) + var(--root-branch-padding) * 2);padding:0 var(--root-branch-padding)}.root-row.has-shared-children>.root-branch:before{content:"";position:absolute;top:calc(100% + var(--root-shared-stem-height));left:calc(var(--root-branch-gap) / -2);right:calc(var(--root-branch-gap) / -2);height:var(--connector-thickness);border-radius:999px;background:var(--connector-color);transform-origin:center;animation:line-reveal .45s 80ms ease both}.root-row.has-shared-children>.root-branch:first-child:before{left:50%}.root-row.has-shared-children>.root-branch:last-child:before{right:50%}.root-row.has-shared-children:after{content:"";position:absolute;top:calc(100% + var(--root-shared-stem-height));left:calc(50% - var(--connector-thickness) / 2);width:var(--connector-thickness);height:calc(var(--root-shared-child-offset) - var(--root-shared-stem-height));border-radius:999px;background:var(--connector-color);transform-origin:top center;animation:line-grow .45s .12s ease both}.root-row.single-root{display:block}.root-row.single-root .root-branch{min-width:0;padding:0}.org-node{position:relative;display:flex;flex-direction:column;align-items:center}.person-card-shell{position:relative}.root-row.has-shared-children>.root-branch>.org-node>.person-card-shell:after{content:"";position:absolute;top:100%;left:calc(50% - var(--connector-thickness) / 2);width:var(--connector-thickness);height:var(--root-shared-stem-height);border-radius:999px;background:var(--connector-color);transform-origin:top center;animation:line-grow .45s 80ms ease both}.person-card{position:relative;z-index:1;width:var(--node-card-width);min-height:96px;display:grid;grid-template-columns:var(--avatar-width) minmax(0,1fr);align-items:center;column-gap:10px;padding:10px 12px;border-radius:8px;border:1px solid rgba(95,28,18,.12);border-top:4px solid rgba(183,121,31,.78);color:var(--ink);background:linear-gradient(180deg,#fffffffa,#fffaf3f5);box-shadow:0 14px 28px #25190f1a;transition:transform .32s cubic-bezier(.22,1,.36,1),box-shadow .32s ease,opacity .28s ease,border-color .28s ease,filter .28s ease;animation:node-enter .6s var(--node-delay, 0ms) cubic-bezier(.22,1,.36,1) both;transform-origin:center top}.level-0>.person-card,.level-0>.person-card-shell>.person-card{width:var(--root-card-width);min-height:var(--root-card-height);grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);justify-items:center;align-items:start;row-gap:10px;padding:16px 18px 15px;text-align:center}.level-0>.person-card,.level-0>.person-card-shell>.person-card{border-top-color:var(--brand)}.person-card:hover{transform:translateY(-5px);border-color:#b7791f85;box-shadow:0 22px 42px #5f1c1229}.person-card-shell.is-editable:hover .card-hover-actions,.person-card-shell.is-editable:focus-within .card-hover-actions{opacity:1;transform:translate(-50%);pointer-events:auto}.person-card-shell.is-editable:hover .sibling-add-button,.person-card-shell.is-editable:focus-within .sibling-add-button{opacity:1;pointer-events:auto}.person-card-shell.is-editable:hover .root-reorder-button{opacity:1;pointer-events:auto}.person-card-shell.is-editable:hover .sibling-add-left,.person-card-shell.is-editable:focus-within .sibling-add-left{transform:translateY(-50%)}.person-card-shell.is-editable:hover .sibling-add-right,.person-card-shell.is-editable:focus-within .sibling-add-right{transform:translateY(-50%)}.person-card-shell.is-editable:hover .root-reorder-left,.person-card-shell.is-editable:hover .root-reorder-right{transform:translateY(-50%)}.person-card.is-dragging{opacity:.72;border-color:#486a43b3;box-shadow:0 24px 48px #486a4333,0 0 0 4px #486a431f;cursor:grabbing}.person-card.is-highlighted{border-color:var(--accent);box-shadow:0 24px 48px #8f2e1b29,0 0 0 4px #b7791f29;animation:node-enter .6s var(--node-delay, 0ms) cubic-bezier(.22,1,.36,1) both,highlighted-pulse 1.8s ease-in-out infinite}.person-card.is-faded{opacity:.42;filter:saturate(.8)}.person-avatar{width:var(--avatar-width);height:var(--avatar-height);margin:0;padding:2px;overflow:hidden;border-radius:10px;background:#fff;border:1px solid rgba(95,28,18,.18);box-shadow:0 4px 10px #5f1c120f}.level-0>.person-card .person-avatar,.level-0>.person-card-shell>.person-card .person-avatar{margin:0}.person-avatar img{display:block;width:100%;height:100%;border-radius:7px;object-fit:contain;object-position:center top;image-rendering:auto}.person-content{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left}.person-content h3{margin:0;color:#160f09;font-size:14px;font-weight:800;line-height:1.25}.level-0>.person-card .person-content h3,.level-0>.person-card-shell>.person-card .person-content h3{font-size:18px;line-height:1.2}.level-0>.person-card .person-title,.level-0>.person-card-shell>.person-card .person-title{font-size:14px}.level-0>.person-card .person-avatar,.level-0>.person-card-shell>.person-card .person-avatar{width:var(--root-avatar-width);height:var(--root-avatar-height)}.level-0>.person-card .person-content,.level-0>.person-card-shell>.person-card .person-content{align-items:center;justify-content:center;width:100%;text-align:center}.person-title{margin:0;color:var(--brand);font-size:11px;font-weight:800;line-height:1.35}.person-department{display:block;margin-top:0;padding:0;background:transparent;color:var(--green);font-size:11px;font-weight:700;line-height:1.35}.level-0>.person-card .person-department,.level-0>.person-card-shell>.person-card .person-department{background:transparent;padding:0;color:var(--muted);line-height:1.55}.card-hover-actions{position:absolute;left:50%;bottom:-14px;z-index:2;display:inline-flex;align-items:center;gap:10px;padding:6px 10px;border:1px solid rgba(95,28,18,.08);border-radius:999px;background:#fffdfaf5;box-shadow:0 10px 24px #25190f1f;opacity:0;pointer-events:none;transform:translate(-50%,10px);transition:opacity .22s ease,transform .24s cubic-bezier(.22,1,.36,1)}.sibling-add-button{position:absolute;top:50%;z-index:2;width:28px;height:28px;display:grid;place-items:center;border:2px solid rgba(255,253,250,.96);border-radius:999px;color:#fffaf1;background:linear-gradient(135deg,#4d8d48,#2f6a2b);box-shadow:0 10px 22px #25190f2e;font-size:20px;font-weight:800;line-height:1;opacity:0;pointer-events:none;transition:opacity .22s ease,transform .24s cubic-bezier(.22,1,.36,1),box-shadow .2s ease,filter .2s ease}.sibling-add-button:hover{box-shadow:0 14px 26px #25190f33;filter:saturate(1.06)}.sibling-add-left{left:-14px;transform:translate(-8px,-50%)}.sibling-add-right{right:-14px;transform:translate(8px,-50%)}.root-reorder-button{position:absolute;top:calc(50% - 38px);z-index:2;width:28px;height:28px;display:grid;place-items:center;border:2px solid rgba(255,253,250,.96);border-radius:999px;color:#fffaf1;background:linear-gradient(135deg,#b7791f,#8f2e1b);box-shadow:0 10px 22px #25190f2e;font-size:22px;font-weight:900;line-height:1;opacity:0;pointer-events:none;transition:opacity .22s ease,transform .24s cubic-bezier(.22,1,.36,1),box-shadow .2s ease,filter .2s ease}.root-reorder-button:hover:not(:disabled){box-shadow:0 14px 26px #25190f33;filter:saturate(1.06)}.root-reorder-button:disabled{cursor:not-allowed;filter:grayscale(.25)}.person-card-shell.is-editable:hover .root-reorder-button:disabled{opacity:.38}.root-reorder-left{left:-14px;transform:translate(-8px,-50%)}.root-reorder-right{right:-14px;transform:translate(8px,-50%)}.hover-action-button{width:28px;height:28px;display:grid;place-items:center;border-radius:999px;color:#fffaf1;font-size:20px;font-weight:800;line-height:1;box-shadow:0 8px 18px #25190f29;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.hover-action-button:hover{transform:translateY(-1px) scale(1.04);box-shadow:0 12px 22px #25190f2e}.hover-action-button.add{background:linear-gradient(135deg,#4d8d48,#2f6a2b)}.hover-action-button.remove{background:linear-gradient(135deg,#d34a3d,#a9271d)}.card-actions{display:flex;justify-content:center;gap:8px;margin-top:16px;flex-wrap:wrap}.level-0>.person-card .card-actions{grid-column:1 / -1;justify-content:flex-end;margin-top:12px}.card-action,.primary-button,.secondary-button{padding:9px 13px;border-radius:7px;font-size:13px;font-weight:800;transition:transform .24s ease,box-shadow .24s ease,background-color .24s ease,color .24s ease}.card-action{background:#f7ebd8;color:var(--brand)}.card-action:hover,.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}.card-action.danger{background:#fff0ed;color:#a42b1b}.primary-button{color:#fffaf1;background:linear-gradient(135deg,var(--green),#2f4a2d);box-shadow:0 14px 28px #2f4a2d33}.secondary-button{color:var(--ink);background:#efe3d2}.danger-button{padding:9px 13px;border-radius:7px;color:#fffaf1;background:linear-gradient(135deg,#c84034,#972116);font-size:13px;font-weight:800;box-shadow:0 14px 28px #9721163d;transition:transform .24s ease,box-shadow .24s ease,background-color .24s ease,color .24s ease,opacity .24s ease}.danger-button:hover{transform:translateY(-1px)}.danger-button:disabled,.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.68;transform:none;box-shadow:none}.children-group{position:relative;width:max-content;padding-top:var(--connector-parent-height);transition:opacity .28s ease}.children-group:before{content:"";position:absolute;top:0;left:calc(50% - var(--connector-thickness) / 2);width:var(--connector-thickness);height:var(--connector-parent-height);border-radius:999px;background:var(--connector-color);transform-origin:top center;animation:line-grow .45s calc(var(--node-delay, 0ms) + 80ms) ease both}.root-shared-children{min-width:100%;padding-top:var(--root-shared-child-offset)}.root-shared-children:before{display:none}.children-group.is-faded:before,.children-group.is-faded .child-branch:before,.children-group.is-faded .child-branch:after{opacity:.38}.children-row{position:relative;display:inline-flex;justify-content:center;align-items:flex-start;width:max-content;min-width:100%}.child-branch{position:relative;display:flex;justify-content:center;align-items:center;padding:var(--connector-child-height) var(--child-branch-padding) 0;min-width:calc(var(--node-card-width) + var(--child-branch-padding) * 2)}.child-branch:before,.child-branch:after{content:"";position:absolute;background:var(--connector-color);transition:opacity .28s ease;animation:line-reveal .45s calc(var(--node-delay, 0ms) + .12s) ease both}.child-branch:before{top:0;left:0;right:0;height:var(--connector-thickness);border-radius:999px;transform-origin:center}.child-branch:after{top:0;left:calc(50% - var(--connector-thickness) / 2);width:var(--connector-thickness);height:var(--connector-child-height);border-radius:999px;transform-origin:top center;animation-name:line-grow}.child-branch:first-child:before{left:50%}.child-branch:last-child:before{right:50%}.children-group.single-child .child-branch:before{display:none}.site-footer{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 48px;color:#fffaf1d1;background:linear-gradient(135deg,var(--brand-dark),#2c1b13);font-size:13px}.site-footer span{display:inline-block;width:1px;height:13px;margin:0 16px;vertical-align:-2px;background:#fffaf161}.modal-shell{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:24px;overflow-y:auto}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#25190f6b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.detail-modal{position:relative;width:min(720px,100%);max-height:calc(100vh - 48px);padding:30px;overflow-y:auto;border-radius:12px;border-top:5px solid var(--brand);background:#fffdfafa;box-shadow:0 28px 70px #25190f3d;transform-origin:center top}.detail-modal::-webkit-scrollbar{width:10px}.detail-modal::-webkit-scrollbar-thumb{border-radius:999px;background:#8f2e1b3d}.edit-modal{width:min(840px,100%)}.delete-confirm-modal{width:min(520px,100%);border-top-color:#a9271d}.modal-close{position:absolute;top:18px;right:18px;width:36px;height:36px;border-radius:999px;color:var(--muted);background:#f5eadb}.detail-header{display:flex;align-items:center;gap:22px}.detail-avatar{width:112px;height:156px;padding:3px;overflow:hidden;border-radius:14px;background:#fff;border:1px solid rgba(95,28,18,.18);box-shadow:0 10px 20px #5f1c1214}.detail-avatar img{display:block;width:100%;height:100%;border-radius:10px;object-fit:contain;object-position:center top;image-rendering:auto}.detail-headline h2{margin:0;font-size:30px;font-weight:800}.detail-title{margin:8px 0 0;font-size:16px;font-weight:700;color:var(--brand)}.detail-tag{display:inline-flex;margin-top:14px;padding:8px 12px;border-radius:7px;background:var(--brand-soft);color:var(--green);font-size:13px;font-weight:800}.detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:28px}.detail-item{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid rgba(95,28,18,.1);border-radius:8px;background:#fffaf3}.detail-item span{color:var(--muted);font-size:13px;font-weight:800}.detail-item strong{color:var(--ink);font-size:17px;font-weight:800;line-height:1.4;word-break:break-word}.edit-form{margin-top:28px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-field{display:flex;flex-direction:column;gap:8px}.form-field span{font-size:13px;font-weight:800;color:var(--ink)}.form-field input,.form-field textarea{width:100%;padding:13px 14px;border:1px solid rgba(95,28,18,.16);border-radius:8px;background:#fffaf3;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.form-field input:focus,.form-field textarea:focus{border-color:#b7791f8c;box-shadow:0 0 0 4px #b7791f24;background:#fff}.form-field textarea{resize:vertical;min-height:112px}.textarea-field{margin-top:16px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}.delete-confirm-content{display:flex;flex-direction:column;align-items:center;text-align:center}.delete-confirm-badge{width:54px;height:54px;display:grid;place-items:center;margin-bottom:14px;border-radius:999px;color:#fffaf1;background:linear-gradient(135deg,#d34a3d,#a9271d);font-size:28px;font-weight:900;box-shadow:0 16px 30px #a9271d3d}.delete-confirm-content h2{margin:0;color:#2a120d;font-size:28px;font-weight:800}.delete-confirm-name{margin:14px 0 0;color:var(--brand);font-size:20px;font-weight:800}.delete-confirm-text{margin:14px 0 0;color:var(--muted);font-size:15px;line-height:1.75}.delete-confirm-footer{justify-content:center}.search-dropdown-enter-active,.search-dropdown-leave-active{transition:opacity .2s ease,transform .24s cubic-bezier(.22,1,.36,1)}.search-dropdown-enter-from,.search-dropdown-leave-to{opacity:0;transform:translateY(-8px) scale(.98)}.tree-swap-enter-active,.tree-swap-leave-active{transition:opacity .32s ease,transform .38s cubic-bezier(.22,1,.36,1)}.tree-swap-enter-from,.tree-swap-leave-to{opacity:0;transform:translateY(18px) scale(.985)}.modal-fade-enter-active,.modal-fade-leave-active{transition:opacity .24s ease}.modal-fade-enter-from,.modal-fade-leave-to{opacity:0}.modal-card-enter-active,.modal-card-leave-active{transition:opacity .28s ease,transform .34s cubic-bezier(.22,1,.36,1)}.modal-card-enter-from,.modal-card-leave-to{opacity:0;transform:translateY(26px) scale(.96)}@keyframes node-enter{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes line-grow{0%{opacity:0;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}@keyframes line-reveal{0%{opacity:0;transform:scaleX(.4)}to{opacity:1;transform:scaleX(1)}}@keyframes highlighted-pulse{0%,to{box-shadow:0 24px 48px #8f2e1b29,0 0 0 4px #b7791f29}50%{box-shadow:0 28px 52px #8f2e1b2e,0 0 0 8px #b7791f14}}@media(prefers-reduced-motion:reduce){.person-card,.person-card.is-highlighted,.card-hover-actions,.sibling-add-button,.hover-action-button,.root-row.has-shared-children>.root-branch:before,.root-row.has-shared-children:after,.root-row.has-shared-children>.root-branch>.org-node>.person-card-shell:after,.children-group:before,.child-branch:before,.child-branch:after{animation:none!important}.campus-button,.person-card,.card-hover-actions,.sibling-add-button,.hover-action-button,.search-dropdown-enter-active,.search-dropdown-leave-active,.tree-swap-enter-active,.tree-swap-leave-active,.modal-fade-enter-active,.modal-fade-leave-active,.modal-card-enter-active,.modal-card-leave-active{transition-duration:.01ms!important}}@media(max-width:1100px){:root{--root-card-width: 204px;--root-card-height: 150px}.topbar{grid-template-columns:1fr;gap:12px}.page-title{justify-self:start;align-items:flex-start}.toolbar{grid-template-columns:1fr}.toolbar-actions{justify-content:stretch}.search-box{width:100%}}@media(max-width:720px){:root{--node-card-width: 152px;--child-branch-padding: 10px}.app-shell{background:radial-gradient(circle at top right,rgba(255,224,198,.34),transparent 28%),linear-gradient(180deg,#fffdfa,#f8f0e4)}.topbar{position:relative;min-height:auto;grid-template-columns:1fr auto;align-items:start;gap:14px 10px;padding:18px 16px 10px;border-bottom:0;box-shadow:none;background:transparent}.brand-block h1{font-size:18px;letter-spacing:0;line-height:1.35}.mobile-search-toggle{width:40px;height:40px;display:grid;place-items:center;align-self:center;border-radius:999px;color:var(--ink);background:#ffffffdb;box-shadow:0 10px 24px #25190f14;font-size:18px}.mobile-search-toggle.active{color:#fffaf1;background:linear-gradient(135deg,var(--brand),#7c2a18)}.page-title{grid-column:1 / -1;align-items:center;justify-self:stretch;padding-top:2px;font-size:14px;text-align:center}.page-title span{font-size:16px}.canvas-area{padding:6px 12px 18px}.campus-switch{align-items:stretch;flex-wrap:wrap;gap:8px;font-size:12px}.switch-label{width:100%;font-size:12px}.campus-button{min-width:0;min-height:36px;flex:1 1 calc(33.333% - 8px);gap:5px;padding:8px 10px;box-shadow:0 8px 18px #25190f0d}.campus-button span{font-size:12px}.pin-icon{width:14px;height:14px;font-size:12px}.toolbar{gap:14px;margin-bottom:16px;padding:14px 12px;border-radius:20px}.toolbar-actions{display:flex;flex-direction:column;align-items:center;gap:10px}.toolbar-edit-button{width:min(100%,200px);min-height:38px;padding:0 12px;font-size:12px}.search-box{width:100%;justify-self:stretch;min-height:0;max-height:0;overflow:hidden;opacity:0;border-width:0;box-shadow:none;transition:max-height .24s ease,opacity .24s ease,border-width .24s ease,margin-top .24s ease}.search-box.is-mobile-open{min-height:42px;max-height:52px;overflow:visible;opacity:1;border-width:1px;box-shadow:0 10px 24px #25190f12}.search-icon{width:38px;font-size:18px}.search-box input{padding:0 10px 0 0;font-size:13px}.search-submit{min-width:62px;padding:0 12px;font-size:12px}.search-clear{right:66px;width:22px;height:22px;margin-top:-11px}.editor-actions{flex-direction:column;align-items:stretch}.status-note{justify-content:flex-start;border-radius:8px}.tree-stage{width:100%;height:min(72vh,620px);min-height:500px;border-radius:22px;background:linear-gradient(90deg,rgba(143,46,27,.03) 1px,transparent 1px),linear-gradient(180deg,rgba(143,46,27,.03) 1px,transparent 1px),#fffc;background-size:24px 24px}.tree-stage-content{width:max-content;min-width:max-content;padding:34px 42px 38px}.person-card{min-height:88px;grid-template-columns:42px minmax(0,1fr);column-gap:8px;padding:8px 10px}.card-hover-actions{gap:8px;padding:5px 8px}.sibling-add-button{width:26px;height:26px;font-size:18px}.sibling-add-left{left:-13px}.sibling-add-right{right:-13px}.hover-action-button{width:26px;height:26px;font-size:18px}.person-avatar{width:44px;height:62px}.person-content h3{font-size:13px}.person-title,.person-department{font-size:10px}.level-0>.person-card,.level-0>.person-card-shell>.person-card{width:var(--root-card-width);min-height:var(--root-card-height);grid-template-columns:1fr;row-gap:9px;padding:14px 16px}.level-0>.person-card .person-avatar,.level-0>.person-card-shell>.person-card .person-avatar{width:58px;height:82px}.level-0>.person-card .person-content h3,.level-0>.person-card-shell>.person-card .person-content h3{font-size:17px}.level-0>.person-card .person-title,.level-0>.person-card .person-department,.level-0>.person-card-shell>.person-card .person-title,.level-0>.person-card-shell>.person-card .person-department{font-size:13px}.site-footer{justify-content:center;padding:12px 18px 16px;background:transparent;color:#b8a998;font-size:11px}.form-grid{grid-template-columns:1fr}.detail-header{align-items:flex-start;flex-direction:column}.detail-modal{max-height:calc(100vh - 24px);padding:22px}}
