.campus-wrap{max-width:1200px;margin:auto;padding:35px 5% 65px}.campus-wrap h1{font:clamp(32px,5vw,52px) Itim,sans-serif;color:#a05c85}.campus-wrap h2{font-size:30px}.campus-wrap h3{font-size:23px}.campus-wrap p{line-height:1.8}.campus-wrap input,.campus-wrap select,.campus-wrap textarea{width:100%;min-width:0;padding:11px;border:1px solid #d8bdce;border-radius:9px;font:inherit;background:#fffdf9}.campus-wrap input[type=checkbox]{width:auto;display:block}.campus-form{display:grid;gap:15px;padding:22px;background:#fffaf3;border:1px dashed #d5b6ca;border-radius:15px;margin:20px 0}.campus-form label{display:grid;gap:8px;font-size:14px}.campus-form button{justify-self:start}.campus-form p{overflow-wrap:anywhere}.campus-tabs,.directory-nav{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0}.campus-card{background:#fffdf8;border:1px solid #dec7d6;border-radius:7px 18px 7px 18px;padding:20px;margin:14px 0;overflow-wrap:anywhere;box-shadow:3px 4px 0 #e1cbd440}.project-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:25px 0}.project-column{min-width:0;padding:12px;background:#f4e4ee80;border-radius:14px}.project-column:nth-child(2){background:#f9edca80}.project-column:nth-child(3){background:#dceef080}.project-column:nth-child(4){background:#e0eddd80}.project-title{border:0;background:none;text-align:left;padding:0;font:24px/1.5 Itim;color:#784d70;cursor:pointer}.campus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.campus-dialog{max-width:720px;width:90vw;max-height:85vh;overflow:auto;border:1px solid #d8b9cf;border-radius:20px;padding:28px;background:#fffaf4;color:#584258}.campus-dialog::backdrop{background:#37293699}.campus-dialog img,.campus-preview{display:block;max-width:100%;max-height:480px;object-fit:contain;margin:20px auto}.preserve{white-space:pre-wrap}.campus-badge{display:inline-block;padding:4px 14px;background:#f4d4e6;border-radius:20px}.campus-map{position:relative;margin:20px 0;border:1px solid #d8bdce;border-radius:12px;background:#fff;overflow:hidden}.campus-map>img{display:block;width:100%;height:auto}.map-pin{position:absolute;transform:translate(-50%,-50%);padding:4px 7px;border:2px solid #fff;background:#8c4f7a;color:white;border-radius:15px;font:12px/1.4 Itim;max-width:130px;cursor:pointer}.campus-empty{padding:25px;background:#f9eaf2;border:1px dashed #d1afc6;border-radius:12px}.campus-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.campus-admin-grid>section{min-width:0}.asset-qr img{width:150px;height:150px;image-rendering:pixelated;display:block}.asset-qr a{display:inline-block;margin:8px}.campus-wrap details{padding:20px;margin:22px 0;background:#fff8ef;border:1px solid #dcc3d2;border-radius:12px}.campus-wrap summary{cursor:pointer;font:23px Itim}.campus-wrap [aria-current=page]{background:#efc4dc}.campus-status{white-space:pre-wrap;color:#8f3f67;overflow-wrap:anywhere}.campus-form button:disabled{opacity:.6}
.map-viewport{overflow:auto;max-height:75vh;border:1px solid #d8bdce;border-radius:12px}.map-viewport .campus-map{margin:0;border:0;border-radius:0;max-width:none;min-width:100%}.campus-tabs label{display:flex;align-items:center;gap:10px}.campus-tabs input[type=range]{width:140px;padding:0}.map-pin{width:25px;height:25px;padding:0;border-radius:50%;font:12px/1 Itim;box-shadow:0 1px 4px #45304466}.map-pin:focus-visible{outline:3px solid #75426d;outline-offset:2px}
@media(max-width:850px){.project-board,.campus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.campus-admin-grid{grid-template-columns:1fr}}
@media(max-width:480px){.project-board,.campus-grid{grid-template-columns:1fr}.campus-form{padding:16px}.campus-dialog{padding:18px}.map-pin{font-size:10px}}
