:root{--navy:#091e35;--navy2:#0a345b;--blue:#176ce7;--cyan:#0bb7cf;--bg:#f3f8fc;--border:#e1eaf3;--ink:#16324c;--muted:#7c92a7;--white:#fff;--green:#109e78;--yellow:#bf8417;--red:#c55454;--shadow:0 8px 28px #082e520c}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:'DM Sans',system-ui,sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #85c9ff;outline-offset:2px}.hidden{display:none!important}
.loading{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;background:#0a2d4e;color:white}.loading-mark{font-size:45px;animation:pulse 1.4s infinite}.loading strong{font:800 28px Manrope;letter-spacing:3px}.loading span{font-size:12px;color:#aad3e5}@keyframes pulse{50%{transform:translateY(-5px);opacity:.7}}
.auth-screen{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.auth-art{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(145deg,#071c35 0%,#064d83 65%,#0794ab 100%);color:white;padding:42px 6vw;display:flex;flex-direction:column;justify-content:space-between}.auth-brand,.side-brand{display:flex;align-items:center;gap:12px}.drop-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:linear-gradient(145deg,#36cfe5,#1877df);font-weight:800;color:white;font-size:27px;box-shadow:0 5px 20px #00a7e04b}.auth-brand strong,.side-brand strong{display:block;letter-spacing:2px;font:800 21px Manrope}.auth-brand small,.side-brand small{font-size:9px;letter-spacing:1.7px;display:block;margin-top:4px;color:#9dd4e9}.auth-display{z-index:2}.label-light,.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:800;color:#0a9bc3}.label-light{color:#72e1ef}.auth-display h1{font:800 clamp(39px,4vw,70px)/1.14 Manrope;letter-spacing:-2.5px;margin:20px 0}.auth-display em{font-style:normal;color:#72e4ef}.auth-display p{font-size:15px;line-height:1.9;max-width:440px;color:#bbdbee}.auth-metrics{display:flex;gap:12px;flex-wrap:wrap;margin-top:40px}.auth-metrics span{border:1px solid #ffffff35;border-radius:100px;padding:10px 14px;background:#ffffff0f;font-size:11px}.auth-foot{z-index:2;font-size:10px;letter-spacing:1.7px;color:#9ed2e3}.auth-orb{border:1px solid #ffffff1e;position:absolute;width:450px;height:450px;border-radius:50%;z-index:-1;right:-160px;top:22%;box-shadow:0 0 0 65px #ffffff07,0 0 0 130px #ffffff05}.orb-2{width:230px;height:230px;right:35%;top:60%;background:#ffffff08}.auth-panel{display:flex;align-items:center;justify-content:center;padding:32px;background:radial-gradient(circle at 100% 0,#ddf6ff 0,transparent 36%),#f9fcff}.auth-form-card{width:min(100%,440px);background:white;border:1px solid #e5edf6;box-shadow:0 18px 60px #204c7012;border-radius:24px;padding:38px}.auth-icon{background:#eaf6ff;border-radius:14px;display:grid;place-items:center;height:48px;width:48px;font-size:22px;margin-bottom:20px}.auth-form-card h2{font:800 26px Manrope;margin:8px 0 7px}.auth-form-card p{font-size:12px;color:var(--muted);line-height:1.6}.auth-form-card form{margin-top:24px}.auth-form-card label,.field label{font-size:11px;font-weight:800;color:#526b80;display:block;margin:13px 0 7px}.auth-form-card input,.field input,.field select,.field textarea{display:block;width:100%;min-height:43px;padding:11px 12px;border:1px solid #d9e5f0;background:#fcfdff;color:var(--ink);border-radius:10px;outline:none;font-size:13px}.auth-form-card input:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:#2da6df}.password-box{display:flex;align-items:center;position:relative}.password-box input{padding-right:50px}.password-box button{background:transparent;border:0;position:absolute;right:8px;padding:8px;color:#7089a0}.login-note{border-radius:12px;background:#f2f9ff;border:1px solid #d7eaf7;padding:14px;color:#5d7d94;font-size:11px;line-height:1.7;margin-top:24px}.login-note b{color:#145b84}.error{color:#aa3535!important;background:#fff2f1;border:1px solid #f1caca;border-radius:10px;padding:10px}
.app{display:grid;grid-template-columns:246px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#071b31,#0a3052);color:white;padding:29px 17px 22px;display:flex;flex-direction:column;z-index:20}.side-brand{padding:0 9px;margin-bottom:41px}.side-cap{font-size:10px;letter-spacing:1.7px;color:#739bbb;margin:0 13px 12px;font-weight:800}.nav{display:flex;flex-direction:column;gap:5px}.navitem{display:flex;align-items:center;gap:14px;padding:13px 13px;border:1px solid transparent;background:transparent;color:#adc3d7;border-radius:11px;text-align:left;font-weight:700;font-size:12px}.navitem span{font-size:19px;width:23px;text-align:center;color:#8bb4d0}.navitem:hover,.navitem.active{background:#ffffff13;color:#fff}.navitem.active{border-color:#238bd345}.navitem.active span{color:#52d6ef}.side-spacer{flex:1}.side-help{padding:14px;border:1px solid #31516d;background:#ffffff0a;border-radius:13px;display:flex;gap:11px}.side-help>span{font-size:20px;color:#6be2e8}.side-help b{font-size:11px}.side-help small{font-size:10px;display:block;color:#9bbed3;line-height:1.5;margin-top:4px}.side-footer{font-size:9px;letter-spacing:1px;text-align:center;color:#88a5bb;margin-top:22px}.side-footer b{color:#8adcf2}.page-shell{min-width:0;display:flex;flex-direction:column}.topbar{height:82px;background:#fff;border-bottom:1px solid #e1ebf4;padding:0 29px;display:flex;align-items:center;justify-content:space-between;gap:20px}.top-left,.top-right{display:flex;align-items:center;gap:14px}.top-left b{font:800 18px Manrope}.breadcrumb{color:#8ba0b3;font-size:9px;letter-spacing:1.4px;margin-bottom:5px}.connected{display:flex;align-items:center;gap:7px;color:#137b5b;font-weight:800;font-size:9px;background:#e6f8ef;padding:8px 10px;border-radius:100px;white-space:nowrap}.connected i{height:7px;width:7px;border-radius:50%;background:#26c48c}.who{display:flex;align-items:center;gap:9px}.who>span{height:34px;width:34px;border-radius:10px;background:#e8f2ff;display:grid;place-items:center;color:#2776bb;font-weight:800}.who b{font-size:11px;display:block}.who small{font-size:9px;color:#8d9daa;display:block;max-width:180px;overflow:hidden;text-overflow:ellipsis}.icon-button{border:1px solid #dfe9f2;border-radius:9px;background:white;color:#577088;font-size:19px;padding:7px 10px}.hamburger{display:none}.btn{padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;font-size:11px;border-radius:10px;border:1px solid transparent}.btn-primary{background:linear-gradient(115deg,#186fea,#119cda);color:white;box-shadow:0 6px 16px #147dde20}.btn-ghost{background:#f0f6fb;color:#24688b}.btn-white{background:white;color:#1655a9;border-color:#e0ecf4}.btn-danger{background:#fff0ef;color:#bd5454}.btn-wide{width:100%;margin-top:19px;min-height:47px;justify-content:space-between}.content{padding:29px 32px 50px;width:100%;max-width:1520px;margin:auto;flex:1}.footer{text-align:center;font-size:10px;color:#a0b0bc;padding:16px}.heading{display:flex;justify-content:space-between;align-items:end;gap:13px;margin-bottom:20px}.heading h1{font:800 clamp(22px,2vw,29px) Manrope;margin:7px 0 5px;letter-spacing:-.7px}.heading p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(118deg,#0c3965,#1265a7 60%,#0ab2c1);border-radius:20px;padding:29px 32px;display:flex;align-items:center;justify-content:space-between;color:white;margin-bottom:19px;min-height:198px}.hero:before{content:"";position:absolute;width:300px;height:300px;right:-65px;top:-85px;border-radius:50%;border:1px solid #ffffff3c;box-shadow:0 0 0 38px #ffffff0b,0 0 0 87px #ffffff08;z-index:-1}.hero .eyebrow{color:#82e7f4}.hero h2{font:800 27px/1.2 Manrope;letter-spacing:-.8px;margin:13px 0}.hero p{color:#c9e3f0;line-height:1.7;font-size:12px;max-width:460px;margin:0 0 14px}.hero-water{font-size:81px;filter:drop-shadow(0 16px 19px #002d556c)}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:17px}.stat,.card{background:white;border:1px solid #e5edf5;border-radius:17px;padding:19px;box-shadow:var(--shadow);min-width:0}.stat-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.stat-title{font-size:11px;color:#7c8d9d;font-weight:800}.stat-icon{display:grid;place-items:center;border-radius:11px;width:35px;height:35px;background:#e8f4ff;font-size:17px}.stat-value{font:800 clamp(19px,2.4vw,29px) Manrope;letter-spacing:-.8px;margin:12px 0 4px}.stat-help{font-size:10px;color:#97a8b8}.two-cols{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,.9fr);gap:16px}.stack{display:grid;gap:16px}.card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:13px}.card h3{font:800 15px Manrope;margin:0}.card-sub{color:#8da0b1;font-size:11px;margin-top:4px}.scroll{overflow-x:auto}.datatable{border-collapse:collapse;width:100%;min-width:570px}.datatable th{font-size:9px;color:#95a7b7;text-align:left;text-transform:uppercase;letter-spacing:1px;padding:11px 8px;border-bottom:1px solid #e5edf4}.datatable td{padding:13px 8px;font-size:11px;border-bottom:1px solid #eef2f6;vertical-align:middle}.datatable tr:last-child td{border-bottom:0}.datatable b{font-size:11px;color:#24405c}.minor{font-size:10px;color:#93a6b7;margin-top:4px}.pill{display:inline-flex;align-items:center;border-radius:100px;padding:6px 9px;font-size:10px;font-weight:800;white-space:nowrap}.pill-pending{background:#fff2d7;color:#a77518}.pill-progress{background:#e8f3ff;color:#1974bf}.pill-done{background:#dff8ee;color:#0c976a}.pill-warning{background:#fff0ec;color:#c0584a}.empty{text-align:center;padding:34px;color:#869bad;font-size:12px;line-height:1.8}.empty strong{font-size:14px;color:#406079;display:block;margin-bottom:4px}.soft-note{background:#eef8fd;border:1px solid #d8edf8;border-radius:12px;padding:14px 16px;color:#5c8099;font-size:11px;line-height:1.7}.soft-note strong{color:#26648c}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.field{min-width:0}.field-full{grid-column:1 / -1}.field textarea{min-height:80px;resize:vertical}.form-actions{margin-top:20px;display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.search-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.search-row input,.search-row select{background:white;border:1px solid #dce8f2;border-radius:10px;padding:10px 11px;color:#49647a;font-size:12px}.search-row input{min-width:200px}.small-number{font:800 25px Manrope;margin:5px 0}.progress{height:8px;border-radius:100px;background:#e6eff6;overflow:hidden;margin-top:11px}.progress>div{height:100%;background:linear-gradient(90deg,#2179eb,#15c0c9);border-radius:100px;transition:.25s}.kv{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid #edf2f6;font-size:12px}.kv:last-child{border-bottom:0}.kv span{color:#7f91a2}.route-illustration{height:230px;background:linear-gradient(140deg,#e9f4fc,#dcf4f8);border:1px solid #d9e7f2;border-radius:14px;position:relative;overflow:hidden}.route-illustration:before{content:"";position:absolute;inset:0;background-image:linear-gradient(0deg,#fff8 2px,transparent 2px),linear-gradient(90deg,#fff9 2px,transparent 2px);background-size:38px 38px;transform:rotate(-16deg) scale(1.2)}.route-illustration svg{position:absolute;inset:0;width:100%;height:100%}.route-pin{position:absolute;background:white;padding:7px 9px;border:1px solid #b9dceb;border-radius:9px;font-size:10px;font-weight:800;box-shadow:0 5px 15px #27577820;color:#1e6891}.route-pin.one{top:12%;left:9%}.route-pin.two{top:44%;left:44%}.route-pin.three{bottom:12%;right:8%}.split-actions{display:flex;gap:8px;flex-wrap:wrap}.muted{color:#8da2b3}.green{color:#079e72}.amber{color:#a77718}.red{color:#c65050}.error-panel{background:#fff1ef;border:1px solid #f2d3cf;border-radius:12px;padding:16px;color:#a64b47;font-size:12px;line-height:1.7}.loading-row{background:#e8f1f8;border-radius:7px;height:13px;animation:pulse 1s infinite;max-width:75%;margin-bottom:10px}
.modal-layer{position:fixed;inset:0;z-index:120;background:#071e34a6;display:flex;justify-content:center;align-items:center;padding:16px;overflow-y:auto}.modal-card{background:white;border-radius:18px;padding:22px 24px;width:min(620px,100%);max-height:min(90vh,1000px);overflow-y:auto;box-shadow:0 28px 70px #06223e66}.modal-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf1f6;padding-bottom:16px;margin-bottom:15px}.modal-head h2{font:800 18px Manrope;margin:5px 0 0}.toast{background:#112f49;color:white;padding:14px 18px;border-radius:12px;position:fixed;bottom:20px;left:50%;transform:translate(-50%,130px);transition:.25s;max-width:min(90vw,500px);font-size:12px;line-height:1.5;z-index:200;box-shadow:0 12px 33px #09243f52;opacity:0;pointer-events:none}.toast.show{transform:translate(-50%,0);opacity:1}.mobile-shade{position:fixed;inset:0;background:#071e34a4;z-index:18}
@media(max-width:1070px){.stats{grid-template-columns:repeat(2,1fr)}.two-cols{grid-template-columns:1fr}.connected{display:none}.topbar{padding:0 20px}.content{padding:22px}}
@media(max-width:780px){.auth-screen{grid-template-columns:1fr}.auth-art{min-height:270px;padding:26px 28px}.auth-display h1{font-size:31px;margin:12px 0}.auth-display p{font-size:12px;margin:0}.auth-metrics{margin-top:14px}.auth-metrics span{padding:7px;font-size:10px}.auth-foot{display:none}.auth-panel{padding:17px}.auth-form-card{padding:26px}.sidebar{position:fixed;top:0;left:0;bottom:0;transform:translateX(-110%);transition:transform .2s;width:245px}.sidebar.open{transform:none}.app{display:block}.hamburger{display:block}.who div{display:none}.refresh-word{display:none}.content{padding:17px}.heading{align-items:start}.heading h1{font-size:22px}.hero{padding:23px;min-height:170px}.hero h2{font-size:23px}.hero-water{font-size:44px}.topbar{height:66px;padding:0 14px}.stats{gap:9px}.stat{padding:14px}.stat-value{font-size:23px}.card{padding:15px}.formgrid{grid-template-columns:1fr}.footer{font-size:9px}}
@media(max-width:380px){.top-right{gap:7px}.who{display:none}.hero-water{display:none}.auth-art{min-height:300px}.stats{grid-template-columns:1fr 1fr}.stat-title{font-size:10px}}
