:root{--ink:#172035;--muted:#5b6475;--blue:#173cdb;--line:#dfe3eb;--paper:#fff;--back:#f2f4f8}*{box-sizing:border-box}body{margin:0;background:var(--back);font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink)}[hidden]{display:none!important}button,input,select,textarea{font:inherit}button,.file-button{cursor:pointer}button,a,input,select,textarea{touch-action:manipulation}button{border:1px solid var(--line);background:#fff;padding:10px 16px;border-radius:7px;color:var(--ink);font-weight:650}button:hover{border-color:var(--blue)}button:disabled{opacity:.6;cursor:wait}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,.file-button:focus-within{outline:3px solid #e98915;outline-offset:3px}input,select,textarea{width:100%;border:1px solid #b7c0d0;border-radius:6px;background:white;padding:10px 12px;color:var(--ink)}textarea{resize:vertical}label{display:block;font-size:14px;font-weight:650}label input{margin-top:6px}.primary{color:white;background:var(--blue);border-color:var(--blue)}.primary:hover{background:#102ca7}.quiet{background:transparent}.danger{color:#a6202d}.danger-fill{background:#a6202d;color:white}.muted{font-size:14px;color:var(--muted)}.skip{position:absolute;top:-100px;left:20px;background:#fff;padding:12px;z-index:10}.skip:focus{top:10px}header{height:86px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:24px;padding:0 40px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:25px;font-weight:800;letter-spacing:-1px}.brand-mark{font:800 23px/1 sans-serif;background:var(--blue);color:white;padding:12px;border-radius:9px;letter-spacing:-3px}.light{font-weight:400}.edition{font-size:12px;letter-spacing:2px;color:var(--muted);margin-left:auto}header #logout{font-size:14px}.demo-notice{padding:12px 40px;background:#e4eaff;color:#16328f;font-size:14px}.eyebrow{font-size:12px;font-weight:750;letter-spacing:1.8px;color:var(--blue)}.toolbar{padding:34px 40px;display:flex;justify-content:space-between;align-items:center;gap:24px}.toolbar h1{font-size:30px;letter-spacing:-1px;margin:6px 0 0;font-weight:650}.tools{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.file-button{position:relative;display:inline-flex;align-items:center;border:1px solid #b7c0d0;padding:10px 16px;border-radius:7px;overflow:hidden;font-size:16px}.file-button input{position:absolute;width:1px;height:1px;opacity:0;padding:0;left:0;top:0}.layout{margin:0 40px;display:grid;grid-template-columns:290px minmax(0,1fr);border:1px solid var(--line);border-radius:12px;background:#fff;min-height:650px;overflow:hidden}aside{background:#f9faff;border-right:1px solid var(--line);padding:26px 20px}.board-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.board-head h2{font-size:18px;margin:0}.board-head span{font-size:14px;color:var(--muted)}.search-label{margin-bottom:6px}.filters{display:flex;gap:5px;margin:15px 0}.filters button{font-size:14px;padding:7px 12px;border:0}.filters button[aria-pressed=true]{background:#dfe7ff;color:#1534b3}.job-card{display:block;text-align:left;width:100%;padding:17px 14px;margin:8px 0;background:transparent;border-color:transparent;border-radius:8px;font-weight:400}.job-card[aria-current=true]{background:white;border-color:#aebde9;box-shadow:0 3px 10px #15264d09}.job-card strong{display:block;font-size:16px;overflow-wrap:anywhere}.job-card small{display:block;color:var(--muted);font-size:13px;margin-top:5px}.card-progress{display:flex;justify-content:space-between;gap:8px;font-size:13px;margin-top:12px;color:#354b80}main{padding:36px 42px;min-width:0}main:focus{outline:none}.document-top{display:flex;justify-content:space-between;gap:18px;align-items:start}.document-top h2{font-size:32px;line-height:1.2;letter-spacing:-.8px;margin:8px 0 28px;overflow-wrap:anywhere}.document-top #save-status{font-size:13px;color:var(--muted);white-space:nowrap}.job-meta{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:16px}.progress-row{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:30px 0;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.progress-row strong{font-size:14px}progress{appearance:none;width:160px;height:7px;border:0;border-radius:6px;overflow:hidden}progress::-webkit-progress-bar{background:#e5e9f1}progress::-webkit-progress-value{background:var(--blue)}progress::-moz-progress-bar{background:var(--blue)}.room{margin:22px 0}.room h3{font-size:13px;letter-spacing:1px;text-transform:uppercase;margin:0 0 8px;color:var(--muted)}.task{display:flex;align-items:start;gap:12px;padding:12px 0;border-bottom:1px solid #edf0f5;font-weight:400;font-size:16px;cursor:pointer}.task input{width:21px;height:21px;margin:2px 0;flex-shrink:0;accent-color:var(--blue)}.task span{overflow-wrap:anywhere}.task.checked span{color:var(--muted);text-decoration:line-through}.notes-section{margin:30px 0}.notes-section label{margin-bottom:8px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:16px}.section-title h3{font-size:17px;margin:0}.section-title p{font-size:13px;color:var(--muted);margin:5px 0}#photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.photo{border:1px solid var(--line);border-radius:8px;overflow:hidden}.photo img{width:100%;height:140px;object-fit:cover;display:block}.photo label{padding:9px}.photo input{font-size:14px;padding:7px}.photo button{font-size:13px;margin:0 9px 9px;padding:6px 9px}.job-footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);margin-top:30px;padding-top:24px}.job-footer>div{display:flex;gap:10px}.app-foot{padding:22px 40px;display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}#empty{max-width:420px;margin:80px auto}#empty h2{font:40px/1.15 Georgia,serif;margin:18px 0}#empty p{color:var(--muted);line-height:1.7;margin-bottom:26px}.login{max-width:480px;margin:65px auto;padding:30px}.login h1{font:52px/1.06 Georgia,serif;letter-spacing:-1px;margin:20px 0}.login p{color:var(--muted)}.login form{display:grid;gap:12px;margin-top:30px}.login-error,#login-error{color:#a6202d}.alert{margin:0 40px 20px;padding:16px 20px;border:1px solid #c47d18;background:#fff5e3;display:flex;align-items:center;justify-content:space-between;gap:20px}.alert button{white-space:nowrap}dialog{border:1px solid var(--line);border-radius:12px;padding:28px;max-width:560px;width:calc(100% - 30px);color:var(--ink);max-height:90vh;overflow:auto}dialog::backdrop{background:#13223b70}dialog h2{font-size:24px;margin:0 0 20px}.dialog-head{display:flex;justify-content:space-between;align-items:start;gap:20px}.dialog-head button{padding:0 9px;font-size:24px;border:0;background:transparent}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}dialog form>label{margin-top:16px;margin-bottom:7px}dialog form>.primary{margin-top:18px}#template-list{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px}#template-list button{font-size:14px}#toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);background:#172035;color:#fff;border-radius:8px;padding:12px 20px;max-width:calc(100% - 30px);z-index:20;box-shadow:0 4px 20px #0002}#toast:empty{display:none}#print-report{display:none}@media(max-width:1050px){.toolbar{align-items:flex-start;flex-direction:column}.layout{grid-template-columns:240px minmax(0,1fr)}main{padding:28px}.job-meta{grid-template-columns:1fr 1fr}.job-meta label:first-child{grid-column:1/-1}#photos{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){header{padding:0 20px;height:72px}.edition{display:none}.brand{font-size:22px}header #logout{margin-left:auto;padding:8px}.toolbar{padding:25px 18px}.toolbar h1{font-size:27px}.tools{gap:8px}.tools button,.tools .file-button{font-size:14px;padding:9px 12px}.layout{margin:0 14px;display:block}aside{border-right:0;border-bottom:1px solid var(--line);padding:20px}#jobs{display:flex;overflow-x:auto;gap:8px;max-height:175px}.job-card{min-width:195px;max-width:230px}.board-head{margin-bottom:10px}.filters{margin-bottom:6px}main{padding:24px 20px}.document-top h2{font-size:28px}.job-meta{grid-template-columns:1fr}.job-meta label:first-child{grid-column:auto}.section-title{flex-wrap:wrap}.job-footer{flex-direction:column}.job-footer>div{flex-wrap:wrap}.app-foot{padding:22px 18px;flex-direction:column;gap:5px}.demo-notice{padding:12px 20px}.alert{margin:0 14px 15px;flex-wrap:wrap}.progress-row{gap:12px}progress{width:110px}.document-top #save-status{white-space:normal;max-width:90px}.login{margin:20px auto}#empty{margin:35px 0}.photo img{height:120px}}@media print{@page{size:Letter;margin:16mm}body{background:white;color:#111;font:11pt/1.5 Arial,sans-serif}body>*{display:none!important}body>#print-report{display:block!important}#print-report h1{font-size:26pt;margin:0 0 8pt}#print-report h2{font-size:15pt;margin:18pt 0 7pt}#print-report h3{font-size:12pt;margin:12pt 0 6pt}#print-report p,#print-report li{white-space:pre-wrap;overflow-wrap:anywhere}#print-report ul{padding-left:20px}#print-report .report-photo{break-inside:avoid;margin:15pt 0}#print-report img{max-width:100%;max-height:240pt}#print-report .report-meta{border-bottom:1px solid #ccc;padding-bottom:12pt}#print-report .report-foot{font-size:9pt;color:#444;margin-top:18pt}}

#toast{width:max-content;min-width:260px;width:min(560px,calc(100vw - 32px))}@media(max-width:400px){header{padding:0 16px;gap:12px}.brand{font-size:20px;gap:9px}.brand-mark{padding:10px}header #logout{padding:7px 10px}.progress-row strong{min-width:0}progress{min-width:65px}}
