@font-face{font-family:Anek Devanagari;src:url(/fonts/AnekDevanagari.woff2) format("woff2");font-weight:100 800;font-display:swap}@font-face{font-family:Noto Sans;src:url(/fonts/NotoSans.woff2) format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Anek Latin;src:url(/fonts/AnekLatin.woff2) format("woff2");font-weight:100 800;font-display:swap}@font-face{font-family:Noto Sans Devanagari;src:url(/fonts/NotoSansDevanagari.woff2) format("woff2");font-weight:100 900;font-display:swap}:root{--paper: #fefefe;--ink: #2b2a29;--quiet: #6b6a67;--soft: #2b2a2924;--zone-g: #4a8dbd;--zone-n-rst: #0b503b;--zone-n-spn: #2e3a59;--zone-n-vmr: #214c9e;--zone-s-1: #f58419;--zone-s-3: #da291c;--zone-e-off: #b7734e;--zone-e-ann: #007960;--zone-cnv: #745f4b;--zone-g-t25: #d2e2ef;--zone-g-t45: #aecbe2;--zone-g-t70: #82afd2;--zone-n-rst-t25: #c2d1ca;--zone-n-rst-t45: #93ada1;--zone-n-rst-t70: #598171;--zone-n-spn-t25: #c6cad3;--zone-n-spn-t45: #9aa1b2;--zone-n-spn-t70: #667088;--zone-n-vmr-t25: #c4d1e9;--zone-n-vmr-t45: #97add6;--zone-n-vmr-t70: #6081bd;--zone-s-1-t25: #ffe2ce;--zone-s-1-t45: #ffcaa6;--zone-s-1-t70: #fcab71;--zone-s-3-t25: #fdd0c8;--zone-s-3-t45: #f8a99c;--zone-s-3-t70: #ed7767;--zone-e-off-t25: #eedbd1;--zone-e-off-t45: #e1bfae;--zone-e-off-t70: #ce9c82;--zone-e-ann-t25: #c7ddd5;--zone-e-ann-t45: #9bc1b4;--zone-e-ann-t70: #64a08d;--zone-cnv-t25: #dbd5cf;--zone-cnv-t45: #beb4aa;--zone-cnv-t70: #9c8c7e;font-family:Noto Sans,Noto Sans Devanagari,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;color-scheme:light;accent-color:var(--ink);caret-color:var(--ink)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;height:auto}body{font-size:14px;line-height:20px;overflow:auto;background:var(--paper);color:var(--ink);font-family:Noto Sans,Noto Sans Devanagari,sans-serif}button,input,textarea,select{font:inherit;color:inherit;border-radius:0}button{cursor:pointer;background:none;border:0;padding:0}button:disabled{cursor:not-allowed;opacity:.4}input,textarea,select{background:var(--paper);border:2px solid var(--ink);padding:12px 14px;min-width:0;width:100%;min-height:48px}input::placeholder{color:var(--quiet);opacity:1}textarea{resize:vertical}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Anek Latin,sans-serif;font-weight:700}h1{font-size:32px;line-height:38px;letter-spacing:-.02em}h2{font-size:22px;line-height:26px}h3{font-size:17px;line-height:22px}p,small{color:var(--quiet)}small{font-size:12px;line-height:18px}a{color:inherit;text-underline-offset:4px}svg{flex-shrink:0}button,input,select,textarea,a{touch-action:manipulation}:where(button,input,select,textarea,a):focus-visible{outline:2px dashed var(--ink);outline-offset:4px}::selection{background:var(--ink);color:var(--paper)}.wordmark{display:inline-flex;align-items:flex-start;font-family:Anek Latin,sans-serif;font-size:26px;font-weight:800;line-height:26px;letter-spacing:-.035em;color:var(--ink)}.wordmark>span:first-child{margin-right:.22px}.wordmark-i{position:relative;flex-shrink:0;width:6.17px;letter-spacing:0}.wordmark-i svg{position:absolute;left:.65px;top:3.14px}.eyebrow{text-transform:uppercase;letter-spacing:.1em;font-weight:600;font-size:11px;line-height:16px;color:var(--quiet)}.record-code{font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--quiet);font-variant-numeric:tabular-nums}.m-button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;padding:14px 18px;position:relative;font-size:16px;font-weight:600;line-height:22px;border:2px solid var(--ink);text-decoration:none;flex-shrink:0}.m-button.primary{background:var(--ink);color:var(--paper)}.m-button.primary:after,.m-button.secondary:after{content:"";pointer-events:none;position:absolute;inset:4px;border:2px dashed currentColor;opacity:.28}.m-button.secondary{background:var(--paper);color:var(--ink)}.m-button.plain{border:0;min-height:44px;padding:8px 0;font-size:14px}.button-tail{display:flex;align-items:center;gap:7px}.m-button:hover{transform:translate(-1px,-1px)}.m-button:active{transform:translate(2px,2px)}.m-button:disabled:after{border-style:dashed}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;flex:1}.field>.eyebrow{font-size:12px}.check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px}.check input{appearance:none;width:20px;height:20px;min-height:20px;flex-shrink:0;padding:0;position:relative}.check input:checked{background:var(--ink)}.check input:checked:after{content:"✓";color:var(--paper);position:absolute;inset:-2px;text-align:center}.language{display:flex;align-items:center}.language button{border:2px solid var(--ink);padding:5px 11px;min-height:32px;font-size:12px;font-weight:700;line-height:17px}.language button+button{margin-left:-2px}.language button.active{background:var(--ink);color:var(--paper)}.zone{display:inline-flex;gap:8px;align-items:center;font-size:13px;line-height:18px;color:var(--quiet);white-space:nowrap}.zone i{width:10px;height:10px;flex-shrink:0}.notice{border-top:2px solid var(--soft);border-bottom:2px solid var(--soft);padding:14px 0;color:var(--quiet);line-height:22px;margin:16px 0}.row{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.spread{display:flex;justify-content:space-between;gap:16px;align-items:center}.spread button{display:flex;align-items:center;gap:6px;min-height:44px}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-columns.three{grid-template-columns:repeat(3,1fr)}.icon-button{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.visitor{width:390px;max-width:100%;margin:0 auto;min-height:100dvh;background:var(--paper);position:relative;display:flex;flex-direction:column}.visitor-header{display:flex;justify-content:space-between;align-items:center;padding:20px 22px 0;min-height:52px}.visitor-body{display:flex;flex-direction:column;gap:14px;padding:0 22px;flex:1}.visitor h1{font-size:42px;line-height:50px;letter-spacing:-.03em}.visitor h2{font-size:24px;line-height:28px}.visitor p{font-size:14px;line-height:20px}.visitor-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:78px;min-height:126px}.visitor-hero>div{width:220px;display:flex;flex-direction:column;gap:6px}.visitor-hero p{max-width:200px}.visitor-hero img{object-fit:contain;width:92px;height:126px;mix-blend-mode:multiply}.visitor-search{position:relative;display:flex;align-items:center;gap:12px;height:54px;border:2px solid var(--ink);padding:0 14px}.visitor-search:after{content:"";position:absolute;left:12px;right:12px;bottom:6px;border-bottom:2px dashed var(--ink);opacity:.3;pointer-events:none}.visitor-search input{border:0;padding:0;min-height:44px;flex:1;font-size:16px;line-height:22px;background:transparent}.visitor-search input:focus{outline:none}.visitor-search:focus-within{outline:2px dashed var(--ink);outline-offset:4px}.visitor-search button{min-width:28px;min-height:44px}.visitor-block-label{margin-top:14px}.visitor-blocks{display:flex;flex-wrap:wrap;gap:16px 12px}.visitor-blocks button{width:calc((100% - 24px) / 3);min-height:120px;text-align:left}.visitor-blocks button>svg{border-bottom:2px solid var(--ink);width:100%;height:76px}.visitor-blocks h3{margin:8px 0;display:flex;justify-content:space-between;align-items:center;gap:4px}.visitor-footer{padding:32px 22px 20px;font-size:11px;line-height:16px;color:var(--quiet);margin-top:30px}.visitor-footer details{margin:12px 0}.visitor-footer summary{cursor:pointer}.visitor-footer details p{font-size:12px;margin-top:10px}.here-card{border-left:6px solid var(--ink);padding-left:16px;margin-top:32px;display:flex;flex-direction:column;gap:4px}.here-card+.visitor-hero{margin-top:52px}.search-body{padding-top:32px}.search-body>.eyebrow{margin-top:12px}.search-result{display:flex;width:100%;align-items:center;justify-content:space-between;text-align:left;border-bottom:2px solid var(--soft);padding:14px 0;gap:16px;min-height:68px}.search-result:hover{background:#2b2a2908}.search-result p{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px}.search-help{display:flex;align-items:center;gap:22px;margin-top:40px}.search-help img{object-fit:contain;mix-blend-mode:multiply}.search-help p{font-size:12px}.route-body{padding-top:20px;gap:12px}.location{display:flex;align-items:center;gap:10px}.route-thread{display:flex;flex-direction:column;gap:0;margin-top:14px}.route-general{margin:0 0 14px;padding:10px 12px;border-left:2px solid var(--ink, #2b2a29);font-size:14px;color:var(--quiet, #5b666c)}.route-step{position:relative;display:flex;gap:18px;padding:0 0 30px 2px}.route-step:after{content:"";position:absolute;top:18px;bottom:4px;left:9px;border-left:2px dashed var(--ink);opacity:.7}.route-step:last-child:after{display:none}.route-step h2{font-size:20px;line-height:26px}.route-step p{margin-top:5px;font-size:12px;line-height:18px}.route-square{width:16px;height:16px;background:var(--ink);flex-shrink:0;margin-top:4px}.route-ring{width:14px;height:14px;border:2px solid var(--ink);border-radius:50%;flex-shrink:0;margin:5px 1px 0}.visitor-actions{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:24px}.arrived-body{padding-top:50px}.arrived-body>img{align-self:flex-end;mix-blend-mode:multiply;object-fit:contain}.visitor-plate{border:2px solid var(--ink);border-left-width:6px;padding:22px;margin:20px 0;display:flex;flex-direction:column;gap:12px}.person-row{display:flex;align-items:center;gap:18px;border-bottom:2px solid var(--soft);padding:18px 0}.unknown-body{padding-top:40px}.unknown-body>img{align-self:flex-end;object-fit:contain;mix-blend-mode:multiply}.unknown-body h1,.offline-body h1{font-size:36px;line-height:42px}.offline-body{padding-top:100px}.scan-video{width:100%;max-height:320px;background:var(--ink)}[lang=hi] h1,[lang=hi] h2,[lang=hi] h3{font-family:Anek Devanagari,Anek Latin,sans-serif;letter-spacing:0}[lang=hi]{font-family:Noto Sans Devanagari,Noto Sans,sans-serif}.loading,.login{display:flex;flex-direction:column;gap:24px;max-width:480px;margin:100px auto;padding:32px}.admin-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100dvh;font-size:13px}.admin-sidebar{border-right:2px solid var(--ink);padding:28px 16px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100dvh}.brand-link{text-decoration:none;padding:0 4px}.brand-link .wordmark{font-size:28px;line-height:28px;height:28px}.brand-link p{font-size:13px;margin-top:8px}.admin-sidebar nav{margin-top:24px;display:flex;flex-direction:column;gap:2px}.admin-sidebar nav button{display:flex;align-items:center;gap:14px;min-height:41px;padding:10px 12px;font-size:15px;text-align:left}.admin-sidebar nav button.active{background:var(--ink);color:var(--paper)}.admin-sidebar nav button.group-start{border-top:2px solid var(--soft);margin-top:12px;padding-top:16px;min-height:55px}.admin-user{display:flex;align-items:center;gap:10px;border-top:2px solid var(--soft);padding-top:16px;margin-top:auto}.admin-user>div{flex:1}.admin-user small{display:block}.user-initial{border:2px solid var(--ink);width:30px;height:30px;display:grid;place-items:center;font-weight:700}.admin-main{min-width:0}.admin-header{display:flex;gap:16px;align-items:center;justify-content:space-between;height:64px;padding:0 36px;border-bottom:2px solid var(--soft)}.admin-header>p{flex:1;font-size:14px}.master-search{position:relative;display:flex;align-items:center;gap:12px;border:2px solid var(--ink);padding:0 14px;width:280px;height:54px}.master-search:after{content:"";position:absolute;left:12px;right:12px;bottom:6px;border-bottom:2px dashed var(--ink);opacity:.3;pointer-events:none}.master-search input{border:0;padding:0;min-height:44px;font-size:16px}.master-results{position:absolute;top:54px;left:-2px;right:-2px;border:2px solid var(--ink);background:var(--paper);z-index:5}.master-results button{display:block;padding:14px;width:100%;text-align:left;border-bottom:2px solid var(--soft)}.toast{position:fixed;bottom:24px;right:24px;padding:16px 24px;background:var(--ink);color:var(--paper);border:2px solid var(--paper);z-index:20;max-width:min(540px,90vw)}.toast.error{background:var(--paper);color:var(--ink);border-color:var(--ink)}.toast button{margin-left:20px;font-size:24px}.overview{padding:32px 36px}.overview>h1{font-size:38px;line-height:44px}.overview>p{margin-top:8px;font-size:15px;line-height:22px}.metric-strip{display:grid;grid-template-columns:repeat(5,1fr);border:2px solid var(--ink);margin:28px 0 36px}.metric-strip>div{padding:20px 24px;display:flex;flex-direction:column;gap:8px;border-right:2px solid var(--soft)}.metric-strip>div:last-child{border:0}.metric-strip strong{font-family:Anek Latin,sans-serif;font-size:40px;font-weight:700;line-height:44px;font-variant-numeric:tabular-nums}.metric-strip p{font-size:12px;line-height:18px}.overview-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:40px}.building-stacks{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:24px;align-items:end}.building-stacks h2{margin-bottom:18px}.overview-stack{display:flex;flex-direction:column;gap:8px;border-bottom:2px solid var(--ink);padding-bottom:8px}.overview-stack button{border:2px solid var(--ink);display:flex;align-items:center;gap:10px;height:52px;padding:10px 12px;position:relative;text-align:left}.overview-stack strong{width:26px;font-family:Anek Latin,sans-serif;font-size:18px}.overview-stack small{font-variant-numeric:tabular-nums;width:54px;flex-shrink:0}.stack-fill{height:20px;flex:1;border:2px solid var(--soft)}.stack-fill i{display:block;height:100%;background:var(--ink)}.attention-row{padding:18px 0;border-bottom:2px solid var(--soft)}.attention-row h2{font-size:20px;line-height:24px}.attention-row p{margin:6px 0 14px;font-size:13px}.attention-row .m-button{font-size:14px;min-height:44px;width:100%;padding:10px 16px}.plan-toolbar{display:flex;align-items:center;gap:24px;padding:14px 36px;border-bottom:2px solid var(--soft);min-height:84px}.plan-toolbar>.m-button{font-size:14px}.plan-toolbar>span{margin-left:auto;font-size:12px;font-weight:600}.plan-grid{display:grid;grid-template-columns:320px minmax(0,1fr) 300px;min-height:calc(100dvh - 148px)}.pending{border-right:2px solid var(--soft)}.panel-heading{padding:24px 16px 12px;display:flex;flex-direction:column;gap:8px}.panel-heading h2{font-size:22px}.panel-heading p{font-size:12px}.panel-heading input{font-size:13px}.pending-row{display:flex;align-items:center;gap:14px;text-align:left;border-bottom:2px solid var(--soft);padding:16px;width:100%;min-height:72px}.pending-row>div{flex:1}.pending-row h3{font-size:16px;line-height:20px}.pending-row p{font-size:12px}.pending-row.selected{border-left:6px solid var(--ink);background:#2b2a2908}.pending-row .record-code{width:44px;flex-shrink:0}.plan-center{padding:20px 28px}.block-tabs{display:flex;gap:8px;margin-bottom:22px}.block-tabs button{border:2px solid var(--soft);padding:14px 18px;text-align:left;min-width:110px;flex:1}.block-tabs .active{border-color:var(--ink)}.block-tabs h3{font-size:16px}.block-tabs p{font-size:12px}.plan-floor-grid{display:grid;grid-template-columns:190px minmax(0,1fr);gap:34px}.floor-stack{margin-top:12px;border-bottom:2px solid var(--ink)}.floor-stack button{display:flex;align-items:center;gap:16px;border-bottom:2px solid var(--soft);width:100%;height:50px;text-align:left;padding:12px 20px}.floor-stack strong{font-family:Anek Latin;font-size:18px;width:22px}.floor-stack span{font-variant-numeric:tabular-nums;color:var(--quiet);font-size:12px}.floor-stack small{font-size:10px}.floor-stack .active{border-left:6px solid var(--ink);padding-left:14px;background:#2b2a2908;position:relative}.floor-stack .active:after{content:"";position:absolute;left:16px;right:12px;bottom:6px;border-bottom:2px dashed var(--ink);opacity:.3}.floor-title{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:16px}.floor-title h1{font-size:26px;line-height:32px}.floor-title p{font-size:12px;margin-top:4px}.floor-image{border:2px solid var(--ink);height:360px;position:relative;overflow:hidden;background:#2b2a2905}.image-tools{position:absolute;top:10px;left:10px;display:flex;gap:4px;z-index:2;align-items:center}.image-tools button,.image-tools span{border:2px solid var(--ink);background:var(--paper);padding:6px 10px;font-size:12px;min-height:34px}.image-tools span{margin-left:8px}.image-stage{height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none}.image-transform{position:relative;width:100%;height:100%;transform-origin:center}.image-transform>img{width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.map-pin{position:absolute;width:14px;height:14px;border:2px solid var(--ink);background:var(--paper);transform:translate(-50%,-50%)}.placed-label{display:block;margin:18px 0 8px}.placed-row{display:grid;grid-template-columns:minmax(120px,1fr) 44px 130px 24px;gap:16px;align-items:center;border-bottom:2px solid var(--soft);min-height:48px;padding:12px 20px}.placed-row>span:first-child{font-weight:500}.placed-row small{text-align:right}.floor-summary{border-left:2px solid var(--soft);padding:26px 24px;display:flex;flex-direction:column;gap:18px}.floor-summary h1{font-size:28px;line-height:34px}.floor-summary p{display:flex;align-items:center;gap:12px;font-size:13px}.capacity-bar{height:16px;border:2px solid var(--ink)}.capacity-bar i{display:block;height:100%;background:var(--ink)}.floor-summary>.m-button{margin-top:auto;font-size:14px}.departments-grid{display:grid;grid-template-columns:360px minmax(0,1fr) 300px;min-height:calc(100dvh - 64px)}.department-list{border-right:2px solid var(--soft);max-height:calc(100dvh - 64px);overflow-y:auto}.department-list .panel-heading{padding:24px}.department-list .check{font-size:12px}.department-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:2px solid var(--soft);width:100%;min-height:76px;text-align:left;padding:14px 24px}.department-row.active{border-left:6px solid var(--ink);padding-left:18px;background:#2b2a2908}.department-row h3{font-size:17px;line-height:22px}.department-row .zone{font-size:12px}.department-row small{display:block}.department-detail{padding:28px 36px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}.section-title h1{font-size:32px;line-height:38px}.tabs{display:flex;gap:26px;border-bottom:2px solid var(--soft);margin-bottom:24px}.tabs button{font-size:15px;padding:10px 2px;min-height:44px;margin-bottom:-2px}.tabs button.active{border-bottom:2px solid var(--ink);font-weight:600}.form-body{display:flex;flex-direction:column;gap:14px}.form-body .field{margin-bottom:0}.form-body>.m-button{align-self:flex-end;min-width:220px}.visitor-preview{border-left:2px solid var(--soft);padding:34px 24px;display:flex;flex-direction:column;gap:16px}.registry-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;min-height:calc(100dvh - 64px)}.registry-list{padding:32px 36px}.registry-list>p{margin:16px 0}.registry-editor{border-left:2px solid var(--soft);padding:30px 24px}.registry-editor h2{margin-bottom:20px}.registry-editor form{display:flex;flex-direction:column;gap:14px}.registry-editor .field{margin:0}.registry-editor .floor-image{height:240px}.registry-editor .image-tools span{display:none}.registry-editor details{margin:20px 0}.seats-grid{display:grid;grid-template-columns:240px minmax(0,1fr) 340px;min-height:calc(100dvh - 64px)}.floor-nav{padding:28px 24px;border-right:2px solid var(--soft)}.floor-nav h3{margin:16px 0}.floor-nav button{display:flex;align-items:center;gap:20px;width:100%;text-align:left;padding:12px 16px;min-height:48px;border-bottom:2px solid var(--soft)}.floor-nav button.active{border-left:6px solid var(--ink);padding-left:10px;background:#2b2a2908}.floor-nav strong{width:24px}.seat-center,.place-detail{padding:32px 36px}.seat-center>p{margin:10px 0 24px}.seat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px;margin:24px 0}.seat-grid button{border:2px solid var(--ink);min-height:74px;padding:8px;display:flex;flex-direction:column;gap:5px;text-align:left;font-size:11px}.seat-grid button.occupied{background:var(--ink);color:var(--paper)}.seat-grid button.occupied small{color:var(--paper)}.place-detail>form{margin-bottom:36px}.place-detail details{margin-top:30px}.wide-section,.reports{padding:32px 36px}.wide-section>h1{font-size:38px;line-height:44px;margin:8px 0 16px}.wide-section>p{margin-bottom:24px}.wide-section>.row{align-items:flex-end}.wide-section>.row .field{max-width:380px;margin:0}.wide-section>table{margin:24px 0}.import-steps{display:flex;gap:48px;margin:32px 0}.import-steps span{display:flex;align-items:center;gap:14px}.import-steps b{border:2px solid var(--ink);width:32px;height:32px;display:grid;place-items:center}.report-block{margin:32px 0}.report-block h2{font-size:28px;margin-bottom:10px}.report-block p{margin-bottom:16px}table{width:100%;border-collapse:collapse;font-size:13px}th{text-transform:uppercase;letter-spacing:.08em;font-weight:600;font-size:11px;color:var(--quiet);text-align:left;border-bottom:2px solid var(--ink);padding:14px 16px}td{padding:16px;border-bottom:2px solid var(--soft);text-align:left;vertical-align:top;font-variant-numeric:tabular-nums}td small{display:block;margin-top:4px}td button:not(.m-button){font-weight:500;text-align:left;text-decoration:underline;text-underline-offset:4px}td .m-button{font-size:12px;padding:4px;min-height:32px}td pre{max-width:340px;max-height:300px;overflow:auto;font-size:11px;white-space:pre-wrap}details>summary{cursor:pointer;min-height:44px;padding:12px 0}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--soft);border:2px solid var(--paper)}@media(min-width:1900px){.admin-main{max-width:1660px}.plan-grid{grid-template-columns:320px minmax(0,840px) 300px}}@media(max-width:1400px){.plan-grid{grid-template-columns:260px minmax(0,1fr)}.floor-summary{display:none}.plan-floor-grid{grid-template-columns:140px minmax(0,1fr);gap:20px}.plan-center{padding:20px}.departments-grid{grid-template-columns:300px minmax(0,1fr)}.visitor-preview{display:none}.overview-grid{grid-template-columns:1fr 300px;gap:24px}.building-stacks{gap:14px}.overview-stack button{padding:8px}.stack-fill{display:none}.metric-strip>div{padding:18px 16px}.metric-strip strong{font-size:32px}.seats-grid{grid-template-columns:170px minmax(0,1fr) 300px}.registry-grid{grid-template-columns:minmax(0,1fr) 340px}.block-tabs button{min-width:80px;padding:12px}}@media(max-width:1100px){.admin-shell{grid-template-columns:200px minmax(0,1fr)}.admin-sidebar{padding-inline:12px}.admin-header{padding-inline:20px}.overview-grid{grid-template-columns:1fr}.plan-grid{grid-template-columns:220px minmax(0,1fr)}.plan-floor-grid{grid-template-columns:1fr}.floor-stack{display:flex;overflow:auto;flex-direction:row}.floor-stack button{min-width:100px}.plan-toolbar{gap:16px;padding:14px 20px;flex-wrap:wrap}.plan-toolbar>span{width:100%}.metric-strip{grid-template-columns:repeat(3,1fr)}.metric-strip>div{border-bottom:2px solid var(--soft)}.registry-grid{grid-template-columns:1fr}.registry-editor{border-left:0;border-top:2px solid var(--ink)}.seats-grid{grid-template-columns:140px minmax(0,1fr)}.seats-grid>.registry-editor{grid-column:1/-1}.placed-row{grid-template-columns:minmax(100px,1fr) 44px 100px 24px;gap:8px;padding:12px 0}.placed-row small{font-size:11px}.departments-grid{grid-template-columns:260px minmax(0,1fr)}.department-detail{padding:24px}.tabs{gap:16px}.tabs button{font-size:12px}}@media(max-width:800px){.admin-shell{display:block}.admin-sidebar{position:relative;width:100%;height:auto;border-right:0;border-bottom:2px solid var(--ink);padding:16px}.admin-sidebar nav{display:flex;flex-direction:row;overflow:auto;margin-top:16px}.admin-sidebar nav button{flex-shrink:0;font-size:13px}.admin-sidebar nav button.group-start{border:0;margin:0;padding-top:10px;min-height:41px}.admin-user{display:none}.admin-header{padding:8px 16px;height:auto;flex-wrap:wrap}.admin-header>p{width:100%;flex:auto}.master-search{width:calc(100% - 96px)}.overview,.wide-section,.reports{padding:24px 16px}.metric-strip{grid-template-columns:repeat(2,1fr)}.building-stacks{grid-template-columns:repeat(2,1fr);gap:32px}.plan-grid{grid-template-columns:1fr}.pending{border-right:0;max-height:320px;overflow:auto;border-bottom:2px solid var(--ink)}.plan-toolbar .m-button{min-height:44px;font-size:12px;padding:8px}.plan-center{padding:20px 16px}.block-tabs{overflow:auto}.block-tabs button{min-width:100px}.departments-grid{display:block}.department-list{max-height:340px;overflow:auto;border-right:0;border-bottom:2px solid var(--ink)}.department-detail{padding:24px 16px}.form-columns{gap:14px}.section-title{align-items:flex-start;flex-wrap:wrap}.registry-list,.seat-center,.place-detail{padding:24px 16px;overflow-x:auto}.seats-grid{display:block}.floor-nav{display:flex;overflow:auto;gap:12px;max-height:250px;padding:16px}.floor-nav>button{min-width:110px}.floor-nav>div{min-width:130px}.registry-editor{padding:24px 16px}.import-steps{gap:16px;flex-wrap:wrap}.floor-image{height:300px}table{min-width:620px}.wide-section,.reports{overflow-x:auto}.visitor table{min-width:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.m-button:hover,.m-button:active{transform:none}}@media(forced-colors:active){.zone i,.route-square,.capacity-bar i,.stack-fill i{background:CanvasText}.m-button{border:2px solid ButtonText}.map-pin{border-color:CanvasText;background:Canvas}}@page{size:A3 landscape;margin:16mm}@media print{body{font-size:10px}.admin-sidebar,.admin-header,.toast,.print-sheet>.section-title>.row{display:none!important}.admin-shell{display:block}.reports{padding:0}.report-block{break-inside:avoid;margin:16px 0}table{font-size:10px;min-width:0}td,th{padding:6px 10px}h1{font-size:28px}.report-block h2{font-size:20px}.print-sheet{color:#2b2a29;background:#fefefe}}.image-transform{flex-shrink:0;max-width:none}.image-transform>img{width:100%;height:100%;object-fit:fill}.map-pin{padding:0;min-width:14px;min-height:14px;z-index:1}.department-pin{width:auto;height:auto;max-width:170px;padding:6px 10px;font-size:11px;background:var(--paper);cursor:grab}.map-pin.occupied{background:var(--ink);color:var(--paper)}.plan-image-notice{position:absolute;bottom:8px;left:8px;right:8px;z-index:3;background:var(--paper);padding:10px;border:2px solid var(--ink);font-size:12px}.sound-control{display:flex;align-items:center;margin-left:auto}.visitor-header{flex-wrap:nowrap}.sound-control>button{width:44px;height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center}.sound-caption{position:fixed;left:12px;right:12px;bottom:12px;z-index:50;display:flex;gap:12px;align-items:flex-start;padding:14px 16px;background:var(--paper, #fefefe);color:var(--ink, #2b2a29);border:2px solid var(--ink, #2b2a29);max-width:480px;margin-inline:auto}.sound-caption svg{flex-shrink:0;margin-top:4px}.sound-caption p{margin:2px 0 0;font-size:15px;line-height:21px;font-weight:500}.sound-control button,.step-voice button{border:2px solid var(--ink, #2b2a29);padding:6px 10px;background:transparent;color:inherit;font:inherit;cursor:pointer}.sound-control button[aria-pressed=true]{background:#2b2a29;color:#fefefe}.sound-control small,.step-voice small{display:block}.step-voice{margin-block:16px}.step-voice p{margin-bottom:8px}.visitor-header{flex-wrap:nowrap;gap:12px}.skip-link{position:fixed;top:8px;left:8px;z-index:100;padding:12px 16px;background:var(--ink);color:var(--paper);transform:translateY(-160%)}.skip-link:focus{transform:none}.visitor .language button,.visitor .sound-control button,.visitor .step-voice button,.visitor .visitor-search button{min-height:44px;min-width:44px}.visitor .visitor-blocks button>svg,.visitor .visitor-blocks h3>svg,.visitor .result-row>svg,.admin-shell .m-button .button-tail>svg:last-child,.visitor .m-button .button-tail>svg:last-child{transition:transform .18s cubic-bezier(.2,.8,.2,1)}.visitor .visitor-blocks button:is(:hover,:focus-visible)>svg{transform:translateY(-3px)}.visitor .visitor-blocks button:is(:hover,:focus-visible) h3>svg,.visitor .m-button:is(:hover,:focus-visible) .button-tail>svg:last-child,.admin-shell .m-button:is(:hover,:focus-visible) .button-tail>svg:last-child{transform:translate(3px)}.visitor .visitor-blocks button:active>svg{transform:translateY(1px)}.visitor .route-step[aria-current=step] .route-ring{box-shadow:0 0 0 4px var(--paper),0 0 0 6px var(--ink);transition:box-shadow .18s ease-out}.visitor .route-step[aria-current=step] h2{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}.visitor .route-step[aria-current=step]:before{content:"";position:absolute;inset:-8px -8px 18px 28px;background:var(--ink);opacity:.035;pointer-events:none}.visitor .visitor-body{animation:directory-open .22s cubic-bezier(.2,.8,.2,1) both}@keyframes directory-open{0%{opacity:.7;transform:translateY(6px)}to{opacity:1;transform:none}}.visitor[lang=hi] h1,.visitor[lang=hi] h2,.visitor[lang=hi] h3{letter-spacing:0}.visitor[lang=hi] .route-body>h1{padding-top:4px;line-height:1.35}.visitor .visitor-plate h2{font-size:32px;line-height:38px}@media(prefers-reduced-motion:reduce){.visitor .visitor-body{animation:none}.visitor .visitor-blocks button>svg,.visitor .visitor-blocks h3>svg,.visitor .m-button .button-tail>svg:last-child,.admin-shell .m-button .button-tail>svg:last-child{transition:none;transform:none!important}}@media(forced-colors:active){.visitor .route-step[aria-current=step] .route-ring{outline:2px solid Highlight;outline-offset:3px;box-shadow:none}}.seat-roster{padding-bottom:24px;border-bottom:2px solid var(--ink);margin-bottom:24px}.seat-roster p{margin:12px 0}.seat-roster button{display:block;min-height:44px;width:100%;text-align:left;padding:10px 12px;border-bottom:2px solid var(--rule)}.seat-roster button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.visitor-footer .maker-note{padding-top:12px}.wordmark{width:auto;height:26px;object-fit:contain}.password-sign-in{display:grid;gap:16px;width:min(360px,100%)}.password-sign-in label{display:grid;gap:6px;font:600 13px/18px Noto Sans,sans-serif}.password-sign-in input{border:2px solid #2b2a29;border-radius:0;background:#fefefe;color:#2b2a29;padding:12px 14px;font:400 16px/22px Noto Sans,sans-serif}.password-sign-in input:focus-visible{outline:2px solid #2b2a29;outline-offset:2px}.visitor-footer{margin-top:auto;padding:24px 22px 20px}.footer-rows{border-top:2px dashed rgba(43,42,41,.3)}.footer-row{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;padding:0;border:0;border-bottom:2px solid rgba(43,42,41,.14);background:transparent;color:var(--ink, #2b2a29);font:500 14px/20px Noto Sans,Noto Sans Devanagari,sans-serif;cursor:pointer;text-align:left}.footer-cap{display:inline-flex;align-items:center;gap:8px}.footer-base{display:flex;justify-content:space-between;align-items:center;min-height:44px;font-size:12px;line-height:17px;color:var(--quiet)}.footer-base a{color:inherit;border-bottom:2px solid rgba(43,42,41,.3);text-decoration:none}.info-sheet-scrim{position:fixed;inset:0;z-index:60;background:#2b2a2973;display:flex;align-items:flex-end;justify-content:center}.info-sheet{width:100%;max-width:480px;box-sizing:border-box;background:var(--paper, #fefefe);border-top:2px solid var(--ink, #2b2a29);padding:22px 22px 28px;display:flex;flex-direction:column;gap:14px}.info-sheet-top{display:flex;align-items:center;justify-content:space-between}.info-sheet h2{margin:0;font:700 26px/32px Anek Latin,Anek Devanagari,sans-serif}.info-sheet p{margin:0;font-size:15px;line-height:22px}.info-sheet small{color:var(--quiet);font-size:12px;line-height:17px}@media(prefers-reduced-motion:no-preference){.info-sheet{animation:sheet-up .18s cubic-bezier(.2,.8,.2,1)}@keyframes sheet-up{0%{transform:translateY(24px);opacity:0}}}.person-found .system-canvas{height:260px;border:2px solid var(--ink);flex:none}.person-found .canvas-stage{height:100%;min-height:0}.person-found .canvas-tools{display:none}.found-name{border-left:6px solid var(--floor-colour);padding-left:14px}.found-name h1{font-size:28px;line-height:33px;margin:0}.found-name p{font-size:14px;color:var(--quiet);margin:4px 0 0}.found-seat{border:2px solid var(--ink);padding:10px 12px;display:flex;gap:10px;align-items:center}.found-seat div{display:flex;flex-direction:column;gap:1px}.found-plate{margin:0;animation:found-plate-in .42s cubic-bezier(.19,1,.22,1) both}.found-plate svg{display:block;width:100%;height:auto;filter:drop-shadow(0 6px 14px rgba(43,42,41,.14))}.found-plate+.found-name{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@keyframes found-plate-in{0%{opacity:0;transform:translateY(8px) scale(.98)}}.visitor{transition:background-color .36s cubic-bezier(.19,1,.22,1)}.visitor.zoned{background:var(--tint)}.visitor.zoned .found-seat,.visitor.zoned .person-found .system-canvas{background:var(--paper)}@media(prefers-reduced-motion:reduce){.found-plate{animation:none}.visitor{transition:none}}.person-found:has(.found-plate) .found-seat{display:none}
