:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#19364a;background:#f3f7fa;font-synthesis:none;--blue:#087fad;--muted:#718494;--line:#e2ebf0}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #39bbed;outline-offset:3px}a{color:var(--blue)}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-1px;margin-bottom:8px}h2{font-size:19px}h3{font-size:16px}small,.muted{color:var(--muted)}.shell{display:grid;grid-template-columns:242px 1fr;min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--line);padding:32px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;font-weight:750;font-size:25px;color:#087aa9;letter-spacing:-1px}.drop{width:31px;height:39px;background:linear-gradient(150deg,#47caeb,#047dad);border-radius:60% 40% 60% 40%;transform:rotate(25deg);display:inline-block}.tagline{font-size:10px;letter-spacing:2px;margin:12px 0 40px;color:#8b9daa}.nav{display:grid;gap:8px}.nav button{border:0;background:none;text-align:left;padding:13px 15px;border-radius:10px;color:#617886;display:flex;align-items:center;gap:12px}.nav button.active{background:#e5f5fc;color:#007ead;font-weight:650}.nav button:hover{background:#f0f7fa}.nav .icon{font-size:20px;width:22px}.sidebar footer{margin-top:auto;padding-top:25px;font-size:12px;color:#8497a4}.topbar{height:86px;padding:0 38px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between}.topbar small{font-size:13px}.profile{display:flex;align-items:center;gap:12px}.avatar{background:#e6f4fa;color:#0e87b2;border-radius:50%;padding:12px;font-weight:700}.profile strong{display:block;font-size:13px}.profile button{border:0;background:none;color:#718494;font-size:12px}.main{padding:32px 38px;max-width:1550px;margin:auto}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.heading p{font-size:14px;color:var(--muted);margin-bottom:0}.btn{border:0;border-radius:9px;padding:12px 18px;background:var(--blue);color:#fff;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-size:14px}.btn.secondary{background:#fff;border:1px solid var(--line);color:#486171}.btn.light{background:#ffffff;color:#087da8}.btn.danger{color:#b84242;background:#fff0f0}.hero{border-radius:16px;background:linear-gradient(100deg,#075c89ed,#0b8ebcc9),url(aquapura.jpeg) center 56%/cover;color:white;min-height:164px;padding:30px 32px;margin-bottom:25px;position:relative;overflow:hidden}.hero h2{font-size:25px;margin:9px 0}.hero p{opacity:.8;font-size:14px;max-width:450px;line-height:1.7;margin-bottom:0}.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:700}.hero .watermark{position:absolute;right:35px;top:33px;font-size:65px;opacity:.17;font-weight:800;letter-spacing:-4px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:24px}.stat,.panel{background:white;border:1px solid var(--line);border-radius:13px;padding:22px}.stat .label{font-size:12px;color:#748895;display:flex;justify-content:space-between}.stat strong{display:block;font-size:26px;letter-spacing:-1px;margin:17px 0 9px}.stat small{font-size:11px}.stat .symbol{color:#138ab3;background:#ecf8fc;border-radius:7px;padding:5px}.columns{display:grid;grid-template-columns:1.7fr 1fr;gap:22px;margin-bottom:22px}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.panel-title h2{margin:0}.badge{display:inline-block;font-size:11px;padding:5px 8px;border-radius:6px;background:#e9f7f2;color:#23866c;white-space:nowrap}.badge.blue{background:#eaf5fc;color:#167dac}.badge.orange{background:#fff4e5;color:#b98428}.chart{height:185px;display:flex;align-items:end;gap:10px;border-bottom:1px solid var(--line);padding-top:20px;margin:10px 0 30px}.bar-wrap{flex:1;height:100%;display:flex;align-items:center;justify-content:end;flex-direction:column;position:relative}.bar{background:linear-gradient(#37b5d6,#1197be);width:70%;max-width:45px;border-radius:5px 5px 0 0;min-height:2px}.bar-wrap small{position:absolute;bottom:-24px;font-size:10px}.rank{display:flex;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid #edf2f5}.rank:last-child{border:0}.rank .details{flex:1}.rank strong{font-size:13px}.rank small{display:block;margin-top:4px;font-size:11px}.rank b{font-size:13px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}th{color:#8797a3;font-size:10px;letter-spacing:.8px;text-transform:uppercase;font-weight:600;padding:13px 10px;background:#f7fafc;white-space:nowrap}td{padding:15px 10px;border-bottom:1px solid #edf2f5}td button{border:0;background:none;color:#087fad}.empty{padding:38px 20px;text-align:center;color:#8495a1;line-height:1.7;font-size:14px}.filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:22px}.filters label{font-size:11px}.filters input,.filters select{margin-top:6px;min-width:140px}.field{display:block;margin-bottom:16px;font-size:13px;font-weight:600}input,select{border:1px solid #dce6ec;border-radius:8px;padding:11px 12px;background:#fff;color:#294757;max-width:100%;outline:none}input:focus,select:focus{border-color:#199cc6;box-shadow:0 0 0 3px #e4f6fc}.field input,.field select{display:block;width:100%;margin-top:7px}.field.check input{display:inline;width:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.catalog{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.product-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;text-align:left;display:flex;flex-direction:column;gap:12px;color:#274756;min-height:150px}.product-card:hover{border-color:#28a7ca;box-shadow:0 4px 18px #087fad0c}.product-card .product-icon{font-size:27px;color:#159bc2}.product-card strong{font-size:14px}.product-card b{color:#0a83af}.product-card small{font-size:11px}.cart-line{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:15px 0}.cart-line strong{font-size:13px}.cart-line small{display:block;margin-top:5px}.quantity{display:flex;gap:10px;align-items:center}.quantity button{width:30px;height:32px;border:1px solid var(--line);background:#f5f9fb;border-radius:6px;color:#247698}.total{display:flex;justify-content:space-between;margin:24px 0;font-size:21px;font-weight:700}.full{width:100%}.goal{margin-bottom:18px}.progress{height:7px;background:#eaf1f5;border-radius:9px;margin:12px 0;overflow:hidden}.progress span{display:block;height:100%;background:#18a5c8}.goal-head{display:flex;justify-content:space-between}.auth{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-art{background:linear-gradient(#07699755,#00476877),url(aquapura.jpeg) center/cover}.auth-main{display:flex;justify-content:center;align-items:center;padding:40px}.auth-box{max-width:390px;width:100%}.auth-box .brand{margin-bottom:42px}.auth-box p{line-height:1.7;font-size:14px;color:#748998;margin-bottom:28px}.auth-box h1{font-size:29px}dialog{border:0;border-radius:15px;padding:28px;width:480px;max-width:calc(100% - 30px);max-height:90vh;box-shadow:0 15px 80px #103a4b40}dialog::backdrop{background:#17344777}dialog .close{float:right;border:0;background:none;font-size:24px;color:#80939f}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:14px 24px;background:#173d50;color:#fff;border-radius:10px;box-shadow:0 4px 20px #1235;z-index:20;display:none;max-width:90%;font-size:14px}.notice{font-size:12px;color:#778b99;line-height:1.6;margin:16px 0}.search{width:100%;margin-bottom:18px}.section-label{font-size:10px;letter-spacing:1.5px;color:#98a8b1;margin:30px 15px 14px}.link{font-size:12px;color:#0982ae;text-decoration:none;border:0;background:none;cursor:pointer}.row-actions{display:flex;gap:10px}.mobile-label{display:none}@media(max-width:1100px){.shell{grid-template-columns:205px 1fr}.main{padding:25px}.topbar{padding:0 25px}.stats{grid-template-columns:repeat(2,1fr)}.columns{grid-template-columns:1fr}.hero .watermark{display:none}}@media(max-width:650px){.shell{display:block}.sidebar{position:static;height:auto;padding:17px 18px 10px;border:0}.sidebar .brand{font-size:23px}.tagline,.sidebar footer,.section-label{display:none}.nav{display:flex;overflow-x:auto;margin-top:19px;gap:5px;padding-bottom:5px}.nav button{white-space:nowrap;padding:11px;font-size:12px}.nav .icon{display:none}.topbar{height:65px;padding:0 18px}.main{padding:23px 16px}.heading{align-items:start;gap:10px}h1{font-size:25px}.heading p{font-size:12px}.heading .btn{padding:11px;font-size:12px}.hero{padding:24px;min-height:150px}.hero h2{font-size:22px}.stats{gap:10px}.stat{padding:16px}.stat strong{font-size:22px}.panel{padding:18px}.columns{gap:15px}.auth{display:block}.auth-art{height:190px;background-position:center 60%}.auth-main{padding:30px 24px}.auth-box .brand{margin-bottom:25px}.form-grid{grid-template-columns:1fr}.filters{gap:8px}.filters input,.filters select{min-width:120px;width:100%}.filters label{flex:1}.catalog{gap:10px}.profile .avatar{display:none}.topbar>small{max-width:120px;line-height:1.6}.chart{gap:4px}.product-card{padding:15px}}

