@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-C1zWlyYG.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal--KUh6X2k.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-CvPE_C53.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-D62tbE3i.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DWlqe-xm.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.d-root{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;cursor:none;-webkit-user-select:none;user-select:none;background:var(--navy);color:#fff;font-family:var(--font);display:flex;flex-direction:column;padding:4.5vmin 5vmin}.d-grid{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.d-head,.d-main,.d-foot{position:relative;z-index:1}.d-head{display:flex;justify-content:space-between;align-items:flex-start}.d-logo{width:26vmin;color:#fff}.d-clock{text-align:right}.d-clock span{display:block;font-size:7vmin;font-weight:300;line-height:1;letter-spacing:-.02em}.d-clock small{font-size:2.4vmin;color:#fff9}.d-main{flex:1;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:6vmin}.portrait .d-main{grid-template-columns:1fr;align-content:center}.d-title{font-size:8.5vmin;font-weight:400;line-height:1.05;letter-spacing:-.025em;color:var(--lime);margin:0}.d-text{font-size:3.4vmin;line-height:1.35;margin-top:2.6vmin;color:#ffffffd9;max-width:32ch}.d-occupancy{border-left:2px solid rgba(255,255,255,.18);padding-left:5vmin}.portrait .d-occupancy{border-left:0;border-top:2px solid rgba(255,255,255,.18);padding:5vmin 0 0}.d-occupancy label{font-size:2.6vmin;letter-spacing:.14em;text-transform:uppercase;color:#fff9}.d-free{font-size:30vmin;font-weight:300;line-height:.95;letter-spacing:-.04em;color:var(--lime);margin:1vmin 0 3vmin}.d-occupancy.full .d-free{color:#ff8a73}.d-bar{height:1.2vmin;background:#ffffff24;position:relative;margin-bottom:1.6vmin}.d-bar i{position:absolute;inset:0 auto 0 0;background:var(--lime)}.d-occupancy.full .d-bar i{background:#ff8a73}.d-occupancy small{font-size:2.4vmin;color:#fff9}.d-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:4vmin}.d-notice{font-size:2.8vmin;max-width:70%;padding-left:2.4vmin;border-left:.6vmin solid var(--lime);margin:0}.d-conn{width:1.2vmin;height:1.2vmin;border-radius:50%;background:#ff8a73}.d-conn.on{background:#ffffff40}.d-center{margin:auto;text-align:center}.d-result{justify-content:center;align-items:center;text-align:center}.d-result.ok{background:var(--lime);color:var(--navy)}.d-result.ok .d-title{color:var(--navy);font-weight:600}.d-result.ok .d-text,.d-result.ok .d-sub{color:var(--navy)}.d-result.bad{background:#fff;color:var(--navy);border-top:4vmin solid #b3361f}.d-result.bad .d-title{color:#b3361f;font-weight:700}.d-result.bad .d-text{color:var(--navy)}.d-result-body{max-width:92%;display:flex;flex-direction:column;align-items:center}.d-result .d-title{font-size:9vmin}.d-result .d-text{font-size:3.6vmin;margin-left:auto;margin-right:auto;max-width:40ch}.d-sub{font-size:3.4vmin;margin-top:2vmin;font-weight:600}.d-remaining{font-size:3.6vmin;margin-top:2.4vmin;padding:1.4vmin 2.6vmin;background:var(--navy);color:var(--lime);font-weight:600}.d-hint{font-size:3.2vmin;margin-top:4vmin;padding:2vmin 3vmin;background:var(--navy);color:#fff;display:inline-block}.d-plate{display:inline-flex;align-items:stretch;height:22vmin;margin-bottom:6vmin;background:#fff;color:#111;border:1.1vmin solid #111;border-radius:2.2vmin;box-shadow:0 0 0 .9vmin #fff,0 3vmin 6vmin #04244747}.d-plate-eu{width:13vmin;background:#039;color:#fff;border-radius:1.1vmin 0 0 1.1vmin;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8vmin}.d-plate-eu svg{width:7.5vmin;height:7.5vmin}.d-plate-eu b{font-size:5.5vmin;line-height:1;font-weight:700}.d-plate-text{display:flex;align-items:center;padding:0 5vmin 0 4.5vmin;font-family:"DIN 1451","FE-Schrift","Arial Narrow",var(--font);font-size:15vmin;font-weight:700;letter-spacing:.04em;line-height:1;white-space:nowrap}.portrait .d-plate{height:14vmin}.portrait .d-plate-eu{width:8.5vmin}.portrait .d-plate-text{font-size:9.5vmin}.d-arrow{position:absolute;right:6vmin;bottom:6vmin;width:22vmin;color:var(--navy)}@media(prefers-reduced-motion:no-preference){.d-result-body{animation:d-in .35s ease-out}@keyframes d-in{0%{opacity:0;transform:translateY(2vmin) scale(.98)}}}.d-signs{display:flex;gap:3vmin;align-items:flex-start;margin-left:auto}.d-sign{margin:0;width:12vmin;display:flex;flex-direction:column;align-items:center;gap:1.2vmin}.d-sign svg{width:10vmin;height:10vmin;display:block}.d-sign figcaption{font-size:1.8vmin;line-height:1.25;text-align:center;color:#fffc}.d-signs.small{position:absolute;left:6vmin;bottom:6vmin;gap:2vmin;margin:0}.d-signs.small .d-sign{width:auto}.d-signs.small .d-sign svg{width:7vmin;height:7vmin}.d-result.ok .d-signs.small svg rect:first-child{stroke:#04244740;stroke-width:2}.portrait .d-foot{flex-wrap:wrap}.portrait .d-signs{margin-left:0}.d-main.single{grid-template-columns:1fr}.d-main.single .d-text{max-width:48ch}:root{--navy: #042447;--navy-2: #0b3260;--navy-3: #1d4573;--lime: #ceff00;--lime-dim: #b7e300;--petrol: #6699a0;--sage: #85a696;--stone: #eef0f2;--paper: #ffffff;--line: #d8dce1;--line-soft: #e6e9ec;--ink: #042447;--ink-2: #3f5672;--ink-3: #7a889a;--ok: #2e7d68;--ok-bg: #e3f0eb;--warn: #a86a00;--warn-bg: #fbf0da;--bad: #b3361f;--bad-bg: #f8e4df;--radius: 2px;--font: "Manrope Variable", "Helvetica Neue", Arial, sans-serif;--mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sidebar: 248px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);font-size:14px;line-height:1.5;color:var(--ink);background:var(--stone);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.01em}p{margin:0}:focus-visible{outline:2px solid var(--navy);outline-offset:2px}.shell{display:grid;grid-template-columns:var(--sidebar) 1fr;min-height:100%}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:var(--navy);color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='248' height='900' viewBox='0 0 248 900'%3E%3Cg stroke='%23ffffff' stroke-opacity='.07' fill='none'%3E%3Cpath d='M0 300H248M0 600H248M124 0V900M0 300L248 600M248 300L0 600'/%3E%3C/g%3E%3C/svg%3E");background-size:248px 900px;background-position:bottom}.sidebar-brand{padding:26px 24px 22px}.sidebar-brand svg{width:150px;height:auto;display:block;color:#fff}.sidebar-brand span{display:block;margin-top:10px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--lime)}.sidebar-context{margin:0 16px 14px}.sidebar-context select{width:100%;padding:9px 10px;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius);background:#ffffff0a;color:#fff;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23ceff00' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.sidebar-context select option{color:var(--ink)}.sidebar-context .static{padding:9px 10px;border:1px solid rgba(255,255,255,.16);font-size:13px}.nav{flex:1;overflow-y:auto;padding:4px 0 16px}.nav-group{padding:16px 24px 6px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#ffffff73}.nav a{display:flex;align-items:center;gap:12px;padding:9px 24px;text-decoration:none;color:#ffffffc7;border-left:3px solid transparent;font-weight:500}.nav a svg{width:18px;height:18px;flex:none;opacity:.8}.nav a:hover{color:#fff;background:#ffffff0a}.nav a.active{color:#fff;border-left-color:var(--lime);background:#ffffff0f}.nav a.active svg{color:var(--lime);opacity:1}.sidebar-user{padding:16px 24px 20px;border-top:1px solid rgba(255,255,255,.1);font-size:13px}.sidebar-user strong{display:block;font-weight:600}.sidebar-user small{color:#ffffff8c}.sidebar-user .row{display:flex;gap:14px;margin-top:10px}.sidebar-user button,.sidebar-user a{background:none;border:0;padding:0;color:var(--lime);cursor:pointer;font-size:12.5px;text-decoration:none}.main{min-width:0;display:flex;flex-direction:column}.topbar{display:none}.content{padding:36px 44px 64px;max-width:1360px;width:100%}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px;flex-wrap:wrap}.page-head h1{font-size:28px;line-height:1.15}.page-head h1:before{content:"";display:block;width:36px;height:2px;background:var(--navy);margin-bottom:16px}.page-head p{color:var(--ink-2);margin-top:6px;max-width:640px}.page-head .actions{display:flex;gap:10px;flex-wrap:wrap}.banner{display:flex;gap:14px;align-items:flex-start;padding:12px 16px;margin-bottom:22px;border-left:3px solid;background:var(--paper)}.banner.warn{border-color:var(--warn);background:var(--warn-bg)}.banner.bad{border-color:var(--bad);background:var(--bad-bg)}.banner.info{border-color:var(--petrol)}.banner strong{display:block}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line-soft)}.panel-head h2{font-size:15px}.panel-head .sub{font-size:12.5px;color:var(--ink-3)}.panel-body{padding:20px}.grid{display:grid;gap:20px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.span-2{grid-column:span 2}.stack{display:flex;flex-direction:column;gap:20px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--paper);border:1px solid var(--line);margin-bottom:20px}.kpi{padding:20px 22px;border-right:1px solid var(--line-soft)}.kpi:last-child{border-right:0}.kpi label{display:block;font-size:12px;color:var(--ink-3);letter-spacing:.02em}.kpi .value{font-size:34px;font-weight:300;line-height:1.15;margin-top:6px;letter-spacing:-.02em}.kpi .value small{font-size:15px;font-weight:500;color:var(--ink-3);margin-left:4px;letter-spacing:0}.kpi .note{font-size:12px;color:var(--ink-2);margin-top:4px}.occupancy-hero{display:grid;grid-template-columns:1.2fr 1fr;background:var(--navy);color:#fff;margin-bottom:20px;position:relative;overflow:hidden}.occupancy-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(to top right,transparent calc(50% - .5px),rgba(255,255,255,.08) 50%,transparent calc(50% + .5px)),linear-gradient(to top left,transparent calc(50% - .5px),rgba(255,255,255,.08) 50%,transparent calc(50% + .5px))}.occupancy-hero .left{padding:28px 30px;position:relative;z-index:1}.occupancy-hero label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#fff9}.occupancy-hero .big{font-size:64px;font-weight:300;line-height:1;margin:12px 0 6px;letter-spacing:-.03em}.occupancy-hero .big em{font-style:normal;color:var(--lime)}.occupancy-hero .big small{font-size:22px;color:#ffffff8c;margin-left:6px;letter-spacing:0}.occupancy-hero .right{padding:28px 30px;border-left:1px solid rgba(255,255,255,.12);position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:14px}.occupancy-hero .line{display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:8px}.occupancy-hero .line span:last-child{font-weight:600}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--lime);margin-right:8px;vertical-align:1px;animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.live-dot{animation:none}}.meter{height:6px;background:#0424471a;position:relative}.meter>i{position:absolute;inset:0 auto 0 0;background:var(--navy)}.meter.on-dark{background:#ffffff24}.meter.on-dark>i{background:var(--lime)}.meter.full>i{background:var(--bad)}.table-wrap{overflow-x:auto}table.data{width:100%;border-collapse:collapse}table.data th{text-align:left;font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding:10px 16px;border-bottom:1px solid var(--line);white-space:nowrap;background:#fafbfc}table.data td{padding:11px 16px;border-bottom:1px solid var(--line-soft);vertical-align:middle}table.data tr:last-child td{border-bottom:0}table.data tr.clickable{cursor:pointer}table.data tr.clickable:hover td{background:#f6f8fa}table.data td.num,table.data th.num{text-align:right}table.data td.muted{color:var(--ink-3)}table.data td.actions{text-align:right;white-space:nowrap}.plate{display:inline-flex;align-items:stretch;border:1.5px solid var(--navy);border-radius:3px;background:#fff;font-family:var(--font);font-weight:700;font-size:13px;letter-spacing:.06em;line-height:1;white-space:nowrap}.plate:before{content:"";width:7px;background:#1f4fa3;border-right:1px solid var(--navy)}.plate span{padding:4px 8px 3px}.plate.anon{border-style:dashed;color:var(--ink-3)}.plate.anon:before{background:var(--line)}.status{display:inline-flex;align-items:center;gap:7px;font-size:13px;white-space:nowrap}.status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.status.ok{color:var(--ok)}.status.warn{color:var(--warn)}.status.bad{color:var(--bad)}.status.neutral{color:var(--ink-3)}.tag{display:inline-block;padding:1px 7px;font-size:11.5px;border:1px solid var(--line);color:var(--ink-2);border-radius:var(--radius);white-space:nowrap}.tag.lime{background:var(--lime);border-color:var(--lime);color:var(--navy);font-weight:600}.tag.bad{background:var(--bad-bg);border-color:var(--bad);color:var(--bad);font-weight:600}.empty{padding:48px 24px;text-align:center;color:var(--ink-3)}.empty strong{display:block;color:var(--ink);font-size:15px;margin-bottom:4px}.pager{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-top:1px solid var(--line-soft);color:var(--ink-3);font-size:13px}.pager .row{display:flex;gap:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:38px;padding:0 16px;border:1px solid var(--navy);border-radius:var(--radius);background:var(--navy);color:#fff;font-weight:600;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .15s,border-color .15s}.btn:hover{background:var(--navy-2)}.btn:disabled{opacity:.5;cursor:default}.btn svg{width:16px;height:16px}.btn.accent{background:var(--lime);border-color:var(--lime);color:var(--navy)}.btn.accent:hover{background:var(--lime-dim);border-color:var(--lime-dim)}.btn.ghost{background:transparent;color:var(--navy);border-color:var(--line)}.btn.ghost:hover{border-color:var(--navy);background:transparent}.btn.danger{background:transparent;color:var(--bad);border-color:#e7c3bb}.btn.danger:hover{border-color:var(--bad)}.btn.small{height:30px;padding:0 10px;font-size:13px}.link{background:none;border:0;padding:0;color:var(--navy);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line);cursor:pointer}.link:hover{text-decoration-color:var(--navy)}.link.danger{color:var(--bad)}.form{display:grid;gap:16px}.form.cols-2{grid-template-columns:1fr 1fr}.form .full{grid-column:1 / -1}.field label{display:block;font-size:12.5px;font-weight:600;margin-bottom:6px}.field .hint{font-size:12px;color:var(--ink-3);margin-top:5px}.input,.field input,.field select,.field textarea{width:100%;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.field textarea{height:auto;min-height:84px;padding:10px 12px;resize:vertical}.input:focus,.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy)}.check{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.check input{width:16px;height:16px;margin:2px 0 0;accent-color:var(--navy)}.form-error{color:var(--bad);font-size:13px}.form-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:4px}.plate-input{font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:18px!important;height:48px!important}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line-soft)}.toolbar .input,.toolbar select{height:34px;width:auto;min-width:150px}.toolbar .spacer{flex:1}.segmented{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius)}.segmented button{border:0;background:none;padding:6px 12px;cursor:pointer;color:var(--ink-2);font-size:13px}.segmented button+button{border-left:1px solid var(--line)}.segmented button.on{background:var(--navy);color:#fff}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#04244773;display:flex;align-items:flex-start;justify-content:center;padding:8vh 16px;z-index:50;overflow-y:auto}.modal{width:100%;max-width:560px;background:#fff;border-top:3px solid var(--navy)}.modal.wide{max-width:760px}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line-soft)}.modal-head h2{font-size:17px}.modal-head button{background:none;border:0;cursor:pointer;width:28px;height:28px;color:var(--ink-3)}.modal-body{padding:22px}.copy-box{display:flex;gap:8px}.copy-box input{font-family:var(--mono);font-size:12.5px}.toast{position:fixed;bottom:24px;right:24px;background:var(--navy);color:#fff;padding:12px 18px;border-left:3px solid var(--lime);z-index:60;max-width:420px}.toast.error{border-left-color:#ff8a73}.chart{width:100%;display:block;overflow:visible}.chart text{font-family:var(--font);font-size:11px;fill:var(--ink-3)}.chart .grid-line{stroke:var(--line-soft)}.chart .axis{stroke:var(--line)}.legend{display:flex;gap:18px;font-size:12.5px;color:var(--ink-2);flex-wrap:wrap}.legend i{display:inline-block;width:10px;height:10px;margin-right:6px;vertical-align:-1px}.chart-tip{position:absolute;pointer-events:none;background:var(--navy);color:#fff;font-size:12px;padding:7px 10px;white-space:nowrap;transform:translate(-50%,calc(-100% - 10px));z-index:5}.chart-tip b{color:var(--lime);font-weight:600}.heatmap{display:grid;grid-template-columns:34px repeat(24,minmax(0,1fr));gap:2px;font-size:11px;color:var(--ink-3)}.heatmap .cell{aspect-ratio:1.6;background:var(--navy);position:relative}.heatmap .cell:hover{outline:2px solid var(--lime);z-index:1}.heatmap .h{text-align:center}.feed{list-style:none;margin:0;padding:0}.feed li{display:grid;grid-template-columns:56px auto 1fr auto;gap:14px;align-items:center;padding:11px 20px;border-bottom:1px solid var(--line-soft)}.feed li:last-child{border-bottom:0}.feed time{color:var(--ink-3);font-size:12.5px}.feed .who{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed li.fresh{animation:fresh 1.6s ease-out}@keyframes fresh{0%{background:#f5ffd1}to{background:transparent}}.auth{min-height:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,520px)}.auth-visual{background:var(--navy);color:#fff;padding:48px 56px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-visual svg.grid-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.auth-visual .logo{width:210px;color:#fff;position:relative}.auth-visual h2{font-size:44px;font-weight:400;line-height:1.12;color:var(--lime);max-width:560px;position:relative;letter-spacing:-.02em}.auth-visual p{color:#ffffffbf;margin-top:18px;font-size:16px;position:relative}.auth-visual footer{font-size:12px;color:#ffffff80;position:relative}.auth-form{background:#fff;padding:56px;display:flex;flex-direction:column;justify-content:center}.auth-form h1{font-size:26px}.auth-form h1:before{content:"";display:block;width:36px;height:2px;background:var(--navy);margin-bottom:18px}.auth-form .lead{color:var(--ink-2);margin:8px 0 28px}.auth-form .btn{height:46px;width:100%}.auth-form .below{margin-top:18px;font-size:13px;color:var(--ink-3)}.plate-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.plate-card{background:#fff;border:1px solid var(--line);padding:20px;display:flex;flex-direction:column;gap:14px}.plate-card .plate{font-size:22px;align-self:flex-start}.plate-card .plate span{padding:8px 14px 7px}.plate-card .plate:before{width:12px}.plate-card .meta{display:flex;justify-content:space-between;align-items:center;color:var(--ink-2);font-size:13px}.plate-card.add{border-style:dashed;align-items:center;justify-content:center;min-height:150px;cursor:pointer;color:var(--ink-2);background:transparent}.plate-card.add:hover{border-color:var(--navy);color:var(--navy)}.dl{display:grid;grid-template-columns:max-content 1fr;gap:8px 24px}.dl dt{color:var(--ink-3)}.dl dd{margin:0}.mono{font-family:var(--mono);font-size:12.5px;word-break:break-all}@media(max-width:1100px){.kpis,.grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi:nth-child(2){border-right:0}.kpi:nth-child(-n+2){border-bottom:1px solid var(--line-soft)}.grid.cols-3{grid-template-columns:1fr 1fr}}@media(max-width:860px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(300px,86vw);z-index:40;transform:translate(-100%);transition:transform .22s ease-out}.shell.nav-open .sidebar{transform:none}.shell.nav-open:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:#04244766;z-index:39}.topbar{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 16px;background:var(--navy);color:#fff;position:sticky;top:0;z-index:30}.topbar svg.logo{width:120px;color:#fff}.topbar button{background:none;border:0;color:#fff;width:40px;height:40px}.content{padding:24px 16px 48px}.grid.cols-2,.grid.cols-3,.form.cols-2,.occupancy-hero{grid-template-columns:1fr}.span-2{grid-column:auto}.occupancy-hero .right{border-left:0;border-top:1px solid rgba(255,255,255,.12)}.auth{grid-template-columns:1fr}.auth-visual{padding:28px 24px;min-height:220px}.auth-visual h2{font-size:28px}.auth-form{padding:32px 24px}.page-head h1{font-size:24px}.feed li{grid-template-columns:48px auto 1fr}.feed li>:last-child{grid-column:2 / -1}}.form-section{grid-column:1 / -1;border-top:1px solid var(--line-soft);padding-top:18px;margin-top:4px}.form-section h3{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px}.inline-fields{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.inline-fields input{width:110px}.inline-fields select{width:auto}.schedule{display:grid;gap:10px}.schedule-empty{color:var(--ink-3);font-size:13px}.schedule-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.schedule-row .input{width:116px;height:36px}.schedule-dash{color:var(--ink-3);font-size:13px}.day-toggles{display:inline-flex;border:1px solid var(--line)}.day-toggles button{border:0;background:#fff;width:34px;height:34px;font-size:12.5px;cursor:pointer;color:var(--ink-2)}.day-toggles button+button{border-left:1px solid var(--line)}.day-toggles button.on{background:var(--navy);color:#fff}.icon-btn{background:none;border:0;width:30px;height:30px;color:var(--ink-3);cursor:pointer}.icon-btn:hover{color:var(--bad)}.quota-card{display:grid;grid-template-columns:1.4fr 1fr;background:var(--navy);color:#fff;margin-bottom:24px}.quota-main{padding:26px 28px}.quota-title{font-weight:700;font-size:15px;margin-bottom:14px;color:var(--lime)}.quota-title span{color:#ffffffb3;font-weight:500}.quota-card+.quota-card{margin-top:-12px}.quota-side{padding:26px 28px;border-left:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:8px;justify-content:center}.quota-card label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#fff9}.quota-big{font-size:54px;font-weight:300;line-height:1.05;margin:10px 0 14px;color:var(--lime);letter-spacing:-.02em}.quota-big.empty{color:#ff8a73}.quota-bar{height:6px;background:#ffffff24;position:relative}.quota-bar i{position:absolute;inset:0 auto 0 0;background:var(--lime)}.quota-main p{margin-top:12px;color:#ffffffb3;font-size:13px}.quota-side strong{font-size:18px;font-weight:500}.quota-side .status.ok{color:var(--lime)}.quota-side .status.warn{color:#ffc46b}.assign-list{display:grid;gap:2px}.assign-list label{display:flex;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--line-soft);cursor:pointer;font-weight:400;margin:0}.assign-list label:hover{border-color:var(--line)}.assign-list label small{color:var(--ink-3);margin-left:auto}.assign-list input{width:16px;height:16px;accent-color:var(--navy)}@media(max-width:860px){.quota-card{grid-template-columns:1fr}.quota-side{border-left:0;border-top:1px solid rgba(255,255,255,.12)}}.plate-search{width:200px;height:34px;font-weight:700;letter-spacing:.06em}.guest-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1px;background:var(--line-soft)}.guest-card{background:#fff;padding:18px 20px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.guest-card .plate{font-size:17px;justify-self:start}.guest-card .plate span{padding:6px 10px 5px}.guest-card .btn{margin-top:4px}.guest-meta{display:flex;flex-direction:column;font-size:13px}.guest-meta small{color:var(--ink-3)}.summary-bar{display:flex;gap:28px;align-items:baseline;padding:14px 16px;border-bottom:1px solid var(--line-soft);background:#fafbfc;font-size:13px;color:var(--ink-2);flex-wrap:wrap}.summary-bar strong{font-size:20px;font-weight:500;color:var(--ink);margin-right:6px}.acting-bar{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:10px 16px;margin:-8px 0 22px;background:var(--lime, #CEFF00);color:#042447}.acting-bar strong{margin-right:8px;text-transform:uppercase;letter-spacing:.06em;font-size:12px}.acting-bar .btn{background:#042447;color:#fff;border-color:#042447;white-space:nowrap}@media(max-width:640px){.acting-bar{flex-direction:column;align-items:flex-start}}.kind-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px}.kind-choice button{text-align:left;padding:14px 16px;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;font:inherit;display:grid;gap:4px}.kind-choice button span{color:var(--ink-3);font-size:13px;line-height:1.4}.kind-choice button.on{border-color:var(--navy);box-shadow:inset 3px 0 0 var(--lime);background:#f6f9fb}@media(max-width:640px){.kind-choice{grid-template-columns:1fr}}.allotment{border:1px solid var(--line-soft);padding:14px 16px;margin-bottom:12px;display:grid;gap:8px;justify-items:start}.allotment>.form{width:100%}.form-section h3 small{font-weight:500;color:var(--ink-3);font-size:12.5px;margin-left:8px}.chart.zoomable{cursor:crosshair;touch-action:pan-y}.chart .zoom-brush{fill:var(--lime);fill-opacity:.18;stroke:var(--navy);stroke-dasharray:3 3}.zoom-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:13px;color:var(--ink-3)}.period-filter{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end}.period-custom{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--ink-3)}.period-custom .input{width:auto}.kpis.small .kpi{padding:14px 18px}.kpis.small .kpi .value{font-size:26px}.kpis.small{grid-template-columns:repeat(3,1fr)}@media(max-width:720px){.kpis.small{grid-template-columns:1fr}}.how-it-works{background:var(--navy);color:#fff;padding:22px 26px 24px;margin-bottom:24px;position:relative;overflow:hidden}.how-it-works:after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;background:repeating-linear-gradient(135deg,rgba(206,255,0,.14) 0 1px,transparent 1px 9px);pointer-events:none}.hiw-head{display:flex;align-items:baseline;gap:12px;margin-bottom:18px}.hiw-head strong{font-size:18px;font-weight:800;letter-spacing:-.01em}.hiw-head span{color:var(--lime);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}.how-it-works ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;position:relative;z-index:1}.how-it-works li{display:flex;gap:12px;align-items:flex-start}.how-it-works .pictogram{flex:none;color:var(--lime)}.how-it-works b{display:block;font-size:14px;margin-bottom:3px}.how-it-works p{margin:0;font-size:13px;line-height:1.45;color:#ffffffb8}@media(max-width:900px){.how-it-works ol{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.how-it-works ol{grid-template-columns:1fr}}.nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--bad);color:#fff;font-size:11.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}tr.alarm-new td:first-child{box-shadow:inset 3px 0 0 var(--bad)}.sign-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sign-option{border:1px solid var(--line);padding:10px;display:grid;gap:8px;align-content:start}.sign-option.on{border-color:var(--navy);box-shadow:inset 3px 0 0 var(--lime)}.sign-option button{display:flex;align-items:center;gap:10px;background:none;border:0;padding:0;cursor:pointer;font:inherit;color:var(--ink);text-align:left}.sign-option:not(.on) button{opacity:.55}.sign-preview{margin:0;flex:none}.sign-preview svg{width:40px;height:40px;display:block;background:var(--navy);padding:4px}.sign-fields{display:grid;gap:6px}.sign-fields .input{width:100%}@media(max-width:720px){.sign-picker{grid-template-columns:1fr}}.session-detail{display:grid;gap:18px}.sd-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.sd-head .plate{font-size:22px}.sd-photo{padding:0;border:1px solid var(--line);background:#000;cursor:zoom-in;display:block}.sd-photo img{display:block;width:100%;max-height:300px;object-fit:contain}.sd-grid{grid-template-columns:140px 1fr}.sd-cost{background:var(--soft, #f3f6f8);border-left:3px solid var(--lime);padding:12px 16px}.sd-cost label{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.sd-amount{font-size:26px;font-weight:700;color:var(--navy);margin:2px 0 4px}.sd-amount.small{font-size:15px;font-weight:600}.sd-amount small{font-size:13px;font-weight:500;color:var(--ink-3)}.sd-cost ul{margin:6px 0 0;padding-left:18px;font-size:13px}.sd-sub{font-size:14px;margin:4px 0 -8px}.sd-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#042447eb;display:flex;align-items:center;justify-content:center;z-index:100;cursor:zoom-out}.sd-lightbox img{max-width:94vw;max-height:90vh}.sd-corrections{display:grid;grid-template-columns:1fr 1fr;gap:16px;border-top:1px solid var(--line-soft);padding-top:16px}.sd-corrections label{display:block;font-size:12.5px;font-weight:600;margin-bottom:6px}@media(max-width:720px){.sd-corrections{grid-template-columns:1fr}}.sd-payments{color:var(--ok)}.pay-page{min-height:100vh;background:var(--navy);color:#fff;display:flex;flex-direction:column;padding:28px 20px}.pay-page header,.pay-page main,.pay-page footer{width:100%;max-width:640px;margin:0 auto}.pay-logo{width:150px;color:#fff}.pay-page main{flex:1;padding-top:48px}.pay-page h1{font-weight:500;font-size:32px;color:var(--lime);margin:0 0 10px}.pay-page .lead{color:#ffffffbf;margin:0 0 24px}.pay-form{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.pay-form label{display:grid;gap:6px;font-size:13px;color:#fffc}.pay-form input{padding:11px 12px;border:1px solid rgba(255,255,255,.3);background:#ffffff0f;color:#fff;font:inherit}.pay-form button{padding:12px 18px;background:var(--lime);color:var(--navy);border:0;font:inherit;font-weight:700;cursor:pointer}.pay-error{color:#ffb4a3;margin-top:16px}.pay-invoice{margin-top:28px;background:#fff;color:var(--ink);padding:22px}.pay-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.pay-head small{display:block;color:var(--ink-3)}.pay-head strong{font-size:30px;color:var(--navy)}.pay-status{font-size:13px;padding:4px 10px;background:var(--warn-bg, #fff4dc);color:var(--navy)}.pay-status.paid{background:#dff3ea}.pay-invoice ul{list-style:none;padding:0;margin:16px 0;border-top:1px solid var(--line)}.pay-invoice li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line-soft);font-size:14px}.pay-transfer h2{font-size:16px;margin:18px 0 8px}.pay-transfer dl{display:grid;grid-template-columns:140px 1fr;gap:6px 12px;margin:0;font-size:14px}.pay-transfer dt{color:var(--ink-3)}.pay-pdf{display:inline-block;margin-top:18px;color:var(--navy);font-weight:600}.pay-page footer{color:#ffffff73;font-size:12px;padding-top:32px}@media(max-width:640px){.pay-form,.pay-transfer dl{grid-template-columns:1fr}}.totp-setup{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:start}.totp-qr svg{width:180px;height:180px;background:#fff}@media(max-width:640px){.totp-setup{grid-template-columns:1fr}}
