/* 交流页：轻量话题目录与紧凑通讯录，沿用观澜纸色与深绿。 */
.ct-mask{position:fixed;inset:0;background:rgba(31,47,37,.3);z-index:330;display:none;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(8px)}
.ct-mask.show{display:flex}
.ct-modal{background:#FCFAF3;border:1px solid #DADFD2;border-radius:8px;width:100%;max-width:1120px;height:92vh;max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;position:relative;box-shadow:0 24px 80px rgba(20,40,28,.2);animation:pop .22s ease;scroll-padding-top:80px}
.ct-topbar{display:flex;align-items:center;gap:10px;position:sticky;top:0;z-index:12;padding:18px 72px 18px 42px;border-bottom:1px solid var(--line);background:#FCFAF3;color:var(--green);font-size:12px;letter-spacing:1px}
.ct-brand-mark{display:block;width:28px;height:18px;overflow:hidden;flex:none}
.ct-topbar img{height:100%;width:auto;max-width:none;display:block}
.ct-modal .ct-topbar .modal-close{top:50%;right:24px;transform:translateY(-50%);width:32px;height:32px;background:transparent;color:var(--green);border-color:#D7DFD2}
.ct-body{padding:28px 42px 26px}
.ct-heading{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:30px;align-items:center;margin-bottom:28px}
.ct-heading-main{grid-column:span 7;min-width:0}
.ct-heading h2{font:700 34px/1.4 var(--serif);letter-spacing:2px;color:var(--ink);margin:0 0 10px}
.ct-intro{font-size:13px;color:#73766C;line-height:1.85;max-width:430px}
.ct-how{grid-column:span 5;min-width:0;padding-left:24px;border-left:1px solid #CDD7C8}
.ct-how strong{display:block;font:600 15px/1.7 var(--serif);color:var(--green);margin-bottom:7px}
.ct-how p{font-size:12px;line-height:1.85;color:#757D6D}
.ct-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:5px}
.ct-section-head h3{font:600 16px/1.6 var(--serif);letter-spacing:1px;color:var(--green)}
.ct-section-head p{font-size:11.5px;color:#838778;line-height:1.7}
.ct-topics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24px;row-gap:0}
.ct-topic{min-width:0;border-bottom:1px solid #DEDFD3;transition:background .18s}
.ct-topic-trigger{display:block;width:100%;min-height:126px;padding:18px 4px 17px;border:0;background:none;text-align:left;font:inherit;cursor:pointer}
.ct-topic-label{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.ct-topic h4{font:600 18px/1.6 var(--serif);letter-spacing:.5px;color:var(--ink);flex:1;min-width:0}
.ct-topic-name{flex:1;min-width:0}
.ct-topic-symbol{position:relative;display:block;width:26px;height:26px;flex:none;border:1px solid #D6DECF;border-radius:50%;color:var(--green);transition:background .18s,transform .18s}
.ct-topic-symbol::before,.ct-topic-symbol::after{content:"";position:absolute;left:7px;right:7px;top:11px;height:1px;background:currentColor}
.ct-topic-symbol::after{transform:rotate(90deg);transition:transform .18s}
.ct-topic-summary{display:block;font-family:var(--sans);font-weight:400;letter-spacing:0;font-size:12px;line-height:1.85;color:#697263;max-width:29em}
.ct-topic-trigger:hover h4,.ct-topic.open h4{color:var(--green)}
.ct-topic-trigger:hover .ct-topic-symbol{background:#E6EDE0;border-color:#BBCBB3}
.ct-topic-trigger:focus-visible,.ct-copy:focus-visible,.d-contact:focus-visible{outline:2px solid var(--green);outline-offset:4px;border-radius:3px}
.ct-topic.open{grid-column:1/-1;background:#F0F3E9;border-bottom-color:#BDCBB4;padding:0 20px;margin:8px 0}
.ct-topic.open .ct-topic-trigger{min-height:0;padding:17px 0 13px}
.ct-topic.open .ct-topic-summary{max-width:none}
.ct-topic.open .ct-topic-symbol::after{transform:rotate(0)}
.ct-detail{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px;border-top:1px solid #D6DECB;padding:16px 0 20px}
.ct-detail[hidden]{display:none}
.d-body{grid-column:span 8;min-width:0;font:14px/1.95 var(--serif);color:#515C49}
.d-body b{font-weight:600;color:#315E3E}
.d-find{grid-column:span 4;min-width:0;padding-left:24px;border-left:1px solid #D6DECB}
.d-find p{font-size:11px;color:#7A836E;margin:0 0 4px}
.d-contact{display:block;border:0;background:none;padding:6px 0;text-align:left;color:var(--green);font:600 14px/1.7 var(--serif);cursor:pointer}
.d-contact span{display:block;font:11.5px/1.7 var(--sans);font-weight:400;color:#727E66;margin-top:2px}
.ct-dir{margin-top:28px}
.ct-dir-head{margin-bottom:18px}
.ct-dir-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}
.ct-person{min-width:0;padding:4px 17px 8px;border-left:1px solid #DFE1D4;scroll-margin-top:90px;transition:background .18s}
.ct-person:first-child{border-left:0;padding-left:0}
.ct-person:last-child{padding-right:0}
.ct-person.is-suggested{background:#EBF1E4;outline:7px solid #EBF1E4;border-left-color:transparent;border-radius:2px}
.ct-person-head{display:flex;align-items:center;gap:10px;margin-bottom:13px}
.ct-ava{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#EDF1E5;color:#426443;font:600 17px/1 var(--serif)}
.p-info{min-width:0}
.p-name{display:block;font:600 16px/1.65 var(--serif);color:#303B2D}
.p-role{display:block;font-size:10.5px;line-height:1.7;color:#7B8572;white-space:nowrap}
.p-line{font:11px/1.8 var(--sans);color:#7A7F71;overflow-wrap:anywhere}
.p-line span{display:block;color:#959989;font-size:10px;margin-bottom:1px}
.ct-copy{margin-top:11px;border:0;background:none;color:var(--green);padding:5px 0;min-height:32px;font:12px/1.5 var(--sans);cursor:pointer;border-bottom:1px solid #B6C7AB}
.ct-copy:hover{border-bottom-color:var(--green)}
.ct-copy:disabled{cursor:wait;opacity:.65}
.ct-tip{margin-top:24px;padding-top:14px;border-top:1px solid var(--line);font:12px/1.8 var(--serif);letter-spacing:.5px;color:#858B79}
.ct-feedback{color:var(--green);font:12px/1.8 var(--sans)}
.ct-feedback:empty{display:none}
@media(max-width:1000px){.ct-body{padding:25px 30px}.ct-topbar{padding-left:30px}.ct-topics{column-gap:20px}.ct-topic h4{font-size:17px}.ct-topic-trigger{min-height:130px}.ct-person{padding-left:12px;padding-right:12px}.ct-person-head{gap:7px}.ct-ava{width:30px;height:30px;font-size:15px}.p-name{font-size:15px}.p-role{font-size:10px}.p-line{font-size:10.5px}}
@media(min-width:761px) and (max-height:850px){.ct-body{padding:24px 36px 20px}.ct-heading{margin-bottom:20px}.ct-topic-trigger{min-height:108px}.ct-dir{margin-top:22px}.ct-dir-head{margin-bottom:14px}.ct-tip{margin-top:18px}}
@media(max-width:760px){.ct-heading{gap:20px}.ct-heading-main{grid-column:span 12}.ct-heading h2{font-size:30px}.ct-how{grid-column:span 12;padding:0;border:0}.ct-how strong{font-size:13px;display:inline;margin:0 10px 0 0}.ct-how p{display:inline}.ct-topics{grid-template-columns:repeat(2,minmax(0,1fr))}.ct-dir-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 0}.ct-person:nth-child(odd){border-left:0;padding-left:0}.ct-person:nth-child(even){padding-left:22px}.ct-person-head{gap:10px}.ct-ava{width:36px;height:36px;font-size:17px}.p-name{font-size:16px}.p-role{font-size:11px}.p-line{font-size:12px}.d-body,.d-find{grid-column:span 12}.d-find{border:0;padding:0}.ct-detail{gap:14px}.ct-copy{min-height:40px}.ct-dir-head{align-items:flex-start;flex-direction:column;gap:5px}.ct-dir-head p{max-width:28em}}
@media(max-width:480px){.ct-mask{padding:10px}.ct-modal{height:calc(100dvh - 20px);max-height:calc(100dvh - 20px)}.ct-topbar{padding:16px 64px 16px 22px;font-size:11px}.ct-modal .ct-topbar .modal-close{right:18px}.ct-body{padding:24px 22px}.ct-heading{margin-bottom:25px;gap:16px}.ct-heading h2{font-size:28px}.ct-how strong{display:block;margin-bottom:4px}.ct-section-head{gap:6px}.ct-section-head p{font-size:10.5px}.ct-topics{grid-template-columns:minmax(0,1fr)}.ct-topic-trigger{min-height:0;padding:17px 1px}.ct-topic h4{font-size:18px}.ct-topic-summary{font-size:12px}.ct-topic.open{padding:0 14px}.ct-topic.open .ct-topic-trigger{padding-top:15px}.ct-detail{padding:14px 0 17px}.d-body{font-size:13.5px}.ct-dir{margin-top:27px}.ct-person:nth-child(even){padding-left:14px}.ct-person{padding-right:10px}.ct-person-head{gap:8px}.ct-tip{margin-top:22px}}