[hidden]{display:none!important}

/* Fluid layout: prevent grid children and long values from widening the page. */
.shell{grid-template-columns:242px minmax(0,1fr)}
.shell>*,.columns>*,.stats>*,.catalog>*,.form-grid>*,.profile>div{min-width:0}
.columns{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}
.stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.catalog,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.main{width:100%}.sidebar{overflow-y:auto}.sidebar-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.menu-toggle{display:none}.topbar{height:auto;min-height:86px;gap:20px;padding-top:12px;padding-bottom:12px}
.profile{min-width:0}.profile>div{overflow-wrap:anywhere}.profile button{min-height:44px;min-width:44px}
.heading,.panel-title,.goal-head{flex-wrap:wrap}.heading>div{min-width:0;flex:1 1 190px}
.stat strong{font-size:clamp(19px,2vw,26px);overflow-wrap:anywhere}
.product-card,.rank,.cart-line,.total,.goal,.notice{overflow-wrap:anywhere}
.rank{flex-wrap:wrap}.rank .details{min-width:90px}.quantity{flex-shrink:0}.quantity button{width:44px;height:44px}
.cart-line>div:first-child{min-width:0}.total{gap:12px;flex-wrap:wrap}
.filters label{flex:1 1 145px;min-width:0}.filters input,.filters select{display:block;width:100%;min-width:0}
.btn,input,select{min-height:44px}.table-wrap{max-width:100%}td{overflow-wrap:anywhere}
.table-wrap td button,.table-wrap td a{display:inline-flex;align-items:center;min-height:44px}
dialog{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}.close{min-width:44px;min-height:44px}
@media(min-width:1600px){.catalog{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){
 .shell{grid-template-columns:190px minmax(0,1fr)}.columns{grid-template-columns:minmax(0,1fr)}
 .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar>small{display:none}.profile{width:100%}.profile>div{flex:1}
 .sidebar{padding:25px 14px}.brand{font-size:23px}.main{padding:24px}
}
@media(max-width:800px){
 .shell{display:block}.sidebar{position:static;height:auto;padding:14px 18px;border-right:0;border-bottom:1px solid var(--line);overflow:visible}
 .tagline,.sidebar footer{display:none}.menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--line);border-radius:9px;background:#f4f9fc;color:#087fad;padding:8px 13px;font-weight:600}
 .nav{display:none;margin-top:14px;overflow:visible}.menu-open .nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
 .nav button{min-height:48px;white-space:normal;padding:12px;font-size:13px}.nav .icon{display:inline-block;flex-shrink:0}
 .topbar{min-height:68px;padding:10px 18px}.profile{gap:10px}.profile strong{font-size:14px}.topbar small{font-size:12px}
 .main{padding:22px 18px}.auth{display:block}.auth-art{height:clamp(125px,24vh,210px);background-position:center 60%}.auth-main{padding:28px 22px}
 input,select{font-size:16px}.chart{gap:4px}.bar-wrap small{font-size:9px}
}
@media(max-width:600px){
 .main{padding:20px 14px}.profile .avatar{display:none}.profile button{font-size:12px}.heading .btn{min-height:44px}
 .hero{padding:22px}.stats{gap:10px}.stat{padding:15px}.stat .label{gap:5px;flex-wrap:wrap}.stat .symbol{display:none}
 .form-grid{grid-template-columns:minmax(0,1fr)}.filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.filters .btn{grid-column:1/-1}
 .panel{padding:16px}.catalog{gap:10px}.product-card{padding:14px}.product-card b{font-size:15px}
 .table-wrap table,.table-wrap tbody,.table-wrap tr,.table-wrap td{display:block;width:100%}
 .table-wrap thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .table-wrap tr{padding:12px 0;border-bottom:1px solid var(--line)}.table-wrap tr:last-child{border-bottom:0}
 .table-wrap td{display:grid;grid-template-columns:minmax(75px,.65fr) minmax(0,1fr);gap:12px;align-items:center;border:0;padding:7px 0;font-size:13px}
 .table-wrap td::before{content:attr(data-label);font-size:11px;color:#718494;font-weight:600}.table-wrap td .badge{white-space:normal;justify-self:start}
 .table-wrap td a,.table-wrap td button{justify-self:start}.table-wrap td:empty{display:none}
 .panel-title h2{font-size:18px}.goal-head{gap:8px}dialog{padding:20px;max-width:calc(100% - 20px)}
}
@media(max-width:360px){
 .catalog{grid-template-columns:minmax(0,1fr)}.heading>.btn{width:100%}.hero{padding:18px}.hero h2{font-size:21px}
 .profile{flex-wrap:wrap}.profile>div{flex-basis:100%}.profile button{padding:8px 12px}.nav .icon{display:none}
 .cart-line{flex-wrap:wrap}.quantity{margin-left:auto}.stat strong{font-size:18px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.row-actions{flex-wrap:wrap}.table-wrap td button.delete-account{color:#b84242}

input[aria-invalid="true"],select[aria-invalid="true"],textarea[aria-invalid="true"]{
 border:2px solid #c33333;background:#fff5f5;
}
input[aria-invalid="true"]:focus,select[aria-invalid="true"]:focus,textarea[aria-invalid="true"]:focus{
 box-shadow:0 0 0 3px #c3333320;
}
.field-error{display:block;color:#b42323;font-size:12px;font-weight:600;line-height:1.5;margin-top:6px}

.achievement{margin-bottom:20px;border-left:4px solid #23866c;background:#effbf6}.profile{flex-wrap:wrap}

.sale-selection{align-items:center;margin-bottom:20px}.sale-selection label{display:flex;gap:10px;align-items:center}.delete-list{max-height:180px;overflow:auto;font-size:13px}input[type=checkbox]{min-height:24px;width:24px;accent-color:#087fad}
