*{box-sizing:border-box}body{margin:0;background:#f4f6f8;color:#24394a;font:16px system-ui,sans-serif}aside{position:fixed;width:245px;height:100vh;background:#123a43;color:white;padding:32px 24px}.brand{font-size:38px;font-weight:800}.brand span{color:#73d4ba}aside p{font-size:11px;letter-spacing:1.5px;line-height:1.8;opacity:.8}nav{display:grid;gap:8px;margin-top:40px}button,.button{font:inherit;border:1px solid #cbd5db;background:white;color:#24394a;border-radius:8px;padding:10px 15px;cursor:pointer}nav button{text-align:left;background:transparent;color:white;border:0}nav button.active{background:#27606a}aside small{position:absolute;bottom:30px;left:24px;right:24px;line-height:1.6;opacity:.7}main{margin-left:245px;padding:38px 44px;max-width:1600px}header{display:flex;align-items:center;justify-content:space-between}h1{font-size:32px;margin:8px 0 24px}h2{font-size:20px}.eyebrow{font-size:11px;letter-spacing:2px;color:#537578}.notice{background:#e7eff3;padding:13px 18px;border-radius:8px;font-size:13px;margin-bottom:24px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card,section{background:white;border:1px solid #e0e6ea;border-radius:12px;padding:24px;margin-bottom:20px}.card strong{display:block;font-size:32px;margin:12px 0}.card small{color:#617782}.accent{background:#dff2eb}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:10px}.primary{background:#176759;color:white;border-color:#176759}table{width:100%;border-collapse:collapse;text-align:left}td,th{padding:13px 10px;border-bottom:1px solid #e9edf0;font-size:14px}th{color:#607582;font-size:12px}progress{width:100%;height:8px;accent-color:#21806e}.negative{color:#b13e30;font-weight:700}.muted{color:#6b7b84;font-size:14px}.pill{background:#edf3f4;border-radius:20px;padding:4px 10px;font-size:12px}input,select,textarea{font:inherit;padding:10px;border:1px solid #bccbd2;border-radius:7px;max-width:100%;background:white}#year{width:100px}label{display:block;font-size:14px}dialog{border:0;border-radius:14px;width:520px;max-width:95vw;padding:28px}dialog::backdrop{background:#123a4366}#fields label{margin:13px 0}#fields input,#fields select,#fields textarea{display:block;width:100%;margin-top:6px}.buttons{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}footer{margin-top:24px;font-size:12px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}button:focus-visible,a:focus-visible{outline:3px solid #df9d28}td button{padding:5px 8px;font-size:12px;margin:2px}.empty{padding:35px;text-align:center;color:#667d88}@media(max-width:900px){aside{position:static;width:auto;height:auto;padding:18px}aside small,aside p{display:none}nav{display:flex;flex-wrap:wrap;margin:10px 0}main{margin:0;padding:20px}.cards{grid-template-columns:repeat(2,1fr)}section{overflow:auto}header{align-items:start}.brand{font-size:26px}}
.directory-controls{display:flex;gap:18px;align-items:end;flex-wrap:wrap}.directory-controls select,.directory-controls input{display:block;margin-top:6px}.people-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:20px}.person-card{background:white;border:1px solid #dde6e9;border-radius:14px;overflow:hidden;break-inside:avoid}.portrait{width:100%;height:230px;object-fit:contain;background:#e7eeec;display:block}.placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:48px;color:#376e65}.placeholder small{font-size:13px;margin-top:10px}.person-info{padding:20px}.person-info h2{margin:0;font-size:20px}.structure{min-height:40px;font-size:14px}.social-links{display:grid;gap:8px;margin:14px 0;font-size:13px;overflow-wrap:anywhere}.social-links a{color:#116357}.card-actions{display:flex;gap:8px;margin-top:15px}.card-actions button{font-size:12px;padding:8px}.print-heading{display:none}details{margin-top:20px;font-size:14px;overflow-wrap:anywhere}@media print{@page{size:A4;margin:12mm}aside,header,footer,.notice,.directory-head,.no-print,dialog{display:none!important}main{margin:0;padding:0;max-width:none}.print-heading{display:block}.print-heading h1{font-size:22px}.people-grid{grid-template-columns:repeat(3,1fr);gap:10px}.person-card{border:1px solid #aaa;border-radius:4px}.portrait{height:135px}.person-info{padding:10px}.person-info h2{font-size:14px}.structure{min-height:0;font-size:11px}.social-links{font-size:9px;gap:4px}body{background:white}.pill{display:none}}
.search-launch{display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px 20px;margin:0 0 20px;color:#526b77;box-shadow:0 3px 12px #123a4308}.search-launch:hover{border-color:#21806e}kbd{font:12px system-ui;background:#edf3f4;border:1px solid #d7e1e5;border-radius:5px;padding:3px 7px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#global-search{width:760px;padding:0;max-height:85vh;overflow:hidden}#global-search::backdrop{background:#123a4380;backdrop-filter:blur(3px)}.search-top{display:flex;align-items:center;gap:12px;padding:20px;border-bottom:1px solid #e0e6ea}.search-top>span{font-size:30px;color:#176759}.search-top input{width:100%;border:0;font-size:18px;min-width:0}.search-options{display:flex;gap:18px;padding:16px 20px;flex-wrap:wrap;align-items:center;background:#f5f8f9}.search-options label{display:flex;align-items:center;gap:8px;font-size:12px}.search-options input{accent-color:#176759}.search-options select{font-size:13px;padding:6px}#search-count{margin:12px 24px;color:#647985;font-size:12px}#search-results{max-height:48vh;overflow:auto;padding:0 12px 10px}.search-result{display:flex;align-items:center;gap:14px;text-align:left;width:100%;border:0;padding:14px;margin:3px 0}.search-result:hover,.search-result:focus{background:#e7f3ef;outline:2px solid #21806e}.search-result>span:nth-child(2){flex:1;min-width:0}.search-result strong,.result-subtitle,.search-result small{display:block}.search-result strong{font-size:15px;margin:3px 0;overflow-wrap:anywhere}.search-result small{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#497167}.result-subtitle{font-size:12px;color:#647985}.result-icon{background:#edf5f2;width:36px;height:36px;display:grid;place-items:center;color:#176759;border-radius:9px}.search-help{padding:12px 24px;margin:0;border-top:1px solid #e0e6ea;font-size:12px;color:#647985}.structure-members{display:grid;gap:10px}.structure-members button{text-align:left}.structure-members span{display:block;font-size:12px;margin-top:5px}
.plan-warning{background:#fff3dc;color:#795018;padding:14px 18px;border-radius:8px}.plan-table td:first-child{width:52%;min-width:240px}.plan-table details{font-size:12px;margin-top:8px}.plan-table td{vertical-align:top}.plan-table summary{cursor:pointer;color:#497167}
.structure-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:20px}.structure-card{padding:24px;border:1px solid #dde6e9;border-radius:16px;background:white;break-inside:avoid}.structure-logo{width:100px;height:85px;object-fit:contain;display:block;margin-bottom:14px}.logo-empty{background:#edf3f0;border:1px dashed #b6cdc5;border-radius:14px;color:#467a6d;display:grid;place-items:center;font-weight:700;font-size:25px}.text-link{padding:0;border:0;background:none;color:#126b62;text-align:left;font-weight:650}.text-link:hover{text-decoration:underline}.member-list{display:grid;gap:10px}.person-chip{display:flex;align-items:center;gap:12px;text-align:left;padding:8px;font-size:14px}.person-chip .portrait{width:42px;height:48px;object-fit:cover;border-radius:8px;flex-shrink:0;font-size:18px}.person-chip .portrait small{display:none}.person-chip span small{display:block;color:#617782;font-size:11px;margin-top:4px}.structure-card h2{line-height:1.5}.chart-layout{display:flex;gap:40px;align-items:center;flex-wrap:wrap}.type-chart{width:240px;max-width:100%;flex-shrink:0}.chart-legend{flex:1;min-width:220px}.chart-legend>div{display:grid;grid-template-columns:10px 1fr auto;gap:12px;align-items:center;margin:15px 0;font-size:14px}.legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.chart-bar{grid-column:2/4;height:10px;background:#edf1f2;border-radius:6px;overflow:hidden}.chart-bar span{display:block;height:100%;border-radius:6px}.pending-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.pending-grid>div{border:1px solid #dbe6e3;padding:18px;border-radius:12px;display:grid;gap:12px}.pending-grid .structure-logo{width:64px;height:50px;margin:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}#fields .check{display:flex;gap:10px;align-items:center}#fields .check input{width:auto;margin:0}fieldset{border:1px solid #ccdcd6;border-radius:10px;margin:18px 0}legend{font-size:13px;padding:0 8px}.table-scroll{overflow:auto}.report-buttons{display:flex;gap:8px;flex-wrap:wrap}#structure-report{width:1100px;max-height:94vh;overflow:auto}#structure-report .toolbar{position:sticky;top:-28px;background:white;padding:15px 0;z-index:1}.report-logo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.report-logo-grid article,.report-visit{border:1px solid #dce5e2;border-radius:12px;padding:18px;break-inside:avoid;margin-bottom:16px}.report-logo-grid h3{font-size:16px}.report-logo-grid p{font-size:13px}.preserve-lines{white-space:pre-wrap}button{touch-action:manipulation}#fields textarea{min-height:100px}nav{margin-top:22px;gap:3px}aside{overflow-y:auto}aside small{position:static;display:block;margin-top:28px}.visit-stats .card{min-width:0}.visit-stats small{display:block}@media(max-width:600px){.cards{grid-template-columns:1fr 1fr;gap:8px}.card{padding:14px}.toolbar{flex-wrap:wrap}.report-logo-grid{grid-template-columns:1fr}.chart-layout{gap:14px}.chart-legend{min-width:180px}.structure-grid{grid-template-columns:1fr}.person-chip{width:100%}}@media print{body.printing-structure-report>main,body.printing-structure-report>aside{display:none!important}body.printing-structure-report #structure-report{display:block!important;position:static;max-height:none;width:auto;max-width:none;padding:0;overflow:visible;border:0}body.printing-structure-report #structure-report::backdrop{display:none}.report-logo-grid{grid-template-columns:repeat(3,1fr)}.chart-layout,.report-visit{break-inside:avoid}.chart-legend>div{font-size:11px}.type-chart{width:180px}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
#structure-print{display:none}@media print{body.printing-structure-report #structure-report[open]{display:none!important}body.printing-structure-report #structure-print{display:block;margin:0;padding:0}#structure-print h1{font-size:24px;margin-top:0}#structure-print h2,#structure-print h3{break-after:avoid}#structure-print .report-visit{break-inside:auto}}
.annual-visit-summary{background:#e1f2ec;border:1px solid #afd4c5;border-radius:14px;padding:24px;display:flex;gap:26px;align-items:center;margin-bottom:24px}.annual-visit-number{font-size:64px;font-weight:800;line-height:1;color:#126b62;min-width:90px;text-align:center}.annual-visit-summary h3{margin:0 0 10px;font-size:20px}.annual-visit-summary p{margin:8px 0}.annual-visit-summary small{color:#476c61}@media(max-width:600px){.annual-visit-summary{align-items:flex-start;gap:14px;padding:16px}.annual-visit-number{font-size:46px;min-width:50px}.annual-visit-summary h3{font-size:17px}.annual-visit-summary p{font-size:13px}}
