#access-planner *{box-sizing:border-box}#access-planner{margin:0;font:14px/1.5 planner-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}#access-planner button,#access-planner input,#access-planner select,#access-planner textarea{font:inherit}#access-planner button,#access-planner a,#access-planner input,#access-planner select,#access-planner textarea{-webkit-tap-highlight-color:transparent}#access-planner input[list]::-webkit-calendar-picker-indicator{display:none!important}#access-planner button{cursor:pointer}#access-planner button:disabled{cursor:default}#access-planner button:focus-visible,#access-planner a:focus-visible,#access-planner input:focus-visible,#access-planner select:focus-visible,#access-planner textarea:focus-visible,#access-planner [tabindex]:focus-visible{outline:3px solid var(--ap-line);outline-offset:3px}#access-planner h1,#access-planner h2,#access-planner h3,#access-planner p{margin:0}#access-planner h1{font-size:34px;line-height:1.2;letter-spacing:-1.2px;font-weight:650}#access-planner h2{font-size:24px;letter-spacing:-.6px}#access-planner h3{font-size:16px;font-weight:650}#access-planner .local-status{display:flex;align-items:center;gap:7px}#access-planner .local-status:before{content:"";height:6px;width:6px;border-radius:50%}#access-planner .project-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}#access-planner .eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px;margin-bottom:8px}#access-planner .title-row{display:flex;gap:13px;align-items:center;margin-bottom:9px}#access-planner .draft-badge{font-size:11px;font-weight:600;border:1px solid var(--ap-line);padding:3px 10px;border-radius:20px}#access-planner .project-heading p{font-size:14px}#access-planner .heading-actions{display:flex;gap:10px}#access-planner .button{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border:1px solid var(--ap-line);border-radius:7px;padding:11px 15px;font-size:12px;font-weight:600;min-height:42px;transition:background .12s,box-shadow .12s}#access-planner .button.primary{box-shadow:0 3px 5px var(--ap-shadow)}#access-planner .button.small{font-size:12px;padding:8px 12px;min-height:37px}#access-planner .button.full{width:100%}#access-planner .icon-button{border:0;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px}#access-planner .text-button{border:0;font-size:12px;padding:6px 0;white-space:nowrap}#access-planner .text-button:hover:not(:disabled){text-decoration:underline}#access-planner .overview{display:flex;align-items:center;border:1px solid var(--ap-line);border-radius:10px;padding:20px 26px;margin-bottom:26px;box-shadow:0 2px 2px var(--ap-shadow)}#access-planner .overview-item{display:flex;align-items:center;gap:13px;flex:1;min-width:130px;border-right:1px solid var(--ap-line);margin-right:23px}#access-planner .overview-item:nth-child(4){border:0}#access-planner .summary-icon{display:grid;place-items:center;border-radius:9px;width:38px;height:38px;font-size:17px}#access-planner .overview-item strong{display:block;font-size:24px;font-weight:600;letter-spacing:-.6px;line-height:1.2}#access-planner .overview-item div>span{font-size:11px}#access-planner .overview-note{border:0;border-radius:7px;display:flex;gap:10px;align-items:center;padding:12px;font-size:11px}#access-planner .workspace-nav{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ap-line);margin-bottom:22px}#access-planner .tabs{display:flex;gap:8px;align-items:stretch}#access-planner .tabs button{border:0;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px;line-height:24px;border-radius:8px 8px 0 0;font-weight:600;font-size:13px;position:relative}#access-planner .tabs button[aria-selected=true]{font-weight:600}#access-planner .tabs button[aria-selected=true]:after{content:"";position:absolute;height:3px;bottom:0;left:12px;right:12px;border-radius:2px}#access-planner .tabs button span{display:inline-block;font-size:10px;border-radius:5px;padding:0 5px;margin-left:5px}#access-planner .editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:22px;align-items:start}#access-planner .editor{border:1px solid var(--ap-line);border-radius:10px;min-width:0;overflow:hidden;box-shadow:0 2px 4px var(--ap-shadow)}#access-planner .editor-toolbar{padding:17px 20px;display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--ap-line)}#access-planner .filters,#access-planner .toolbar-actions{display:flex;align-items:center;gap:10px}#access-planner .search-field{display:flex;align-items:center;gap:8px}#access-planner .search-field input{border:0;width:145px;outline-offset:5px;font-size:12px;padding:8px 0}#access-planner .filters select{border:1px solid var(--ap-line);border-radius:6px;padding:8px;font-size:11px;max-width:170px}#access-planner .matrix-intro{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;font-size:10px;gap:10px}#access-planner .matrix-intro p{display:flex;gap:7px;align-items:center}#access-planner .legend-x{display:inline-grid;place-items:center;font-size:10px;font-weight:800;border:1px solid var(--ap-line);width:19px;height:19px;border-radius:4px}#access-planner .matrix-scroll{max-height:580px;overflow:auto;scrollbar-width:thin;box-shadow:inset -12px 0 12px -13px var(--ap-shadow),inset 0 -12px 12px -13px var(--ap-shadow);scroll-padding-left:221px}#access-planner .matrix{border-collapse:separate;border-spacing:0;width:100%;font-size:12px;table-layout:fixed}#access-planner .matrix th,#access-planner .matrix td{border-bottom:1px solid var(--ap-line);border-right:1px solid var(--ap-line);padding:0;text-align:center}#access-planner .matrix th:first-child{position:sticky;left:0;z-index:3;width:219px;text-align:left;border-right:1px solid var(--ap-line)}#access-planner .matrix thead{position:sticky;top:0;z-index:4}#access-planner .matrix .area-row th{height:32px;font-size:9px;letter-spacing:1px;text-transform:uppercase;font-weight:600}#access-planner .matrix .area-row th:first-child{padding-left:19px;letter-spacing:.7px}#access-planner .matrix .door-row th{height:114px;vertical-align:bottom;padding:0 4px 11px}#access-planner .matrix .door-row th:first-child{padding:12px 19px;text-align:left;vertical-align:bottom}#access-planner .door-heading{border:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;width:100%;height:100%;padding:10px 2px 0;font-weight:500;line-height:1.3;font-size:11px}#access-planner .door-heading code{font-size:9px}#access-planner .door-heading .lk-icon{font-size:14px}#access-planner .door-heading:hover{border-radius:5px}#access-planner .matrix tbody th{font-weight:400}#access-planner .matrix tbody td{height:61px}#access-planner .matrix .key-row.selected th{border-left:3px solid var(--ap-line)}#access-planner .key-label{border:0;width:100%;display:flex;align-items:center;gap:11px;text-align:left;padding:12px 16px}#access-planner .key-avatar{height:32px;width:32px;display:grid;place-items:center;border-radius:7px;flex-shrink:0;font-size:14px}#access-planner .key-name{display:block;font-size:12px;font-weight:600}#access-planner .key-meta{font-size:10px;display:block;margin-top:1px}#access-planner .access-cell{width:27px;height:27px;display:inline-grid;place-items:center;line-height:1;font-size:12px;font-weight:700;border:1px solid var(--ap-line);border-radius:5px;transition:background .1s;touch-action:manipulation}#access-planner .matrix-footer{padding:16px 20px;display:flex;justify-content:space-between;gap:10px;font-size:10px}#access-planner .inspector{border:1px solid var(--ap-line);border-radius:10px;overflow:hidden}#access-planner .inspector-top{padding:21px 22px;border-bottom:1px solid var(--ap-line)}#access-planner .inspector-kicker{font-size:9px;letter-spacing:1.4px;text-transform:uppercase;display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}#access-planner .inspector-title{display:flex;align-items:center;gap:11px}#access-planner .inspector-title .key-avatar{width:41px;height:41px;font-size:18px}#access-planner .inspector-title h2{font-size:17px;letter-spacing:-.3px}#access-planner .inspector-title p{font-size:11px;margin-top:3px}#access-planner .inspector-content{padding:20px 22px}#access-planner .access-stat{font-size:26px;font-weight:600;letter-spacing:-.6px}#access-planner .access-stat span{font-size:11px;font-weight:400;letter-spacing:0;margin-left:5px}#access-planner .progress{height:5px;border-radius:4px;margin:11px 0 19px;overflow:hidden}#access-planner .progress>span{height:100%;display:block;border-radius:4px}#access-planner .section-label{font-size:9px;letter-spacing:1.1px;font-weight:650;text-transform:uppercase;margin-bottom:11px}#access-planner .door-list{display:flex;flex-direction:column;gap:8px;margin-bottom:23px;max-height:260px;overflow:auto;scrollbar-width:thin;box-shadow:inset 0 -9px 9px -10px var(--ap-shadow)}#access-planner .door-list button{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--ap-line);padding:8px 10px;border-radius:5px;font-size:11px;text-align:left;gap:9px}#access-planner .door-list small{font-size:9px;white-space:nowrap}#access-planner .inspector-note{font-size:11px;line-height:1.7;padding:11px;border-radius:6px;margin-bottom:18px}#access-planner .inspector-actions{display:flex;gap:7px;margin-top:8px}#access-planner .inspector-actions button{flex:1;padding:8px 5px;font-size:10px;min-height:34px}#access-planner .inspector-footer{padding:14px 22px;border-top:1px solid var(--ap-line);display:flex;justify-content:space-between}#access-planner .inspector-footer .text-button{font-size:10px}#access-planner .bottom-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:22px;font-size:10px}#access-planner .bottom-bar p{display:flex;gap:8px;align-items:center}#access-planner .bottom-bar>div{display:flex;gap:20px}#access-planner .bottom-bar .text-button{font-size:10px}#access-planner .lk-icon{display:inline-flex;align-items:center;justify-content:center;width:1em;height:1em;flex-shrink:0}#access-planner .lk-icon__glyph{line-height:1!important}#access-planner .empty-state{text-align:center;padding:70px 25px}#access-planner .empty-state h3{margin-bottom:8px}#access-planner .empty-state .button{margin-top:20px}#access-planner .view-heading{display:flex;justify-content:space-between;gap:20px;padding:25px 25px 18px}#access-planner .view-heading p{font-size:12px;margin-top:6px}#access-planner .note-list{padding:0 25px 20px;display:flex;flex-direction:column;gap:12px}#access-planner .note-card{border:1px solid var(--ap-line);border-radius:7px;padding:17px 18px}#access-planner .note-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}#access-planner .note-tag{font-size:9px;text-transform:uppercase;letter-spacing:1px}#access-planner .note-card p{font-size:13px;white-space:pre-wrap;line-height:1.7}#access-planner .note-card time{font-size:10px}#access-planner .note-compose{padding:20px 25px;border-top:1px solid var(--ap-line)}#access-planner .note-compose textarea{width:100%;resize:vertical;min-height:85px;border:1px solid var(--ap-line);border-radius:6px;padding:12px;font-size:12px}#access-planner .note-compose>div{display:flex;align-items:center;justify-content:space-between;margin-top:9px}#access-planner .note-compose select{border:1px solid var(--ap-line);padding:7px;border-radius:5px;font-size:11px}#access-planner .alert{font-size:11px;line-height:1.6;padding:12px;border-radius:6px;margin-bottom:16px}#access-planner .modal-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}#access-planner dialog{border:1px solid var(--ap-line);border-radius:14px;box-shadow:0 28px 100px var(--ap-shadow);padding:29px;width:min(590px,calc(100% - 30px));max-height:90vh}#access-planner dialog h2{font-size:23px}#access-planner .field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}#access-planner .field label{font-size:12px;font-weight:600}#access-planner .field input,#access-planner .field textarea,#access-planner .field select{width:100%;border:1px solid var(--ap-line);border-radius:6px;padding:10px 11px;font-size:13px;min-height:41px}#access-planner .field textarea{min-height:90px;resize:vertical}#access-planner .field small{font-size:10px}#access-planner .field-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}#access-planner .modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:23px;padding-top:18px;border-top:1px solid var(--ap-line)}#access-planner .modal-description{font-size:12px;margin-bottom:22px}#access-planner .export-option{display:flex;align-items:center;gap:15px;width:100%;padding:17px;margin-bottom:10px;border:1px solid var(--ap-line);border-radius:8px;text-align:left}#access-planner .export-option>.lk-icon{font-size:21px}#access-planner .export-option strong{display:block;font-size:13px}#access-planner .export-option small{font-size:11px}#access-planner .quote-summary{padding:15px 17px;border-radius:7px;margin-bottom:20px;font-size:12px;line-height:1.8}#access-planner .toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);border-radius:8px;padding:13px 22px;box-shadow:0 7px 25px var(--ap-shadow);z-index:10;font-size:12px;max-width:90vw;text-align:center}#access-planner .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#access-planner [hidden]{display:none!important}#access-planner #print-area{display:none}@media(min-width:1600px){#access-planner .project-heading{margin-bottom:33px}#access-planner .overview{margin-bottom:32px}#access-planner .matrix tbody td{height:66px}#access-planner .matrix .door-row th{height:127px}}@media(max-width:1180px){#access-planner .editor-layout{grid-template-columns:minmax(0,1fr) 250px;gap:16px}#access-planner .editor-toolbar{align-items:flex-start;flex-direction:column}#access-planner .toolbar-actions{width:100%;justify-content:flex-end}#access-planner .overview-note{display:none}#access-planner .overview-item{margin-right:15px}#access-planner .overview-item:last-of-type{margin:0}#access-planner .heading-actions{flex-direction:column}#access-planner .matrix-intro{align-items:flex-start;flex-direction:column;gap:7px}#access-planner .overview{padding:18px}#access-planner .overview-item span{font-size:10px}#access-planner .matrix-footer{flex-direction:column;gap:3px}}@media(max-width:800px){#access-planner .project-heading{flex-direction:column;align-items:flex-start;gap:19px}#access-planner .heading-actions{flex-direction:row;width:100%;flex-wrap:wrap}#access-planner .heading-actions .button{flex:1;padding:10px}#access-planner .project-heading h1{font-size:28px}#access-planner .overview{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:19px}#access-planner .overview-item{border:0}#access-planner .overview-item strong{font-size:22px}#access-planner .overview-item>div>span{font-size:10px}#access-planner .workspace-nav{gap:8px;align-items:flex-end}#access-planner .tabs{gap:8px}#access-planner .tabs button{font-size:11px}#access-planner .workspace-nav>.text-button{font-size:10px;padding-bottom:14px}#access-planner .editor-layout{grid-template-columns:1fr}#access-planner .inspector{margin-top:0}#access-planner .inspector-content{display:block}#access-planner .editor-toolbar{padding:14px}#access-planner .filters{justify-content:space-between;width:100%}#access-planner .toolbar-actions{justify-content:space-between}#access-planner .toolbar-actions .button{flex:1}#access-planner .matrix th:first-child{width:175px}#access-planner .matrix-scroll{scroll-padding-left:175px}#access-planner .key-label{padding:10px;gap:8px}#access-planner .key-name{font-size:11px}#access-planner .key-meta{font-size:9px}#access-planner .matrix .door-row th:first-child{padding-left:12px}#access-planner .key-avatar{width:27px;height:27px}#access-planner .bottom-bar{align-items:flex-start;flex-direction:column;gap:8px}#access-planner .view-heading{padding:20px}#access-planner .field-row{grid-template-columns:1fr}#access-planner .title-row{gap:7px}#access-planner .matrix-scroll{max-height:470px}}#access-planner{font:inherit;margin-bottom:2rem}#access-planner .planner-status{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}#access-planner .project-heading h2{font-size:1.5rem;font-weight:700}#access-planner .button{border-radius:.5rem;font-size:.875rem}#access-planner .editor,#access-planner .overview,#access-planner .inspector{border-radius:1rem}#access-planner .tabs button{font-size:.875rem}#access-planner .matrix{font-size:.8125rem}#access-planner .planner-build-actions{padding:20px;margin-bottom:20px;border:1px solid var(--ap-line);border-radius:12px}#access-planner .planner-build-actions strong{font-size:18px}#access-planner .planner-build-actions p{margin:4px 0 14px}#access-planner .planner-action-buttons{display:flex;gap:10px;flex-wrap:wrap}#access-planner .inline-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;padding:6px 2px}#access-planner .inline-actions button,#access-planner .group-edit{border:0;font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:3px;padding:3px}#access-planner .key-inline-actions{justify-content:flex-start;padding:0 12px 9px 52px}#access-planner .matrix .door-row th{height:158px}#access-planner .door-heading{height:auto;min-height:94px}#access-planner .key-label{padding-bottom:5px}#access-planner .matrix .key-row{height:86px}#access-planner .communal-badge{display:inline-block;padding:2px 6px;margin:3px;border-radius:4px;font-size:10px;font-weight:700}#access-planner .toolbar-hint{font-size:12px}#access-planner .choice-list{margin:16px 0;padding:10px;border:1px solid var(--ap-line);border-radius:8px;max-height:230px;overflow:auto;box-shadow:inset 0 -10px 10px -12px var(--ap-shadow)}#access-planner .choice-list legend{font-weight:700;padding:0 5px}#access-planner .choice{display:flex;gap:10px;align-items:flex-start;padding:9px 3px;font-size:14px;cursor:pointer}#access-planner .choice input{width:18px;height:18px;flex:none;margin-top:2px}#access-planner .choice small{display:block}#access-planner .door-group-section{margin:0 20px 20px;border:1px solid var(--ap-line);border-radius:10px;overflow:hidden}#access-planner .group-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px;flex-wrap:wrap}#access-planner .group-heading>div{display:flex;gap:12px}#access-planner .group-heading small{font-weight:400}#access-planner .managed-door{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 15px;border-top:1px solid var(--ap-line);flex-wrap:wrap}#access-planner .managed-door p,#access-planner .managed-door small{font-size:12px}@media(max-width:800px){#access-planner .planner-action-buttons .button{flex:1 1 45%;white-space:normal}#access-planner .workspace-nav{flex-wrap:wrap}#access-planner .tabs{overflow:auto;width:100%;gap:18px;box-shadow:inset -12px 0 12px -13px var(--ap-shadow)}#access-planner .tabs button{white-space:nowrap;flex:none}#access-planner .toolbar-hint{display:none}#access-planner .key-inline-actions{padding-left:10px}}#access-planner #setup-wizard{border:1px solid var(--ap-line);border-radius:12px;padding:20px;margin-bottom:20px}#access-planner .wizard-heading,#access-planner .wizard-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}#access-planner .wizard-heading h3{font-size:22px}#access-planner .wizard-steps{list-style:none;display:flex;gap:20px;padding:0;margin:18px 0}#access-planner .wizard-steps .current{border-bottom:3px solid var(--ap-line);font-weight:700;padding-bottom:6px}#access-planner .wizard-footer{border-top:1px solid var(--ap-line);margin-top:18px;padding-top:15px}#access-planner .wizard-footer>div{display:flex;gap:10px}#access-planner .wizard-footer>span{font-size:13px}#access-planner #setup-wizard form>p{margin-bottom:14px}#access-planner #setup-wizard:not([hidden])~.planner-build-actions{display:none}#access-planner .matrix .new-item{animation:planner-row-in .25s ease-out}@keyframes planner-row-in{0%{opacity:.3;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){#access-planner .matrix .new-item{animation:none}}@media(max-width:600px){#access-planner .wizard-steps{gap:10px;font-size:12px}}@media(min-width:1100px){#access-planner:has(#setup-wizard:not([hidden])){display:grid;grid-template-columns:330px minmax(0,1fr);grid-template-rows:auto auto auto min-content minmax(0,1fr);-moz-column-gap:20px;column-gap:20px}#access-planner:has(#setup-wizard:not([hidden]))>*{grid-column:1 / -1}#access-planner:has(#setup-wizard:not([hidden])) #setup-wizard{grid-column:1;grid-row:4 / 6;align-self:start;position:sticky;top:165px}#access-planner:has(#setup-wizard:not([hidden])) .workspace-nav{grid-column:2;grid-row:4;align-self:start}#access-planner:has(#setup-wizard:not([hidden])) .editor-layout{grid-column:2;grid-row:5;align-self:start;grid-template-columns:minmax(0,1fr)}#access-planner:has(#setup-wizard:not([hidden])) .selection-panel{display:none}#access-planner #setup-wizard .field-row{grid-template-columns:1fr}#access-planner #setup-wizard .button{white-space:normal}}#access-planner .button,#access-planner .icon-button,#access-planner .export-option{border:1px solid var(--ap-line);border-radius:8px;box-shadow:0 1px 2px #0000001a;transition:transform .1s,box-shadow .1s,background-color .15s}#access-planner .button:not(:disabled):hover,#access-planner .icon-button:not(:disabled):hover,#access-planner .export-option:hover{transform:translateY(1px);box-shadow:inset 0 2px 4px #0000002e}#access-planner .button{min-height:44px;font-weight:600;padding:10px 16px}#access-planner .button.small{min-height:36px;padding:7px 12px;font-size:13px}#access-planner .button .lk-icon{width:16px;height:16px}#access-planner .button.small .lk-icon{width:14px;height:14px}#access-planner .icon-button{width:36px;height:36px}#access-planner .icon-button .lk-icon{width:16px;height:16px}#access-planner :is(button,input,select,textarea):focus-visible{outline:2px solid var(--ap-line);outline-offset:3px}#access-planner .planner-build-actions{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:12px 28px;padding:24px;border:1px solid var(--ap-line);box-shadow:0 4px 12px var(--ap-shadow)}#access-planner .planner-build-actions strong{font-size:22px}#access-planner .planner-build-actions p{max-width:620px}#access-planner .planner-build-actions .planner-action-buttons{grid-column:1}#access-planner .planner-scheme-art{grid-column:2;grid-row:1 / 3;margin:0;align-self:center}#access-planner .planner-scheme-art svg{width:100%;display:block}#access-planner .planner-scheme-art figcaption{font-size:11px;text-align:center;margin-top:5px}#access-planner .overview{box-shadow:none}#access-planner .editor,#access-planner .inspector{box-shadow:0 3px 8px var(--ap-shadow)}#access-planner .editor-toolbar,#access-planner .matrix-intro{border-bottom:1px solid var(--ap-line)}#access-planner .matrix-intro p{font-weight:600}#access-planner .matrix .area-row .group-edit{padding:8px 5px}#access-planner .matrix .door-row th{border-bottom:2px solid var(--ap-line)}#access-planner .access-cell{border:1px solid var(--ap-line)}#access-planner .access-cell.granted{font-weight:800}#access-planner .inspector-top{border-bottom:1px solid var(--ap-line)}#access-planner .inspector-note{border-left:3px solid var(--ap-line)}#access-planner .tabs button:focus-visible{outline-offset:-3px}html:has(#access-planner){scrollbar-gutter:stable}html:has(#access-planner dialog[open]),body:has(#access-planner dialog[open]){overflow:hidden;overscroll-behavior:none}#access-planner dialog{position:fixed;inset:0;margin:auto;padding:0;width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 48px);border:1px solid var(--ap-line);border-radius:16px;overflow:hidden;box-shadow:0 24px 70px var(--ap-shadow)}#access-planner dialog[open]{display:flex;flex-direction:column}#access-planner dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}#access-planner .modal-heading{flex:none;padding:20px 24px;margin:0;border-bottom:1px solid var(--ap-line);gap:16px}#access-planner .modal-heading h2{font-size:20px;font-weight:800}#access-planner #modal-body{padding:24px;overflow-y:auto;overscroll-behavior:contain;min-height:0;box-shadow:inset 0 -12px 12px -14px var(--ap-shadow)}#access-planner .modal-description,#access-planner .field small{font-size:13px;line-height:1.6}#access-planner .field label{font-size:14px}#access-planner .field input,#access-planner .field textarea,#access-planner .field select{border-radius:8px;font-size:14px;min-height:44px}#access-planner .modal-actions{flex-wrap:wrap;padding-top:16px}@media(max-width:1000px){#access-planner .planner-build-actions{grid-template-columns:1fr}#access-planner .planner-scheme-art{display:none}}@media(max-width:600px){#access-planner dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 24px)}#access-planner .modal-heading,#access-planner #modal-body{padding:18px}#access-planner .modal-actions .button{flex:1}}@media(prefers-reduced-motion:reduce){#access-planner .lk-pressable{transition:none}#access-planner .lk-pressable:hover{transform:none}}#access-planner .matrix{table-layout:fixed}#access-planner .matrix th:first-child{width:180px}#access-planner .matrix .area-row th{height:42px;padding:0 8px;text-transform:none;letter-spacing:normal}#access-planner .matrix .door-row th{height:112px;padding:8px 4px 5px;vertical-align:top}#access-planner .matrix .axis-corner{vertical-align:middle!important;padding:12px 16px!important}#access-planner .axis-corner>span{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:800}#access-planner .axis-corner .lk-icon{width:20px;height:20px}#access-planner .floor-heading-controls{display:flex;align-items:center;justify-content:space-between;gap:8px}#access-planner .floor-drag{display:flex;align-items:center;gap:7px;cursor:grab;font-size:13px;font-weight:700;border:0;min-width:0;text-align:left;padding:8px 0}#access-planner .floor-drag:active{cursor:grabbing}#access-planner .floor-order-controls{display:flex;gap:4px}#access-planner .floor-order-controls button{border:1px solid var(--ap-line);width:28px;height:28px;border-radius:4px}#access-planner .matrix .floor-band-heading{border-left:var(--ap-matrix-divider-width) solid var(--ap-line)}#access-planner .matrix .floor-start{border-left:var(--ap-matrix-divider-width) solid var(--door-ink)}#access-planner .matrix .floor-drop-target{outline:3px dashed var(--ap-line);outline-offset:-4px}#access-planner .matrix .door-heading{min-height:0;height:auto;display:grid;grid-template-columns:22px 1fr;gap:3px 6px;padding:0 4px;text-align:left;align-items:center}#access-planner .door-heading .door-symbol{grid-row:1 / 3}#access-planner .door-symbol .lk-icon{width:22px;height:28px}#access-planner .door-heading code{grid-column:2;font-size:10px}#access-planner .door-heading .communal-badge{grid-column:1 / -1}#access-planner .matrix .inline-actions{gap:5px;padding:4px 0 0}#access-planner .matrix .inline-actions button{font-size:11px}#access-planner .matrix .key-row{height:66px}#access-planner .matrix .key-label{padding:7px 10px 0;gap:8px}#access-planner .matrix .key-inline-actions{justify-content:flex-start;padding:0 10px 5px 44px}#access-planner .matrix .key-avatar{width:26px;height:26px}#access-planner .matrix .key-avatar .lk-icon{width:20px;height:20px}#access-planner .matrix .key-name{font-size:13px}#access-planner .matrix .key-meta{font-size:10px}#access-planner .matrix .access-cell{width:100%;height:64px;border:0;border-radius:0;font-size:18px}#access-planner .matrix .access-cell:hover{box-shadow:inset 0 0 0 2px var(--ap-shadow)}#access-planner .matrix .access-cell:focus-visible{outline-offset:-3px}#access-planner .matrix .sheet-add{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;width:100%;height:100%;min-height:54px;padding:8px;border:0;font-size:12px;font-weight:600}#access-planner .matrix .sheet-add .lk-icon{width:18px;height:18px}#access-planner .matrix .add-key-row .sheet-add{flex-direction:row;justify-content:flex-start;padding-left:16px}#access-planner .matrix-scroll{scroll-padding-left:180px}#access-planner .matrix .door-row th{height:60px;padding:4px;vertical-align:top}#access-planner .matrix .door-heading{grid-template-columns:22px minmax(0,1fr);gap:4px 6px}#access-planner .door-heading .door-symbol{grid-row:1}#access-planner .door-heading .door-name-ref{font-size:12px;line-height:1.3}#access-planner .door-heading code{display:inline;margin-left:4px;font-size:10px;white-space:nowrap}#access-planner .door-symbol .lk-icon{height:22px}#access-planner .matrix .access-cell{width:28px;height:28px;padding:0;border:1px solid var(--ap-line);border-radius:5px;font-size:13px}#access-planner .matrix .access-cell:hover{box-shadow:none}#access-planner .matrix .access-cell:focus-visible{outline-offset:2px}#access-planner #quick-add{position:fixed;inset:auto;margin:0;padding:0;width:360px;max-width:calc(100vw - 24px);border:1px solid var(--ap-line);border-top:3px solid var(--ap-line);border-radius:12px;box-shadow:0 8px 28px #0f172a33;overflow-y:auto;overscroll-behavior:contain}#access-planner .quick-add-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px 0}#access-planner .quick-add-heading h2{font-size:16px;line-height:1.3;font-weight:700}#access-planner .quick-add-heading .icon-button{width:28px;height:28px;border:0;box-shadow:none}#access-planner .quick-add-body{padding:10px 16px 16px}#access-planner #quick-add .modal-description{margin-bottom:12px;font-size:12px}#access-planner #quick-add .field{margin-bottom:12px}#access-planner #quick-add .field label{font-size:12px}#access-planner #quick-add textarea{min-height:110px}#access-planner #quick-add .modal-actions{border:0;margin-top:8px;padding-top:0}#access-planner #quick-add .button{min-height:36px;padding:7px 12px;font-size:13px}#access-planner .matrix .stack-column,#access-planner .matrix .stack-body{border-left:var(--ap-matrix-divider-width) solid var(--door-ink)}#access-planner .matrix .stack-column{box-shadow:inset -5px 0 var(--ap-shadow),inset -7px 0 var(--ap-shadow),inset -11px 0 var(--ap-shadow);padding-right:16px}#access-planner .stack-heading{display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px}#access-planner .stack-symbol .lk-icon{width:22px;height:26px}#access-planner .stack-count{padding:2px 6px;border:1px solid var(--ap-line);border-radius:5px;font-size:11px}#access-planner .matrix .stack-member{border-left:1px solid var(--ap-line)}#access-planner .matrix .exception-preview{box-shadow:inset 3px 0 var(--ap-shadow)}#access-planner .matrix .stack-rail{padding:0;border-right:var(--ap-matrix-divider-width) solid var(--door-ink)}#access-planner .stack-rail button{display:flex;align-items:center;justify-content:center;width:100%;min-height:64px;border:0}#access-planner .stack-rail .lk-icon{width:14px;height:18px}#access-planner .sync-door .lk-icon{width:13px;height:13px}#access-planner .group-filter-label{font-size:12px;font-weight:700}#access-planner #floor-filter{min-width:180px;border:1px solid var(--ap-line);font-weight:600;padding:10px 30px 10px 12px}#access-planner .filters{flex-wrap:wrap}#access-planner .selection-tools{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:12px 0;font-size:12px}#access-planner .selection-tools span{margin-left:auto}#access-planner .managed-group{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--ap-line)}#access-planner .managed-group>div{display:flex;gap:6px}#access-planner .managed-group small{font-weight:400}#access-planner .group-manager-list{max-height:45vh;overflow:auto;margin-bottom:16px;box-shadow:inset 0 -8px 8px -8px var(--ap-shadow)}#access-planner .managed-group[hidden],#access-planner .choice[hidden]{display:none}@media(prefers-reduced-motion:no-preference){#access-planner .stack-member{animation:stack-slide .18s ease-out}@keyframes stack-slide{0%{opacity:.5;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}}#access-planner .planner-build-actions{min-height:140px;padding:20px 24px}#access-planner .planner-scheme-art{width:230px}#access-planner.setup-intro{display:block}#access-planner.setup-intro>[hidden]{display:none}#access-planner.setup-intro #setup-wizard{position:static;max-width:760px;margin:32px auto;padding:32px}#access-planner #setup-wizard h1{margin:12px 0;font-size:28px;font-weight:750}#access-planner.setup-intro #setup-wizard p{margin:0 0 24px}#access-planner .template-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}#access-planner .template-option{padding:20px;border:1px solid var(--ap-line);border-radius:10px;text-align:left;box-shadow:0 3px 0 var(--ap-shadow)}#access-planner .template-option strong{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:17px}#access-planner .template-option span{display:block;margin-top:8px;font-size:13px}#access-planner .template-option .lk-icon{width:16px;height:16px;margin:0}#access-planner #scheme-name{font-size:28px;font-weight:700}@media(max-width:600px){#access-planner .template-options{grid-template-columns:1fr}#access-planner.setup-intro #setup-wizard{padding:20px}}#access-planner.setup-intro:has(#setup-wizard:not([hidden])){display:block}#access-planner.setup-intro:has(#setup-wizard:not([hidden])) #setup-wizard{position:static;width:100%;max-width:840px;margin:28px auto;padding:32px}#access-planner.setup-intro:has(#setup-wizard:not([hidden]))>[hidden]{display:none}#access-planner .template-options{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}@media(max-width:600px){#access-planner.setup-intro:has(#setup-wizard:not([hidden])) #setup-wizard{padding:20px}}#access-planner .matrix .stack-rail button{min-height:26px}#access-planner .matrix .stack-rail .stack-add{border-bottom:1px solid var(--ap-line)}#access-planner .bulk-door-tools{margin:0 0 16px;border:1px solid var(--ap-line);border-radius:8px}#access-planner .bulk-door-tools summary{cursor:pointer;padding:10px 12px;font-size:13px;font-weight:650}#access-planner .bulk-door-tools summary .lk-icon{width:13px;height:13px;margin-right:6px}#access-planner .bulk-door-fields{padding:0 12px 12px}#access-planner .bulk-door-fields label{display:block;font-size:12px;font-weight:600;margin-bottom:10px}#access-planner .bulk-door-fields input{display:block;width:100%;margin-top:4px}#access-planner .bulk-door-fields small,#access-planner .bulk-door-status{display:block;margin-top:8px;font-size:12px}#access-planner .bulk-door-status:empty{display:none}#access-planner #quick-add{box-sizing:border-box;overflow-anchor:none;scrollbar-gutter:stable;box-shadow:inset 0 -10px 10px -12px var(--ap-shadow),0 8px 28px #0f172a33}#access-planner .matrix .door-tone-0{--door-hue:160}#access-planner .matrix .door-tone-1{--door-hue:220}#access-planner .matrix .door-tone-2{--door-hue:285}#access-planner .matrix .door-tone-3{--door-hue:35}#access-planner .matrix .door-tone-4{--door-hue:335}#access-planner .matrix .door-tone-5{--door-hue:185}#access-planner .matrix .door-tone-6{--door-hue:85}#access-planner .matrix .door-column{border-top:var(--ap-matrix-divider-width) solid var(--door-ink)}#access-planner .matrix .stack-column{box-shadow:inset -5px 0 var(--door-edge),inset -7px 0 var(--ap-shadow),inset -11px 0 var(--door-edge)}#access-planner .matrix .exception-preview{box-shadow:inset 3px 0 var(--door-ink)}#access-planner #setup-wizard .wizard-dismiss{float:right;width:30px;height:30px;margin:-8px -8px 8px 12px}#access-planner #setup-wizard .wizard-dismiss .lk-icon{width:14px;height:14px}#access-planner .selection-panel{min-width:0;display:flex;flex-direction:column;gap:16px}#access-planner .quote-request-button{width:100%;min-height:68px;padding:18px 16px;font-size:16px;font-weight:700;justify-content:center}#access-planner .quote-request-button>span:not([data-icon]){white-space:normal}#access-planner .quote-request-button .lk-icon{flex-shrink:0;width:18px;height:18px}#access-planner .planner-page-heading{align-items:center;gap:20px;margin-bottom:26px;padding:4px 0 22px;border-bottom:1px solid var(--ap-line)}#access-planner .planner-page-heading h1{font-size:clamp(24px,2.3vw,34px);font-weight:750;line-height:1.2;margin:0 0 8px}#access-planner .project-heading{margin-bottom:8px}#access-planner #scheme-name{font-size:24px;line-height:1.3}#access-planner .overview.scheme-summary-inline{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:10px 22px;padding:0 0 18px;margin:0 0 22px;border:0;border-bottom:1px solid var(--ap-line);border-radius:0;box-shadow:none;font-size:13px}#access-planner .scheme-summary-inline strong{font-weight:650}#access-planner .scheme-summary-inline .text-button{display:inline-flex;align-items:center;gap:6px;font-size:13px}#access-planner .scheme-summary-inline .lk-icon{width:13px;height:13px}#access-planner.setup-intro .overview[hidden]{display:none}#access-planner .scheme-save-footer{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}#access-planner .planner-page-heading h1{margin-bottom:0}#quote-sync:not(:empty){padding:1rem;border:1px solid #b45309;border-radius:.75rem;background:#fffbeb;color:#78350f}#quote-sync pre{max-height:18rem;overflow:auto;box-shadow:inset 0 -10px 10px -10px #64748b;white-space:pre-wrap}#quote-sync button{margin:.5rem .5rem 0 0}#quote-customer form[data-quote-action] label{display:grid;gap:.4rem;font-size:.9rem;font-weight:600;color:#334155}#quote-customer form[data-quote-action] input:not([type=checkbox]):not([type=hidden]),#quote-customer form[data-quote-action] textarea{width:100%;border:1px solid #94a3b8;border-radius:.5rem;padding:.7rem;background:#fff;color:#0f172a}#quote-customer form[data-quote-action] textarea{min-height:6rem}#quote-customer th,#quote-customer td{padding:.8rem;border-bottom:1px solid #cbd5e1}#quote-customer th{background:#f1f5f9}#quote-customer .quote-submit:hover{box-shadow:inset 0 2px 4px #123e3120;transform:translateY(1px)}#quote-sync:not(:empty){border:1px solid #94a3b8;border-radius:.75rem;padding:1rem;margin-block:1rem}#quote-sync details{margin-block:.75rem}#quote-sync pre{max-height:20rem;overflow:auto;padding:1rem;box-shadow:inset 0 6px 8px -7px #334155,inset 0 -6px 8px -7px #334155}#quote-sync button{border:1px solid #94a3b8;border-radius:.5rem;padding:.65rem 1rem;margin:.5rem .5rem 0 0;background:#fff;color:#065f46;font-weight:600;box-shadow:0 2px 3px #123e3120}#quote-sync button.primary{background:#047857;color:#fff}#quote-sync button:hover{box-shadow:inset 0 2px 4px #123e3120;transform:translateY(1px)}#access-planner [data-reorder-kind]{position:relative}#access-planner .order-handle{position:absolute;top:6px;right:4px;z-index:2;display:grid;place-items:center;width:22px;height:22px;border:0;border-radius:4px;cursor:grab;padding:3px}#access-planner .order-handle .lk-icon{width:14px;height:14px}#access-planner .order-handle:active{cursor:grabbing}#access-planner th[data-reorder-kind=door]{padding-right:4px}#access-planner th[data-reorder-kind=key] .key-label{padding-right:28px}#access-planner .order-dragging{opacity:.5}#access-planner [data-reorder-kind].order-before{box-shadow:inset 3px 0 var(--ap-shadow)}#access-planner [data-reorder-kind].order-after{box-shadow:inset -3px 0 var(--ap-shadow)}#access-planner [data-reorder-kind=key].order-before{box-shadow:inset 0 3px var(--ap-shadow)}#access-planner [data-reorder-kind=key].order-after{box-shadow:inset 0 -3px var(--ap-shadow)}#access-planner .floor-heading-controls{flex-wrap:wrap;gap:4px;padding:4px 0}#access-planner .floor-order-controls{margin-left:auto}#access-planner .floor-order-controls button{width:24px;height:24px}#access-planner .floor-drag{overflow-wrap:anywhere;padding:4px 0}#access-planner th[data-reorder-kind=door] :is(.door-heading,.stack-heading){padding-right:20px}#access-planner .stack-heading{gap:5px;flex-wrap:wrap}#access-planner .stack-heading strong{min-width:0;overflow-wrap:anywhere}#access-planner .stack-symbol .lk-icon{width:16px;height:20px}#access-planner .matrix .door-heading{grid-template-columns:16px minmax(0,1fr);gap:4px}#access-planner .door-symbol .lk-icon{width:16px;height:20px}#access-planner .door-name-ref{overflow-wrap:anywhere}#access-planner .matrix .inline-actions{flex-wrap:wrap;gap:4px 7px}#access-planner .matrix .sheet-add{padding:6px 3px;font-size:11px}#access-planner #communal-sources[hidden]{display:none}#access-planner .access-cell:disabled{cursor:default;border-style:dashed}#access-planner .matrix .communal-band{border:1px solid var(--ap-line);border-top:var(--ap-matrix-divider-width) solid var(--ap-line);padding:5px 8px;text-align:left;position:relative}#access-planner .communal-entrances{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px}#access-planner .communal-band button{display:flex;align-items:center;gap:7px;border:0;font-size:11px;font-weight:600;text-align:left}#access-planner .communal-band .lk-icon{width:12px;height:12px;flex-shrink:0}#access-planner .communal-band button span{overflow-wrap:anywhere}#access-planner .matrix .communal-axis{font-size:10px;font-weight:500;padding:6px 12px;text-align:left}#access-planner .communal-axis .lk-icon{width:12px;height:12px;margin-right:5px}#access-planner .matrix .communal-gap{border-bottom:0}#access-planner .matrix .door-column .inline-actions{justify-content:flex-start;padding:3px 4px 0;gap:3px;flex-wrap:nowrap}#access-planner .matrix .door-action-icon{display:inline-grid;place-items:center;width:26px;height:26px;padding:5px;border:0;border-radius:4px;text-decoration:none;flex-shrink:0}#access-planner .matrix .door-action-icon .lk-icon{width:14px;height:14px}#access-planner .matrix .door-column>.door-heading{min-height:24px}#access-planner .matrix .door-column>.order-handle{top:4px;right:3px;height:24px}#access-planner .matrix .stack-column>.stack-heading{min-height:48px;align-content:center}#access-planner .matrix .door-row .sheet-add{min-height:48px}#access-planner .editor-toolbar{display:flex;justify-content:flex-start;align-items:stretch;flex-wrap:wrap;gap:0;padding:0}#access-planner .editor-toolbar .search-field{box-sizing:border-box;flex:0 0 var(--matrix-axis-width,180px);min-width:0;max-width:none;padding:10px 16px}#access-planner .editor-toolbar .search-field input{width:100%;min-width:0;padding:6px 0;border:0}#access-planner .matrix-group-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px;border-left:1px solid var(--ap-line);box-sizing:border-box;padding:10px 16px;flex:1 1 0;min-width:0}#access-planner .matrix-group-tools .group-filter-label{font-weight:400;font-size:12px}#access-planner .matrix-group-tools #floor-filter{min-width:160px;padding:6px 30px 6px 10px;font-size:12px;border-radius:6px}#access-planner .matrix-manage-groups{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:0;border-radius:6px;font-size:12px;font-weight:600;margin-left:0}#access-planner .matrix-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-left:auto}#access-planner .matrix-manage-groups .lk-icon{width:14px;height:14px}@media(max-width:600px){#access-planner .editor-toolbar .search-field{max-width:none;flex-basis:100%}#access-planner .matrix-group-tools{border-left:0;border-top:1px solid var(--ap-line);padding:8px 12px}}#access-planner .matrix .door-row th.door-column{position:relative;height:88px;padding:8px 6px 32px;vertical-align:top}#access-planner .matrix .door-column>:is(.door-heading,.stack-heading){display:grid;grid-template-columns:16px minmax(0,1fr);align-items:start;justify-content:start;gap:6px;min-height:0;padding:0;text-align:left}#access-planner .matrix th[data-reorder-kind=door]>:is(.door-heading,.stack-heading){padding-right:17px}#access-planner .matrix .door-header-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;font-weight:600;line-height:16px}#access-planner .matrix .door-header-meta{display:flex;flex-wrap:wrap;align-items:center;gap:3px 6px;margin-top:4px;font-size:10px;line-height:14px}#access-planner .matrix .door-header-meta code{margin:0;font-size:10px}#access-planner .shared-door-label{display:inline-flex;align-items:center;gap:3px;font-size:9px;font-weight:400}#access-planner .shared-door-label .lk-icon{width:10px;height:10px}#access-planner .matrix .door-column>.inline-actions{position:absolute;bottom:0;left:0;right:0;height:30px;padding:2px 5px;display:flex;align-items:center;justify-content:flex-start;gap:2px;border-top:1px solid var(--ap-line)}#access-planner .matrix .door-column .door-action-icon{width:25px;height:25px}#access-planner .matrix .door-row th.stack-column{padding:8px 18px 32px 8px;vertical-align:middle}#access-planner .matrix .stack-column>.stack-heading,#access-planner .matrix th.stack-column[data-reorder-kind=door]>.stack-heading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;text-align:center}#access-planner .matrix .stack-column>.stack-collapse{position:absolute;top:30px;right:3px;display:grid;place-items:center;width:22px;height:26px;padding:3px;border:0;border-radius:4px}#access-planner .matrix .stack-collapse .lk-icon{width:14px;height:18px}#access-planner .matrix .door-row .stack-rail{position:relative}#access-planner .matrix .door-row .stack-rail>button{position:absolute;top:30px;left:0;height:26px}#access-planner .matrix .door-row .stack-rail>.stack-add{top:4px}#access-planner .matrix .stack-heading .door-name-ref{width:100%}#access-planner .matrix .stack-heading .door-header-meta{justify-content:center;margin-top:3px;font-weight:400}#access-planner .matrix .key-inline-actions{flex-wrap:nowrap;gap:3px;padding-top:2px}#access-planner .matrix .key-action-icon{display:inline-grid;place-items:center;width:25px;height:25px;padding:5px;border:0;border-radius:4px;text-decoration:none;flex-shrink:0}#access-planner .matrix .key-action-icon .lk-icon{width:14px;height:14px}#access-planner .matrix .key-row.auto-key-row{height:34px}#access-planner .matrix .auto-key-row :is(th,td){height:34px;padding-top:3px;padding-bottom:3px}#access-planner .auto-key-heading{display:flex;align-items:center;gap:6px;padding:0 10px}#access-planner .matrix .auto-key-heading .key-label{min-width:0;width:auto;flex:1;display:flex;align-items:center;gap:8px;padding:0}#access-planner .matrix .auto-key-heading .key-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}#access-planner .auto-key-heading .key-label>.lk-icon{width:26px;height:16px;flex-shrink:0}#access-planner .auto-key-heading small{font-size:9px}#access-planner .matrix .auto-key-row .access-cell{width:22px;height:22px;min-height:0;padding:0;font-size:11px}#access-planner .planner-form-section,#access-planner .checkbox-selector{min-width:0;margin:18px 0;padding:14px;border:1px solid var(--ap-line);border-radius:10px}#access-planner .planner-form-section>legend,#access-planner .checkbox-selector>legend{padding:0 6px;font-size:14px;font-weight:600;line-height:1.5}#access-planner .planner-form-section>.field:last-child,#access-planner .planner-form-section-body>.field:last-child,#access-planner .planner-form-section [data-product-options]>.field:last-child{margin-bottom:0}#access-planner .planner-form-section>.field-row:last-child .field{margin-bottom:0}#access-planner .planner-form-disclosure>summary{cursor:pointer;font-size:14px;font-weight:600;line-height:1.5}#access-planner .planner-form-section-body{padding-top:14px}#access-planner .hardware-picker--embedded{margin:0 0 16px;padding:0;border:0}#access-planner .hardware-picker--embedded:last-child{margin-bottom:0}#access-planner .additional-hardware{border-top:1px solid var(--ap-line);padding-top:12px}#access-planner .additional-hardware h4{margin:0 0 8px;font-size:12px;font-weight:600}#access-planner .planner-form-section>.choice-list{border:0;border-radius:0;margin:12px 0;padding:0}#access-planner .planner-form-section .modal-description:last-child{margin-bottom:0}#access-planner .checkbox-selector__toolbar .bulk-target-controls{margin:0;gap:6px 14px}#access-planner .hardware-picker label{display:block;margin:8px 0}#access-planner .hardware-picker input[type=search]{width:100%;border-radius:8px}#access-planner .hardware-picker p{font-size:12px;margin:8px 0}#access-planner .hardware-selection{margin:12px 0 8px;font-size:12px}#access-planner .hardware-selection.is-selected{padding:10px 12px;border-left:3px solid var(--ap-accent);border-radius:4px}#access-planner .hardware-selection strong{display:block;font-size:15px;margin-top:3px}#access-planner .hardware-selection small{display:block;font-size:11px}#access-planner .hardware-picker .admin-combobox__menu{box-shadow:inset 0 -12px 12px -14px var(--ap-shadow),0 8px 18px var(--ap-shadow)}#access-planner .door-hardware-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#access-planner .bulk-hardware-actions{align-items:flex-end}#access-planner .bulk-hardware-actions .field{flex:1 1 170px;min-width:0;margin-bottom:0}#access-planner .bulk-hardware-actions .field select{min-width:0}#access-planner .planner-form-section[hidden]{display:none}@media(max-width:600px){#access-planner .bulk-hardware-actions .field{flex-basis:100%;order:-1}}#access-planner .bulk-target-controls{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;font-size:12px;margin:12px 0}#access-planner .matrix .stack-column>.group-inline-actions{justify-content:center}#access-planner .managed-door-details{flex:1 1 180px;min-width:0}#access-planner .managed-door-hardware{flex:1 1 180px;min-width:0;max-width:260px}#access-planner .managed-door-hardware small{display:block;margin-bottom:3px}#access-planner .managed-door-hardware span{display:block;font-size:13px;overflow-wrap:anywhere}#access-planner .managed-door-keys .text-button{font-size:12px;padding:0}@media(min-width:900px)and (min-height:850px){#access-planner .matrix-scroll{max-height:max(580px,calc(100dvh - 340px))}}#access-planner .scheme-issues{grid-column:1 / -1;min-width:0;padding:12px 16px;border:1px solid var(--ap-warning);border-radius:8px;font-size:12px}#access-planner .scheme-issues[hidden]{display:none}#access-planner .scheme-issues>strong{display:block;margin-bottom:6px;font-size:13px}#access-planner .scheme-issues-list{max-height:150px;overflow:auto;overscroll-behavior:contain;box-shadow:inset 0 -12px 12px -14px var(--ap-shadow)}#access-planner .scheme-issue{display:flex;flex-wrap:wrap;gap:4px 8px;padding:4px 0}#access-planner .scheme-issue>span{font-weight:600}#access-planner .scheme-issue .text-button{padding:0;font-size:12px;text-align:left}#access-planner .communal-colour-strips{display:flex;flex-direction:column;height:min(calc(var(--shared-colours) * 3px),12px);margin:-5px -8px 5px;overflow:hidden}#access-planner .communal-colour-strips>span{flex:1;min-height:1px}#access-planner .shared-entrance-names{display:flex;flex-wrap:wrap;align-items:center;gap:3px 6px}#access-planner .shared-entrance-name{display:inline-flex;align-items:center;gap:5px}#access-planner .communal-band--multiple .shared-entrance-name:before{content:"";width:6px;height:6px;border-radius:2px;flex-shrink:0;background:var(--door-edge)}#access-planner .matrix .auto-key-quantity{display:block;flex:0 0 48px;min-width:0}#access-planner .matrix .auto-key-quantity input{box-sizing:border-box;width:48px;min-height:24px;height:24px;padding:2px 3px;border:1px solid var(--ap-line);border-radius:4px;font-size:11px;line-height:18px}#access-planner .matrix .auto-key-heading small{flex-shrink:0}#access-planner .matrix .group-key-quantity{font-size:9px;font-weight:600;padding:3px}#access-planner{--ap-surface:#ffffff;--ap-raised:#f3f5f7;--ap-hover:#e8edf1;--ap-text:#233142;--ap-muted:#596879;--ap-line:#cbd3db;--ap-input:#ffffff;--ap-accent:#08745b;--ap-accent-hover:#075d4a;--ap-soft:#e8f3ee;--ap-on-accent:#ffffff;--ap-danger:#b4233b;--ap-danger-soft:#fcecef;--ap-warning:#805517;--ap-warning-soft:#fff5df;--ap-shadow:#17263718;--ap-overlay:#10203066;--ap-family-lightness:92%;--ap-family-saturation:48%;--ap-family-ink:32%;--ap-family-edge:78%;--ap-matrix-divider-width:1px;--ap-stack-outline:inset -1px 0 var(--door-edge),inset -3px 0 var(--ap-surface),inset -4px 0 var(--door-edge);color-scheme:light;color:var(--ap-text);background:transparent}.master-key-admin #access-planner{--ap-surface:#182131;--ap-raised:#202c3d;--ap-hover:#2a394b;--ap-text:#e2e8f0;--ap-muted:#a5b3c3;--ap-line:#3b485a;--ap-input:#131c2b;--ap-accent:#92d0bc;--ap-accent-hover:#bce6d8;--ap-soft:#213d36;--ap-on-accent:#112c24;--ap-danger:#f0a4b1;--ap-danger-soft:#422b35;--ap-warning:#e6c58b;--ap-warning-soft:#3b3427;--ap-shadow:#00000033;--ap-overlay:#02061799;--ap-family-lightness:16%;--ap-family-saturation:15%;--ap-family-ink:77%;--ap-family-edge:42%;--ap-matrix-divider-width:3px;--ap-stack-outline:inset -3px 0 var(--door-edge),inset -5px 0 var(--ap-surface),inset -8px 0 var(--door-edge);color-scheme:dark}#access-planner :is(h1,h2,h3,strong,.key-name,.door-heading,.stack-heading,.axis-corner,.group-filter-label){color:var(--ap-text)}#access-planner :is(p,small,code,.section-label,.small-note,.key-meta,.door-header-meta,.door-header-meta code,.inspector-kicker,.matrix-footer,.local-status,.scheme-summary-inline,.toolbar-hint,.eyebrow,.communal-axis,.quote-state){color:var(--ap-muted)}#access-planner :is(button,a){color:inherit}#access-planner button{background:transparent}#access-planner :is(.editor,.inspector,dialog,.note-card,.template-option,.export-option,.door-group-section,.note-compose){background:var(--ap-surface);border-color:var(--ap-line)}#access-planner :is(.editor-toolbar,.inspector-top,.group-heading,.modal-heading,.overview,.bulk-door-tools,.draft-badge){background:var(--ap-raised);border-color:var(--ap-line)}#access-planner .overview.scheme-summary-inline{background:transparent}#access-planner :is(input,select,textarea){color:var(--ap-text);background-color:var(--ap-input);border-color:var(--ap-line)}#access-planner :is(input,textarea)::-moz-placeholder{color:var(--ap-muted);opacity:1}#access-planner :is(input,textarea)::placeholder{color:var(--ap-muted);opacity:1}#access-planner .search-field input{background:transparent}#access-planner :is(input[type=checkbox],input[type=radio]){-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;accent-color:var(--ap-accent)}#access-planner :is(button,a,input,select,textarea,[tabindex]):focus-visible{outline-color:var(--ap-accent)}#access-planner :is(.button,.icon-button,.export-option){color:var(--ap-text);background:var(--ap-surface);border-color:var(--ap-line);box-shadow:none}#access-planner :is(.button,.icon-button,.export-option):hover:not(:disabled){background:var(--ap-hover)}#access-planner :is(.button.primary,.access-cell.granted){color:var(--ap-on-accent);background:var(--ap-accent);border-color:var(--ap-accent)}#access-planner :is(.button.primary,.access-cell.granted):hover:not(:disabled){color:var(--ap-on-accent);background:var(--ap-accent-hover);border-color:var(--ap-accent-hover)}#access-planner :is(.text-button,.matrix-manage-groups,.sheet-add,.inline-actions button,.wizard-steps .current,.wizard-steps .complete,.bulk-door-tools summary){color:var(--ap-accent)}#access-planner :is(.danger,[data-action^=delete],.remove-button){color:var(--ap-danger)}#access-planner button:disabled{color:var(--ap-muted);cursor:default}#access-planner :is(.inline-actions button,.order-handle):disabled{opacity:.65}#access-planner .tabs button{color:var(--ap-muted)}#access-planner .tabs button[aria-selected=true]{color:var(--ap-accent);background:var(--ap-soft)}#access-planner .tabs button[aria-selected=true]:after{background:var(--ap-accent)}#access-planner :is(.tabs button span,.note-tag,.communal-badge,.draft-badge,.stack-count){color:var(--ap-text);background:var(--ap-raised);border-color:var(--ap-line)}#access-planner #setup-wizard{background:var(--ap-raised);border-color:var(--ap-line)}#access-planner :is(.template-option:hover,.door-list button:hover,.managed-door:hover){background:var(--ap-hover)}#access-planner .template-option strong{color:var(--ap-text)}#access-planner .matrix :is(th,td){color:var(--ap-text);background:var(--ap-surface);border-color:var(--ap-line)}#access-planner .matrix :is(.floor-band-heading,.axis-corner,.add-floor-column,.add-door-column,.sheet-spacer){color:var(--ap-text);background:var(--ap-raised)}#access-planner .matrix .floor-order-controls button{color:var(--ap-muted);background:transparent;border-color:var(--ap-line)}#access-planner .matrix .floor-order-controls button:hover:not(:disabled){color:var(--ap-text);background:var(--ap-hover)}#access-planner .matrix [class*=door-tone-]{--door-ink:hsl(var(--door-hue) 35% var(--ap-family-ink));--door-wash:hsl(var(--door-hue) var(--ap-family-saturation) var(--ap-family-lightness));--door-edge:hsl(var(--door-hue) 25% var(--ap-family-edge))}#access-planner .matrix .door-shade-1{--door-wash:hsl(var(--door-hue) var(--ap-family-saturation) calc(var(--ap-family-lightness) - 2%))}#access-planner .matrix .door-shade-2{--door-wash:hsl(var(--door-hue) var(--ap-family-saturation) calc(var(--ap-family-lightness) - 4%))}#access-planner .matrix .door-shade-3{--door-wash:hsl(var(--door-hue) var(--ap-family-saturation) calc(var(--ap-family-lightness) - 6%))}#access-planner .matrix :is(.door-column,.door-access-column,.stack-member,.stack-rail){background:var(--door-wash)}#access-planner .matrix :is(.floor-start,.stack-column,.stack-body,.stack-rail){border-left-color:var(--door-edge)}#access-planner .matrix .stack-rail{border-right-color:var(--door-edge)}#access-planner .matrix .stack-column{box-shadow:var(--ap-stack-outline)}#access-planner .matrix .exception-preview{box-shadow:inset var(--ap-matrix-divider-width) 0 var(--ap-warning)}#access-planner .matrix .door-symbol .lk-icon,#access-planner .matrix .stack-symbol .lk-icon{color:var(--door-ink)}#access-planner .matrix .key-row.selected th{background:var(--ap-soft);border-left-color:var(--ap-accent)}#access-planner .matrix :is(.key-row th,.door-column):hover,#access-planner .matrix :is(.key-row th,.door-column):focus-within{background:var(--ap-hover)}#access-planner .matrix :is(.door-heading,.key-label){background:transparent;color:var(--ap-text)}#access-planner .matrix :is(.door-action-icon,.key-action-icon,.order-handle){color:var(--ap-muted)}#access-planner .matrix :is(.door-action-icon,.key-action-icon,.order-handle):hover{color:var(--ap-accent);background:var(--ap-hover)}#access-planner .matrix [data-action^=delete]:hover{color:var(--ap-danger);background:var(--ap-danger-soft)}#access-planner .matrix .door-column>.inline-actions{border-color:var(--ap-line);background:transparent}#access-planner .matrix :is(.sheet-add,.stack-rail button,.stack-collapse){color:var(--ap-accent)}#access-planner .matrix :is(.sheet-add,.stack-rail button,.stack-collapse):hover:not(:disabled){background:var(--ap-hover)}#access-planner .matrix .access-cell{background:var(--ap-input);border-color:var(--ap-muted);color:var(--ap-text)}#access-planner .matrix .access-cell.granted{background:var(--ap-accent);border-color:var(--ap-accent);color:var(--ap-on-accent)}#access-planner .matrix .access-cell:hover:not(:disabled){background:var(--ap-hover);border-color:var(--ap-accent);color:var(--ap-text)}#access-planner .matrix .access-cell.granted:hover:not(:disabled){background:var(--ap-accent-hover);color:var(--ap-on-accent)}#access-planner .matrix .access-cell.mixed{color:var(--ap-warning);background:var(--ap-warning-soft);border-color:var(--ap-warning)}#access-planner .matrix .communal-band{background:var(--door-wash);border-color:var(--ap-line);border-top-color:var(--door-edge)}#access-planner .matrix .communal-band--multiple{background:var(--ap-raised);border-top-width:0}#access-planner .communal-colour-strips>span{background:var(--door-edge)}#access-planner .communal-band button{color:var(--ap-text)}#access-planner .communal-band .shared-entrance-name{color:var(--door-ink)}#access-planner .communal-axis{color:var(--ap-muted)}#access-planner .matrix-footer{background:var(--ap-surface)}#access-planner :is(.key-avatar,.inspector-icon,.overview-icon){color:var(--ap-accent);background:var(--ap-soft)}#access-planner :is(.inspector-title h2,.inspector-title p,.inspector-kicker){color:var(--ap-text)}#access-planner :is(.door-list button,.inspector-note){color:var(--ap-text);background:transparent;border-color:var(--ap-line)}#access-planner .access-stat span{color:var(--ap-muted)}#access-planner .progress{background:var(--ap-raised)}#access-planner .progress>span{background:var(--ap-accent)}#access-planner :is(.alert,.quote-notice){color:var(--ap-warning);background:var(--ap-warning-soft)}#access-planner .icon-button{color:var(--ap-muted)}#access-planner .stack-rail button{border-color:var(--door-edge)}#access-planner :is(.matrix-scroll,.door-list,.choice-list,.group-manager-list){scrollbar-color:var(--ap-line) var(--ap-surface)}#access-planner #quick-add{background:var(--ap-surface);color:var(--ap-text);border-color:var(--ap-line);border-top-color:var(--ap-accent)}#access-planner dialog::backdrop{background:var(--ap-overlay)}#access-planner #quick-add::backdrop{background:transparent}#access-planner #toast{color:var(--ap-on-accent);background:var(--ap-accent)}#access-planner .status-dot{background:var(--ap-accent)}#access-planner [data-reorder-kind].order-before{box-shadow:inset 3px 0 var(--ap-accent)}#access-planner [data-reorder-kind].order-after{box-shadow:inset -3px 0 var(--ap-accent)}#access-planner [data-reorder-kind=key].order-before{box-shadow:inset 0 3px var(--ap-accent)}#access-planner [data-reorder-kind=key].order-after{box-shadow:inset 0 -3px var(--ap-accent)}#access-planner .local-status:before{background:var(--ap-accent)}#access-planner .wizard-steps .current{border-color:var(--ap-accent)}#access-planner .wizard-steps{color:var(--ap-muted)}#access-planner :is(.door-list small,.template-option span){color:var(--ap-muted)}#access-planner .auto-key-toggle[aria-pressed=true]{color:var(--ap-accent);background:var(--ap-soft);border-radius:4px}#access-planner .hardware-selection.is-selected{background:var(--ap-soft)}#access-planner .hardware-picker :is(.admin-combobox__menu,.admin-combobox__empty){background:var(--ap-surface);border-color:var(--ap-line)}#access-planner .hardware-picker :is(.admin-combobox__option,.admin-combobox__label){color:var(--ap-text)}#access-planner .hardware-picker :is(.admin-combobox__description,.admin-combobox__empty){color:var(--ap-muted)}#access-planner .hardware-picker .admin-combobox__option:hover{background:var(--ap-hover)}#access-planner .hardware-picker .admin-combobox__option.is-active{background:var(--ap-soft)}#access-planner .auto-key-toggle[aria-pressed=mixed]{color:var(--ap-accent);background:var(--ap-soft);border-radius:4px;opacity:.7}#access-planner .planner-form-section{background:var(--ap-surface);color:var(--ap-text)}#access-planner .scheme-issues{color:var(--ap-warning);background:var(--ap-warning-soft)}#access-planner .scheme-issues :is(.text-button,small){color:inherit}#access-planner .auto-key-quantity input{color:var(--ap-text);background:var(--ap-surface)}.checkbox-selector{--cs-surface:var(--ap-surface,#0f172a);--cs-hover:var(--ap-hover,#1e293b);--cs-selected:var(--ap-soft,#17372e);--cs-text:var(--ap-text,#e2e8f0);--cs-muted:var(--ap-muted,#94a3b8);--cs-line:var(--ap-line,#334155);--cs-accent:var(--ap-accent,#6ee7b7);--cs-shadow:var(--ap-shadow,#00000033);border:1px solid var(--cs-line);border-radius:10px;padding:14px;margin:18px 0;color:var(--cs-text);background:var(--cs-surface);min-width:0}.checkbox-selector[hidden],.checkbox-selector [hidden]{display:none}.checkbox-selector legend{font-size:14px;font-weight:600;padding:0 6px}.checkbox-selector__hint{color:var(--cs-muted);font-size:12px;margin:0 0 12px;line-height:1.5}.checkbox-selector__search{display:flex;align-items:center;gap:8px;border:1px solid var(--cs-line);border-radius:7px;padding:0 10px;margin-bottom:12px}.checkbox-selector__search .lk-icon{width:14px;height:14px;color:var(--cs-muted);flex-shrink:0}.checkbox-selector__search input{width:100%;min-width:0;border:0;background:transparent;color:var(--cs-text);padding:9px 0;font-size:13px}.checkbox-selector__search:focus-within{outline:2px solid var(--cs-accent);outline-offset:2px}.checkbox-selector__search input:focus-visible{outline:0}.checkbox-selector__toolbar{padding:0 3px 10px;margin-bottom:6px;border-bottom:1px solid var(--cs-line);font-size:12px}.checkbox-selector__toolbar button{font-size:12px}.checkbox-selector__toolbar [role=status]{margin-left:auto;color:var(--cs-muted);font-size:11px}.checkbox-selector__list{max-height:300px;overflow:auto;overscroll-behavior:contain;padding:0 3px 8px 0;box-shadow:inset 0 -12px 12px -14px var(--cs-shadow)}.checkbox-selector__section+.checkbox-selector__section{border-top:1px solid var(--cs-line);margin-top:8px;padding-top:8px}.checkbox-selector__section h4{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--cs-muted);margin:0;padding:5px 9px}.checkbox-selector__row{display:flex;align-items:center;gap:9px;padding:9px;border-radius:6px;cursor:pointer;min-width:0}.checkbox-selector__row:hover{background:var(--cs-hover)}.checkbox-selector__row:has(input:checked),.checkbox-selector__row:has(input:indeterminate){background:var(--cs-selected)}.checkbox-selector__row:focus-within{outline:2px solid var(--cs-accent);outline-offset:-2px}.checkbox-selector__row input[type=checkbox]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;width:16px;height:16px;margin:0;padding:0;flex-shrink:0;accent-color:var(--cs-accent)}.checkbox-selector__icon{color:var(--cs-muted);width:16px;height:16px;flex-shrink:0}.checkbox-selector__text{min-width:0;flex:1}.checkbox-selector__label{display:block;font-size:13px;font-weight:500;line-height:1.4;overflow-wrap:anywhere}.checkbox-selector__text small{display:block;margin-top:2px;font-size:11px;line-height:1.4;color:var(--cs-muted);overflow-wrap:anywhere}.checkbox-selector__badge{font-size:10px;color:var(--cs-muted);white-space:nowrap}.checkbox-selector__empty{font-size:12px;padding:16px 9px;color:var(--cs-muted)}#access-planner .checkbox-selector__search input{border:0;background:transparent;padding:9px 0;min-height:0}#access-planner .checkbox-selector__section h4{color:var(--cs-muted)}
