:root{--brand:#c82240;--brand-dark:#a91934;--ink:#191e29;--muted:#707886;--line:#e7e8ec;--paper:#f7f6f4;--rose:#fae9ed;--gold:#fff1bc;font:15px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;background:var(--brand);color:white;border:1px solid var(--brand);padding:.7rem 1.1rem;border-radius:7px;font-weight:650;cursor:pointer;text-decoration:none;white-space:nowrap}button:hover,.button:hover{background:var(--brand-dark);text-decoration:none}.secondary{background:white;color:var(--brand);border-color:#dcc5cb}.secondary:hover{background:var(--rose)}.plain{border:0;background:transparent;color:var(--ink);font-weight:500;justify-content:flex-start}.plain:hover{background:var(--rose);color:var(--brand)}input,select,textarea{width:100%;border:1px solid #d9dce3;border-radius:6px;background:white;color:var(--ink);padding:.6rem .8rem;min-width:0}input::placeholder{color:#969ba5}input:disabled,select:disabled{background:#f8f8f8;color:#737985}input[type=checkbox]{width:auto}label{display:flex;flex-direction:column;gap:.4rem;font-weight:600}.icon{width:22px;height:22px;flex-shrink:0;vertical-align:middle}.topbar{background:white;border-bottom:1px solid var(--line);height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;gap:1rem}.brand{display:flex;align-items:center;gap:16px;color:var(--ink);font-size:25px;font-weight:750;letter-spacing:-.6px}.brand:hover{text-decoration:none}.brand-mark{display:flex;align-items:center;justify-content:center;width:48px;height:52px;border-radius:7px;background:var(--brand);color:white;font-weight:750;font-size:29px;letter-spacing:-3px;padding-right:3px}.topbar-right{display:flex;align-items:center;gap:18px}.account-name{display:flex;align-items:center;gap:12px;font-weight:650}.account-name small{display:block;color:var(--muted);font-weight:400;font-size:12px}.account-name>.icon{height:36px;width:36px;background:var(--rose);color:var(--brand);padding:7px;border-radius:50%}.sidebar{position:fixed;top:106px;bottom:22px;left:22px;width:244px;background:white;border:1px solid var(--line);border-radius:11px;padding:18px 10px;display:flex;flex-direction:column;justify-content:space-between}.sidebar nav{display:grid;gap:8px}.sidebar nav>a{display:flex;align-items:center;gap:14px;padding:14px 16px;color:var(--ink);border-radius:7px}.sidebar nav>a.active{color:var(--brand);background:var(--rose);font-weight:700}.sidebar nav>a:hover{background:#faf0f3;text-decoration:none}.logout-form{border-top:1px solid var(--line);padding-top:12px}.main-content{margin:28px 28px 55px 298px;max-width:1600px}.page-title{display:flex;justify-content:space-between;align-items:center;margin:20px 0 26px}.page-title h1,h1{font-size:32px;line-height:1.2;letter-spacing:-1px;margin:0 0 10px}.page-title p{color:var(--muted);font-size:17px;margin:0}h2{font-size:22px;line-height:1.3;margin:0 0 15px;letter-spacing:-.4px}h3{font-size:19px;margin:0 0 8px}.card{background:white;border:1px solid var(--line);border-radius:10px;padding:25px;margin:22px 0;box-shadow:0 3px 20px #181c251f}.card.editor{padding:0;overflow:hidden;box-shadow:none}.tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);padding:0 18px;margin-bottom:24px;overflow:auto}.tabs a{padding:18px 15px;color:#59606d;white-space:nowrap;border-bottom:3px solid transparent}.tabs a.active{font-weight:700;color:var(--brand);border-bottom-color:var(--brand)}.editor>.edit-form{padding:0 22px 20px}.filter-card{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;background:white;border:1px solid var(--line);border-radius:10px;padding:25px;margin:18px 0 30px}.filter-actions{grid-column:1/-1;display:flex;align-items:center;gap:20px}.filter-actions select{margin-left:auto;width:170px}.search-input{position:relative}.search-input input{padding-left:38px}.search-input .icon{position:absolute;top:11px;left:11px;color:var(--muted);width:19px}.result-line{display:flex;align-items:center;gap:20px;margin:30px 0 18px}.result-line h2{margin:0}.entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.entry-card{display:grid;grid-template-columns:100px 1fr;gap:22px;background:white;border:1px solid var(--line);border-radius:10px;padding:22px}.entry-card h2{font-size:21px;margin:0 0 10px}.entry-symbol{display:flex;align-items:center;justify-content:center;min-height:110px;background:linear-gradient(140deg,var(--gold),#fff8e2);color:var(--brand);border-radius:9px}.entry-symbol .icon{width:50px;height:50px}.entry-link{display:flex;align-items:center;gap:12px;font-weight:600}.entry-link .icon{width:19px}.badges{display:flex;gap:8px;flex-wrap:wrap}.badge{display:inline-block;font-size:12px;padding:5px 11px;border-radius:7px;background:#eeedf3;color:#434b5b;white-space:nowrap}.rose{background:var(--rose);color:var(--brand)}.gold{background:var(--gold);color:#80531a}.green{background:#dbf5e5;color:#116441}.muted{color:var(--muted)}.empty{text-align:center;padding:45px}.empty>.icon{width:45px;height:45px;color:var(--brand);margin:0 0 20px}.field-table{border:1px solid var(--line);border-radius:5px;overflow:hidden}.field-row,.field-head{display:grid;grid-template-columns:minmax(145px,1fr) minmax(200px,2.1fr) minmax(140px,1.2fr) 43px;align-items:center;gap:16px;padding:7px 12px;border-bottom:1px solid var(--line)}.field-head{background:#f6f5f4;font-weight:650;padding:12px}.field-row:last-child{border-bottom:0}.field-row label{font-weight:450}.field-row input,.field-row select{padding:.4rem .6rem}.field-row textarea{width:100%}.icon-button{border:1px solid #d9dce3;border-radius:5px;display:flex;align-items:center;justify-content:center;width:33px;height:33px;color:var(--ink);background:white}.icon-button:hover{background:var(--rose);color:var(--brand)}.visibility-label{font-size:13px;display:flex;gap:6px;align-items:center;color:var(--muted)}.visibility-label .icon{width:17px}.form-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:22px 0 0;flex-wrap:wrap}.form-footer p{font-size:12px;margin:0}.form-footer p .icon{width:17px}.button-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.contact-editor{display:grid;grid-template-columns:230px minmax(0,1fr);gap:22px;padding:0 22px 22px}.contact-list{border-right:1px solid var(--line);padding-right:15px}.contact-list>a{display:flex;align-items:center;gap:10px;margin:0 0 9px;padding:12px;color:var(--ink);border-left:3px solid transparent}.contact-list>a.active{background:var(--rose);border-left-color:var(--brand);color:var(--brand);font-weight:650;border-radius:4px}.contact-list form{border-top:1px solid var(--line);margin-top:28px;padding-top:15px}.contact-list button{width:100%;font-size:13px}.inline-form{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:20px 0}.inline-form label{flex:1;min-width:160px}.inline-form .checkbox{min-width:90px;flex:0;white-space:nowrap}.checkbox{display:flex;flex-direction:row;align-items:center;font-weight:400}.photo-panel{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.photo-preview{width:96px;height:96px;display:flex;justify-content:center;align-items:center;border-radius:50%;overflow:hidden;background:var(--rose);color:var(--brand)}.photo-preview img,.avatar img{width:100%;height:100%;object-fit:cover}.photo-preview .icon{width:48px;height:48px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px;text-align:left}th{background:#f6f5f4;font-weight:650;white-space:nowrap}td,th{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top}td select{min-width:120px}td{overflow-wrap:anywhere}details summary{cursor:pointer;font-weight:650;display:flex;align-items:center;gap:10px}.notice{border:1px solid #b7dac4;background:#edf8f0;border-radius:7px;padding:14px 18px;margin-bottom:20px}.notice.error{background:#fff0f1;border-color:#f0c4cc;color:#9f1831}.back{display:inline-block;margin:0 0 22px}.detail-heading{display:flex;gap:25px;align-items:center;margin:8px 0 30px}.detail-heading h1{font-size:39px}.detail-heading .entry-symbol{width:130px;height:130px;flex-shrink:0}.contact-card{display:flex;align-items:start;gap:22px;padding:25px;border:1px solid var(--line);border-radius:10px;background:white}.contact-card p{margin:5px 0}.contact-card .button{margin-top:20px}.avatar{width:66px;height:66px;border-radius:50%;background:var(--rose);color:var(--brand);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.avatar .icon{width:34px;height:34px}.site-footer{margin:30px 30px 20px 298px;display:flex;justify-content:space-between;color:var(--muted);font-size:12px;gap:15px}.site-footer nav{display:flex;gap:20px}.site-footer a{color:var(--muted)}.public-layout .main-content{max-width:1320px;margin:0 auto 50px;padding:0 25px}.public-layout .site-footer{max-width:1320px;margin:30px auto;padding:0 25px}.directory-hero{position:relative;background:linear-gradient(120deg,#fff0bf,#fff9e7);margin:0 -25px;padding:48px 30px 65px;overflow:hidden}.directory-hero h1{font-size:48px;margin-top:12px}.directory-hero p{font-size:21px;margin:12px 0 0}.directory-hero .skyline{position:absolute;right:20px;bottom:10px;width:45%;color:#dbaa38;opacity:.65}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:1.7px;color:var(--muted);font-weight:650}.public-layout .filter-card{position:relative;margin-top:-25px}.auth-layout .main-content{margin:45px auto;max-width:500px;padding:0 15px}.auth-card{background:white;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 45px #1c1c2520;padding:36px}.auth-card h1{font-size:30px;margin:12px 0}.auth-card form{display:grid;gap:20px;margin:24px 0}.auth-symbol{background:var(--rose);color:var(--brand);display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:12px;margin-bottom:23px}.auth-symbol .icon{width:29px;height:29px}.auth-layout .site-footer{margin:30px auto;max-width:500px;padding:0 15px}.wide{width:100%}.export-form{display:grid;gap:20px;max-width:850px}.secret{display:block;padding:14px;background:var(--gold);border-radius:5px;word-break:break-all}.dirty-label{color:var(--brand);font-weight:650;font-size:12px}:focus-visible{outline:3px solid #deb252;outline-offset:3px}@media(min-width:1550px){.field-row,.field-head{grid-template-columns:minmax(160px,1fr) minmax(270px,2.1fr) minmax(160px,1.2fr) 45px}}@media(max-width:1100px){.sidebar{width:200px}.main-content{margin-left:244px}.site-footer{margin-left:244px}.entry-grid{grid-template-columns:1fr}.contact-editor{grid-template-columns:1fr}.contact-list{border-right:0;display:flex;gap:8px;overflow:auto}.contact-list>a{white-space:nowrap}.contact-list form{margin:0;padding:0;border:0}.field-row,.field-head{grid-template-columns:130px minmax(150px,1.8fr) 140px 35px;gap:8px}.brand{font-size:22px}}@media(max-width:760px){.topbar{height:auto;min-height:75px;padding:14px 18px;flex-wrap:wrap}.brand{font-size:20px}.brand-mark{width:38px;height:41px;font-size:24px}.account-name{font-size:12px}.sidebar{position:static;width:auto;margin:15px;height:auto;display:block;padding:7px}.sidebar nav{display:flex;overflow:auto;gap:3px}.sidebar nav>a{padding:12px;white-space:nowrap;font-size:12px}.sidebar nav .icon{width:18px}.logout-form{padding:0;margin-top:8px}.main-content{margin:22px 15px 35px}.site-footer{margin:25px 15px}.page-title h1,h1{font-size:27px}.filter-card{grid-template-columns:1fr 1fr;padding:17px;gap:15px}.filter-actions{gap:12px;flex-wrap:wrap}.filter-actions select{width:120px}.field-head{display:none}.field-row{grid-template-columns:1fr 40px;padding:14px;gap:9px}.field-row>label{grid-column:1/-1;font-weight:650}.field-row>div:nth-child(2){grid-column:1/-1}.field-row>div:nth-child(3){grid-column:1}.field-row>div:nth-child(4){grid-column:2}.editor>.edit-form{padding:0 13px 18px}.contact-editor{padding:0 13px 18px}.form-footer{align-items:stretch}.button-row{gap:8px}.button-row .button,.button-row button{font-size:13px;padding:.65rem}.tabs{gap:3px;padding:0 10px}.tabs a{padding:15px 10px;font-size:13px}.card{padding:19px}.entry-card{grid-template-columns:70px 1fr;padding:17px;gap:15px}.entry-symbol{min-height:85px}.entry-symbol .icon{width:35px}.entry-card h2{font-size:18px}.result-line{flex-wrap:wrap;gap:6px}.directory-hero h1{font-size:36px}.directory-hero p{font-size:17px;max-width:75%}.directory-hero .skyline{width:60%;opacity:.3}.detail-heading{gap:15px}.detail-heading h1{font-size:27px}.detail-heading .entry-symbol{width:85px;height:85px}.contact-card{padding:20px;gap:15px}.auth-card{padding:25px}.site-footer{flex-wrap:wrap}.public-layout .main-content{padding:0 15px}.public-layout .filter-card{margin-top:-15px}}

.entry-symbol.has-photo{overflow:hidden;height:120px;min-height:0;align-self:start}.entry-symbol.has-photo img{display:block;width:100%;height:100%;object-fit:cover}.entry-photo-panel{margin:0 22px 24px;border-top:1px solid var(--line);padding-top:22px}.entry-photo-preview{width:260px;max-width:100%;height:160px;border-radius:9px;overflow:hidden;background:var(--gold);display:flex;align-items:center;justify-content:center;color:var(--brand)}.entry-photo-preview img{width:100%;height:100%;object-fit:cover}.entry-photo-preview .icon{width:50px;height:50px}

.compact-login{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;max-width:460px}.compact-login input{width:135px;padding:7px 9px;font-size:12px}.compact-login button,.compact{padding:7px 10px;font-size:12px}.compact-login>a{font-size:11px;width:100%;text-align:right}.public-layout .topbar{min-height:80px;height:auto;padding-top:12px;padding-bottom:12px}@media(max-width:760px){.topbar-right{margin-left:auto}.compact-login{max-width:320px}.compact-login input{width:110px}.compact-login>a{width:auto}.compact-login button{font-size:12px}}

.filter-card{grid-template-columns:repeat(4,minmax(0,1fr))}.filter-card label,.entry-card>div{min-width:0}.filter-card select{min-width:0}.entry-card h2{overflow-wrap:anywhere}.entry-card .badge{max-width:100%;white-space:normal;overflow-wrap:anywhere}@media(max-width:760px){.filter-card{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar-right{min-width:0;max-width:100%}.compact-login{width:100%;min-width:0}.compact-login input{min-width:0}}
@media(max-width:760px){.directory-hero{margin-left:-15px;margin-right:-15px}}

.brand{min-width:0}.brand-logo{width:52px;height:52px;object-fit:contain;flex-shrink:0}.brand>span{max-width:560px;line-height:1.2}@media(max-width:760px){.brand{font-size:18px;gap:12px;max-width:100%}.brand-logo{width:42px;height:42px}.brand>span{min-width:0;overflow-wrap:break-word}}

.directory-hero{padding-right:280px;min-height:290px}.directory-hero .hero-motif{position:absolute;right:25px;bottom:28px;width:240px;height:220px;object-fit:contain;mix-blend-mode:multiply;pointer-events:none}@media(max-width:760px){.directory-hero{padding-right:30px;padding-bottom:160px}.directory-hero .hero-motif{width:180px;height:130px;bottom:20px;right:25px}}
.directory-hero{padding-right:180px}.directory-hero .hero-motif{width:145px;height:155px;right:22px;bottom:36px}.directory-hero h1{font-size:clamp(25px,3vw,42px);letter-spacing:-1.2px}@media(min-width:1101px){.directory-hero h1{white-space:nowrap;font-size:clamp(25px,2.65vw,39px)}}@media(max-width:760px){.directory-hero{padding-right:30px;padding-bottom:130px}.directory-hero h1{font-size:36px;letter-spacing:-1px;white-space:normal}.directory-hero .hero-motif{width:135px;height:100px;bottom:20px;right:25px}}

.contact-card .contact-photo-link{width:132px;height:132px;cursor:zoom-in}.contact-photo-link img{display:block;width:100%;height:100%;object-fit:cover}.contact-card>div{min-width:0;overflow-wrap:anywhere}@media(max-width:480px){.contact-card:has(.contact-photo-link){flex-direction:column}}

.help-project{display:flex;align-items:center;justify-content:space-between;gap:35px}.help-project>div{min-width:0;overflow-wrap:anywhere}.help-project-image{width:42%;max-width:430px;height:auto;object-fit:contain;flex-shrink:0}.help-image-preview{display:block;max-width:400px;width:100%;height:auto;margin:20px 0}@media(max-width:760px){.help-project{flex-direction:column;align-items:flex-start}.help-project-image{width:100%;max-width:360px}}

.sort-tools{display:flex;align-items:center;gap:12px;margin-left:auto}.filter-actions .sort-tools select{margin-left:0;width:170px}.view-switch{display:flex;gap:4px}.view-button{padding:8px;background:white;color:var(--muted);border-color:#d9dce3;border-radius:6px}.view-button:hover,.view-button.active{color:var(--brand);background:var(--rose);border-color:var(--brand)}.view-button .icon{width:20px;height:20px}.directory-table-wrap{background:white;border:1px solid var(--line);border-radius:10px;width:100%;max-width:100%;min-width:0}.directory-table{table-layout:fixed;min-width:850px}.directory-table th,.directory-table td{padding:9px 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.directory-table th:first-child{width:38%}.directory-table th:last-child{width:140px}.directory-table tbody tr:hover{background:#fdf8f9}@media(max-width:760px){.sort-tools{gap:8px}.filter-actions .sort-tools select{width:120px}}

.health-table-wrap{background:white;border:1px solid var(--line);border-radius:10px}.health-status-row{display:flex;align-items:center;gap:9px;white-space:nowrap}.health-status{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:50%;font-size:20px;font-weight:750;flex-shrink:0}.health-status.green{background:#dbf5e5;color:#116441}.health-status.yellow{background:#fff1bc;color:#80531a}.health-status.red{background:#fae9ed;color:#a91934}.health-status-row a{margin-left:8px}.health-table-wrap table{min-width:1050px}

.project-logo{display:block;width:280px;max-width:100%;height:auto;object-fit:contain;margin:12px 0 24px}

.badge.red{background:var(--rose);color:var(--brand-dark)}.table-sort{display:inline-flex;align-items:center;gap:7px;color:inherit;text-decoration:none}.table-sort span{font-size:15px;color:var(--muted)}th[aria-sort="ascending"] .table-sort span,th[aria-sort="descending"] .table-sort span{color:var(--brand)}

.header-brand-group{display:flex;align-items:center;gap:22px;flex-wrap:wrap;min-width:0}.homepage-link{font-size:14px;white-space:nowrap}.header-brand-group .brand{min-width:0}.header-brand-group .brand span{overflow-wrap:anywhere}@media(max-width:760px){.header-brand-group{gap:8px}.homepage-link{margin-left:0}}

.brand a{color:inherit;text-decoration:none}.brand>a{display:flex;align-items:center}.brand-text{min-width:0}

.header-brand-group{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;row-gap:4px;align-items:center}.header-brand-group .brand{display:contents}.header-brand-group .brand>a:has(.brand-logo){grid-column:1;grid-row:1 / 3}.header-brand-group .brand-text{grid-column:2;grid-row:1}.header-brand-group .homepage-link{grid-column:2;grid-row:2;white-space:normal}.header-brand-group:not(:has(.brand-logo)){grid-template-columns:minmax(0,1fr)}.header-brand-group:not(:has(.brand-logo)) .brand-text,.header-brand-group:not(:has(.brand-logo)) .homepage-link{grid-column:1}


.entry-card .entry-symbol.has-photo{position:relative;align-self:stretch;height:auto;min-height:110px}.entry-card .entry-symbol.has-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}@media(max-width:760px){.entry-card .entry-symbol.has-photo{min-height:85px}}

