:root{--bg:#f3f6f8;--ink:#183445;--muted:#738592;--line:#e0e7eb;--green:#007d73;--nav:#112e3b}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:14px system-ui,-apple-system,sans-serif}button,input,select,textarea{font:inherit}button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:7px;padding:9px 13px}button:hover{border-color:var(--green);background:#f3faf7}button.primary{background:var(--green);border-color:var(--green);color:#fff}button:disabled{opacity:.4;cursor:not-allowed}a{color:var(--green)}.sidebar{background:var(--nav);color:#fff;flex-direction:column;width:218px;padding:25px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:#fff;letter-spacing:-.7px;align-items:center;gap:11px;font-size:23px;font-weight:750;text-decoration:none;display:flex}.brand-mark{background:linear-gradient(140deg,#20bf9a,#168dc0);border-radius:9px;place-items:center;width:37px;height:39px;font-size:22px;display:grid}.brand small{letter-spacing:1.6px;color:#8cabb8;margin-top:3px;font-size:8px;display:block}.side-label{color:#7795a2;letter-spacing:2px;margin:38px 12px 13px;font-size:9px}nav button{color:#a6bfcb;text-align:left;background:0 0;border:0;gap:13px;width:100%;margin:3px 0;padding:12px;font-size:13px;display:flex}nav button span{color:#648b9a;width:19px}nav button.active{color:#fff;background:#1c4955}nav button.active span{color:#36d6b4}nav button:hover{background:#1c4955}.side-bottom{color:#a4bcc6;margin-top:auto;padding:14px 10px;font-size:11px;line-height:1.6}.side-bottom p{color:#7998a6;font-size:10px}.side-bottom a{color:#8edbc6;font-size:10px;text-decoration:none}.dot{background:#31c6a4;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}header{border-bottom:1px solid var(--line);z-index:5;background:#fff;justify-content:space-between;align-items:center;gap:12px;height:74px;padding:0 28px;display:flex;position:sticky;top:0}header>div{align-items:center;gap:10px;display:flex}.breadcrumb{color:var(--muted);font-size:11px}header select{background:0 0;border:0;max-width:220px;font-size:12px;font-weight:650}#save-status{color:var(--green);font-size:10px}.header-actions{gap:7px}header button{font-size:11px}main{padding:26px 28px}.page-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px;display:flex}.eyebrow{letter-spacing:2px;color:var(--green);margin-bottom:8px;font-size:9px;font-weight:750}h1{letter-spacing:-.8px;margin:0;font-size:27px}h2{margin:0 0 17px;font-size:15px}h3{margin:0 0 12px;font-size:13px}p{color:var(--muted);margin:7px 0;font-size:12px;line-height:1.65}.actions{flex-wrap:wrap;gap:7px;display:flex}.metrics{grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:21px;display:grid}.metric{border:1px solid var(--line);background:#fff;border-radius:9px;padding:15px 17px}.metric small{color:var(--muted);font-size:10px}.metric strong{letter-spacing:-.6px;margin:5px 0 3px;font-size:23px;display:block}.metric span{color:var(--green);font-size:10px}.grid{grid-template-columns:minmax(0,1fr) 320px;gap:19px;display:grid}.card{border:1px solid var(--line);background:#fff;border-radius:11px;padding:21px}.card+.card{margin-top:16px}.card-heading{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.card-heading h2{margin:0}.tag{color:var(--green);background:#e4f4ee;border-radius:20px;padding:5px 8px;font-size:9px}.tag.warn{color:#916424;background:#fff3d9}.tag.bad{color:#b54b4b;background:#ffe9e9}.formgrid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.field{margin-bottom:13px}.field label{color:var(--muted);margin-bottom:6px;font-size:10px;display:block}.field input,.field select,.field textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:6px;min-width:0;padding:9px 10px}.field textarea{resize:vertical;min-height:75px}.field small{color:var(--muted);margin-top:5px;font-size:9px;display:block}.full{grid-column:1/-1}.panel-list{gap:10px;display:grid}.list-row{border:1px solid var(--line);border-radius:8px;align-items:center;gap:13px;padding:14px;display:flex}.list-row .num{width:34px;height:35px;color:var(--green);background:#edf6f3;place-items:center;font-size:12px;font-weight:650;display:grid}.list-row b{font-size:12px}.list-row p{margin:2px 0;font-size:10px}.list-row>div:nth-child(2){flex:1}.list-row button{font-size:10px}.list-row.active{border-color:var(--green);background:#f7fcfa}.notice{color:#876329;background:#fff8e9;border:1px solid #eddebd;border-radius:8px;margin-bottom:16px;padding:12px;font-size:11px;line-height:1.6}.info{color:#316c64;background:#eef7f6;border-color:#d1e8e2}.muted{color:var(--muted);font-size:11px}.workpanel{padding:0;overflow:hidden}.toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:9px;padding:12px 15px;display:flex}.toolbar button{padding:7px 10px;font-size:10px}.tabs{gap:5px;display:flex}.tabs button{color:var(--muted);background:0 0;border:0}.tabs button.active{color:var(--green);background:#e5f3ee}.canvas-wrap{background:#eaf0f2;height:510px;position:relative;overflow:hidden}.canvas-wrap svg{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%}.canvas-caption{color:var(--muted);border-top:1px solid var(--line);justify-content:space-between;padding:12px 16px;font-size:10px;display:flex}.equipment-card{border:1px solid var(--line);cursor:grab;border-radius:8px;align-items:center;gap:11px;margin:12px 0;padding:12px;display:flex}.equipment-icon{border:2px solid var(--green);background:#e4f5ee;border-radius:4px;width:27px;height:34px}.equipment-card b{font-size:11px;display:block}.equipment-card small{color:var(--muted);font-size:9px}.wide{width:100%}.divider{border-top:1px solid var(--line);margin:20px 0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:11px}th{text-align:left;color:var(--muted);background:#f7fafb;font-weight:600}td,th{border-bottom:1px solid var(--line);padding:12px 9px}td input,td select{border:1px solid var(--line);border-radius:5px;width:100%;min-width:70px;max-width:180px;padding:7px}.sheetgrid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.sheetcard{border:1px solid var(--line);cursor:pointer;text-align:left;background:#fff;border-radius:10px;padding:0;overflow:hidden}.sheetcard:hover{border-color:var(--green)}.sheetcard svg{background:#fff;width:100%;height:auto;display:block}.sheetcard .caption{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px;display:flex}.sheetcard b{font-size:11px}.sheetcard span{color:var(--muted);font-size:10px}.sheet-preview{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px}.sheet-preview svg{width:100%;display:block}.pillbar{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.pillbar button{font-size:10px}.pillbar button.active{background:var(--green);color:#fff}.check{border:1px solid var(--line);border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:10px;padding:13px;display:flex}.check .indicator{background:#d29b3f;border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:5px}.check.error .indicator{background:#cc5353}.check.good .indicator{background:#19a37f}.check b{font-size:11px}.check p{margin:3px 0;font-size:10px}.reference-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.reference-grid img{border:1px solid var(--line);width:100%}.smallgrid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.upload{text-align:center;background:#fafcfd;border:1px dashed #b8ccd4;border-radius:9px;padding:22px 15px}.upload button{font-size:11px}.upload p{font-size:10px}.spec-grid{grid-template-columns:repeat(3,1fr);gap:13px;display:grid}.spec-card{border:1px solid var(--line);border-radius:9px;overflow:hidden}.spec-card img{object-fit:contain;background:#f5f8f9;width:100%;height:180px}.spec-card>div{padding:12px}.spec-card b{font-size:11px}.spec-card p{font-size:10px}footer{color:var(--muted);justify-content:space-between;gap:15px;padding:0 28px 22px;font-size:9px;display:flex}#toast{color:#fff;z-index:30;background:#183b48;border-radius:9px;max-width:80%;padding:13px 22px;font-size:12px;display:none;position:fixed;bottom:25px;left:50%;transform:translate(-50%);box-shadow:0 6px 25px #19374733}dialog{border:1px solid var(--line);border-radius:13px;width:90%;max-width:1000px;padding:24px}dialog::backdrop{background:#0b283c77}dialog img{width:100%}#close-modal{margin-top:20px}.summary-value{color:var(--green);font-size:25px;font-weight:700}.helptext{color:var(--muted);font-size:10px;line-height:1.6}@media (max-width:1250px){.grid{grid-template-columns:minmax(0,1fr) 280px}.breadcrumb{display:none}.sidebar{width:190px}.app{margin-left:190px}main{padding:22px}.sheetgrid{grid-template-columns:repeat(2,1fr)}}@media (max-width:950px){.grid{grid-template-columns:1fr}.sidebar{width:70px;padding:22px 10px}.brand div,.side-label,.side-bottom,nav button .nav-name{display:none}.brand{justify-content:center}nav{margin-top:30px}nav button{justify-content:center;padding:13px 8px}nav button span{width:auto}.app{margin-left:70px}.header-actions button{padding:7px;font-size:10px}header{padding:0 15px}.metrics{gap:8px}.metric{padding:12px}.metric strong{font-size:20px}}@media (max-width:650px){header{flex-direction:column;align-items:flex-start;gap:10px;height:auto;min-height:95px;padding:14px}header select{max-width:180px}main{padding:15px}.page-heading{flex-direction:column;align-items:flex-start}h1{font-size:23px}.metrics{grid-template-columns:1fr 1fr}.formgrid{grid-template-columns:1fr}.full{grid-column:auto}.card{padding:15px}.canvas-wrap{height:380px}.sheetgrid,.spec-grid{grid-template-columns:1fr}.sidebar{width:56px;padding:20px 7px}.brand-mark{width:32px;height:33px;font-size:17px}.app{margin-left:56px}footer{flex-direction:column;padding:10px 15px}.smallgrid{grid-template-columns:1fr 1fr}}.template-bar{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.template-bar .field{flex:1;min-width:220px;margin-bottom:0}.template-bar button{font-size:11px}.template-bar select{min-height:38px}.measurement-workflow{grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:20px;display:grid}.measurement-workflow .upload{flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}@media (max-width:650px){.measurement-workflow{grid-template-columns:1fr}}.sidebar{width:238px;padding:24px 17px 16px;overflow:hidden}.app{margin-left:238px}.brand{flex-shrink:0}#navigation{scrollbar-width:thin;scrollbar-color:#426270 transparent;flex:1;min-height:0;margin-top:26px;overflow-y:auto}.nav-group{margin-bottom:19px}.nav-group-title{letter-spacing:1.5px;text-transform:uppercase;color:#799ca9;margin:0 12px 8px;font-size:9px}#navigation button{white-space:normal;border-radius:7px;gap:0;min-height:40px;margin:3px 0;padding:11px 12px;line-height:1.35}#navigation button .nav-name{width:auto;min-width:0;color:inherit;flex:1;display:block}#navigation button.active{color:#fff;background:#20515a;box-shadow:inset 3px 0 #35ceb0}#navigation button:focus-visible{outline-offset:-2px;outline:2px solid #7ce0ca}.side-bottom{border-top:1px solid #2a4956;flex-shrink:0;padding:12px 10px 0}@media (max-width:1250px) and (min-width:951px){.sidebar{width:218px}.app{margin-left:218px}}@media (max-width:950px){.sidebar{width:100%;height:auto;padding:13px 16px 10px;position:relative;inset:auto;overflow:visible}.brand{justify-content:flex-start;gap:9px;font-size:20px}.brand div{display:block}.brand small{font-size:8px;display:block}.brand-mark{width:33px;height:34px;font-size:19px}#navigation{scrollbar-width:thin;flex:none;gap:7px;margin-top:13px;padding-bottom:4px;display:flex;overflow:auto hidden}.nav-group{margin:0;display:contents}.nav-group-title{display:none}#navigation button{white-space:nowrap;text-align:center;flex:none;justify-content:center;width:auto;min-height:38px;margin:0;padding:10px 12px;font-size:12px}#navigation button .nav-name{width:auto;color:inherit;flex:none;display:block}#navigation button.active{box-shadow:inset 0 -3px #35ceb0}.side-bottom{display:none}.app{margin-left:0}header{position:relative;top:auto}.grid{grid-template-columns:1fr}}
