
:root{--navy:#071d39;--navy2:#0b3158;--blue:#086cff;--cyan:#25b8e6;--ink:#10285a;--muted:#7183a0;--line:#dfe9f6;--bg:#f3f7fc;--green:#12aa70;--amber:#f3a923;--red:#ef4351}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:12px/1.4 Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.top{height:70px;display:flex;align-items:center;gap:18px;padding:0 18px;background:linear-gradient(110deg,#06172e,#0c3159 58%,#164b70);color:#fff;position:relative;overflow:hidden}.top:after{content:"";position:absolute;right:230px;top:-90px;width:450px;height:230px;border:2px solid #7ec9e833;border-radius:50%;transform:rotate(-12deg)}.brand{display:flex;gap:10px;align-items:center;min-width:250px;z-index:1}.logo{font-size:30px;color:#ffb52e;font-weight:900;text-shadow:3px 2px #0874f9}.brand b{font-size:21px;letter-spacing:.6px}.brand small{display:block;color:#d4e4f7;font-size:10px}.searchtop{width:min(420px,36vw);padding:10px 13px;border:1px solid #456486;border-radius:7px;background:#ffffff12;color:white;z-index:1}.user{margin-left:auto;white-space:nowrap;z-index:1}.layout{display:grid;grid-template-columns:205px minmax(0,1fr);min-height:calc(100vh - 70px)}aside{background:linear-gradient(#061b35,#08294a);padding:12px 10px;color:#e4efff;display:flex;flex-direction:column;gap:2px}aside button{background:transparent;color:inherit;border:0;text-align:left;padding:10px;border-radius:6px}aside button:hover,aside button.active{background:var(--blue)}.sidefoot{margin-top:auto;color:#b5cce6;font-size:11px;line-height:1.5;padding:14px 8px}main{padding:14px;min-width:0}.crumb{font-size:10px;color:var(--muted)}.head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.head h1{font-size:23px;margin:3px 0}.head p{margin:0;color:#627898}.actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.btn{border:1px solid #cfddf0;border-radius:6px;background:#fff;color:#145cb6;padding:8px 10px}.btn.primary{background:var(--blue);color:white;border-color:var(--blue)}.btn.small{padding:4px 7px;font-size:10px}.kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:12px 0}.kpi,.panel{background:#fff;border:1px solid var(--line);border-radius:8px;min-width:0;box-shadow:0 3px 12px #0b2b5008}.kpi{display:flex;gap:10px;align-items:center;padding:11px}.kicon{width:40px;height:40px;display:grid;place-items:center;border-radius:7px;background:#eaf2ff;color:#0769ee;font-size:22px;flex-shrink:0}.kpi label{display:block;color:var(--muted);font-size:10px}.kpi strong{font-size:20px}.kpi small{display:block;color:var(--green);font-size:10px}.workgrid{display:grid;grid-template-columns:minmax(190px,.72fr) minmax(330px,1.85fr) minmax(260px,1.12fr);gap:8px}.panelhead{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 11px;border-bottom:1px solid #eaf0f8}.panelhead h2{font-size:12px;margin:0}.body{padding:10px}.field{margin-bottom:9px}.field label{display:block;font-size:10px;color:#607696;margin-bottom:4px}.field input,.field select,.field textarea{width:100%;padding:8px;border:1px solid #d9e4f3;border-radius:5px;color:#18335f;background:#fff}.field textarea{min-height:55px;resize:vertical}.tabs{display:flex;gap:4px;flex-wrap:wrap}.tab{border:0;background:#edf3fc;color:#4b6488;border-radius:5px;padding:7px 9px;font-size:10px}.tab.active{background:var(--blue);color:white}.status{font-size:9px;font-weight:700;padding:3px 6px;border-radius:5px;background:#fff0d0;color:#996200}.status.good{background:#dff8eb;color:#078258}.status.bad{background:#ffe2e5;color:#c12d3b}.itemsearch{display:flex;gap:5px;margin:8px 0}.itemsearch input{width:100%;min-width:0;border:1px solid #dbe6f5;border-radius:5px;padding:8px}.filters{display:grid;grid-template-columns:1fr 1fr;gap:5px}.filters button{border:1px solid #e1eaf6;background:#f7faff;border-radius:5px;padding:7px 3px;color:#426086;font-size:10px}.filters button.active{background:#e8f1ff;border-color:#7daeff;color:#0659cc}.case{display:grid;grid-template-columns:66px 1fr;gap:8px;padding:8px 6px;border-bottom:1px solid #edf2f8;cursor:pointer;border-radius:5px}.case:hover,.case.selected{background:#eff6ff;outline:1px solid #93bbff}.thumb{height:57px;border-radius:5px;background:linear-gradient(150deg,#b4c0bb,#5c6662 42%,#292f30 43%,#8a928b);position:relative;overflow:hidden}.thumb:after{content:"";position:absolute;inset:16px 13px;background:#303636;clip-path:polygon(20% 0,76% 9%,100% 53%,62% 100%,4% 70%,0 28%)}.case b{font-size:10px}.case p{margin:2px 0;font-size:10px;color:#627896}.tag{font-size:9px;display:inline-block;padding:2px 5px;border-radius:4px;background:#ffe3e4;color:#c52e3d}.tag.amber{background:#fff0ce;color:#956200}.tag.green{background:#dff8eb;color:#078258}.listfoot{display:flex;justify-content:space-between;align-items:center;padding:8px 3px;font-size:10px;color:#657b9b}.viewer{background:#0b1b2e;border-radius:7px;overflow:hidden}.viewerhead{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;color:white;background:linear-gradient(100deg,#0c1f3d,#0d3459)}.viewerhead b{font-size:12px}.viewerhead select{max-width:155px;background:#112b48;color:white;border:1px solid #45627f;border-radius:5px;padding:6px;font-size:10px}.road{height:285px;position:relative;overflow:hidden;background:linear-gradient(175deg,#b7c2bd 0 13%,#828b85 14% 30%,#545e5b 31% 100%)}.road:before{content:"";position:absolute;inset:-15% -10%;background:repeating-linear-gradient(172deg,transparent 0 25px,#20292922 26px 28px),repeating-linear-gradient(12deg,transparent 0 58px,#d7d9d322 59px 61px);transform:rotate(-3deg)}.road:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 55% 35%,transparent 0 22%,#10171918 70%);pointer-events:none}.crackline{position:absolute;z-index:1;left:7%;top:9%;width:88%;height:80%;opacity:.6;background:repeating-linear-gradient(15deg,transparent 0 31px,#252a2a 32px 34px,transparent 35px 43px)}.mask{position:absolute;z-index:2;cursor:pointer}.mask.pothole{left:24%;top:35%;width:39%;height:42%;background:#ff383d7a;border:2px solid #ff4248;clip-path:polygon(8% 18%,35% 0,64% 10%,91% 8%,100% 54%,87% 84%,58% 100%,25% 88%,0 60%)}.mask.crack{left:73%;top:35%;width:18%;height:48%;border:2px solid #12d28d;background:#10c98335;clip-path:polygon(15% 0,45% 9%,53% 28%,68% 38%,64% 60%,88% 76%,100% 100%,70% 92%,48% 68%,32% 48%,12% 28%)}.measure{position:absolute;z-index:3;color:#fff;font-weight:800;text-shadow:0 1px 3px #000;background:#0b1829b8;border-radius:4px;padding:3px 6px;font-size:11px}.measure.w{left:34%;top:26%}.measure.h{left:65%;top:53%}.measure.d{left:38%;top:80%}.labelbox{position:absolute;z-index:4;background:#e7282e;color:#fff;padding:5px 7px;border-radius:4px;font-size:10px;font-weight:700;left:27%;top:40%}.labelbox.green{background:#0aab70;left:72%;top:23%}.toolrail{position:absolute;z-index:5;left:8px;top:9px;display:grid;gap:4px}.toolrail button{width:29px;height:29px;border:0;border-radius:5px;background:#fff;color:#154e9d}.viewerfoot{display:flex;justify-content:space-between;gap:8px;padding:7px 10px;color:#dce9f8;font-size:10px;background:#0b1c32}.frames{display:flex;gap:5px;align-items:center;padding:6px;background:#fff}.frame{height:48px;min-width:0;flex:1;border:1px solid #d9e4f2;border-radius:5px;overflow:hidden;padding:0;background:#9ca8a2;position:relative}.frame:before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,#afc3ca,#687a6e 40%,#414a4a 41%)}.frame.active{border:2px solid var(--blue)}.frame span{position:absolute;bottom:2px;left:3px;color:white;background:#071d39aa;border-radius:3px;font-size:8px;padding:1px 3px}.righttabs{display:flex;gap:3px;margin:8px 0}.righttabs button{flex:1}.details dl{display:grid;grid-template-columns:90px 8px minmax(0,1fr);gap:6px;margin:0;font-size:10px}.details dt{color:#7183a0}.details dd{margin:0;overflow-wrap:anywhere}.formgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.formgrid .field{margin-bottom:8px}.evidence{display:grid;grid-template-columns:1fr 1fr 85px;gap:5px}.evphoto{height:65px;border-radius:5px;position:relative;background:linear-gradient(130deg,#8c9690,#2e3737 42%,#9aa39a 44%,#4a5552)}.evphoto:after{content:"";position:absolute;left:45%;top:0;bottom:0;width:5px;background:#f1dc8d;transform:rotate(12deg)}.uploadbtn{border:1px dashed #80a9ef;border-radius:5px;background:#f7faff;color:#0965ed;display:grid;place-content:center;text-align:center;font-size:10px}.bottomgrid{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:8px;margin-top:8px}.tabletools{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px}.tabletools input{width:min(350px,60%);padding:7px;border:1px solid #dbe6f5;border-radius:5px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:10px}th,td{text-align:left;padding:8px;border-bottom:1px solid #edf2f8}th{background:#f6f9fe;color:#637a9a}tbody tr:hover{background:#f0f6ff}.conf{padding:3px 5px;border-radius:4px;font-weight:700;background:#ffe2e4;color:#c32d3a}.conf.mid{background:#fff0cf;color:#986100}.conf.high{background:#ddf8e9;color:#087e59}.reviewactions{display:flex;gap:5px;flex-wrap:wrap;padding:10px;border-top:1px solid #e9eff7}.progress{height:6px;border-radius:5px;background:#eaf0f8;overflow:hidden}.progress i{display:block;height:100%;background:var(--blue)}.modalback{position:fixed;inset:0;background:#06172eaa;display:none;align-items:center;justify-content:center;padding:18px;z-index:20}.modalback.show{display:flex}.modal{width:min(900px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:10px;padding:14px}.modalhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.modal img{width:100%;height:auto;display:block;border:1px solid #dce5f2;border-radius:5px}.toast{display:none;position:fixed;bottom:18px;right:18px;background:#09284b;color:white;padding:11px 15px;border-radius:7px;z-index:30;box-shadow:0 5px 22px #0003}.toast.show{display:block}.footnote{color:#7789a3;font-size:10px;text-align:right;margin:10px 0}@media(max-width:1300px){.workgrid{grid-template-columns:210px minmax(320px,1.5fr)}.reviewcol{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px}.reviewcol>.panel{margin:0!important}.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:850px){.layout{grid-template-columns:1fr}aside{display:none}main{padding:10px}.workgrid{grid-template-columns:1fr}.reviewcol{grid-column:auto;grid-template-columns:1fr}.searchtop{display:none}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.bottomgrid{grid-template-columns:1fr}.user{display:none}.road{height:240px}}@media(max-width:480px){.brand{min-width:0}.brand b{font-size:17px}.head h1{font-size:20px}.kpi{padding:7px;gap:6px}.kicon{width:31px;height:31px}.kpi strong{font-size:16px}.formgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.evidence{grid-template-columns:1fr 1fr 72px}.viewerhead{align-items:flex-start;flex-direction:column}.road{height:205px}}

