.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url("./media/layers-55W3Q4RM.png");width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url("./media/layers-2x-TBM42ERR.png");background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url("./media/marker-icon-2V3QKKVC.png")}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{--bg:#f4f6f2;--paper:#fff;--ink:#203b36;--muted:#72817b;--green:#235e50;--dark:#143d37;--mint:#d9f3b4;--line:#e4e9e2;--orange:#a76a27;--red:#b74742;--shadow:0 8px 30px #1c3d3410;font-family:Inter,Segoe UI,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.48;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #8ab96a;outline-offset:4px}input:focus,select:focus,textarea:focus{outline:2px solid #8ab96a;outline-offset:1px}button{border:0}a{color:inherit}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.small-icon{width:17px;height:17px}.shell{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--dark);color:#ecf2eb;padding:34px 22px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;width:232px;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-size:25px;font-weight:750;letter-spacing:-1px}.brand-mark{display:grid;place-items:center;border-radius:13px;background:var(--mint);color:var(--dark);width:36px;height:36px;transform:rotate(-7deg)}.brand-mark .icon{transform:rotate(7deg)}.brand small{font-size:11px;display:block;letter-spacing:2px;font-weight:500;color:#a9bdb3}.sidebar .eyebrow{color:#8da99c;margin:48px 12px 16px}.sidebar nav{display:grid;gap:6px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:13px 14px;border-radius:12px;background:none;color:#bdd0c5;text-align:left;font-size:14px;font-weight:550}.nav-item:hover{background:#ffffff0b}.nav-item.active{background:var(--mint);color:var(--dark)}.side-bottom{margin-top:auto;padding-top:35px}.side-note{border:1px solid #ffffff22;border-radius:15px;padding:17px;font-size:12px;line-height:1.7;color:#b7cabe}.side-note strong{color:#edf5ed;display:block;font-size:13px;margin-bottom:4px}.side-person{display:flex;align-items:center;gap:10px;margin-top:20px;font-size:13px}.side-person small{display:block;color:#a0bbad;margin-top:4px}.avatar{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:50%;font-size:13px;font-weight:650;background:#e8ece0;color:var(--green);flex-shrink:0}.side-person .avatar{background:#456257;color:#e6f1dc}.main{grid-column:2;padding:0 42px 35px;min-width:0}.topbar{min-height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:16px}.crumb{font-size:13px;color:var(--muted)}.crumb strong{color:var(--ink);font-weight:500}.top-actions{display:flex;align-items:center;gap:12px}.view-select{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 34px 10px 12px;color:var(--ink);font-size:13px;max-width:200px}.demo-pill{font-size:10px;font-weight:700;letter-spacing:1px;border:1px solid #dce4d4;padding:6px 9px;border-radius:6px;color:#66765c;white-space:nowrap}.mobile-brand{display:none}.intro{display:flex;justify-content:space-between;align-items:center;margin:32px 0 24px;gap:16px}.eyebrow{font-size:10px;letter-spacing:1.9px;text-transform:uppercase;font-weight:750;color:var(--muted);margin:0 0 10px}h1{font-size:32px;font-weight:650;letter-spacing:-1.1px;margin:0 0 9px;line-height:1.2}h2{font-size:18px;font-weight:650;letter-spacing:-.35px;margin:0}h3{font-size:15px;margin:0;font-weight:650}p{line-height:1.6}.muted{color:var(--muted)}.subtitle{margin:0;font-size:14px;color:var(--muted)}.date-chip{font-size:12px;background:#eaf0e5;border-radius:9px;display:flex;align-items:center;gap:8px;padding:10px 13px;white-space:nowrap}.grid-home{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(310px,1fr);gap:24px}.stack{display:grid;align-content:start;gap:22px}.card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 2px 6px #223d3003}.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:22px}.text-link{display:inline-flex;align-items:center;justify-content:center;gap:5px;color:var(--green);background:none;font-size:12px;font-weight:650;padding:7px 0}.hero{background:var(--dark);color:#fff;border-radius:24px;padding:28px 28px 25px;overflow:hidden;position:relative;min-height:354px}.hero:before{content:"";position:absolute;width:330px;height:330px;border:1px solid #d4f2ba15;border-radius:50%;right:-170px;top:-100px;box-shadow:0 0 0 38px #d4f2ba06,0 0 0 78px #d4f2ba04;pointer-events:none}.hero-top{display:flex;justify-content:space-between;align-items:center;position:relative}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:30px;padding:6px 10px;background:#edf5e6;color:#43673a;font-size:11px;font-weight:650;white-space:nowrap}.badge:empty{display:none}.badge.dark{color:#d7efc5;background:#ffffff12}.badge.warning{color:#946228;background:#fff1d9}.badge.danger{color:#a73c38;background:#fceae7}.badge.gray{color:#738077;background:#edf0ec}.dot{height:6px;width:6px;background:currentColor;border-radius:50%;display:inline-block}.hero-clock{font-size:62px;letter-spacing:-3px;line-height:1.1;margin:26px 0 5px;font-weight:550;font-variant-numeric:tabular-nums}.hero-day{font-size:12px;color:#b1c9b9;margin-bottom:27px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:45px;padding:12px 18px;border-radius:11px;font-size:13px;font-weight:650;background:var(--green);color:#fff;text-decoration:none;transition:transform .15s,background .15s}.btn:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn.secondary{background:#f0f3ed;color:var(--ink);border:1px solid #e0e6da}.btn.outline{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn.danger{background:#fff0ed;color:var(--red)}.btn.mint{background:var(--mint);color:var(--dark)}.btn.full{width:100%}.hero .btn{min-height:58px;font-size:15px;position:relative}.hero-footer{display:flex;align-items:center;justify-content:center;gap:7px;font-size:11px;margin-top:15px;color:#bfd0c2}.hero .text-link{color:#d0e3c8;display:flex;margin:12px auto 0;padding:3px}.stats-small{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mini-stat{padding:19px 21px;display:flex;align-items:center;gap:12px}.icon-tile{display:grid;place-items:center;width:42px;height:42px;background:#f1f5eb;border-radius:13px;color:var(--green);flex-shrink:0}.mini-stat strong{display:block;font-size:21px;letter-spacing:-.5px}.mini-stat small{font-size:11px;color:var(--muted);display:block;margin-top:4px}.timeline{list-style:none;margin:0;padding:0}.timeline li{display:flex;gap:13px;position:relative;padding:0 0 24px;align-items:flex-start}.timeline li:last-child{padding-bottom:0}.timeline li:not(:last-child):before{content:"";position:absolute;width:1px;left:18px;top:35px;bottom:0;background:#e4e9df}.timeline-icon{width:37px;height:37px;border-radius:50%;background:#eef5e4;color:var(--green);display:grid;place-items:center;flex-shrink:0;z-index:1}.timeline .pending .timeline-icon{background:#fff;border:1px dashed #cad4c2;color:#a6b19e}.timeline-content{flex:1;min-width:0;padding-top:3px}.timeline-content strong{font-size:13px;display:block;font-weight:600}.timeline-content small{font-size:11px;color:var(--muted);display:block;margin-top:6px}.timeline time{font-size:12px;margin-top:5px;color:#516650;font-variant-numeric:tabular-nums}.pending .timeline-content strong,.pending time{color:#9aa597}.map{height:132px;background:#eff1e9;border-radius:12px;position:relative;overflow:hidden;margin-bottom:15px;isolation:isolate}.map:before{content:"";position:absolute;inset:-50px;background:repeating-linear-gradient(25deg,transparent 0 45px,#fff 45px 53px,transparent 53px 100px),repeating-linear-gradient(112deg,transparent 0 68px,#fff 68px 76px,transparent 76px 130px);transform:rotate(-8deg)}.map:after{content:"";position:absolute;width:100px;height:100px;border-radius:50%;background:#a8cf8c35;border:1px solid #87af6d70;left:calc(50% - 50px);top:16px}.map-pin{position:absolute;left:calc(50% - 17px);top:47px;width:34px;height:34px;border:5px solid white;border-radius:50%;background:var(--green);color:#fff;z-index:1;display:grid;place-items:center;box-shadow:0 2px 10px #274c3440}.map-label{position:absolute;left:12px;bottom:9px;font-size:9px;color:#7a8b72;z-index:1;background:#ffffffb0;padding:3px 6px;border-radius:4px}.location-line{display:flex;align-items:center;gap:10px}.location-line strong{font-size:13px;display:block}.location-line small{font-size:11px;color:var(--muted);display:block;margin-top:4px}.location-line .badge{margin-left:auto}.help-card{display:flex;align-items:center;gap:15px;background:#edf1e8;border-radius:16px;padding:18px 21px}.help-card p{font-size:12px;margin:4px 0 0;color:var(--muted)}.help-card .text-link{margin-left:auto}.demo-tools{margin-top:26px;padding:12px 0;display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-top:1px dashed #d9e0d2;font-size:11px;color:var(--muted)}.demo-tools select{font-size:11px;padding:7px 8px;border-radius:7px;background:#fff;border:1px solid var(--line);color:var(--ink)}.demo-tools button{font-size:11px;color:var(--muted);background:none;text-decoration:underline;margin-left:auto}.footer{display:flex;justify-content:space-between;margin-top:20px;color:#9aa595;font-size:10px}.bottom-nav{display:none}.page-content{animation:fade .2s ease}@keyframes fade{0%{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:none}}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.filters{display:flex;gap:10px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.field{display:grid;gap:7px;margin-bottom:17px}.field label{font-size:12px;font-weight:650}.input,input:not([type=checkbox]):not([type=radio]),textarea,select.form-input{border:1px solid #dce3d6;background:#fff;color:var(--ink);padding:12px 13px;border-radius:10px;width:100%;min-height:45px;font-size:14px}textarea{resize:vertical;min-height:85px}.field small{font-size:11px;color:var(--muted);line-height:1.5}.search{flex:1;min-width:180px;position:relative}.filters select{width:auto;min-width:140px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}.table th{text-align:left;padding:13px 12px;background:#f6f8f3;color:#7b8974;font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:600}.table td{padding:16px 12px;border-bottom:1px solid #edf0e8}.table tr:last-child td{border-bottom:0}.person-cell{display:flex;align-items:center;gap:10px}.person-cell small{display:block;color:var(--muted);margin-top:3px;font-size:10px}.person-cell .avatar{width:33px;height:33px;font-size:10px}.empty{text-align:center;padding:42px 20px;color:var(--muted);font-size:13px}.empty .icon{height:36px;width:36px;display:block;margin:0 auto 14px;color:#8ba67a}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:24px}.metric{padding:20px}.metric .metric-head{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px}.metric strong{display:block;font-size:31px;letter-spacing:-1px;margin:15px 0 7px}.metric small{font-size:11px;color:var(--muted)}.admin-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:22px}.activity-row{display:flex;align-items:center;gap:11px;padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.activity-row:last-child{border:0}.activity-row small{display:block;color:var(--muted);margin-top:4px}.activity-row time{margin-left:auto;white-space:nowrap;color:var(--muted);font-size:11px}.request{border:1px solid var(--line);border-radius:16px;padding:20px;margin-bottom:14px}.request-top{display:flex;justify-content:space-between;gap:15px;align-items:center}.request p{font-size:13px;margin:13px 0;color:#6f7e69}.request .actions{margin-top:16px}.request small{font-size:11px;color:var(--muted)}.banner{display:flex;gap:11px;padding:15px 18px;background:#edf3e5;border:1px solid #dfe9d5;border-radius:12px;font-size:12px;line-height:1.6;margin-bottom:20px}.banner.warning{background:#fff6e5;border-color:#f0dfb9;color:#8e672c}.banner .icon{width:19px;flex-shrink:0;margin-top:1px}.branch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.branch-grid .card .map{height:150px}.branch-meta{display:flex;justify-content:space-between;font-size:12px;padding:15px 0;color:var(--muted)}.device{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:16px;margin:15px 0}.device strong{font-size:13px}.device small{display:block;margin-top:5px;color:var(--muted);font-size:11px}.device .badge{margin-left:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form-grid .wide{grid-column:1/-1}.settings-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:19px 0;border-bottom:1px solid var(--line)}.settings-row:last-child{border:0}.settings-row p{font-size:12px;color:var(--muted);margin:5px 0}.switch{appearance:none;min-width:42px;width:42px;height:25px;background:#ccd6c4;border-radius:30px;position:relative;cursor:pointer;border:0}.switch:before{content:"";position:absolute;width:19px;height:19px;background:#fff;border-radius:50%;top:3px;left:3px;transition:transform .2s}.switch:checked{background:var(--green)}.switch:checked:before{transform:translate(17px)}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:15px 0}.keypad button{background:#f3f5ef;border-radius:10px;min-height:49px;color:var(--ink);font-size:18px}.keypad button:hover{background:#e3edda}.kiosk-id{display:flex;align-items:center;gap:14px}.event-choices{display:grid;gap:10px}.event-option{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);background:#fff;border-radius:12px;color:var(--ink);text-align:left;font-size:13px}.event-option:hover,.event-option.selected{background:#eef5e6;border-color:#92b675}.event-option .icon{color:var(--green)}.event-option small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.event-option .right{margin-left:auto}.demo-hint{font-size:11px;background:#f5f6f2;padding:11px;border-radius:9px;color:var(--muted);line-height:1.6;margin-top:17px}.history-day{margin:20px 0 12px;font-size:11px;color:var(--muted);font-weight:600;letter-spacing:.5px}.history-item{display:flex;gap:13px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.history-item strong{font-size:13px}.history-item small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.history-item .right{margin-left:auto;text-align:right;font-size:13px}.history-item .badge{margin-top:6px;font-size:9px}dialog{border:1px solid var(--line);border-radius:24px;padding:28px;width:min(460px,calc(100% - 32px));max-height:90dvh;overflow:auto;color:var(--ink);box-shadow:0 25px 100px #102b3330}dialog::backdrop{background:#142e2b75;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.close-btn{background:#f1f4ed;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:var(--muted);flex-shrink:0}.close-btn .icon{width:17px}.dialog-center{text-align:center}.bio-icon{width:88px;height:88px;margin:5px auto 22px;display:grid;place-items:center;border-radius:26px;background:#edf4e4;color:var(--green)}.bio-icon .icon{width:45px;height:45px;stroke-width:1.3}.dialog-center p{font-size:13px;color:var(--muted)}.receipt{background:#f3f6ee;border-radius:14px;margin:22px 0;padding:15px}.receipt div{display:flex;justify-content:space-between;font-size:12px;padding:7px 0;gap:15px}.receipt span{color:var(--muted)}.form-error{font-size:12px;color:var(--red);min-height:17px;margin-bottom:12px}.success-mark{background:var(--mint);color:var(--green);width:75px;height:75px;border-radius:50%;display:grid;place-items:center;margin:0 auto 20px}.success-mark .icon{width:35px;height:35px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--dark);color:#fff;padding:14px 22px;border-radius:12px;box-shadow:var(--shadow);font-size:13px;z-index:100;opacity:0;pointer-events:none;transition:.2s;max-width:calc(100% - 32px);width:max-content}#toast.show{opacity:1;transform:translate(-50%)}.bar-chart{display:flex;align-items:end;justify-content:space-around;gap:15px;height:130px;padding-top:10px}.bar-column{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:end;gap:8px;flex:1;font-size:10px;color:var(--muted)}.bar{width:100%;max-width:44px;background:#dbeacb;border-radius:6px 6px 0 0;min-height:5px}.bar.current{background:var(--green)}.export-card{max-width:700px}.check-row{display:flex;gap:10px;align-items:center;font-size:12px;margin-bottom:16px;line-height:1.5}.profile-header{text-align:center;padding:10px 0 24px}.profile-header .avatar{width:70px;height:70px;font-size:22px;margin-bottom:14px}.profile-header h2{margin-bottom:7px}@media(min-width:1550px){.main{padding-left:65px;padding-right:65px}.page-content{max-width:1250px;margin:0 auto}.hero{min-height:380px}.hero-clock{margin-top:35px}}@media(max-width:1150px){.sidebar{width:200px;padding:28px 15px}.shell{grid-template-columns:200px minmax(0,1fr)}.main{padding:0 25px 30px}.grid-home{grid-template-columns:minmax(0,1fr) minmax(270px,.9fr);gap:18px}.hero{padding:24px}.hero-clock{font-size:54px}.metric-grid{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}.brand{font-size:23px}}@media(max-width:850px){.sidebar{display:none}.shell{display:block}.main{padding:0 24px 95px}.topbar{min-height:78px}.mobile-brand{display:flex;font-size:22px}.crumb{display:none}.top-actions>.avatar{display:none}.view-select{max-width:158px;font-size:12px}.demo-pill{font-size:9px}.grid-home{gap:18px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:#ffffffed;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);display:flex;justify-content:space-around;padding:8px 4px calc(8px + env(safe-area-inset-bottom));z-index:30;overflow:auto}.bottom-nav button{background:none;color:#8c9984;display:flex;flex-direction:column;align-items:center;gap:5px;min-width:55px;padding:7px 9px;border-radius:12px;font-size:9px}.bottom-nav button.active{color:var(--green);background:#eef5e6}.bottom-nav .icon{width:21px;height:21px}#toast{bottom:95px}.footer{display:none}}@media(max-width:600px){.main{padding:0 18px 95px}.topbar{min-height:70px;gap:7px}.mobile-brand{font-size:21px;gap:6px}.brand-mark{width:31px;height:31px;border-radius:10px}.top-actions{gap:6px}.top-actions .demo-pill{display:none}.view-select{max-width:146px;padding:9px 6px;font-size:11px}.intro{margin:25px 0 20px;align-items:flex-start}.intro h1{font-size:27px}.intro .date-chip{display:none}.subtitle{font-size:12px}.eyebrow{font-size:9px}.grid-home{display:flex;flex-direction:column;gap:18px}.stack{gap:17px}.hero{min-height:320px;padding:24px;border-radius:22px}.hero-clock{font-size:60px;margin-top:23px}.hero-day{margin-bottom:23px}.card{padding:21px;border-radius:17px}.mini-stat{padding:17px 14px;gap:9px}.icon-tile{width:35px;height:35px;border-radius:10px}.mini-stat strong{font-size:19px}.mini-stat small{font-size:10px}.card-head{margin-bottom:20px}.help-card{padding:17px 16px}.help-card>.icon{display:none}.demo-tools{gap:8px;font-size:10px}.demo-tools select{max-width:155px}.demo-tools button{margin-left:0}.branch-grid{grid-template-columns:1fr}.metric-grid{gap:11px;margin-bottom:18px}.metric{padding:17px}.metric .metric-head{font-size:11px}.metric strong{font-size:27px}.metric small{font-size:10px}.intro>.btn{padding:10px;font-size:11px;min-height:39px}.intro>.btn .icon{width:16px}.filters{gap:8px}.filters select{min-width:0;flex:1;font-size:12px}.search{width:100%;flex-basis:100%}.table th,.table td{padding:13px 9px}.request{padding:16px}.request-top{gap:8px}.request .btn{padding:10px 13px;font-size:12px}.form-grid{gap:0 12px}.form-grid .field{min-width:0}.form-grid input{font-size:12px}.location-line .badge{font-size:9px;padding:6px}.location-line strong{font-size:12px}.location-line small{font-size:10px}.hero .btn{min-height:55px}.table-card{padding:17px 12px}.table-card .card-head{padding:0 6px}dialog{padding:24px}.banner{padding:13px;font-size:11px}.topbar .brand small{display:none}.settings-row h3{font-size:13px}.settings-row p{font-size:11px}}.kiosk-shell{height:100vh;height:100dvh;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);background:var(--bg);overflow:hidden;-webkit-user-select:none;user-select:none;touch-action:manipulation;overscroll-behavior:none}.kiosk-bar{display:flex;align-items:center;gap:14px;padding:max(10px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) 10px max(20px,env(safe-area-inset-left));background:var(--paper);border-bottom:1px solid var(--line);min-height:60px;min-width:0}.kiosk-bar .brand{font-size:22px}.kiosk-bar .brand-mark{width:32px;height:32px;border-radius:10px}.kiosk-branch{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--muted);padding-left:14px;border-left:1px solid var(--line);white-space:nowrap}.kiosk-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,440px);gap:22px;padding:22px max(22px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left));min-height:0}.kiosk-hero{background:var(--dark);color:#fff;border-radius:26px;padding:clamp(22px,4vh,38px);display:flex;flex-direction:column;position:relative;overflow:hidden;min-height:0}.kiosk-hero:before{content:"";position:absolute;width:440px;height:440px;border:1px solid #d4f2ba15;border-radius:50%;right:-190px;top:-150px;box-shadow:0 0 0 50px #d4f2ba06,0 0 0 100px #d4f2ba04;pointer-events:none}.kiosk-hero>*{position:relative}.kiosk-hero-top{display:flex;justify-content:space-between;align-items:center}.kiosk-hero-main{margin:auto 0}.kiosk-clock{font-size:clamp(64px,11vw,150px);font-weight:550;letter-spacing:-.045em;line-height:1;font-variant-numeric:tabular-nums}.kiosk-date{font-size:clamp(14px,1.6vw,19px);color:#b1c9b9;margin-top:14px}.kiosk-date:first-letter{text-transform:uppercase}.kiosk-tagline{font-size:clamp(20px,2.3vw,30px);font-weight:600;letter-spacing:-.03em;line-height:1.2;margin:0 0 16px}.kiosk-tagline span{color:var(--mint)}.kiosk-note{display:flex;gap:10px;align-items:center;font-size:12px;line-height:1.5;color:#c3d4c7;background:#ffffff0d;border-radius:12px;padding:11px 14px}.kiosk-note.warning{color:#f6dcae;background:#a76a2738}.kiosk-panel{display:flex;flex-direction:column;padding:clamp(18px,3vh,28px);min-height:0;border-radius:26px}.kiosk-step h2{font-size:21px}.kiosk-step .subtitle{margin-top:5px;font-size:13px}.kiosk-displays{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:clamp(12px,2.2vh,20px)}.kiosk-display{display:grid;gap:7px;padding:11px 13px;border-radius:14px;border:2px solid transparent;background:#f4f7f1;color:var(--ink);text-align:left}.kiosk-display small{font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.kiosk-display.active{background:#fff;border-color:var(--green);box-shadow:0 0 0 4px #d9f3b466}.kd-value{display:flex;align-items:center;gap:7px;height:30px}.kd-value i{font-style:normal;width:24px;text-align:center;font-size:24px;font-weight:650;line-height:28px;border-bottom:2px solid #cdd6c6;font-variant-numeric:tabular-nums}.kd-value i.on{border-color:var(--green)}.kd-value i.pin-dot{width:15px;height:15px;border:2px solid #b9c5b0;border-radius:50%;line-height:0}.kd-value i.pin-dot.on{background:var(--green);border-color:var(--green)}.kiosk-panel .form-error{margin:8px 0 6px;min-height:17px;text-align:center}.kiosk-keypad{flex:1;min-height:0;max-height:420px;margin:0 0 12px;grid-template-rows:repeat(4,minmax(46px,1fr));gap:clamp(6px,1.2vh,10px)}.kiosk-keypad button{min-height:0;font-size:clamp(20px,3.2vh,28px);font-weight:550;border-radius:14px;transition:transform .08s,background .08s}.kiosk-keypad button:active{transform:scale(.95);background:#d6e6c8}.kiosk-keypad .key-fn{font-size:13px;font-weight:600;color:var(--muted)}.kiosk-keypad .key-fn .icon{width:24px;height:24px}.kiosk-continue{min-height:clamp(48px,7vh,58px);font-size:15px}.kiosk-demo-hint{font-size:11px;color:var(--muted);text-align:center;margin:10px 0 0}.kiosk-panel.shake{animation:shake .35s}@keyframes shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.kiosk-events{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:12px;margin:clamp(14px,2.6vh,24px) 0}.kiosk-event{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:92px;padding:18px;border:1.5px solid var(--line);border-radius:18px;background:#fff;color:var(--ink);text-align:center;transition:transform .08s}.kiosk-event .icon{width:clamp(30px,4.5vh,44px);height:clamp(30px,4.5vh,44px);color:var(--green)}.kiosk-event strong{font-size:clamp(15px,2vh,19px);font-weight:650;line-height:1.25}.kiosk-event small{position:absolute;top:13px;right:13px;font-size:10px;font-weight:700;color:#fff;background:var(--green);border-radius:20px;padding:4px 9px}.kiosk-event.suggested{background:#eef5e6;border-color:#92b675}.kiosk-event:active{transform:scale(.97)}.kiosk-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:11px}.kiosk-off{margin:auto 0}@media(orientation:portrait),(max-width:860px){.kiosk-body{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);width:100%;max-width:660px;margin:0 auto;gap:16px}.kiosk-hero{flex-direction:row;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px;border-radius:22px}.kiosk-hero-top,.kiosk-tagline{display:none}.kiosk-hero-main{margin:0}.kiosk-clock{font-size:clamp(48px,10vw,76px)}.kiosk-date{margin-top:8px;font-size:13px}.kiosk-note{max-width:48%;font-size:11px}.kiosk-branch{display:none}.kiosk-events{max-height:560px}.kiosk-panel{justify-content:center}.kiosk-keypad{max-height:min(520px,48vh)}}@media(max-width:600px){.kiosk-branch,.kiosk-lock span{display:none}.kiosk-bar{gap:8px}.kiosk-note{display:none}.kiosk-body{padding:14px;gap:14px}.kiosk-panel{padding:18px;border-radius:20px}.kiosk-events{gap:9px}.kiosk-event{padding:14px;min-height:80px}.kiosk-event strong{font-size:14px}}@media(max-height:540px){.kiosk-shell{height:auto;min-height:100dvh;overflow:visible}.kiosk-keypad{flex:none;grid-template-rows:repeat(4,48px)}.kiosk-events{flex:none;grid-auto-rows:88px}}.brand-dot{color:#a4c385}.crumb .sep{padding:0 9px;color:#b2bca9}.nav-count{margin-left:auto;background:#fff1d9;color:#946228;border-radius:20px;font-size:11px;font-weight:700;padding:2px 8px}.nav-item.active .nav-count{background:#fff}.role-banner{margin:20px 0 0}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.chip{display:inline-flex;align-items:center;gap:6px;background:#f1f4ed;color:var(--ink);border-radius:30px;padding:8px 13px;font-size:12px;font-weight:600}.chip span{font-size:11px;opacity:.6}.chip.active span{opacity:.8}.tag{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:650;color:#45558a;background:#eceff9;border-radius:20px;padding:3px 8px;white-space:nowrap;vertical-align:middle}.tag .icon{width:12px;height:12px}.tag.warn{color:#946228;background:#fff1d9}.status-cell{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.fine-print{font-size:10px;color:var(--muted);margin:14px 0 0;line-height:1.5}select.form-input.compact{width:auto;min-height:36px;padding:7px 10px;font-size:12px}.mini-title{font-size:11px;text-transform:uppercase;letter-spacing:1.2px;color:var(--muted);margin:6px 0 2px}.device-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.device-row:last-of-type{border-bottom:0}.device-row>.icon{color:var(--green)}.device-row strong{font-size:13px;display:block}.device-row small{display:block;color:var(--muted);margin-top:3px}.device-row .badge{margin-left:auto}.device-row .actions{margin-left:4px}.branch-meta{flex-wrap:wrap;gap:8px 16px}.fieldset{border:1px solid var(--line);border-radius:12px;padding:12px 16px 2px;margin:0 0 17px;min-width:0}.fieldset legend{font-size:12px;font-weight:650;padding:0 6px}.branch-checks{display:flex;flex-wrap:wrap;gap:0 18px;padding:0 0 4px 26px}.branch-checks .check-row{margin-bottom:10px}fieldset.plain{border:0;padding:0;margin:0;min-width:0}.check-row input{flex-shrink:0;accent-color:var(--green)}.check-row small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.code-box{font-size:28px;font-weight:700;letter-spacing:3px;text-align:center;background:#f3f6ee;border-radius:14px;padding:18px;margin:16px 0;font-variant-numeric:tabular-nums;color:var(--dark)}.steps-list{margin:0 0 18px;padding-left:20px;font-size:13px;line-height:1.7;color:#4f6159}.excluded-list{list-style:none;margin:8px 0 6px;padding:0}.excluded-list li{display:flex;flex-wrap:wrap;gap:2px 10px;padding:6px 0;border-top:1px dashed #ead8b0;font-size:11px}.ex-kind{font-weight:700;min-width:120px}.drop-zone{width:100%;display:grid;justify-items:center;gap:6px;border:2px dashed #cdd8c4;border-radius:16px;padding:26px;background:#fafbf8;color:var(--ink)}.drop-zone small{color:var(--muted)}.drop-zone .icon{color:var(--green);width:30px;height:30px}.section-title{font-size:12px;text-transform:uppercase;letter-spacing:1.2px;color:var(--muted);margin:26px 0 12px;display:flex;gap:8px;align-items:center}.section-title span{background:#e7ece2;color:var(--ink);border-radius:20px;padding:2px 8px;font-size:11px;letter-spacing:0}.row-muted td{opacity:.55}.settings-card{max-width:760px}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;background:#f1f4ed;border-radius:6px;padding:2px 6px}.unit{font-size:12px;font-weight:400;color:var(--muted)}.history-item .right small{display:block;font-size:10px;color:var(--muted);margin-top:2px}.history-day{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hero-done{display:flex;gap:8px;align-items:center;justify-content:center;background:#ffffff14;border-radius:12px;padding:17px;font-size:13px;color:#d7efc5}.hero .badge .icon{width:13px;height:13px}.request-m{margin-bottom:12px}.request-m p{font-size:13px;color:#6f7e69;margin:10px 0}.request-m .answer{color:var(--ink)}.demo-controls{display:grid;gap:12px}.demo-field{display:grid;gap:6px;font-size:12px;font-weight:650}.demo-controls .btn{justify-content:flex-start}.demo-reset{justify-content:flex-start;color:var(--muted)}.demo-tools select{margin-left:auto}.demo-tools button{margin-left:0}.kiosk-demo-btn,.kiosk-lock{display:inline-flex;align-items:center;gap:7px;border-radius:10px;padding:9px 12px;font-size:12px;font-weight:650;white-space:nowrap}.kiosk-demo-btn{margin-left:auto;background:none;color:var(--muted);border:1px dashed #d4dccd}.kiosk-lock{background:#f1f4ed;color:var(--ink)}.kiosk-message{margin:auto 0;text-align:center;padding:8px}.kiosk-message h2{margin-bottom:8px}.kiosk-message p{color:var(--muted);font-size:14px;max-width:340px;margin:0 auto}.kiosk-displays.one{grid-template-columns:1fr}.kiosk-id .tag{margin-left:4px}.phone-stage{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(280px,400px) auto;justify-content:center;align-items:center;gap:64px;padding:32px;background:radial-gradient(circle at 78% 18%,#e3efd6 0,transparent 42%),var(--bg)}.stage-info h1{font-size:34px;margin:0 0 12px}.stage-list{list-style:none;padding:0;margin:22px 0;display:grid;gap:12px;font-size:13px}.stage-list li{display:flex;gap:10px;align-items:center}.stage-list .icon{color:var(--green)}.stage-demo{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:18px}.phone{position:relative;width:390px;height:min(820px,calc(100vh - 64px));min-height:640px;border-radius:52px;background:#12201d;padding:12px;box-shadow:0 30px 80px #12302a40,inset 0 0 0 2px #2c3e39}.phone-notch{position:absolute;top:22px;left:50%;transform:translate(-50%);width:108px;height:30px;border-radius:20px;background:#0b1513;z-index:5}.phone-screen{height:100%;border-radius:40px;overflow:hidden;background:var(--bg);position:relative}.m-app{height:100%;display:flex;flex-direction:column}.m-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--paper);border-bottom:1px solid var(--line)}.phone .m-head{padding-top:56px}.m-head .brand{font-size:21px}.m-head .brand-mark{width:30px;height:30px;border-radius:10px}.m-head .avatar{width:34px;height:34px;font-size:11px}.m-content{flex:1;overflow-y:auto;padding:0 16px 22px;overscroll-behavior:contain}.m-nav{display:flex;justify-content:space-around;background:#fffe;border-top:1px solid var(--line);padding:7px 4px calc(10px + env(safe-area-inset-bottom))}.m-nav button{background:none;color:#8c9984;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:62px;padding:7px 8px;border-radius:12px;font-size:10px;font-weight:600}.m-nav button.active{color:var(--green);background:#eef5e6}.m-nav .icon{width:21px;height:21px}.m-intro{margin:20px 0 16px}.m-intro h1{font-size:25px;letter-spacing:-.8px;margin-bottom:6px}.m-intro .subtitle{font-size:13px}.m-app .stack{gap:14px}.m-app .card{padding:18px;border-radius:18px}.m-app .hero{min-height:0;padding:22px;border-radius:22px}.m-app .hero-clock{font-size:56px;margin:20px 0 4px}.m-app .hero-day{margin-bottom:20px}.m-app .hero .btn{min-height:56px}.m-app .mini-stat{padding:15px 13px;gap:9px}.m-app .icon-tile{width:34px;height:34px;border-radius:10px}.m-app .mini-stat strong{font-size:18px}.m-app .mini-stat small{font-size:10px}.m-app .card-head{margin-bottom:18px}.m-app .help-card{padding:15px 16px}.m-app .history-item{gap:10px}.m-app .form-grid{gap:0 10px}.m-app .form-grid .field{min-width:0}.m-app .form-grid input{font-size:13px;padding:10px}.act-hero{text-align:center;padding:26px 4px 22px}.act-hero h1{font-size:26px;margin:18px 0 8px}.act-icon{width:76px;height:76px;margin:0 auto;display:grid;place-items:center;border-radius:24px;background:#edf4e4;color:var(--green)}.act-icon .icon{width:36px;height:36px}.act-card{text-align:center;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:24px;margin-bottom:18px}.act-card .avatar{width:64px;height:64px;font-size:20px;margin-bottom:12px}.act-card p{font-size:13px;color:var(--muted);margin:8px 0 0}.act-steps{display:flex;justify-content:center;gap:6px;margin:22px 0 0}.act-steps i{width:28px;height:4px;border-radius:4px;background:#d9e0d2}.act-steps i.on{background:var(--green)}.act-fill{display:flex;margin:12px auto 0}.demo-fab{position:fixed;left:16px;bottom:16px;z-index:45;display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border-radius:30px;background:#ffffffeb;border:1px solid var(--line);box-shadow:0 6px 20px #1c3d341f;font-size:12px;font-weight:650;color:var(--ink)}.mobile-fab{display:none}body[data-mode=mobile] #toast{bottom:110px}@media(max-width:850px){.top-actions .role-select{display:none}}.dash-side{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:22px;align-items:start}@media(max-width:1150px){.dash-side{grid-template-columns:1fr 1fr}}@media(max-width:700px){.dash-side{grid-template-columns:1fr}}@media(max-width:960px){.phone-stage{grid-template-columns:auto;padding:24px}.stage-info{display:none}.mobile-fab{display:inline-flex}}@media(max-width:600px){.phone-stage{display:block;padding:0;background:var(--bg)}.phone{width:100%;height:100vh;height:100dvh;min-height:0;border-radius:0;padding:0;box-shadow:none;background:none}.phone-notch{display:none}.phone-screen{border-radius:0}.phone .m-head{padding-top:max(14px,env(safe-area-inset-top))}.mobile-fab{bottom:84px;left:auto;right:12px;padding:10px;font-size:0;gap:0;opacity:.92}.chips{gap:6px}.chip{padding:7px 10px}.ex-kind{min-width:0}}.live-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;margin-bottom:22px;align-items:stretch}.live-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.live-head>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.live-pill{display:inline-flex;align-items:center;gap:8px;background:#e7f5dd;color:#2c6a38;font-size:10px;font-weight:750;letter-spacing:1.2px;text-transform:uppercase;border-radius:30px;padding:6px 11px}.live-pill.small{padding:5px 9px}.pulse{width:8px;height:8px;border-radius:50%;background:#38a25a;animation:pulse 1.8s infinite}@keyframes pulse{0%{box-shadow:0 0 #38a25a80}70%{box-shadow:0 0 0 9px #38a25a00}to{box-shadow:0 0 #38a25a00}}.live-updated{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.live-hero{display:flex;align-items:baseline;gap:10px;margin:18px 0 12px;flex-wrap:wrap}.live-hero strong{font-size:46px;letter-spacing:-1.8px;line-height:1;font-variant-numeric:tabular-nums}.live-hero span{color:var(--muted);font-size:14px}.live-bar{display:flex;height:12px;border-radius:8px;overflow:hidden;gap:3px;background:#eef1ea;margin-bottom:20px}.seg{min-width:6px;transition:flex .6s ease}.seg-working,.tone-working .lt-icon,.feed-icon.tone-working,.state-dot.tone-working{background:#2a7a62}.seg-lunch,.tone-lunch .lt-icon,.feed-icon.tone-lunch,.state-dot.tone-lunch{background:#dd9a3c}.seg-back,.tone-back .lt-icon,.feed-icon.tone-back,.state-dot.tone-back{background:#7fb85c}.seg-closed,.tone-closed .lt-icon,.feed-icon.tone-closed,.state-dot.tone-closed{background:#98a69d}.seg-missing,.tone-missing .lt-icon,.state-dot.tone-missing{background:#cc6357}.seg-none,.state-dot.tone-none{background:#d9e0d4}.tone-none .lt-icon{background:#c3ccbe}.live-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.live-tile{display:grid;gap:8px;align-content:start;text-align:left;background:#f6f8f3;border:1.5px solid transparent;border-radius:16px;padding:14px;color:var(--ink);transition:border-color .15s,background .15s,transform .15s}.live-tile:hover{border-color:#cfdcc4;transform:translateY(-1px)}.live-tile.active{border-color:var(--green);background:#fff;box-shadow:0 0 0 4px #d9f3b455}.lt-top{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:650}.lt-icon{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;color:#fff;flex-shrink:0}.lt-icon .icon{width:15px;height:15px}.live-tile strong{font-size:30px;letter-spacing:-1px;line-height:1;font-variant-numeric:tabular-nums}.live-tile small{font-size:11px;color:var(--muted);line-height:1.4}.live-tile small.warn{color:#a3561f;font-weight:650}.avatars{display:flex;min-height:26px}.avatars .avatar{width:26px;height:26px;font-size:9px;border:2px solid #f6f8f3;margin-left:-7px}.avatars .avatar:first-child{margin-left:0}.live-tile.active .avatars .avatar{border-color:#fff}.avatars .more{background:#e0e6da;color:var(--muted)}.feed-card{display:flex;flex-direction:column}.feed-card .card-head{margin-bottom:8px}.feed-row{display:flex;align-items:center;gap:11px;padding:10px 8px;margin:0 -8px;border-radius:12px;font-size:12px}.feed-row+.feed-row{border-top:1px solid var(--line)}.feed-row strong{font-size:13px;display:block}.feed-row small{display:block;color:var(--muted);margin-top:2px}.feed-row time{margin-left:auto;font-size:11px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.feed-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;color:#fff;flex-shrink:0}.feed-row.fresh{animation:fresh 2.6s ease}@keyframes fresh{0%{background:#dff2cf;transform:translate(-4px)}20%{transform:none}to{background:transparent}}.state-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}@media(max-width:1150px){.live-grid{grid-template-columns:1fr}}@media(max-width:600px){.live-tiles{grid-template-columns:1fr 1fr}.live-hero strong{font-size:38px}.live-card{padding:18px}}.welcome{padding-top:34px}.act-icon.big{width:88px;height:88px;border-radius:28px;background:var(--mint)}.act-icon.big .icon{width:44px;height:44px}.welcome-options{display:grid;gap:12px;margin-bottom:6px}.welcome-option{display:flex;align-items:center;gap:14px;text-align:left;background:var(--paper);border:1.5px solid var(--line);border-radius:18px;padding:16px;color:var(--ink)}.welcome-option:hover{border-color:#92b675}.welcome-option strong{display:block;font-size:14px}.welcome-option small{display:block;font-size:12px;color:var(--muted);margin-top:4px;line-height:1.4}.wo-icon{width:44px;height:44px;border-radius:14px;background:#eef5e6;color:var(--green);display:grid;place-items:center;flex-shrink:0}.act-back-link{margin-top:14px;padding:4px 0}#act-code{font-size:18px;letter-spacing:2px;text-transform:uppercase;font-variant-numeric:tabular-nums}#pair-code{font-size:20px;letter-spacing:4px;font-variant-numeric:tabular-nums}.link-box{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);background:#f6f8f3;border:1px dashed #d4dccd;border-radius:10px;padding:9px 12px;margin:-6px 0 14px;word-break:break-all}.kd-value i.gap{margin-left:12px}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}html,body{min-height:100%}body{background:var(--bg)}.spinner{width:18px;height:18px;border:2px solid #ffffff66;border-top-color:#fff;border-radius:50%;display:inline-block;animation:giro .8s linear infinite;vertical-align:middle}.spinner.dark{border-color:#235e5033;border-top-color:var(--green)}@keyframes giro{to{transform:rotate(360deg)}}.cargando{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px 10px;color:var(--muted);font-size:13px}.auth-page{min-height:100vh;display:grid;place-items:center;padding:32px 16px;background:radial-gradient(circle at 15% 10%,#d9f3b455,transparent 40%),var(--bg)}.auth-card{background:var(--paper);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:34px;width:min(440px,100%)}.auth-card .brand{color:var(--dark);margin-bottom:28px}.auth-card h1{font-size:26px;letter-spacing:-.6px;margin:0 0 8px}.auth-card .subtitle{margin-bottom:22px}.auth-links{display:flex;justify-content:space-between;gap:10px;margin-top:18px;font-size:13px}.empresa-option{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff;text-align:left;margin-bottom:10px;color:var(--ink)}.empresa-option:hover{border-color:#8ab96a;background:#f7faf3}.empresa-option small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.empresa-option .right{margin-left:auto}.form-error:empty{display:none}.success-box{background:#eef5e6;border-radius:12px;padding:14px;font-size:13px;color:var(--green);margin-bottom:14px}.user-menu{position:relative}.user-menu-btn{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px 12px 6px 6px;color:var(--ink);font-size:13px}.user-menu-btn .avatar{width:32px;height:32px;font-size:12px}.user-menu-panel{position:absolute;right:0;top:calc(100% + 8px);background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 50px #1c3d3422;min-width:260px;padding:8px;z-index:40}.user-menu-panel .um-head{padding:10px 12px 12px;border-bottom:1px solid var(--line);margin-bottom:6px;font-size:13px}.user-menu-panel .um-head small{display:block;color:var(--muted);margin-top:3px}.user-menu-panel button{display:flex;align-items:center;gap:10px;width:100%;background:none;padding:10px 12px;border-radius:10px;color:var(--ink);font-size:13px;text-align:left}.user-menu-panel button:hover{background:#f3f6ef}.pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;font-size:13px;color:var(--muted)}.pagination .actions{gap:6px}.map-real{height:190px;border-radius:16px;overflow:hidden;border:1px solid var(--line);margin-bottom:14px;z-index:0;position:relative}.map-real.alto{height:260px}.map-hint{font-size:12px;color:var(--muted);margin:-6px 0 14px}.col-actions{white-space:nowrap}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:14px 0}.kpi{background:#f5f8f1;border-radius:14px;padding:14px}.kpi strong{display:block;font-size:22px}.kpi small{color:var(--muted);font-size:12px}.json-box{background:#f5f7f3;border-radius:10px;padding:10px;font-size:11px;white-space:pre-wrap;word-break:break-word;max-height:220px;overflow:auto;margin:8px 0 0;font-family:ui-monospace,Consolas,monospace}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px}.tabs button{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:13px;color:var(--ink)}.tabs button.active{background:var(--dark);color:#fff;border-color:var(--dark)}.inline-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;align-items:end}.col-editor{display:grid;grid-template-columns:60px 1fr 1fr 1fr 1fr 34px;gap:8px;align-items:center;margin-bottom:8px}.col-editor input,.col-editor select{width:100%}.col-editor .head{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}@media(max-width:700px){.col-editor{grid-template-columns:1fr 1fr}.col-editor .head{display:none}}dialog.ancho{width:min(760px,calc(100% - 32px))}dialog.medio{width:min(560px,calc(100% - 32px))}.leaflet-container{font-family:inherit}.leaflet-control-attribution{font-size:10px}a.nav-item{text-decoration:none}.bottom-nav a{background:none;color:#8c9984;display:flex;flex-direction:column;align-items:center;gap:5px;min-width:55px;padding:7px 9px;border-radius:12px;font-size:9px;text-decoration:none;white-space:nowrap}.bottom-nav a.active{color:var(--green);background:#eef5e6}@media(max-width:600px){.um-name{display:none}.user-menu-btn{padding:4px}}.btn[disabled]{pointer-events:none}a.btn{text-decoration:none}.text-link{text-decoration:none;cursor:pointer}.text-link.danger{color:var(--red)}.receipt div strong{text-align:right}.chip.active{background:var(--dark);color:#fff}.mapa-selector{cursor:crosshair}.dialog-actions{display:flex;gap:9px;justify-content:flex-end;flex-wrap:wrap;margin-top:6px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}@media(max-width:900px){.grid-2{grid-template-columns:1fr}}.tile-num{font-variant-numeric:tabular-nums}a.chip{text-decoration:none}.actions.col-actions{flex-wrap:nowrap;gap:12px}.device-row{flex-wrap:wrap}.device-row>.actions{flex-basis:100%;padding-left:34px;gap:14px}.device-row>.badge{margin-left:auto}.mini-title{margin-bottom:12px}
