@charset "UTF-8";.public-overview-bg{min-height:100vh;width:100vw;background:center/cover no-repeat;position:fixed;inset:0;z-index:0;display:flex;flex-direction:column;justify-content:flex-start;box-sizing:border-box;padding-inline:1rem}.flex-center{display:flex;flex-direction:column;align-items:center;min-height:100vh;min-width:100vw;justify-content:flex-start;position:relative;box-sizing:border-box}.public-content{width:100%;max-width:min(95vw,720px);display:flex;flex-direction:column;align-items:center;margin-bottom:72px;box-sizing:border-box;padding-inline:.8rem}.public-title{width:100%;text-align:center;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:800;padding:1.1rem 1.5rem;letter-spacing:.5px;margin:auto 0}.public-card{width:100%;max-width:100%;border:#101010 .5px solid;border-radius:1.7rem;background:#ffffff80;box-shadow:0 4px 32px #00000021,0 1.5px 12px #00000017;padding:clamp(1.6rem,4vw,3.2rem) clamp(1rem,4vw,2.4rem);display:flex;flex-direction:column;align-items:center;-webkit-user-select:none;user-select:none;margin-bottom:.8rem;transition:transform .3s ease,box-shadow .3s ease,background .25s;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);box-sizing:border-box;animation:fadeUp .6s ease-out}.public-card-home{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;max-width:min(95vw,720px);box-sizing:border-box}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.public-card-poolname{font-size:clamp(1.4rem,4vw,2.2rem);font-weight:700;color:#1c3049;margin-bottom:2.5rem;text-align:center;letter-spacing:.2px}.public-card-row{display:flex;align-items:center;gap:1.1rem}.public-icon{color:#2196f3;filter:drop-shadow(0 0 2px rgba(33,150,243,.5019607843))}.public-icon.chlore{color:#059669}.public-value{font-size:clamp(2.2rem,6vw,3.2rem);font-weight:800;display:flex;align-items:baseline;color:#1b51b6}.public-value.chlore{font-size:clamp(1.6rem,4vw,2.2rem);color:#129276}.public-unit{font-size:clamp(1rem,3vw,1.4rem);font-weight:500;margin-left:.15em}.public-unit.chlore{color:#129276}.public-unit.therm{color:#1b51b6}.public-card-date{font-size:clamp(1rem,2.5vw,1.08rem);color:#505050;margin-top:.6rem;text-align:center}.card-center{padding:clamp(1.2rem,3vw,2.2rem) clamp(1rem,3vw,1.3rem);border-radius:2rem;background:#ffffffe3;box-shadow:0 3px 24px #0000001f;text-align:center;font-size:clamp(1rem,3vw,1.22rem);color:#334155;font-weight:600;box-sizing:border-box}.card-center .error{color:#e11d48;background:#ffffffeb}.card-center .info{color:#0ea5e9;background:#ffffffeb;font-size:small}.card-center.loading{color:#0ea5e9}.public-spinner{animation:spin 1.1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.fullscreen-center{display:flex;align-items:center;justify-content:center;min-height:100vh;width:100%;box-sizing:border-box}.public-footer{width:100vw;position:relative;left:0;bottom:0;background:#101010;color:#fff;text-align:center;font-size:1rem;padding:.78rem 0 .2rem;z-index:30;box-shadow:0 -2px 8px #00000024;font-family:inherit}.public-footer .footer-link{color:#60a5fa;text-decoration:underline;font-weight:500;margin-left:.14em;transition:color .2s}.public-footer .footer-link:hover{color:#bae6fd}.public-footer>div:first-child{font-size:1.08rem;font-weight:500;margin-bottom:.5em}.public-footer__credit{position:absolute;right:12px;bottom:6px;font-size:.75rem;color:#ffffffa6;text-decoration:none;white-space:nowrap}.public-footer__credit:hover,.public-footer__credit:focus{color:#fffc;text-decoration:underline}@media (max-width: 600px){.public-footer__credit{bottom:0}}@media screen and (min-width: 1600px){.public-content{max-width:1550px;justify-content:center;padding-top:6vh;padding-bottom:6vh}.public-card{padding:4rem 3rem;border-radius:2.5rem;box-shadow:0 6px 50px #0000002e}.public-card-poolname{font-size:4rem;margin-bottom:2.5rem}.public-value{font-size:7.5rem}.public-value.chlore{font-size:4rem}.public-icon{width:100px;height:100px}.public-unit{font-size:2rem}.public-card-date{font-size:1.5rem}}html,body,#root{height:100%;width:100%}.technician-viewport{display:flex;align-items:center;justify-content:center;min-height:100vh;width:100%;position:relative;background:none}.technician-center{display:flex;flex-direction:column;align-items:center;gap:clamp(1.2rem,3vw,2.8rem);width:100%;max-width:420px;margin:0 auto;padding:clamp(1rem,4vw,3rem) 0 2.2rem 0}.technician-center .public-card{border-radius:18px!important;max-width:100%;margin:0 auto;background:#ffffff75;box-shadow:0 4px 18px #5050501a,0 1.5px 6px #50505021;padding:clamp(1.1rem,4vw,1.8rem) clamp(.6rem,3vw,2.2rem);border:1px solid rgba(180,210,225,.18);-webkit-backdrop-filter:blur(2.5px);backdrop-filter:blur(2.5px);transition:box-shadow .16s,background .18s}.logo-img-full{display:block;width:100%;height:clamp(70px,16vw,180px);object-fit:contain;margin:0 auto}.establishment-name{font-size:clamp(1.7rem,4vw,2.7rem);font-weight:900;text-align:center;line-height:1.13}.establishment-address{font-size:clamp(.92rem,1.5vw,1.13rem);color:#4b5563;font-weight:500;text-align:center}.user-name{font-weight:500;font-size:clamp(1.05rem,2vw,1.28rem);color:#222;text-align:center}.client-name{font-weight:700;color:#101b1c;letter-spacing:.01em}.user-card{display:flex;flex-direction:column;align-items:center;padding:1.2rem 1rem}.logout-btn{margin-top:1.2rem;display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:.92rem;font-weight:700;color:#144a7a;background:linear-gradient(180deg,#ffffff8c,#ffffff59);border:1px solid rgba(25,79,129,.25);border-radius:9999px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 6px 16px #0000001a,inset 0 1px #ffffff80;cursor:pointer;transition:transform .08s ease,box-shadow .15s ease,background .15s ease;-webkit-tap-highlight-color:transparent}.logout-btn:hover{background:linear-gradient(180deg,#fffc,#f5f5f599);box-shadow:0 10px 22px #00000038,inset 0 1px #fffc;transform:translateY(-2px) scale(1.05)}.logout-btn:active{transform:translateY(1px)}.tech-action-btn{margin-top:1.5rem;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;padding:.9rem 1.6rem;border-radius:40px;background:linear-gradient(90deg,#0ea672 50%,#059669);color:#fff;border:none;outline:none;cursor:pointer;box-shadow:0 3px 12px #3c8c6421;transition:background .15s,box-shadow .12s,transform .1s;gap:8px}.tech-action-btn:hover,.tech-action-btn:focus{background:linear-gradient(90deg,#059669 60%,#087657);box-shadow:0 6px 22px #28503238;transform:translateY(-2px) scale(1.03)}@media (max-width: 480px){.technician-center{max-width:97vw;min-height:100vh;justify-content:center;gap:1rem;padding:0}.logo-img-full{height:clamp(70px,26vw,180px)}}@media (min-width: 1200px){.technician-center{max-width:650px}.logo-img-full{height:clamp(150px,13vw,300px)}}.chemistry-page main .circuit-card:nth-of-type(1){--c-base: #3b82f6;--c-50: rgb(231.48, 240, 253.92);--c-100: rgb(215.8, 230, 253.2);--c-200: rgb(192.28, 215, 252.12);--c-300: rgb(168.76, 200, 251.04);--c-400: rgb(137.4, 180, 249.6);--c-500: #3b82f6;--c-600: rgb(50.74, 111.8, 211.56);--c-700: rgb(43.66, 96.2, 182.04);--c-ring: rgb(206, 223.75, 252.75)}.chemistry-page main .circuit-card:nth-of-type(1) .swimming-pool-card:nth-of-type(1){--p-bg: var(--c-100);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(1) .swimming-pool-card:nth-of-type(2){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(1) .swimming-pool-card:nth-of-type(3){--p-bg: var(--c-50);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(1) .swimming-pool-card:nth-of-type(4){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(2){--c-base: #10b981;--c-50: rgb(226.32, 246.6, 239.88);--c-100: rgb(207.2, 241, 229.8);--c-200: rgb(178.52, 232.6, 214.68);--c-300: rgb(149.84, 224.2, 199.56);--c-400: rgb(111.6, 213, 179.4);--c-500: #10b981;--c-600: rgb(13.76, 159.1, 110.94);--c-700: rgb(11.84, 136.9, 95.46);--c-ring: rgb(195.25, 237.5, 223.5)}.chemistry-page main .circuit-card:nth-of-type(2) .swimming-pool-card:nth-of-type(1){--p-bg: var(--c-100);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(2) .swimming-pool-card:nth-of-type(2){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(2) .swimming-pool-card:nth-of-type(3){--p-bg: var(--c-50);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(2) .swimming-pool-card:nth-of-type(4){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(3){--c-base: #f59e0b;--c-50: rgb(253.8, 243.36, 225.72);--c-100: rgb(253, 235.6, 206.2);--c-200: rgb(251.8, 223.96, 176.92);--c-300: rgb(250.6, 212.32, 147.64);--c-400: rgb(249, 196.8, 108.6);--c-500: #f59e0b;--c-600: rgb(210.7, 135.88, 9.46);--c-700: rgb(181.3, 116.92, 8.14);--c-ring: rgb(252.5, 230.75, 194)}.chemistry-page main .circuit-card:nth-of-type(3) .swimming-pool-card:nth-of-type(1){--p-bg: var(--c-100);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(3) .swimming-pool-card:nth-of-type(2){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(3) .swimming-pool-card:nth-of-type(3){--p-bg: var(--c-50);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(3) .swimming-pool-card:nth-of-type(4){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(4){--c-base: #ef4444;--c-50: rgb(253.08, 232.56, 232.56);--c-100: rgb(251.8, 217.6, 217.6);--c-200: rgb(249.88, 195.16, 195.16);--c-300: rgb(247.96, 172.72, 172.72);--c-400: rgb(245.4, 142.8, 142.8);--c-500: #ef4444;--c-600: rgb(205.54, 58.48, 58.48);--c-700: rgb(176.86, 50.32, 50.32);--c-ring: rgb(251, 208.25, 208.25)}.chemistry-page main .circuit-card:nth-of-type(4) .swimming-pool-card:nth-of-type(1){--p-bg: var(--c-100);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(4) .swimming-pool-card:nth-of-type(2){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(4) .swimming-pool-card:nth-of-type(3){--p-bg: var(--c-50);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(4) .swimming-pool-card:nth-of-type(4){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(5){--c-base: #8b5cf6;--c-50: rgb(241.08, 235.44, 253.92);--c-100: rgb(231.8, 222.4, 253.2);--c-200: rgb(217.88, 202.84, 252.12);--c-300: rgb(203.96, 183.28, 251.04);--c-400: rgb(185.4, 157.2, 249.6);--c-500: #8b5cf6;--c-600: rgb(119.54, 79.12, 211.56);--c-700: rgb(102.86, 68.08, 182.04);--c-ring: rgb(226, 214.25, 252.75)}.chemistry-page main .circuit-card:nth-of-type(5) .swimming-pool-card:nth-of-type(1){--p-bg: var(--c-100);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(5) .swimming-pool-card:nth-of-type(2){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(5) .swimming-pool-card:nth-of-type(3){--p-bg: var(--c-50);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(5) .swimming-pool-card:nth-of-type(4){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(6){--c-base: #06b6d4;--c-50: rgb(225.12, 246.24, 249.84);--c-100: rgb(205.2, 240.4, 246.4);--c-200: rgb(175.32, 231.64, 241.24);--c-300: rgb(145.44, 222.88, 236.08);--c-400: rgb(105.6, 211.2, 229.2);--c-500: #06b6d4;--c-600: rgb(5.16, 156.52, 182.32);--c-700: rgb(4.44, 134.68, 156.88);--c-ring: rgb(192.75, 236.75, 244.25)}.chemistry-page main .circuit-card:nth-of-type(6) .swimming-pool-card:nth-of-type(1){--p-bg: var(--c-100);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(6) .swimming-pool-card:nth-of-type(2){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(6) .swimming-pool-card:nth-of-type(3){--p-bg: var(--c-50);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(6) .swimming-pool-card:nth-of-type(4){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(7){--c-base: #84cc16;--c-50: rgb(240.24, 248.88, 227.04);--c-100: rgb(230.4, 244.8, 208.4);--c-200: rgb(215.64, 238.68, 180.44);--c-300: rgb(200.88, 232.56, 152.48);--c-400: rgb(181.2, 224.4, 115.2);--c-500: #84cc16;--c-600: rgb(113.52, 175.44, 18.92);--c-700: rgb(97.68, 150.96, 16.28);--c-ring: rgb(224.25, 242.25, 196.75)}.chemistry-page main .circuit-card:nth-of-type(7) .swimming-pool-card:nth-of-type(1){--p-bg: var(--c-100);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(7) .swimming-pool-card:nth-of-type(2){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(7) .swimming-pool-card:nth-of-type(3){--p-bg: var(--c-50);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(7) .swimming-pool-card:nth-of-type(4){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(8){--c-base: #f97316;--c-50: rgb(254.28, 238.2, 227.04);--c-100: rgb(253.8, 227, 208.4);--c-200: rgb(253.08, 210.2, 180.44);--c-300: rgb(252.36, 193.4, 152.48);--c-400: rgb(251.4, 171, 115.2);--c-500: #f97316;--c-600: rgb(214.14, 98.9, 18.92);--c-700: rgb(184.26, 85.1, 16.28);--c-ring: rgb(253.5, 220, 196.75)}.chemistry-page main .circuit-card:nth-of-type(8) .swimming-pool-card:nth-of-type(1){--p-bg: var(--c-100);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(8) .swimming-pool-card:nth-of-type(2){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(8) .swimming-pool-card:nth-of-type(3){--p-bg: var(--c-50);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(8) .swimming-pool-card:nth-of-type(4){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(9){--c-base: #3b82f6;--c-50: rgb(231.48, 240, 253.92);--c-100: rgb(215.8, 230, 253.2);--c-200: rgb(192.28, 215, 252.12);--c-300: rgb(168.76, 200, 251.04);--c-400: rgb(137.4, 180, 249.6);--c-500: #3b82f6;--c-600: rgb(50.74, 111.8, 211.56);--c-700: rgb(43.66, 96.2, 182.04);--c-ring: rgb(206, 223.75, 252.75)}.chemistry-page main .circuit-card:nth-of-type(9) .swimming-pool-card:nth-of-type(1){--p-bg: var(--c-100);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(9) .swimming-pool-card:nth-of-type(2){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(9) .swimming-pool-card:nth-of-type(3){--p-bg: var(--c-50);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(9) .swimming-pool-card:nth-of-type(4){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(10){--c-base: #10b981;--c-50: rgb(226.32, 246.6, 239.88);--c-100: rgb(207.2, 241, 229.8);--c-200: rgb(178.52, 232.6, 214.68);--c-300: rgb(149.84, 224.2, 199.56);--c-400: rgb(111.6, 213, 179.4);--c-500: #10b981;--c-600: rgb(13.76, 159.1, 110.94);--c-700: rgb(11.84, 136.9, 95.46);--c-ring: rgb(195.25, 237.5, 223.5)}.chemistry-page main .circuit-card:nth-of-type(10) .swimming-pool-card:nth-of-type(1){--p-bg: var(--c-100);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(10) .swimming-pool-card:nth-of-type(2){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(10) .swimming-pool-card:nth-of-type(3){--p-bg: var(--c-50);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(10) .swimming-pool-card:nth-of-type(4){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(11){--c-base: #f59e0b;--c-50: rgb(253.8, 243.36, 225.72);--c-100: rgb(253, 235.6, 206.2);--c-200: rgb(251.8, 223.96, 176.92);--c-300: rgb(250.6, 212.32, 147.64);--c-400: rgb(249, 196.8, 108.6);--c-500: #f59e0b;--c-600: rgb(210.7, 135.88, 9.46);--c-700: rgb(181.3, 116.92, 8.14);--c-ring: rgb(252.5, 230.75, 194)}.chemistry-page main .circuit-card:nth-of-type(11) .swimming-pool-card:nth-of-type(1){--p-bg: var(--c-100);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(11) .swimming-pool-card:nth-of-type(2){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(11) .swimming-pool-card:nth-of-type(3){--p-bg: var(--c-50);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(11) .swimming-pool-card:nth-of-type(4){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(12){--c-base: #ef4444;--c-50: rgb(253.08, 232.56, 232.56);--c-100: rgb(251.8, 217.6, 217.6);--c-200: rgb(249.88, 195.16, 195.16);--c-300: rgb(247.96, 172.72, 172.72);--c-400: rgb(245.4, 142.8, 142.8);--c-500: #ef4444;--c-600: rgb(205.54, 58.48, 58.48);--c-700: rgb(176.86, 50.32, 50.32);--c-ring: rgb(251, 208.25, 208.25)}.chemistry-page main .circuit-card:nth-of-type(12) .swimming-pool-card:nth-of-type(1){--p-bg: var(--c-100);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(12) .swimming-pool-card:nth-of-type(2){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page main .circuit-card:nth-of-type(12) .swimming-pool-card:nth-of-type(3){--p-bg: var(--c-50);--p-bd: var(--c-300);--p-hd: var(--c-600)}.chemistry-page main .circuit-card:nth-of-type(12) .swimming-pool-card:nth-of-type(4){--p-bg: var(--c-200);--p-bd: var(--c-400);--p-hd: var(--c-700)}.chemistry-page{min-height:100vh;display:flex;flex-direction:column;position:relative}.chemistry-page__loader{position:fixed;inset:0;background:#fffc;display:flex;align-items:center;justify-content:center;z-index:1000}.chemistry-page__loader svg{width:3rem;height:3rem;color:#0052de;animation:spin 1s linear infinite}.chemistry-page__loader span{margin-left:1rem;font-size:1.25rem;color:#333}.chemistry-page__nav-btns{display:none}.attendance-card{width:80vw!important;max-width:758px!important;margin:0 auto!important;border:0!important}@media (min-width: 635px){.attendance-card{width:88.5vw!important}}@media (min-width: 768px){.chemistry-page__nav-btns{display:flex;flex-direction:column;gap:1rem;position:fixed;left:1rem;top:50%;transform:translateY(-50%);z-index:500}.chemistry-page__nav-btns button{width:3rem;height:3rem;background:#0052de;color:#fff;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}.chemistry-page__nav-btns button.active,.chemistry-page__nav-btns button:disabled{background:#28a745;cursor:default}.chemistry-page__nav-btns button:hover{background:#b6e4fb;color:#000}.attendance-row{display:grid;grid-template-columns:1fr 220px;gap:12px;align-items:center}.attendance-row__label{font-weight:600;margin:0}.circuit-card__inline-metrics{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}.circuit-card__inline-metrics input{width:120px}.circuit-card__inline-metrics .sep{padding:0 4px;-webkit-user-select:none;user-select:none}}.chemistry-page__mobile-home{display:none}@media (max-width: 600px){.chemistry-page__mobile-home{position:relative;top:80px;margin:0 auto;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#0052de;display:flex;align-items:center;justify-content:center;z-index:60;cursor:pointer}.chemistry-page__mobile-home:hover{background:#b6e4fb;color:#000}.attendance-card{width:98vw!important}}.chemistry-page__to-top{position:fixed;right:1rem;bottom:5rem;width:3rem;height:3rem;background:#0052de;color:#fff;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:500;cursor:pointer}.chemistry-page__to-top:hover{background:#b6e4fb;color:#000}.chemistry-page__operator{padding:.5rem;z-index:200;width:80vw;max-width:758px;margin:1rem auto 2rem;display:flex;align-items:center;gap:.5rem}@media (max-width: 600px){.chemistry-page__operator{margin:100px auto 1rem;width:95vw}}.chemistry-page__operator input{flex:1;padding:.75rem;font-size:1rem;border:2.5px solid #1b51b6;border-radius:9999px;background:#ffffffe6}.chemistry-page__operator input.is-invalid{border-color:#d32f2f;background:#fff5f5}.chemistry-page__operator button{margin-bottom:8px;padding:.75rem 1.5rem;background:#0052de;color:#fff;border:none;border-radius:.5rem;font-weight:700;cursor:pointer;transition:background .2s}.chemistry-page__operator button:hover{background:#b6e4fb;color:#000;border:1px solid #000}.chemistry-page__operator button:disabled{background:transparent;color:#999;border:.5px solid red;cursor:not-allowed}.circuit-card{position:relative;width:80vw;max-width:700px;margin:2rem auto;padding:2rem;background:linear-gradient(180deg,var(--c-50, rgba(255, 255, 255, .5)) 0%,rgba(255,255,255,.5) 40%),#ffffff80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:1.5rem;box-shadow:0 8px 24px #0000001a;border:1px solid var(--c-300, rgba(0, 0, 0, .06))}.circuit-card__badge{position:absolute;top:1rem;right:1rem;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;color:#fff}.circuit-card__badge.INDOOR{background:#0052de}.circuit-card__badge.OUTDOOR{background:#10b981}.circuit-card__title{text-align:center;font-size:1.75rem;font-weight:700;margin-bottom:1rem;color:var(--c-700, #111)}.circuit-card__title span{display:block;font-size:1rem;font-weight:500;color:#555}.circuit-card__ph{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1.5rem}.circuit-card__ph label{font-size:1rem;color:#333}.circuit-card__ph input{width:4rem;padding:.5rem;border:2px solid var(--c-600, #1b51b6);border-radius:.5rem;text-align:center;background:var(--c-50, #eef3ff)}.circuit-card__ph input.is-invalid{border-color:#d32f2f;background:#fff5f5}fieldset{border:1px solid #ddd;border-radius:1rem;padding:1rem;margin-bottom:1.5rem;background:#e6e6e6cc}legend{font-size:1.25rem;font-weight:600;color:#222}.radio-group{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}label{font-size:.95rem;color:#333;margin-bottom:.25rem;display:block}select,input{width:98%;padding:.5rem;margin-bottom:.75rem;border:1px solid #ccc;border-radius:.5rem;font-size:.95rem}@media (max-width: 600px){select,input{font-size:.85rem;width:90%}}.swimming-pool-card{background:var(--p-bg, rgba(230, 230, 230, .8));border:1px solid var(--p-bd, #ddd);border-radius:1rem}.swimming-pool-card .card-header,.swimming-pool-card legend{color:var(--p-hd, #222)}.resultats{margin-top:1rem;text-decoration:underline;font-weight:600;color:#333;margin-bottom:.5rem}.result-fields input[readonly]{background:#e0e0e0;color:#555;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.swimming-pool-card .drain-field{display:flex;gap:1rem}.swimming-pool-card .stabilizer-field{display:none}.swimming-pool-card.is-outdoor .stabilizer-field{display:block}input.is-invalid,select.is-invalid,textarea.is-invalid{border-color:#d32f2f!important;background:#fff5f5!important}.help-text--error{color:#d32f2f;font-size:.85rem;margin-top:-.5rem;margin-bottom:.5rem}.required-asterisk:after{content:" *";color:#d32f2f}.tabmenu-wrapper{display:none}@media (max-width: 600px){.tabmenu-wrapper{display:flex;position:relative;top:0;left:0;width:100vw;height:48px;z-index:50;justify-content:center;background:transparent;padding:0;margin:0;border:none;box-shadow:none;overflow:visible;border-bottom:none}.tabmenu-tab{flex:1;width:33.333vw;min-width:0;margin:0;padding:0;border:1.5px solid #bfc8d2;border-bottom:none;background:#e7e8ea;color:#9a9a9a;font-size:1.09rem;font-weight:600;height:48px;text-align:center;display:flex;align-items:flex-end;justify-content:center;position:relative;transition:background .15s,color .15s,border .12s;cursor:pointer;border-top-left-radius:0;border-top-right-radius:18px;box-shadow:0 2px 6px #c2d2e624}.tabmenu-tab:not(:last-child){border-right:none}.tabmenu-tab--active{background:#fff;color:#059669;border-bottom:3px solid #059669;font-weight:700;z-index:1}.tabmenu-tab:hover:not(.tabmenu-tab--active){background:#f0f0f3;color:#7a7a7a}.technician-center{padding-top:54px}}:root{--history-pc-width:900px;--dt-row-h:44px}.history-page,.history-content{max-width:100vw;overflow-x:hidden}.history-content{width:100%;max-width:var(--history-pc-width)!important;margin:0 auto;padding:0 8px 48px;box-sizing:border-box}.history-card{width:100%;max-width:var(--history-pc-width);margin-left:auto;margin-right:auto;border-radius:18px;background:#ffffffe6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);box-shadow:0 6px 24px #0000001f;padding:16px;border:1px solid rgba(0,0,0,.25);box-sizing:border-box}.history-content *{min-width:0}.alerts-ko{color:#ef5350}.history-toolbar{width:100%;max-width:var(--history-pc-width);margin:96px auto 12px;display:grid;gap:12px}.history-toolbar .toolbar-title{font-weight:800;font-size:1.35rem;text-align:center}.history-toolbar .toolbar-content{display:flex;gap:16px;justify-content:space-between;align-items:flex-end;flex-wrap:wrap}.history-controls{display:grid;gap:8px;grid-template-columns:1fr}.history-controls .control-group{display:grid;gap:6px}.history-controls .control-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.history-controls .slash{font-weight:700;margin:0 4px;align-self:center}.history-controls .segment{display:inline-flex;gap:6px;padding:4px;background:#eee;border-radius:10px;width:fit-content}.history-controls .seg-btn{border:0;padding:6px 10px;border-radius:8px;background:transparent;cursor:pointer}.history-controls .seg-btn.active{background:#fff;box-shadow:0 1px 3px #00000026}.history-controls .select,.history-controls .date-input{height:36px;border-radius:8px;border:1px solid #ccc;padding:0 10px;background:#fff}.export-actions{display:flex;gap:8px;align-items:center}.btn{height:36px;border-radius:8px;border:1px solid #bbb;background:#fff;padding:0 10px;display:inline-flex;gap:6px;align-items:center;cursor:pointer;transition:background .15s}.btn:hover{background:#f2f2f2}.btn.primary{background:#1e88e5;color:#fff;border-color:#1e88e5}.history-kpi-row{width:100%;max-width:var(--history-pc-width);margin:0 auto 12px;display:grid;gap:16px}@media (min-width: 900px){.history-kpi-row{grid-template-columns:1fr 1fr}}.tile{display:flex;flex-direction:column;gap:10px;min-height:140px}.tile .tile-title{font-weight:700}.tile .tile-title.center{text-align:center}.tile .donut-wrap{background:#171717;border-radius:12px;flex:1;min-height:140px;overflow:hidden}.tile .tile-sub{opacity:.8}.big-number{font-weight:800;font-size:clamp(2.2rem,4.5vw,3.4rem);line-height:1;text-align:center}.history-grid{width:100%;max-width:var(--history-pc-width);margin:0 auto;display:grid;gap:16px;align-items:stretch}@media (min-width: 900px){.history-grid{grid-template-columns:1fr 1fr}}.chart-bassins{grid-column:1/-1;margin-top:8px}.chart-card{padding:10px 10px 14px}.chart-card .chart-head{font-weight:700;margin:2px 0 8px;text-align:center}.chart-card .chart-inner{position:relative;background:#171717;border-radius:12px;min-height:230px;height:clamp(220px,38vh,420px);overflow:hidden}.chart-card .chart-inner>canvas{position:absolute!important;inset:0;width:100%!important;height:100%!important;display:block}.multiples-col{display:flex;flex-direction:column;gap:12px}.small-chart.fullrow{width:100%}.small-chart__title{text-align:center;font-weight:600;margin-bottom:4px}.small-chart__inner{position:relative;background:#171717;border-radius:12px;height:260px;overflow:hidden}.small-chart__inner>canvas{position:absolute!important;inset:0;width:100%!important;height:100%!important}.datatable-card{width:100%;max-width:var(--history-pc-width);margin:0 auto 18px;padding:10px;box-sizing:border-box}.datatable{width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#90a7ff #eef4ff}.datatable::-webkit-scrollbar{height:10px;width:10px}.datatable::-webkit-scrollbar-track{background:#eef4ff;border-radius:8px}.datatable::-webkit-scrollbar-thumb{background:#90a7ff;border-radius:8px}.datatable::-webkit-scrollbar-thumb:hover{background:#6f8cff}.datatable .dt-head,.datatable .dt-row{display:grid;gap:8px;align-items:center}.datatable .dt-head{font-weight:700;border-bottom:1px solid rgba(0,0,0,.15);padding:8px 4px;background:#eaf6ff;position:sticky;top:0;z-index:1;box-shadow:0 2px #0000000f;border-radius:10px 10px 0 0}.datatable .dt-body{display:block;overflow-x:hidden}.dt-row{padding:0;border-bottom:1px dashed rgba(0,0,0,.12)}.dt-row>div{background:#fff;padding:8px;border-right:1px solid rgba(0,0,0,.06);height:var(--dt-row-h)}.dt-row:nth-child(2n)>div{background:#d7ecff}.dt-row.dt-row--alert>div{background:#ffe3e3}.dt-row:hover>div{background:#f5f9ff}.txt-ok{color:#2e7d32}.txt-ko{color:#ef5350}.datatable .dt-row>div:nth-child(3),.datatable .dt-head>div:nth-child(3){text-align:center}.full-combo{width:100%;max-width:var(--history-pc-width);margin:0 auto;display:grid;gap:16px}@media (min-width: 900px){.full-combo{grid-template-columns:1fr 1fr}}.combo-col .tile{height:100%}.filters-grid{display:grid;gap:10px}.filters-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px}.filters-summary .kpi{background:#171717;color:#fff;border-radius:12px;padding:12px;text-align:center}.filters-summary .kpi span{display:block;opacity:.85}.filters-summary .kpi strong{display:block;font-size:1.6rem}.filters-table{background:#171717;color:#fff;border-radius:12px;overflow:hidden}.filters-table .t-head,.filters-table .t-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(60px,.6fr) minmax(110px,.9fr) minmax(110px,.9fr);gap:8px;align-items:center}.filters-table .t-head{padding:10px;background:#1d1d1d;font-weight:600}.filters-table .t-row{padding:10px;border-top:1px solid rgba(255,255,255,.08)}.filters-table .c-name{word-break:break-word}@media (max-width: 600px){.filters-summary{grid-template-columns:1fr}.filters-table .t-head{display:none}.filters-table .t-row{grid-template-columns:1fr 1fr;gap:6px}.filters-table .t-row .c-name{grid-column:1/-1;font-weight:600;text-decoration:underline}.filters-table .t-row .c-name:after{content:" :"}.filters-table .t-row div:nth-child(2):before{content:"Lavages: ";font-weight:600;margin-right:4px}.filters-table .t-row div:nth-child(3):before{content:"Durée moy. (min): ";font-weight:600;margin-right:4px}.filters-table .t-row div:nth-child(4):before{content:"Intervalle moy.: ";font-weight:600;margin-right:4px}}.logo-card{display:grid;place-items:center}.logo-img-full{max-width:240px;width:100%;height:auto}.chart-card,.history-grid,.datatable,.tile{width:100%;box-sizing:border-box}@media (max-width: 600px){.history-content{padding:0 10px 36px}.history-card{padding:12px;margin:0 0 10px;border-radius:14px}.history-toolbar{margin-top:96px}.history-toolbar .toolbar-title{font-size:1.1rem;margin-bottom:6px;text-align:center}.history-toolbar .toolbar-content{display:grid;grid-template-columns:1fr;gap:10px}.export-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.export-actions .btn{flex:1 0 48%;max-width:48%;height:34px;padding:0 10px;font-size:.9rem}.export-actions .btn:nth-child(3){order:0}.export-actions .btn:nth-child(2){order:1}.export-actions .btn.primary{order:2}.history-controls .control-row{gap:8px;justify-content:center}.history-controls .segment{padding:3px;margin:0 auto}.history-controls .select,.history-controls .date-input{height:34px;font-size:.9rem;width:100%}.history-kpi-row{grid-template-columns:1fr;gap:10px}.tile{min-height:110px}.tile .tile-sub{font-size:.9rem}.big-number{font-size:clamp(1.8rem,7.5vw,2.4rem)}.tile .donut-wrap{min-height:140px;border-radius:10px}.history-grid{grid-template-columns:1fr;gap:12px}.chart-card{padding:8px}.chart-card .chart-head{font-size:.95rem}.chart-card .chart-inner{min-height:190px;height:200px;border-radius:10px;overflow:hidden}.multiples-col{gap:10px}.small-chart__title{font-size:.95rem}.small-chart__inner{height:190px}.datatable-card{padding:8px;overflow:hidden}.datatable{-webkit-overflow-scrolling:touch}.full-combo{grid-template-columns:1fr;gap:12px}.filters-summary .kpi strong{font-size:1.25rem}.logo-img-full{max-width:140px;width:60%}}@media (min-width: 900px){.history-kpi-row>.history-card:nth-child(2){margin-top:0;margin-bottom:0;padding:12px 16px}.history-kpi-row>.history-card:nth-child(2) .donut-wrap{padding:16px 16px 28px;min-height:140px;margin-top:6px;margin-bottom:6px}.history-kpi-row>.history-card:nth-child(2) .tile .tile-title{margin-top:0;margin-bottom:10px}}.tile--inlinehead{display:flex;flex-direction:row;align-items:baseline;gap:8px;flex-wrap:wrap}.tile--inlinehead .tile-title{margin:0}.tile--inlinehead .tile-sub{margin:0 auto}.tile--inlinehead .big-number{flex-basis:100%}.history-grid .history-card.full-combo{grid-column:1/-1}.tile.drain-card{padding:12px}.drain-table{background:#171717;color:#fff;border-radius:12px;overflow:hidden}.drain-head,.drain-row{display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:8px}.drain-head{padding:10px 12px;background:#1d1d1d;font-weight:600}.drain-row{padding:10px 12px;align-items:center;border-top:1px solid rgba(255,255,255,.08)}.drain-row:nth-child(odd){background:#ffffff05}.badge{display:inline-block;padding:4px 8px;border-radius:999px;font-weight:600;font-size:.9rem}.badge--ok{background:#2e7d3226;color:#66bb6a;border:1px solid rgba(102,187,106,.4)}.badge--warn{background:#fb8c0026;color:#ffb74d;border:1px solid rgba(255,183,77,.35)}.badge--ko{background:#ef535033;color:#ef5350;border:1px solid rgba(239,83,80,.35)}@media (max-width: 520px){.drain-head{display:none}.drain-row{grid-template-columns:1fr 1fr;gap:6px}.drain-row>div:nth-child(1){grid-column:1/-1;font-weight:600}}.full-combo .combo-col:last-child .tile-title{text-align:center}.full-combo .combo-col:first-child{background:#ffffffe6;border:1px solid rgba(0,0,0,.25);border-radius:12px;padding:12px}.clarity-full{grid-column:1/-1}.clarity-row{display:grid;grid-template-columns:1fr;gap:12px}.clarity-item{width:100%}@media (min-width: 900px){.clarity-row{grid-template-columns:repeat(3,minmax(0,1fr))}}.login-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:35px;padding:24px 12px;background:transparent;position:relative;z-index:1}.login-form{display:grid;gap:12px;margin:0 auto}.login-banner{margin:0 auto 12px;max-width:420px;background:#fda000e6;border:1px solid #000;border-radius:8px;padding:10px 12px;text-align:center}.lp-banner{text-align:center;background:#fff3cd;padding:8px 12px;border-radius:10px}.card{width:100%}@media screen and (min-width: 1024px){.card{width:650px;max-width:650px;margin:0 auto}}.login-logo-mini{width:180px;height:auto;display:block;margin:0 auto 10px;opacity:.95}.field{display:flex;flex-direction:column;gap:2px}.login-label{font-size:14px;font-weight:600;margin-top:30px}.login-input{width:100%;max-width:400px;box-sizing:border-box;font-size:16px;padding:12px 14px;border-radius:12px;border:1px solid rgba(0,0,0,.22);outline:none}.login-input:focus{border-color:#0ea5e9}.pwd-wrap{position:relative}.login-input.has-trailing{padding-right:42px}.eye-btn{position:absolute;right:8px;top:40%;transform:translateY(-50%);width:32px;height:32px;display:grid;place-items:center;border:none;background:transparent;cursor:pointer}.eye-btn:focus{outline:2px solid #0ea5e9;outline-offset:2px}.field-error{color:#b00020;font-size:15px;margin-top:-12px!important;margin-left:5px}.field-info{color:#2969ed;font-size:15px;margin-top:-12px!important;margin-left:5px}.api-error{color:#b00020;font-size:14px;line-height:1.3;margin-top:6px;padding:6px 8px;background:#fde8e8;border:1px solid #f5c2c2;border-radius:10px}.submit-btn{margin-top:2px;width:100%;font-size:16px;padding:12px 14px;border-radius:12px;border:1px solid rgba(0,0,0,.22);background:#0ea5e9;color:#fff;cursor:pointer}.submit-btn:disabled{opacity:.7;cursor:not-allowed}@media screen and (min-width: 1024px){.card .login-form{gap:14px}.card input[type=text],.card input[type=email],.card input[type=password],.card select,.card textarea{width:600px;box-sizing:border-box;font-size:17px;padding:14px 16px}.card .login-input.has-trailing{padding-right:48px}.card .eye-btn{right:10px}.card .submit-btn{width:100%;font-size:17px;padding:14px 16px}}.owner-manage{width:100%;max-width:920px;margin:0 auto;padding:12px 12px 72px;box-sizing:border-box}.om-header{display:flex;align-items:center;gap:12px;margin:16px 0 8px}.om-header h2{margin:0;font-size:1.35rem}.om-toolbar{display:flex;gap:8px;margin:8px 0 12px}.om-search{flex:1;padding:12px 14px;border:1px solid rgba(0,0,0,.18);border-radius:12px;font-size:1rem;background:#ffffffeb;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.om-tablewrap{overflow-x:auto}.om-table{width:100%;border-collapse:collapse;background:#fffffff0;border-radius:14px;overflow:hidden;font-size:.96rem}.om-table thead th{text-align:left;font-weight:600;padding:10px 12px;background:#0000000f;border-bottom:1px solid rgba(0,0,0,.08)}.om-table tbody td{padding:10px 12px;border-bottom:1px solid rgba(0,0,0,.06);vertical-align:middle}.om-empty{text-align:center;padding:18px!important;color:#0000008c}.col-active{width:92px}.col-client{width:30%}.col-estab{width:40%}.col-actions{width:80px;text-align:right}.col-right{margin-top:-15px}.om-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.78rem;line-height:1.7;border:1px solid transparent}.om-badge--on{background:#e6f6ea;color:#177a3e;border-color:#bfe8c9}.om-badge--off{background:#fee;color:#b42318;border-color:#f7c5c0}.om-label{margin-right:6px;font-weight:600}.om-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;line-height:16px;margin-right:6px;border:1px solid rgba(0,0,0,.15)}.om-badge--circuit{background:#e3f2fd;color:#0d47a1}.om-badge--filter{background:#e6f4ea;color:#1b5e20}.om-badge--pool{background:#f3e8ff;color:#4a148c}.om-badge--none{background:#eee;color:#555}.om-name{font-weight:600}.om-btn.om-btn--ghost{border:.4px dashed red;background:#fff}.om-btn.om-btn--ghost:hover{border:.4px solid #000;color:red}.om-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;border:1px solid rgba(0,0,0,.18);background:#fff;cursor:pointer}.om-iconbtn:hover{background:#d3d3d3;color:red}.om-dropdown{position:absolute;z-index:30;background:#fff;border:1px solid rgba(0,0,0,.18);border-radius:12px;box-shadow:0 10px 28px #0000002e;padding:6px}.om-dropitem{display:block;width:100%;text-align:left;padding:10px 12px;border-radius:10px;font-size:.95rem;cursor:pointer;background:transparent;border:0}.om-dropitem:hover{background:#0000000f}.om-center{text-align:center;padding:18px}.om-modal__overlay{position:fixed;inset:0;background:#0000001f;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:50}.om-modal{width:min(920px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 22px 60px #00000059;border:1px solid #000}.om-modal--wide{width:min(1120px,98vw)}.om-modal__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(0,0,0,.08);position:sticky;top:0;background:#fff;z-index:1}.om-modal__header h3{margin:0;font-size:1.15rem}.om-modal__body{padding:12px 14px 18px}.om-form{display:grid;gap:12px}.om-field{display:grid;gap:6px}.om-field>span{font-size:.9rem;color:#000000bf}.om-field input,.om-field select{padding:12px 14px;border:1px solid rgba(0,0,0,.2);border-radius:12px;background:#fff;font-size:1rem;box-sizing:border-box;width:100%}.om-toggle{display:inline-flex;align-items:center;gap:10px;-webkit-user-select:none;user-select:none}.om-toggle input{position:absolute;opacity:0;pointer-events:none}.om-toggle__track{width:48px;height:28px;border-radius:999px;background:#e5e7eb;position:relative;border:1px solid rgba(0,0,0,.15);transition:background .18s ease}.om-toggle__thumb{position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:left .18s ease}.om-toggle input:checked+.om-toggle__track{background:#1b51b6}.om-toggle input:checked+.om-toggle__track .om-toggle__thumb{left:22px}.om-toggle__label{font-size:.95rem;color:#253046}.om-actions{display:flex;gap:8px;margin-top:4px}.om-actions-left{display:flex;gap:10px;align-items:center}.om-hint{font-size:.9rem;color:#2a3550}.om-btn{padding:10px 14px;border-radius:12px;background:#1b51b6;color:#fff;border:0;cursor:pointer}.om-btn:disabled{opacity:.6;cursor:default}.om-btn--ghost{background:#eef1f7;color:#1b1b1b;border:1px solid rgba(0,0,0,.16)}.om-btn--danger{background:#d32f2f}.om-btn+.om-btn{margin-left:6px}.om-grid{display:grid;gap:10px}.om-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.om-tag{display:inline-block;padding:2px 8px;border-radius:999px;background:#eef1f7;color:#253046;font-size:.78rem}.om-tag--blue{background:#e3efff;color:#1b51b6}.om-tag--amber{background:#fff1e0;color:#8a5700}.om-tag--pink{background:#ffe1ec;color:#9a1454}.om-cardline{border:1px solid rgba(0,0,0,.12);border-radius:12px;padding:10px;background:#fff}.om-cardline__title{display:flex;align-items:center;gap:8px;margin-bottom:8px}.om-cardline__edit{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.om-tabs{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.om-tab{padding:8px 12px;border-radius:999px;background:#eef1f7;color:#2a3550;border:1px solid rgba(0,0,0,.12);cursor:pointer}.om-tab.is-active{background:#1b51b6;color:#fff}.om-toast{position:fixed;left:50%;bottom:18px;transform:translate(-50%);background:#263238;color:#fff;padding:10px 14px;border-radius:999px;font-size:.95rem;z-index:60}.om-toast--err{background:#b42318}.om-dropitem.is-disabled{opacity:.45;pointer-events:none}.om-dropitem--danger{color:#b42318}@media (max-width: 480px){.owner-manage{padding:8px 8px 60px}.om-header h2{font-size:1.18rem}.om-search{padding:12px;border-radius:12px}.om-table{font-size:.95rem}.om-table thead{display:none}.om-table tbody tr{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"badge client" "estab actions";align-items:center;gap:6px 10px;padding:12px;margin:10px 0;background:#ffffffeb;border:1px solid rgba(0,0,0,.08);border-radius:16px;box-shadow:0 8px 24px #0000001f}.om-table tbody td{padding:0;border:0}.om-table tbody td:nth-child(1){grid-area:badge;align-self:start}.om-table tbody td:nth-child(2){grid-area:client;font-weight:600}.om-table tbody td:nth-child(3){grid-area:estab;color:#000000c7}.om-table tbody td:nth-child(4){grid-area:actions;justify-self:end}.om-iconbtn{width:36px;height:36px;border-radius:12px}.om-modal{width:94vw;max-height:88vh;border-radius:18px}.om-modal__body{padding:8px}.om-form{gap:10px}.om-field{gap:4px}.om-field input,.om-field select{padding:10px 12px;margin:.5px 0;width:100%;box-sizing:border-box;border-radius:10px}}.owner-screen-center{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.owner-viewport{min-height:100vh;max-width:1100px;width:100%;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.owner-card{display:flex;flex-direction:column;gap:16px;padding:8px}.owner-title{margin:0;font-size:1.6rem;text-align:center}.owner-subtitle{margin:0;font-size:1rem;text-align:center;color:#111}.owner-page .btn{appearance:none;border:1px solid rgba(0,0,0,.2);background:#fff;padding:12px 18px;border-radius:999px;font-size:1rem;cursor:pointer;text-decoration:none;color:inherit;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:filter .12s ease,background .12s ease,border-color .12s ease}.owner-page .btn:hover{filter:brightness(1.03)}.owner-page .btn:disabled{opacity:.5;cursor:not-allowed}.owner-page .btn.primary{background:#1d4ed8;color:#fff;border-color:#1e40af}.owner-page .btn.primary:hover{background:#1e40af}.owner-page .btn.ghost{background:transparent;border:1px dashed red}.owner-page .btn.ghost:hover{border:1px solid #000;color:red}.owner-page .btn.ghost.close:hover{border-style:solid;background:#fafafa}.owner-page .btn.add{border:0;color:#0f172a}.owner-page .btn.add.sky{background:#bae6fd}.owner-page .btn.add.green{background:#a7f3d0}.owner-page .btn.add.yellow{background:#fde68a}.owner-page .btn.remove{border:0;background:#fecaca;color:#7f1d1d}.owner-page .btn-tail{display:grid;place-items:center;margin-left:8px;line-height:1}.owner-page .btn-tail.xl{font-size:1.25rem}.owner-page .owner-logout-btn{margin:-12px auto 0;display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:.92rem;font-weight:700;color:#144a7a;background:linear-gradient(180deg,#ffffff8c,#ffffff59);border:1px solid rgba(25,79,129,.25);border-radius:9999px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 6px 16px #0000001a,inset 0 1px #ffffff80;cursor:pointer;transition:transform .08s ease,box-shadow .15s ease,background .15s ease;-webkit-tap-highlight-color:transparent}.owner-page .owner-logout-btn:hover{background:linear-gradient(180deg,#fffc,#f5f5f599);box-shadow:0 10px 22px #00000038,inset 0 1px #fffc;transform:translateY(-2px) scale(1.05)}.owner-page .owner-logout-btn:active{transform:translateY(1px)}.owner-page .owner-layout{display:grid;grid-template-columns:280px 1fr;gap:16px;align-items:start}@media (max-width: 800px){.owner-page .owner-layout{grid-template-columns:1fr}}.owner-page .owner-timeline{list-style:none;margin:0;padding:8px 0;position:relative}.owner-page .owner-timeline:before{content:"";position:absolute;left:10px;top:8px;bottom:8px;width:2px;background:#00000026}.owner-page .owner-timeline-item{position:relative;padding:10px 8px 10px 28px;color:#333;opacity:.7}.owner-page .owner-timeline-item .dot{position:absolute;left:4px;top:14px;width:12px;height:12px;border-radius:50%;background:#bbb}.owner-page .owner-timeline-item.active{opacity:1;font-weight:700}.owner-page .owner-timeline-item.active .dot{background:#07f}.owner-page .owner-timeline-item.done{opacity:.9}.owner-page .owner-timeline-item.done .dot{background:#2ecc71}.owner-page .owner-timeline-logo{width:260px;margin-top:24px;opacity:.95}@media (max-width: 800px){.owner-page .owner-timeline-logo{display:none}}.owner-page .owner-pane{background:#ffffffeb;border:1px solid rgba(0,0,0,.2);border-radius:16px;box-shadow:0 6px 24px #0000001f;padding:16px;max-width:980px}.owner-page .owner-pane *,.owner-page .owner-pane *:before,.owner-page .owner-pane *:after{box-sizing:border-box}.owner-page .owner-pane-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.owner-page .owner-pane-title{margin:0;font-size:1.2rem;border-bottom:2px solid #e5e7eb;padding-bottom:6px}.owner-page .owner-pane-header .btn{padding:6px 10px;font-size:.9rem;border-radius:999px}.owner-page .owner-form{display:grid;gap:12px}.owner-page .field{display:grid;gap:6px}.owner-page .field>label{font-weight:600}.owner-page .field-error{color:#b91c1c;font-size:.9rem;margin-top:2px}.owner-page .inline{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.owner-page input[type=text],.owner-page input[type=email],.owner-page input[type=tel],.owner-page input[type=number],.owner-page select{width:100%;padding:12px 14px;border:1px solid rgba(0,0,0,.2);border-radius:12px;background:#fff;font-size:1rem;min-width:0}.owner-page .switch-row{display:flex;align-items:center;gap:10px}.owner-page .switch{position:relative;display:inline-block;width:50px;height:28px}.owner-page .switch input{opacity:0;width:0;height:0}.owner-page .slider{position:absolute;cursor:pointer;inset:0;background:#e5e7eb;transition:.2s;border-radius:999px;box-shadow:inset 0 0 0 1px #d1d5db}.owner-page .slider:before{position:absolute;content:"";height:22px;width:22px;left:3px;top:3px;background:#fff;transition:.2s;border-radius:50%;box-shadow:0 1px 4px #0003}.owner-page .switch input:checked+.slider{background:#2563eb}.owner-page .switch input:checked+.slider:before{transform:translate(22px)}.owner-page .owner-structure{display:grid;gap:12px}.owner-page .owner-structure>.card:nth-of-type(odd){background:#e7f1ff}.owner-page .owner-structure>.card:nth-of-type(2n){background:#e9fbe7}.owner-page .card{border:1px solid rgba(0,0,0,.2);border-radius:12px;background:#fff;padding:12px;display:grid;gap:10px}.owner-page .card-header .row,.owner-page .row.gap{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.owner-page .row.between{display:flex;justify-content:space-between;align-items:center}.owner-page .subsection{display:grid;gap:8px}.owner-page .subsection+.subsection{margin-top:18px;padding-top:14px;border-top:1px dashed rgba(0,0,0,.3)}.owner-page .subsection-title{font-weight:700;border-bottom:2px solid #e5e7eb;padding-bottom:4px}.owner-page .filter-actions{margin-top:4px}.owner-page .filters-sep{border:0;border-top:1px dashed rgba(0,0,0,.25);margin:2px 0 8px}@media (min-width: 801px){.owner-page .filter-row input{min-width:260px}}.owner-page .pool-card{border:1px dashed rgba(0,0,0,.25);border-radius:10px;padding:10px;display:grid;gap:8px;background:#00000005}.owner-page .pool-name-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}.owner-page .isSpa{display:flex;align-items:center;gap:6px}.owner-page .pool-name-input{min-width:240px}.owner-page .alerts-toggle{display:flex;align-items:center;gap:6px;align-self:end;padding-bottom:2px}.owner-page .alerts-grid{display:grid;gap:6px}.owner-page .alert-row{display:grid;grid-template-columns:28px 1fr 110px 110px;grid-template-areas:"check title min max";align-items:center;column-gap:8px;row-gap:6px}.owner-page .alert-check{grid-area:check;justify-self:start}.owner-page .alert-title{grid-area:title}.owner-page .alert-min{grid-area:min}.owner-page .alert-max{grid-area:max}.owner-page .alert-row input[type=number]{width:100%}.owner-page .alert-row.muted .alert-min,.owner-page .alert-row.muted .alert-max{display:none}.owner-page .circuits-actions{margin-top:10px;gap:8px;align-items:center}.owner-page .next-btn{align-self:center}@media (max-width: 460px){.owner-page .owner-pane{padding:12px}.owner-page .owner-pane-title{font-size:1.05rem}.owner-page .card-header .row input,.owner-page .card-header .row select,.owner-page .filter-row input{max-width:82%;margin-inline:auto}.owner-page .pool-name-row{grid-template-columns:1fr;grid-template-areas:"isSpa" "name" "alerts"}.owner-page .isSpa{grid-area:isSpa}.owner-page .pool-name-input{grid-area:name;max-width:100%}.owner-page .alerts-toggle{grid-area:alerts;justify-self:start;align-self:center;padding-bottom:0;margin-top:2px}.owner-page .alert-row{grid-template-columns:28px 1fr 1fr;grid-template-areas:"check title title" "check min   max"}.owner-page .alert-min,.owner-page .alert-max{min-width:0;width:100%}.owner-page .filter-actions,.owner-page .pool-actions,.owner-page .circuits-actions{flex-direction:column;align-items:stretch}.owner-page .filter-actions .btn,.owner-page .pool-actions .btn,.owner-page .circuits-actions .btn{width:100%}}.owner-actions-tiles,.owner-page .owner-actions-tiles{display:grid;grid-template-columns:1fr;gap:14px;width:100%;margin-top:8px}@media (min-width: 780px){.owner-actions-tiles,.owner-page .owner-actions-tiles{grid-template-columns:1fr 1fr}.owner-actions-tiles .owner-tile--span2,.owner-page .owner-actions-tiles .owner-tile--span2{grid-column:1/-1}}.owner-tile,.owner-page .owner-tile{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 14px 18px;border-radius:999px;border:1px solid transparent;box-shadow:0 6px 18px #00000026;text-decoration:none;font-weight:600;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease;will-change:transform}.owner-tile:focus-visible{outline:2px solid currentColor;outline-offset:2px}.owner-tile:hover{transform:translateY(-1px);box-shadow:0 10px 22px #0000002e;filter:brightness(1.02)}.owner-tile__label{line-height:1.25}.owner-tile__icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#ffffff40;flex:0 0 34px}.owner-tile--create{--c:#2563eb;--b:#1e40af;background:linear-gradient(135deg,var(--c) 0%,#3b82f6 100%);color:#fff;border-color:var(--b);cursor:pointer}.owner-tile--sms{--c:#10b981;--b:#0e9f74;background:linear-gradient(135deg,var(--c) 0%,#34d399 100%);color:#0b241a;border-color:var(--b)}.owner-tile--edit{--c:#f59e0b;--b:#d97706;background:linear-gradient(135deg,var(--c) 0%,#fbbf24 100%);color:#1b1403;border-color:var(--b);cursor:pointer}:root{--font-family: "Nunito", Arial, sans-serif}html,body{font-family:var(--font-family);margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
