:root{--ink:#17212b;--ore:#b53a2d;--amber:#f0a202;--grey:#72808d;--paper:#f6f4ef}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif}header{min-height:64px;background:var(--ink);display:flex;align-items:center;justify-content:space-between;padding:0 5%;color:#fff}.brand{display:flex;gap:.55rem;align-items:center;color:#fff;text-decoration:none;letter-spacing:.06em;font-weight:500}.mark{color:var(--amber);font-size:1.5rem}nav{display:flex;gap:1rem;align-items:center;font-size:.9rem}nav a,a{color:#8a2d24}nav a{color:#fff}main{max-width:1050px;margin:auto;padding:2rem 5% 5rem}h1{font-size:clamp(1.8rem,5vw,3rem);margin:.1rem 0 .6rem}h2{margin-top:2.5rem}.eyebrow{font-size:.75rem;font-weight:750;letter-spacing:.12em;color:var(--ore);margin:0}.hero{padding:1.2rem 0}.filters{display:grid;grid-template-columns:1fr 2fr auto;gap:1rem;align-items:end;background:#fff;padding:1rem;border-left:5px solid var(--amber);box-shadow:0 2px 10px #17212b14}label{display:block;font-weight:650}input,select,textarea{display:block;width:100%;font:inherit;margin-top:.3rem;padding:.65rem;border:1px solid #bfc7cd;border-radius:3px;background:#fff}textarea{min-height:120px}button,.button{display:inline-block;border:0;background:var(--ore);color:#fff;border-radius:3px;padding:.7rem 1rem;font-weight:700;font:inherit;text-decoration:none;cursor:pointer}.utility{font-size:.9rem}.results{display:grid;gap:.6rem}.results h2{margin-bottom:0}.results h2 small{font-size:.75rem;font-weight:400;color:var(--grey)}.location-card,.panel{background:#fff;padding:1rem;box-shadow:0 1px 4px #17212b12;border-radius:3px}.location-card{color:var(--ink);text-decoration:none;display:grid;gap:.15rem;border-left:4px solid transparent}.location-card:hover{border-left-color:var(--amber)}.site,.muted,small{color:var(--grey);font-size:.8rem}.panel{margin:1rem 0}.panel.link{display:flex;justify-content:space-between;color:var(--ink);text-decoration:none}.actions{margin:1rem 0}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.7rem}.file{min-height:90px;background:#fff;padding:.8rem;color:var(--ink);text-decoration:none;overflow-wrap:anywhere}.file small{display:block;margin-top:.6rem}.auth-card{max-width:420px;margin:7vh auto;background:#fff;padding:2rem;border-top:5px solid var(--amber);box-shadow:0 4px 16px #17212b1c}.form-builder label{margin-bottom:1rem}.form-builder label small{display:block;font-weight:400}.answer{display:grid;gap:.2rem;padding:.7rem 0;border-bottom:1px solid #e4e6e8}.edit-note{color:var(--grey);font-size:.85rem}.message{padding:.8rem 1rem;margin-bottom:1rem;background:#e4f0e7;border-left:4px solid #2f7d44}.message.error{background:#fae6e4;border-left-color:var(--ore)}@media(max-width:650px){main{padding:1.4rem 1rem 4rem}.filters{grid-template-columns:1fr}.panel.link{display:grid;gap:.4rem}header{padding:0 1rem}nav span{display:none}}
.file img{display:block;width:100%;height:130px;object-fit:cover;margin-bottom:.6rem}.file-icon{display:grid;place-items:center;width:100%;height:130px;background:#e6e9ea;color:var(--grey);font-size:.75rem;font-weight:700;letter-spacing:.08em;margin-bottom:.6rem}
.upload-status{margin-top:1rem;padding:.8rem;background:#eef1f2}.progress-track{height:10px;background:#d5dadd;border-radius:10px;overflow:hidden}.progress-fill{width:0;height:100%;background:var(--amber);transition:width .15s}.upload-status p{margin:.5rem 0 0}.file{position:relative}.file a{display:block;color:var(--ink);text-decoration:none}.file-select{position:absolute;z-index:1;top:.4rem;right:.4rem;width:1.2rem;height:1.2rem;accent-color:var(--ore)}button:disabled{opacity:.5;cursor:not-allowed}
.header-logo{display:block;width:180px;height:56px;object-fit:contain;object-position:left center;background:#fff;padding:4px 8px;border-radius:3px}.login-logo{display:block;width:min(100%,350px);height:auto;margin:0 auto 1.25rem}.auth-card .eyebrow{text-align:center}.auth-card h1{text-align:center}
.logout{padding:0;border:0;background:transparent;color:#fff;font-size:.9rem;font-weight:400}.logout:hover{text-decoration:underline}
.file-pagination{display:flex;gap:.7rem;justify-content:center;margin:1rem 0}.file-pagination .secondary{color:#fff}
.location-picker{margin:1.5rem 0}.location-search,.picker-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.picker-columns{margin-top:1rem}.picker-columns select{height:260px}.picker-columns button{margin-top:.6rem}@media(max-width:650px){.location-search,.picker-columns{grid-template-columns:1fr}}
.template-workspace{max-width:none;display:grid;grid-template-columns:minmax(520px,1fr) minmax(420px,1fr);gap:1.5rem}.template-builder{padding:1.5rem;background:#fff}.template-preview{position:sticky;top:1rem;align-self:start;padding:2rem;background:#fff;border-left:6px solid var(--amber);box-shadow:0 1px 5px #17212b1a;min-height:70vh}.template-preview label{margin:1rem 0}.builder-block{display:grid;grid-template-columns:90px 1fr 1fr auto;gap:.5rem;align-items:center;border:1px solid #d6dcdf;padding:.7rem;margin:.6rem 0}.builder-block textarea{grid-column:2/4}.add-blocks{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.add-blocks button{background:var(--grey)}.instruction-image{margin:1rem 0}.instruction-image img{max-width:100%;max-height:460px}.instruction-text{padding:1rem;margin:1rem 0;background:#fff7dd;border-left:4px solid var(--amber)}@media(max-width:1000px){.template-workspace{display:block}.template-preview{position:static;margin-top:1rem}}
.template-workspace{grid-template-columns:minmax(0,1fr) 390px;align-items:start}.template-builder{min-width:0}.template-preview{width:390px;justify-self:end}.template-workspace~*{max-width:none}body:has(.template-workspace) main{max-width:none;padding:2rem 3vw 5rem}@media(max-width:1000px){.template-preview{width:auto}}
.template-preview .live-instruction-image{display:block;width:100%;max-height:300px;object-fit:contain;margin:1rem 0;border:1px solid #d6dcdf}
