*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-body);color:var(--colour-text);background:var(--colour-background);margin:0;font-size:15px}a{color:var(--colour-primary)}button{font:inherit;cursor:pointer}button:disabled{cursor:default}:focus-visible{outline:3px solid var(--colour-accent);outline-offset:2px}.num{font-variant-numeric:tabular-nums;text-align:right!important}.status{color:var(--colour-textMuted);padding:16px 0}.status--error{color:var(--colour-fail)}.page-title{letter-spacing:-.01em;color:var(--colour-heading);margin:0;font-size:24px;font-weight:700}.button{border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);background:var(--colour-surface);min-height:34px;color:var(--colour-text);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){background:var(--colour-neutralBg)}.button:disabled{opacity:.55}.shell-waiting{background:var(--colour-background);min-height:100vh}.shell{grid-template-columns:256px minmax(0,1fr);min-height:100%;display:grid}.shell--rail{grid-template-columns:64px minmax(0,1fr)}.shell__column{flex-direction:column;min-width:0;display:flex}.shell__main{flex:1;min-width:0;padding:24px 28px 48px;overflow-x:hidden}.shell__scrim{display:none}.icon{flex:none}.side{background:linear-gradient(180deg, var(--colour-primaryDark) 0%, var(--colour-navyDeep) 100%);height:100vh;color:var(--colour-sidebarText);flex-direction:column;padding:16px 12px 12px;display:flex;position:sticky;top:0}.side__brand{color:inherit;align-items:center;gap:10px;padding:4px 8px 18px;text-decoration:none;display:flex}.side__mark{border-radius:var(--radius-md);background:var(--colour-accent);color:#fff;place-items:center;width:32px;height:32px;font-weight:700;display:grid}.side__mark--logo{background:#fff;width:auto;min-width:32px;max-width:112px;padding:3px}.side__mark--logo img{object-fit:contain;width:auto;max-width:106px;height:26px;display:block}.side__brand-text{flex-direction:column;min-width:0;line-height:1.15;display:flex}.side__brand-text strong{color:#fff;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:15px;display:-webkit-box;overflow:hidden}.side__brand-text small,.side__user-text small{color:var(--colour-sidebarMuted);font-size:12px}.side__nav{scrollbar-width:thin;scrollbar-color:#fff3 transparent;flex-direction:column;flex:1;gap:2px;display:flex;overflow-y:auto}.side__group{text-transform:uppercase;letter-spacing:.06em;color:var(--colour-sidebarMuted);align-items:center;gap:8px;margin:16px 10px 4px;font-size:11px;font-weight:600;display:flex}.side__collapse{border-radius:var(--radius-md);color:var(--colour-sidebarMuted);background:0 0;border:0;align-items:center;gap:10px;margin-top:8px;padding:7px 10px;font-size:13px;display:flex}.side__collapse:hover{color:#fff;background:#ffffff12}button.side__item{background:0 0;border:0;width:100%}.side__item,.side__report{border-radius:var(--radius-md);color:var(--colour-sidebarText);align-items:center;gap:10px;padding:7px 10px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.side__item:hover,.side__report:hover,.side__section-head:hover{color:#fff;background:#ffffff12}.side__item.active,.side__report.active{color:#fff;box-shadow:inset 3px 0 0 var(--colour-accent);background:#ffffff1f}.side__section-head{border-radius:var(--radius-md);color:#fff;text-align:left;background:0 0;border:0;align-items:center;gap:6px;width:100%;padding:7px 10px 7px 8px;font-size:13.5px;font-weight:600;display:flex}.side__section-head .icon{width:14px;height:14px;color:var(--colour-sidebarMuted);flex:none;transition:transform .15s}.side__section-head[aria-expanded=true] .icon:first-child{transform:rotate(90deg)}.side__section-head .icon+.icon{width:15px;height:15px;color:var(--colour-accent)}.side__section-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.side__count{min-width:20px;color:var(--colour-sidebarMuted);text-align:center;font-variant-numeric:tabular-nums;background:#ffffff1a;border-radius:10px;padding:1px 6px;font-size:11px;font-weight:600}.side__section.is-current .side__section-head{background:#ffffff0d}.side__section.is-current .side__count{background:var(--colour-accent);color:#fff}.side__list{margin:2px 0 6px 18px;padding:0 0 0 12px;list-style:none;position:relative}.side__list:before{content:"";background:#ffffff2e;width:1px;position:absolute;top:2px;bottom:2px;left:0}.side__list li{position:relative}.side__list li:before{content:"";background:#ffffff2e;width:8px;height:1px;position:absolute;top:50%;left:-12px}.side__list li:has(.active):before{background:var(--colour-accent);height:2px;margin-top:-1px}.side__report{color:var(--colour-sidebarMuted);padding:5px 8px;font-size:13px;font-weight:400}.side__report:hover{color:#fff}.side__report.active{color:#fff;box-shadow:none;font-weight:500}.side__report-title{flex:1;min-width:0}.side__draft{color:#fff;background:#ffffff24;border-radius:10px;padding:1px 7px;font-size:10.5px;font-weight:600}.side__empty{color:var(--colour-sidebarMuted);margin:4px 10px;font-size:13px}.side__user{border-top:1px solid #ffffff1a;align-items:center;gap:10px;margin-top:8px;padding:12px 8px 0;display:flex}.side__user-text{flex-direction:column;flex:1;min-width:0;line-height:1.2;display:flex}.side__user-text strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.side__user form{margin:0}.avatar{color:#fff;background:#ffffff26;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:grid}@media (width>=901px){.side--rail{align-items:stretch;padding:16px 8px 12px}.side--rail .side__label{display:none}.side--rail .side__brand{justify-content:center;padding:4px 0 18px}.side--rail .side__item,.side--rail .side__collapse{justify-content:center;padding:9px 0}.side--rail .side__tools{border-top:1px solid #ffffff1a;margin-top:10px;padding-top:10px}.side--rail .side__user{justify-content:center;padding:12px 0 0}}@media (width<=900px){.shell,.shell--rail{grid-template-columns:minmax(0,1fr)}.side__collapse{display:none}.side{z-index:30;width:280px;max-width:85vw;transition:transform .2s;display:flex;position:fixed;left:0;transform:translate(-100%)}.side.is-open{box-shadow:var(--shadow-dialog);transform:none}.shell__scrim{z-index:25;background:#0f274766;display:block;position:fixed;inset:0}.shell__main{padding:16px 16px 32px}}@media (prefers-reduced-motion:reduce){.side,.side__section-head .icon{transition:none}}.topbar{z-index:10;background:var(--colour-surface);border-bottom:1px solid var(--colour-border);align-items:center;gap:12px;height:56px;padding:0 20px;display:flex;position:sticky;top:0}.icon-button{border-radius:var(--radius-md);width:34px;height:34px;color:var(--colour-textMuted);background:0 0;border:0;flex:none;place-items:center;display:grid;position:relative}.icon-button:hover{background:var(--colour-neutralBg);color:var(--colour-text)}.icon-button .icon{width:18px;height:18px}.icon-button--on-dark{color:var(--colour-sidebarText)}.icon-button--on-dark:hover{color:#fff;background:#ffffff1a}.categories{scrollbar-width:none;flex:1;gap:4px;min-width:0;display:flex;overflow-x:auto}.categories__item{border-radius:var(--radius-sm);height:32px;color:var(--colour-textMuted);white-space:nowrap;background:0 0;border:1px solid #0000;padding:0 12px;font-size:13.5px;font-weight:500}.categories__item:hover{background:var(--colour-neutralBg);color:var(--colour-text)}.categories__item.is-active{background:var(--colour-primary);color:#fff}.topbar__fresh{background:var(--colour-neutralBg);color:var(--colour-textMuted);white-space:nowrap;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:12px;display:inline-flex}.bell{position:relative}.bell__count{border:2px solid var(--colour-surface);background:var(--colour-accent);color:#fff;border-radius:9px;min-width:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:12px;position:absolute;top:2px;right:2px}.bell__list{z-index:40;background:var(--colour-surface);width:340px;max-height:420px;color:var(--colour-text);border:1px solid var(--colour-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-dialog);margin:0;padding:6px;list-style:none;position:absolute;top:40px;right:0;overflow-y:auto}.bell__list li{border-bottom:1px solid var(--colour-border);flex-direction:column;gap:2px;padding:8px;font-size:13px;display:flex}.bell__list li:last-child{border-bottom:0}.bell__list li span{color:var(--colour-textMuted)}.bell__list li.is-unread{font-weight:600}@media (width<=900px){.topbar{gap:8px;padding:0 12px}.topbar__fresh{display:none}.categories{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000)}}.topbar__search{border:1px solid var(--colour-border);border-radius:var(--radius-sm);background:var(--colour-background);height:34px;color:var(--colour-textMuted);align-items:center;gap:8px;padding:0 8px 0 10px;font-size:13px;display:inline-flex}.topbar__search:hover{border-color:var(--colour-primary);color:var(--colour-text)}@media (width<=900px){.topbar__search span,.topbar__search kbd{display:none}}.btn{border-radius:var(--radius-sm);white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;height:36px;padding:0 14px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.btn--primary{background:var(--colour-primary);color:#fff}.btn--primary:hover{background:var(--colour-primaryDark)}.btn--light{color:var(--colour-primaryDark);background:#fff}.btn--light:hover{background:var(--colour-primarySubtle)}.btn--on-dark{color:#fff;background:#ffffff1f;border-color:#ffffff4d}.btn--on-dark:hover{background:#fff3}.card{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:16px;min-width:0;padding:20px;display:flex}.card__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.card h2{color:var(--colour-heading);margin:0;font-size:17px;font-weight:700}.card__intro{color:var(--colour-textMuted);margin:2px 0 0;font-size:13px}.search-field{border:1px solid var(--colour-border);border-radius:var(--radius-sm);background:var(--colour-background);width:280px;max-width:100%;height:36px;color:var(--colour-textMuted);align-items:center;gap:8px;padding:0 10px;display:flex}.search-field:focus-within{border-color:var(--colour-primary);background:var(--colour-surface)}.search-field input{min-width:0;font:inherit;color:var(--colour-text);background:0 0;border:0;outline:0;flex:1;font-size:14px}.filter-chips{flex-wrap:wrap;gap:6px;display:flex}.filter-chip{border:1px solid var(--colour-border);border-radius:var(--radius-sm);background:var(--colour-surface);height:30px;color:var(--colour-text);align-items:center;gap:5px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.filter-chip .icon{width:13px;height:13px}.filter-chip:hover{border-color:var(--colour-primary)}.filter-chip.is-active{background:var(--colour-primary);border-color:var(--colour-primary);color:#fff}.tag{border-radius:var(--radius-sm);background:var(--colour-primarySubtle);color:var(--colour-primaryDark);text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;font-size:11px;font-weight:600}.pill{white-space:nowrap;border-radius:20px;align-items:center;gap:5px;padding:2px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.pill--ok{background:var(--colour-okBg);color:var(--colour-okText)}.pill--neutral{background:var(--colour-neutralBg);color:var(--colour-neutralText)}.pill--warn{background:var(--colour-warnBg);color:var(--colour-warnText)}.pill--info{background:var(--colour-infoBg);color:var(--colour-infoText)}.pill--bad{background:var(--colour-badBg);color:var(--colour-badText)}.empty{border:1px dashed var(--colour-borderStrong);border-radius:var(--radius-md);color:var(--colour-textMuted);text-align:center;flex-direction:column;align-items:center;gap:6px;padding:28px 16px;font-size:13px;display:flex}.empty .icon{width:26px;height:26px;color:var(--colour-borderStrong)}.empty strong{color:var(--colour-text);font-size:14px}.empty--card{background:var(--colour-surface)}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 16px;display:flex}.page-header__text{min-width:0}.page-header__title{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.page-header__desc{color:var(--colour-textMuted);margin:4px 0 0;font-size:14px}.page-header__actions{flex-wrap:wrap;gap:8px;display:flex}.crumbs{color:var(--colour-textMuted);margin-bottom:4px;font-size:12.5px}.crumbs a{color:inherit;text-decoration:none}.crumbs a:hover{color:var(--colour-primary);text-decoration:underline}.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;display:grid}.stat{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:4px;padding:16px 18px;display:flex;position:relative;overflow:hidden}.stat:before{content:"";background:var(--colour-primary);width:4px;position:absolute;inset:0 auto 0 0}.stat--alert:before{background:var(--colour-accent)}.stat__label{color:var(--colour-textMuted);font-size:12.5px;font-weight:500}.stat__value{color:var(--colour-heading);font-variant-numeric:tabular-nums;font-size:26px;font-weight:700}.stat__note{color:var(--colour-textMuted);font-size:12px}.data-table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:13.5px}.data-table th{border-bottom:1px solid var(--colour-borderStrong);background:var(--colour-background);color:var(--colour-textMuted);text-align:left;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:9px 12px;font-size:11.5px;font-weight:600}.data-table td{border-bottom:1px solid var(--colour-border);vertical-align:middle;padding:11px 12px}.data-table tbody tr:hover td{background:var(--colour-background)}.data-table td small{color:var(--colour-textMuted);margin-top:2px;font-size:12px;display:block}.data-table a{color:var(--colour-heading);font-weight:600;text-decoration:none}.data-table a:hover{color:var(--colour-primary);text-decoration:underline}.page{flex-direction:column;gap:20px;max-width:1360px;display:flex}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px 16px;display:grid}.field{color:var(--colour-text);flex-direction:column;gap:5px;font-size:13px;font-weight:600;display:flex}.input{font:inherit;border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);background:var(--colour-surface);color:var(--colour-text);padding:8px 10px;font-size:14px;font-weight:400}.input:focus{border-color:var(--colour-primary);box-shadow:0 0 0 3px var(--colour-primarySubtle);outline:0}.field__help{color:var(--colour-textMuted);font-size:12px;font-weight:400}.field__error{color:var(--colour-badText);font-size:12px;font-weight:500}.form-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.stat--button{font:inherit;text-align:left;cursor:pointer}.stat--button:hover{border-color:var(--colour-primary);box-shadow:var(--shadow-raised)}.tab__count{background:var(--colour-accent);color:#fff;border-radius:10px;margin-left:6px;padding:0 7px;font-size:11px;font-weight:700}input:not([type=checkbox]):not([type=radio]):not([type=range]):focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--colour-primary);box-shadow:0 0 0 3px var(--colour-primarySubtle);outline:0}input[type=checkbox],input[type=radio]{accent-color:var(--colour-primary)}.select{appearance:none;font:inherit;border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);background:var(--colour-surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b6675' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 9px center / 16px;min-height:36px;color:var(--colour-text);cursor:pointer;padding:0 32px 0 10px;font-size:14px;font-weight:400}.select:hover{border-color:var(--colour-textMuted)}.select:focus-visible{border-color:var(--colour-primary);box-shadow:0 0 0 3px var(--colour-primarySubtle);outline:0}.drop{border:1.5px dashed var(--colour-borderStrong);border-radius:var(--radius-md);background:var(--colour-background);transition:border-color .12s,background-color .12s;position:relative}.drop:hover,.drop.is-over{border-color:var(--colour-primary);background:var(--colour-primarySubtle)}.drop.is-over{border-style:solid}.drop.has-file{border-style:solid;border-color:var(--colour-border);background:var(--colour-surface)}.drop:focus-within{outline:3px solid var(--colour-accent);outline-offset:2px}.drop__input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.drop__prompt{text-align:center;cursor:pointer;flex-direction:column;align-items:center;gap:8px;padding:28px 16px;font-weight:400;display:flex}.drop__icon,.drop__tick{color:var(--colour-primary);flex:none;display:inline-flex}.drop__icon .icon{width:28px;height:28px}.drop__text{color:var(--colour-text);flex-direction:column;gap:2px;font-size:14px;display:flex}.drop__browse{color:var(--colour-primary);text-decoration:underline}.drop__hint{color:var(--colour-textMuted);font-size:13px}.drop__file{align-items:center;gap:10px;padding:10px 12px;font-weight:400;display:flex}.drop__tick{color:var(--colour-pass)}.drop__tick .icon{width:20px;height:20px}.drop__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.drop__size{color:var(--colour-textMuted);flex:none;font-size:13px}.drop__clear{min-height:28px;margin-left:auto;padding:0 10px;font-size:13px}.drop__problem{padding:0;font-size:13px;font-weight:400}.drop--compact .drop__prompt{text-align:left;flex-direction:row;justify-content:flex-start;padding:7px 12px}.drop--compact .drop__icon .icon{width:20px;height:20px}.drop--compact .drop__text{flex-flow:wrap;align-items:baseline;gap:0 6px}.drop--compact .drop__file{padding:5px 10px}.home{flex-direction:column;gap:24px;max-width:1360px;display:flex}.hero{border-radius:var(--radius-lg);background:linear-gradient(120deg, var(--colour-primary) 0%, var(--colour-primaryDark) 70%);color:#fff;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;padding:26px 28px;display:flex}.hero h1{letter-spacing:-.01em;margin:0;font-size:26px;font-weight:700}.hero p{color:var(--colour-sidebarText);margin:4px 0 0}.hero__actions{flex-wrap:wrap;gap:8px;display:flex}.shelf h2{color:var(--colour-heading);align-items:center;gap:8px;margin:0 0 12px;font-size:15px;font-weight:700;display:flex}.shelf h2 .icon{color:var(--colour-primary)}.report-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.report-card{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);flex-direction:column;gap:8px;padding:16px 18px;transition:border-color .12s,box-shadow .12s;display:flex;position:relative}.report-card:hover,.report-card:focus-within{border-color:var(--colour-primary);box-shadow:var(--shadow-raised)}.report-card__top{justify-content:space-between;align-items:center;display:flex}.report-card h3{margin:0;font-size:15px}.report-card__link{color:var(--colour-heading);text-decoration:none}.report-card__link:after{content:"";position:absolute;inset:0}.report-card__desc{color:var(--colour-textMuted);margin:0;font-size:13px}.report-card__meta{color:var(--colour-textMuted);flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:auto;font-size:12px;display:flex}.star{z-index:1;border-radius:var(--radius-sm);color:var(--colour-borderStrong);background:0 0;border:0;padding:4px;position:relative}.star:hover{color:var(--colour-textMuted)}.star.is-on{color:#e0a400}.star.is-on .icon{fill:currentColor}@media (width<=900px){.hero{padding:20px}.hero h1{font-size:22px}.search-field{width:100%}}@media (prefers-reduced-motion:reduce){.report-card{transition:none}}.setup{border:1px solid var(--colour-border);border-radius:var(--radius-lg);background:var(--colour-surface);padding:20px 22px}.setup__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.setup__head h2{margin:0;font-size:17px}.setup__head p{color:var(--colour-textMuted);margin:4px 0 0}.setup__steps{flex-direction:column;gap:10px;margin:16px 0 0;padding:0;list-style:none;display:flex}.setup__step{border-top:1px solid var(--colour-border);grid-template-columns:28px 1fr auto;align-items:center;gap:12px;padding:10px 0;display:grid}.setup__mark{border:1px solid var(--colour-borderStrong);width:28px;height:28px;color:var(--colour-textMuted);border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:grid}.setup__step.is-done .setup__mark{border-color:var(--colour-pass);background:var(--colour-pass);color:#fff}.setup__step.is-done .setup__text strong{color:var(--colour-textMuted);text-decoration:line-through}.setup__text{flex-direction:column;gap:2px;display:flex}.setup__text span{color:var(--colour-textMuted);font-size:.88rem}@media (width<=640px){.setup__step{grid-template-columns:28px 1fr}.setup__step .button{grid-column:2;justify-self:start}}.report{flex-direction:column;gap:10px;font-size:.8125rem;display:flex}.report__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.report__subtitle{color:var(--colour-textMuted);margin:2px 0 0}.report__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.breadcrumb{color:var(--colour-textMuted);font-size:.9rem}.slicers__toggle{display:none}.slicers__panel{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-items:start;gap:6px 8px;display:grid}.slicer-dd{flex-direction:column;gap:2px;min-width:0;font-size:.75rem;display:flex;position:relative}.slicer-dd__label{color:var(--colour-textMuted);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.slicer-dd__button{border:1px solid var(--colour-border);background:var(--colour-surface);width:100%;color:var(--colour-text);font:inherit;text-align:left;cursor:pointer;border-radius:4px;justify-content:space-between;align-items:center;gap:6px;padding:4px 8px;display:flex}.slicer-dd.is-active .slicer-dd__button{border-color:var(--colour-primary);box-shadow:inset 3px 0 0 var(--colour-primary)}.slicer-dd__summary{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.slicer-dd__panel{z-index:15;background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:6px;width:max(100%,280px);margin-top:2px;padding:8px;position:absolute;top:100%;left:0;box-shadow:0 6px 18px #00000026}.slicer-dd__panel.slicer--hierarchy{width:max(100%,360px)}.slicer-dd__panel.is-right{left:auto;right:0}.slicer__search,.slicer__select,.slicer__dates input{border:1px solid var(--colour-border);width:100%;font:inherit;border-radius:4px;padding:4px 6px}.slicer__options{max-height:320px;margin:4px 0 0;padding:0;font-size:.8rem;list-style:none;overflow-y:auto}.slicer__options label{align-items:center;gap:5px;min-width:0;padding:1px 0;display:flex}.slicer__options label>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.slicer__tree ul{margin:0;padding-left:22px;list-style:none}.slicer__tree>li{flex-wrap:wrap;align-items:center;min-width:0;display:flex}.slicer__tree>li>label{flex:1;min-width:0}.slicer__tree>li>ul{flex-basis:100%}.slicer__expand{background:0 0;border:0;width:18px;padding:0}.slicer__bulk{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.slicer__bulk button{background:var(--colour-surface);border:1px solid var(--colour-borderStrong);color:var(--colour-text);font:inherit;cursor:pointer;border-radius:14px;padding:3px 10px;font-size:.78rem}.slicer__bulk button:hover{border-color:var(--colour-primary);color:var(--colour-primary);background:var(--colour-primarySubtle)}.slicer__bulk .slicer__bulk-clear{color:var(--colour-textMuted);border-style:dashed}.slicer__dates{flex-direction:column;gap:4px;font-size:.85rem;display:flex}.slicer__dates-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.slicer__date{flex-direction:column;gap:4px;display:flex}.slicer__date label{color:var(--colour-neutralText);font-size:.75rem;font-weight:600}.slicer__dates input{border:1px solid var(--colour-borderStrong);min-height:34px;font:inherit;color:var(--colour-text);border-radius:6px;padding:5px 8px;font-size:.85rem;box-shadow:inset 0 1px 1px #0f27470a}.slicer__dates input:focus-visible{outline:2px solid var(--colour-primary);outline-offset:-1px;border-color:var(--colour-primary)}.slicer__none{color:var(--colour-textMuted)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--colour-primary);background:var(--colour-surface);color:var(--colour-primary);border-radius:14px;padding:3px 10px;font-size:.85rem}.chip--clear{border-style:dashed}.section__title{color:var(--colour-accent);align-items:center;gap:12px;margin:4px 0 6px;font-size:1.05rem;display:flex}.section__title:before,.section__title:after{content:"";border-top:2px solid var(--colour-primary);flex:1}.section__empty{color:var(--colour-textMuted);text-align:center;font-style:italic}.section__grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-auto-flow:dense;align-items:start;gap:10px;display:grid}.section__grid>.g-h-tall{grid-row:span 2}.section__grid--1{grid-template-columns:minmax(0,1fr)}.section__grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.section__grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.section__grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.section__grid--5{grid-template-columns:repeat(5,minmax(0,1fr))}.section__grid--6{grid-template-columns:repeat(6,minmax(0,1fr))}.section__grid--7{grid-template-columns:repeat(7,minmax(0,1fr))}.section__grid--8{grid-template-columns:repeat(8,minmax(0,1fr))}.section__grid--free{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:36px;grid-auto-flow:row;align-items:stretch;gap:8px}.section__grid--free>.visual,.section__grid--free>.b-item{grid-column:var(--gc,auto);grid-row:var(--gr,auto);min-height:0}.phone-layout .section__grid--free{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto}.phone-layout .section__grid--free>.visual,.phone-layout .section__grid--free>.b-item{order:var(--grid-order,0);grid-area:auto}.section__grid--1>*,.section__grid--2>.g-w-3,.section__grid--2>.g-w-4,.section__grid--3>.g-w-4{grid-column:1/-1}@media (width<=1100px){.section__grid:not([class*=section__grid--])>.g-w-3,.section__grid:not([class*=section__grid--])>.g-w-4{grid-column:1/-1}}.section__grid.is-hidden{display:none}.drill-menu{z-index:30;background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:6px;flex-direction:column;min-width:180px;padding:4px 0;display:flex;position:fixed;box-shadow:0 6px 20px #00000026}.drill-menu__label{color:var(--colour-textMuted);padding:4px 12px;font-size:.75rem}.drill-menu button{text-align:left;background:0 0;border:0;padding:8px 12px}.drill-menu button:hover,.drill-menu button:focus{background:var(--colour-background)}.drill__filters{margin:0 0 4px}.drill__filters .chip strong{font-weight:600}.drill-card{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:8px;padding:10px 12px 12px;box-shadow:0 1px 2px #0f27470a}.drill-card__head{color:var(--colour-textMuted);justify-content:flex-end;padding:0 2px 8px;font-size:.8rem;display:flex}.drill-card .drill-card__table{border:1px solid var(--colour-border);border-radius:6px;min-height:200px;max-height:calc(100vh - 290px)}.drill-card__table .table{font-size:.8rem}.drill-card__table .table thead th{background:var(--colour-primarySubtle);color:var(--colour-primaryDark);border-bottom:2px solid var(--colour-primary);padding:7px 10px;font-weight:600}.drill-card__table .table td{padding:5px 10px}.drill-card__table .table tbody tr:nth-child(2n){background:var(--colour-background)}.drill-card__table .table tbody tr:hover{background:var(--colour-primarySubtle)}@media (width<=700px){.slicers__toggle{border:1px solid var(--colour-primary);background:var(--colour-surface);width:100%;color:var(--colour-primary);border-radius:6px;padding:8px;display:block}.slicers__panel{flex-direction:column;margin-top:8px;display:none}.slicers.is-open .slicers__panel{display:flex}.slicer{max-width:none}.section__grid,.section__grid--2,.section__grid--3,.section__grid--4,.section__grid--5,.section__grid--6,.section__grid--7,.section__grid--8{grid-template-columns:1fr}.section__grid--free{grid-auto-rows:auto}.section__grid--free>.visual,.section__grid--free>.b-item{order:var(--grid-order,0);grid-area:auto}.section__grid>.g-h-tall{grid-row:auto}.report__actions{flex-wrap:nowrap;max-width:100%;padding-bottom:2px;overflow-x:auto}.report__actions>*{flex-shrink:0}}.pdf{align-items:center;gap:4px;display:inline-flex;position:relative}.pdf__menu{gap:4px;display:inline-flex}.slicer-tiles{flex-direction:column;gap:2px;display:flex}.slicer-tiles__row{flex-wrap:wrap;gap:4px;display:flex}.slicer-tile{border:1px solid var(--colour-borderStrong);background:var(--colour-surface);color:var(--colour-text);font:inherit;cursor:pointer;border-radius:14px;padding:3px 10px;font-size:.82rem}.slicer-tile.is-on{background:var(--colour-primary);border-color:var(--colour-primary);color:var(--colour-surface)}.slicer__relative-row{gap:4px;margin-bottom:6px;display:flex}.slicer__relative-row input{width:64px}.phone-layout .section__grid{grid-template-columns:minmax(0,1fr)}.phone-layout .section__grid>*{order:var(--phone-order,0);grid-area:auto}.phone-layout .p-hide{display:none}.is-editing .phone-layout .b-item.p-hide{opacity:.35;display:block}.b-phone{border:8px solid var(--colour-heading);border-radius:24px;max-width:390px;margin:0 auto;padding:12px}.records{border:1px solid var(--colour-border);border-radius:10px;width:min(1100px,96vw);max-height:90vh;padding:16px}.records::backdrop{background:#0f274759}.records__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.records__head h2{margin:0;font-size:1.1rem}.records__where,.records__measure{margin:4px 0;font-size:.85rem}.records__table{max-height:55vh;margin:8px 0}.block__head--lead{margin:6px 0 8px}.block__title{color:var(--colour-text);margin:0;font-size:1.1rem}.block__intro{color:var(--colour-textMuted);margin:2px 0 0;font-size:.9rem}.block__head:not(.block__head--lead) .block__intro{text-align:center;margin-top:-2px}.emphasis--card{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:10px;padding:12px 14px}.emphasis--band{background:color-mix(in srgb, var(--colour-primary) 7%, var(--colour-background));border-radius:10px;padding:12px 14px}.block--headline .block__visuals{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.block--headline .kpi__value{font-size:clamp(1.2rem,13cqi,2.6rem)}.block__story{grid-template-columns:minmax(0,2fr) minmax(220px,1fr);align-items:start;gap:14px;display:grid}.block__notes{color:var(--colour-text);font-size:.92rem;line-height:1.5}.block--story .block__notes{border-left:3px solid var(--colour-primary);padding-left:12px}.block--focus .block__notes{color:var(--colour-textMuted);margin-top:8px}.block--compare .block__visuals{grid-template-columns:repeat(2,minmax(0,1fr))}.block--compare .block__visuals>*{grid-column:auto}.block--focus .block__visuals,.block--detail .block__visuals{grid-template-columns:minmax(0,1fr)}.block--focus .block__visuals>*,.block--detail .block__visuals>*{grid-column:1/-1}.block--callout{border-left:5px solid var(--colour-primary)}.callout--good{border-left-color:var(--colour-pass)}.callout--warn{border-left-color:var(--colour-warnText)}.callout--bad{border-left-color:var(--colour-fail)}.block--callout .block__notes{margin-bottom:6px;font-size:1rem}@media (width<=760px){.block__story,.block--compare .block__visuals{grid-template-columns:minmax(0,1fr)}}.filters{z-index:25;background:var(--colour-surface);border-left:1px solid var(--colour-border);flex-direction:column;gap:10px;width:min(380px,100vw);padding:14px 16px 16px;font-size:.85rem;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-4px 0 16px #00000026}.filters__head{border-bottom:1px solid var(--colour-border);justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.filters__head h2{margin:0;font-size:1.05rem}.filters__subhead,.filters__ignore>legend{letter-spacing:.08em;text-transform:uppercase;color:var(--colour-neutralText);margin:6px 0 2px;font-size:.7rem;font-weight:700}.filters__hint{color:var(--colour-textMuted);margin:0;font-size:.8rem}.filters__field{flex-direction:column;gap:4px;display:flex}.filters__field label{color:var(--colour-neutralText);font-size:.78rem;font-weight:600}.filters select,.filters .input,.filters .slicer__search{font:inherit;border:1px solid var(--colour-borderStrong);background:var(--colour-surface);min-height:34px;color:var(--colour-text);border-radius:6px;padding:6px 10px;font-size:.85rem;box-shadow:inset 0 1px 1px #0f27470a}.filters select:focus-visible,.filters .input:focus-visible,.filters .slicer__search:focus-visible{outline:2px solid var(--colour-primary);outline-offset:-1px;border-color:var(--colour-primary)}.filters__list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.filters__list li{border:1px solid var(--colour-border);border-left:3px solid var(--colour-primary);background:var(--colour-surface);border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 8px 6px 10px;display:grid}.filters__item{flex-direction:column;gap:3px;min-width:0;display:flex}.filters__item .filters__where{text-overflow:ellipsis;align-self:flex-start;max-width:100%;overflow:hidden}.filters__text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.filters__where{letter-spacing:.04em;text-transform:uppercase;color:var(--colour-primary);background:var(--colour-primarySubtle);white-space:nowrap;border-radius:4px;padding:2px 6px;font-size:.68rem;font-weight:600}.filters__remove{width:26px;height:26px;color:var(--colour-textMuted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;font-size:1rem;line-height:1}.filters__remove:hover{border-color:var(--colour-border);color:var(--colour-badText);background:var(--colour-badBg)}.filters__add{border:1px solid var(--colour-border);background:var(--colour-background);border-radius:8px;flex-direction:column;gap:10px;margin-top:4px;padding:12px;display:flex}.filters__add .filters__subhead{margin-top:0}.filters__submit{width:100%;margin-top:2px}.filters__bounds{align-items:center;gap:8px;display:flex}.filters__bounds .input{flex:1;min-width:0}.filters__ignore{border:1px solid var(--colour-border);background:var(--colour-background);border-radius:8px;flex-direction:column;gap:8px;margin:4px 0 0;padding:12px;display:flex}.filters__ignore>legend{float:left;width:100%;margin:0 0 4px}.filters__check{align-items:center;gap:8px;font-size:.85rem;display:flex}.filters__check input{width:16px;height:16px;accent-color:var(--colour-primary);margin:0}.filters__values .slicer__options{max-height:220px}.filters__save{border-top:1px solid var(--colour-border);background:var(--colour-surface);margin:auto -16px -16px;padding:12px 16px;position:sticky;bottom:-16px}.filters__save .button--primary{width:100%}.bookmarks__list{margin:8px 0 16px;padding:0;list-style:none}.bookmarks__item{border-bottom:1px solid var(--colour-border);align-items:center;gap:6px;padding:4px 0;display:flex}.bookmarks__item>.button{text-align:left;text-overflow:ellipsis;flex:1;overflow:hidden}.bookmarks__add{flex-direction:column;gap:6px;display:flex}.kpi>.how{opacity:0;transition:opacity .12s;position:absolute;top:4px;right:4px}.kpi:hover>.how,.kpi:focus-within>.how{opacity:1}.kpi>.how:has(.visual__tool[aria-expanded=true]){opacity:1}@media (hover:none){.kpi>.how{opacity:.7}}.visual{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:8px;flex-direction:column;min-width:0;margin:0;padding:10px 12px;display:flex;position:relative;container-type:inline-size}.visual[aria-busy=true]{opacity:.75}.visual--free{height:100%;min-height:0;overflow:hidden}.visual--free .chart,.visual--free .gauge .chart{flex:1;height:auto;min-height:80px}.visual--free .table-wrap,.visual--free .chart-table{flex:1;min-height:0;max-height:none}.visual--free .kpi{height:100%;min-height:0}.visual--free .kpi__tile{flex:none}.visual--free .kpi__breakdown{min-height:0;display:block;overflow:auto}.visual--free .kpi__breakdown thead,.visual--free .kpi__breakdown tbody,.visual--free .kpi__breakdown tfoot,.visual--free .kpi__breakdown tr{table-layout:fixed;width:100%;display:table}.visual--compact .kpi__tile{justify-content:center;gap:0;height:100%;min-height:0;padding:6px 24px}.visual--compact .kpi__label{font-size:.78rem;line-height:1.15}.visual--compact .kpi__value{font-size:clamp(1.2rem,11cqi,2rem);line-height:1.1}.visual--compact .kpi__unit,.visual--compact .kpi__change,.visual--compact .kpi__breakdown{display:none}.visual--compact .visual__header{margin-bottom:2px}.g-w-2{grid-column:span 2}.g-w-3{grid-column:span 3}.g-w-4{grid-column:span 4}.g-w-full{grid-column:1/-1}.g-h-short .chart{height:200px}.g-h-tall .chart{height:460px}.g-h-short .table-wrap{max-height:min(300px,24vh)}.g-h-tall .table-wrap{max-height:min(860px,60vh)}.visual--kpi{background:0 0;border:0;padding:0}.visual__header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.visual__title{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;min-width:0;font-weight:600;display:-webkit-box;overflow:hidden}.visual__title:empty{display:none}.visual__export{border:1px solid var(--colour-border);color:var(--colour-textMuted);background:0 0;border-radius:4px;padding:2px 8px;font-size:.78rem}.visual__empty{color:var(--colour-textMuted);margin:8px 0;font-style:italic}.visual__loading{background:linear-gradient(90deg, var(--colour-background), var(--colour-border), var(--colour-background));background-size:200% 100%;border-radius:6px;height:120px;animation:1.2s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.chart{width:100%;height:300px}.kpi{flex-direction:column;gap:8px;display:flex}.kpi__tile{background:var(--colour-primary);color:#fff;border:0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:100%;min-height:88px;padding:12px 30px;display:flex;container-type:inline-size}.kpi__tile:not(:disabled):hover,.kpi__tile.is-selected{background:var(--colour-primaryDark);box-shadow:inset 0 0 0 3px var(--colour-accent)}.kpi__label{font-size:.95rem}.kpi__value{font-family:var(--font-numeric);overflow-wrap:anywhere;font-size:clamp(1rem,11cqi,2.2rem);font-weight:600;line-height:1.15}.kpi__unit{opacity:.85;font-size:.85rem}.kpi__change{opacity:.95;font-size:.78rem}.kpi__breakdown{border-collapse:collapse;background:var(--colour-surface);width:100%;font-size:.8rem}.kpi__breakdown th,.kpi__breakdown td{border-bottom:1px solid var(--colour-border);text-align:left;padding:3px 6px}.kpi__breakdown tbody tr{cursor:pointer}.kpi__breakdown tbody tr:hover{background:var(--colour-background)}.kpi__breakdown tfoot td{border-top:2px solid var(--colour-text);border-bottom:0;font-weight:700}.kpi-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}@media (width<=700px){.g-w-2,.g-w-3,.g-w-4,.g-w-full{grid-column:auto}.chart{height:260px}}.visual__tools{flex-shrink:0;align-items:center;gap:4px;margin-left:auto;display:flex}.visual__tools--narrow{display:none}@container (width<=379px){.visual__tools--full{display:none}.visual__tools--narrow{display:flex}.visual__tools--drill .visual__crumbs{display:none}}.visual__tools--drill{margin-left:auto}.visual__tools--drill+.visual__tools{margin-left:0}.visual__more{display:inline-flex}.visual__drill{align-items:center;gap:2px;display:inline-flex}.visual__crumbs{color:var(--colour-textMuted);margin-right:4px;font-size:.78rem}.visual__tool{width:26px;height:26px;color:var(--colour-textMuted);background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.visual__tool:hover:not(:disabled),.visual__tool[aria-pressed=true]{border-color:var(--colour-border);color:var(--colour-text)}.visual__tool[aria-pressed=true]{background:var(--colour-background)}.visual__tool:disabled{opacity:.4}.visual__tool svg{width:16px;height:16px}.focus-dialog{background:var(--colour-surface);width:min(96vw,1600px);height:min(92vh,1000px);color:var(--colour-text);border:0;border-radius:8px;padding:16px 20px}.focus-dialog::backdrop{background:#00000073}.focus-dialog__close{z-index:3;background:var(--colour-surface);border:1px solid var(--colour-borderStrong);width:32px;height:32px;color:var(--colour-text);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:12px;right:12px}.focus-dialog__close:hover{background:var(--colour-neutralBg)}.focus-dialog__close svg{width:18px;height:18px}.visual--focused{height:calc(100% - 8px);box-shadow:none;border:0;flex-direction:column;margin:0;padding-right:48px;display:flex}.visual--focused .chart{flex:1;height:auto;min-height:60vh}.how{display:inline-flex;position:relative}.how__panel{z-index:40;background:var(--colour-surface);color:var(--colour-text);border:1px solid var(--colour-border);text-align:left;border-radius:6px;padding:12px 14px;font-size:.85rem;font-weight:400;line-height:1.4;position:fixed;overflow:auto;box-shadow:0 8px 24px #141e3c2e}.how__title{border-bottom:1px solid var(--colour-border);color:var(--colour-textMuted);margin:0 0 8px;padding-bottom:8px;font-size:.8rem;font-weight:600}.how__panel h4{margin:0 0 4px;font-size:.95rem}.how__panel h5{color:var(--colour-textMuted);margin:10px 0 2px;font-size:.8rem}.how__panel p,.how__panel ul{margin:0}.how__panel ul{padding-left:18px}.how__panel section+section{border-top:1px solid var(--colour-border);margin-top:12px;padding-top:12px}.how__pending{color:var(--colour-warning,var(--colour-textMuted));margin-top:6px!important}.kpi{position:relative}.kpi>.how{position:absolute;top:4px;right:4px}.kpi .how__panel{left:0;right:auto}.kpi>.how .visual__tool{color:inherit;opacity:.8}.chart-table{max-height:340px;overflow:auto}.chart-table tr[tabindex]:focus-visible,.kpi__breakdown tr[tabindex]:focus-visible,.table tr[tabindex]:focus-visible{outline:2px solid var(--colour-primary);outline-offset:-2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.gauge .chart{height:200px}.g-h-tall .gauge .chart{height:320px}.gauge__caption{text-align:center;color:var(--colour-textMuted);margin:-24px 0 0;font-size:.85rem}.multi-card{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin:0;display:grid}.multi-card__item dt{color:var(--colour-textMuted);font-size:.8rem}.multi-card__item dd{font-family:var(--font-numeric);overflow-wrap:anywhere;margin:2px 0 0;font-size:1.5rem;font-weight:600}.visual--text{overflow-wrap:anywhere}.chart-data{margin-top:8px;overflow-x:auto}.chart-data__table th[scope=row]{white-space:nowrap;font-weight:500}.kpi__tile .sparkline{color:inherit;opacity:.9;margin:4px auto 0}.observations__list{gap:6px;margin:0;padding-left:18px;line-height:1.45;display:grid}.observations__list .is-pinned{font-weight:600}.observations__source,.observations__note{color:var(--colour-textMuted);font-size:.82rem}.observations__note{margin:8px 0 0}.table-wrap{scrollbar-gutter:stable;min-height:140px;max-height:min(520px,32vh);overflow:auto}.table-wrap::-webkit-scrollbar{width:10px;height:10px}.table-wrap::-webkit-scrollbar-track{background:var(--colour-background)}.table-wrap::-webkit-scrollbar-thumb{background:var(--colour-borderStrong);border:2px solid var(--colour-background);border-radius:5px}.table-wrap::-webkit-scrollbar-thumb:hover{background:var(--colour-textMuted)}.table-wrap::-webkit-scrollbar-corner{background:var(--colour-background)}.table-wrap.is-scrolling tbody:after{content:"";height:28px;display:table-row}.table{border-collapse:collapse;width:100%;font-size:.75rem}.table th,.table td{border-bottom:1px solid var(--colour-border);text-align:left;white-space:nowrap;padding:3px 8px}.table td.text{text-overflow:ellipsis;max-width:340px;overflow:hidden}.table thead{z-index:2;position:sticky;top:0}.table thead th{background:var(--colour-surface);position:relative}.matrix th[scope=row],.matrix th.matrix__corner,.matrix__band th:first-child{z-index:1;background:var(--colour-surface);position:sticky;left:0}.matrix tbody tr:nth-child(2n) th[scope=row]{background:var(--colour-background)}.matrix thead th.matrix__corner,.matrix__band th:first-child{z-index:3}.matrix tr.matrix__total>th{z-index:2}.matrix__band th{letter-spacing:.04em;text-transform:uppercase;color:var(--colour-neutralText);border-bottom:1px solid var(--colour-border);text-align:center;font-size:.72rem;font-weight:700}.table tbody tr:nth-child(2n){background:var(--colour-background)}.table tbody tr.is-clickable{cursor:pointer}.table tfoot td,.matrix tr.matrix__total>*{z-index:1;background:var(--colour-surface);box-shadow:inset 0 2px 0 var(--colour-text);font-weight:700;position:sticky;bottom:0}.table-more{height:1px;margin-top:-1px}.table-note{color:var(--colour-textMuted);margin:6px 0 0;font-size:.75rem}.matrix thead th{white-space:normal;vertical-align:bottom}.matrix td.num{width:1%}.matrix th[scope=row],.matrix th.matrix__corner{width:var(--label-w,100%);max-width:var(--label-w,0);text-overflow:ellipsis;min-width:140px;font-weight:400;overflow:hidden}.table th{position:relative}.col-resize{cursor:col-resize;z-index:2;touch-action:none;width:7px;position:absolute;top:0;bottom:0;right:-3px}.th-sort{font:inherit;color:inherit;cursor:pointer;text-align:inherit;text-overflow:ellipsis;background:0 0;border:0;max-width:100%;padding:0;font-weight:600;overflow:hidden}.th-sort:hover{text-decoration:underline}.th-sort__arrow{margin-left:3px;font-size:.7em}.table th:last-child .col-resize:after{display:none}.col-resize:after{content:"";background:var(--colour-textMuted);opacity:.45;width:1px;position:absolute;top:25%;bottom:25%;left:3px}.table thead:hover .col-resize:after{opacity:.8}.col-resize:hover:after,.col-resize:active:after{background:var(--colour-primary);opacity:1;width:3px;top:0;bottom:0;left:2px}.table th[data-col]{text-overflow:ellipsis;overflow:hidden}.matrix__level-1 th[scope=row]{font-weight:600}.matrix__total th,.matrix__total td,.matrix td.matrix__row-total{font-weight:700}.matrix__toggle{border:1px solid var(--colour-border);background:var(--colour-surface);border-radius:3px;width:20px;height:20px;margin-right:6px;padding:0;line-height:1}.matrix__label{cursor:pointer}.table td.num.is-better{color:var(--colour-pass)}.table td.num.is-worse{color:var(--colour-fail)}.table td.num.has-bar{background-image:linear-gradient(to left, color-mix(in srgb, var(--colour-primary) 18%, transparent) var(--bar), transparent var(--bar))}.sparkline{margin-left:auto;display:block;overflow:visible}.admin{flex-direction:column;gap:12px;max-width:1100px;display:flex}.admin h2{color:var(--colour-heading);margin:18px 0 6px;font-size:17px;font-weight:700}.admin h3{margin:14px 0 6px;font-size:.95rem}.admin__intro{color:var(--colour-textMuted);margin:0}.tabs{border-bottom:2px solid var(--colour-primary);flex-wrap:wrap;align-items:flex-end;gap:4px;display:flex}.tab{border:1px solid var(--colour-border);border-bottom:2px solid var(--colour-primary);border-radius:var(--radius-md) var(--radius-md) 0 0;background:var(--colour-neutralBg);color:var(--colour-text);cursor:pointer;align-items:center;margin-bottom:-2px;padding:9px 16px;font-size:13.5px;font-weight:600;line-height:1.2;display:inline-flex}.tab:hover{background:var(--colour-primarySubtle);border-color:var(--colour-primary);color:var(--colour-primary)}.tab.is-active,.tab.is-active:hover{background:var(--colour-primary);border-color:var(--colour-primary);color:#fff}.tab:focus-visible{outline:3px solid var(--colour-accent);outline-offset:1px}.tab.is-active .tab__count{color:var(--colour-primary);background:#fff}.button--primary{background:var(--colour-primary);border-color:var(--colour-primary);color:#fff}.button--primary:hover:not(:disabled){background:var(--colour-primaryDark)}.button--quiet{color:var(--colour-primary);background:0 0;border-color:#0000}.button--quiet:hover:not(:disabled){background:var(--colour-primarySubtle)}.button--danger{background:var(--colour-fail);border-color:var(--colour-fail);color:#fff}.button--danger:hover:not(:disabled){background:var(--colour-badText);border-color:var(--colour-badText);color:#fff}.editor{flex-direction:column;gap:8px;margin-top:8px;display:flex}.editor__field{flex-direction:column;gap:3px;font-size:.88rem;display:flex}.editor__field--boolean{flex-direction:row-reverse;justify-content:flex-end;gap:8px}.editor__field input,.editor__field textarea,.editor__field select{font:inherit;border:1px solid var(--colour-border);border-radius:4px;padding:5px 8px}.review h2{margin-top:8px}.flags{margin:0;padding-left:18px}.status--ok{color:color-mix(in srgb, var(--colour-pass) 75%, black)}.status-guide{max-width:900px;font-size:.9rem}.status-guide ul{margin:4px 0 12px;padding-left:20px}.status-grid__toolbar{flex-wrap:wrap;align-items:center;gap:8px 16px;margin:12px 0;display:flex}.status-grid__wrap{max-height:70vh}.status-grid .input{min-width:140px;padding:2px 4px;font-size:.75rem}.status-grid td:last-child{min-width:280px}.status-grid th[scope=row]{text-overflow:ellipsis;max-width:220px;font-weight:400;overflow:hidden}.status-grid__hint{color:var(--colour-textMuted);white-space:normal}.admin--wide{gap:16px;max-width:1360px}@media (width<=900px){.tabs{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.tab{white-space:nowrap}}.ref{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:10px;padding:18px 20px;display:flex}.ref>h2,.admin .ref>h2{margin:0}.badge{white-space:nowrap;border-radius:20px;align-items:center;gap:5px;padding:2px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge--pending,.badge--submitted,.badge--changes_requested{background:var(--colour-warnBg);color:var(--colour-warnText)}.badge--approved,.badge--published,.badge--confirmed{background:var(--colour-okBg);color:var(--colour-okText)}.badge--rejected{background:var(--colour-badBg);color:var(--colour-badText)}.badge--in_progress,.badge--draft_ready,.badge--in_review{background:var(--colour-infoBg);color:var(--colour-infoText)}.badge--draft{background:var(--colour-warnBg);color:var(--colour-warnText)}.entries{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.entry{background:var(--colour-surface);border:1px solid var(--colour-border);border-left:3px solid var(--colour-borderStrong);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:16px 18px}.entry--pending,.entry--conflict{border-left-color:var(--colour-warnText)}.entry--approved{border-left-color:var(--colour-pass)}.entry--rejected{border-left-color:var(--colour-badText)}.entry__head{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.entry__head strong,.entry__label{color:var(--colour-heading);font-size:15px}.entry__kind{border-radius:var(--radius-sm);background:var(--colour-primarySubtle);color:var(--colour-primaryDark);text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;font-size:11px;font-weight:600}.entry__text{margin:8px 0;line-height:1.55}.entry__sql{background:var(--colour-background);border:1px solid var(--colour-border);border-radius:var(--radius-sm);white-space:pre-wrap;padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;display:block;overflow-x:auto}.entry__used{color:var(--colour-textMuted);margin:8px 0 0;font-size:12.5px}.entry__actions,.editor__actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.entry__explain{border-radius:var(--radius-sm);background:var(--colour-background);margin:10px 0;padding:10px 14px;font-size:13.5px}.entry__explain h4{text-transform:uppercase;letter-spacing:.05em;color:var(--colour-textMuted);margin:8px 0 2px;font-size:11.5px}.entry__explain h4:first-child{margin-top:0}.entry__explain p,.entry__explain ul{margin:0 0 4px}.entry__figure{margin-top:8px}.review-note{border-radius:var(--radius-sm);border-left:3px solid var(--colour-borderStrong);background:var(--colour-neutralBg);margin:10px 0;padding:10px 14px;font-size:13.5px}.review-note--looks_right,.review-note--answered{border-left-color:var(--colour-pass);background:var(--colour-okBg)}.review-note--needs_change,.review-note--needs_answer{border-left-color:var(--colour-warnText);background:var(--colour-warnBg)}.review-note--needs_deeper_check{border-left-color:var(--colour-infoText);background:var(--colour-infoBg)}.review-note--stale{border-left-color:var(--colour-borderStrong);background:var(--colour-neutralBg)}.review-note--stale .review-note__verdict{text-transform:none;letter-spacing:0}.review-note__verdict{text-transform:uppercase;letter-spacing:.05em;margin:0 0 4px;font-size:11.5px;font-weight:700}.checks__list{padding:0;list-style:none}.check{border-left:4px solid var(--colour-borderStrong);margin-bottom:4px;padding:4px 8px}.check.is-pass{border-left-color:var(--colour-pass,#2e8540)}.check.is-fail{border-left-color:var(--colour-fail,#c8102e)}.checks__add{gap:6px;max-width:560px;display:grid}.approve-list{max-height:50vh;margin:0 0 18px;padding:0;font-size:13.5px;list-style:none;overflow-y:auto}.approve-list li+li{border-top:1px solid var(--colour-border);margin-top:12px;padding-top:12px}.approve-list dl{margin:4px 0 0}.approve-list dt{color:var(--colour-textMuted);font-size:12px}.approve-list dd{overflow-wrap:anywhere;white-space:pre-wrap;margin:0 0 4px}.approve-list__sql{font-family:var(--font-mono,monospace);font-size:12.5px}.suggestion{border:1px solid var(--colour-border);border-left:3px solid var(--colour-primary);border-radius:var(--radius-md);background:var(--colour-surface);margin:10px 0;padding:14px 16px;font-size:13.5px}.suggestion--pending{border-left-color:var(--colour-warnText)}.suggestion__diff{border-collapse:collapse;width:100%;margin:8px 0}.suggestion__diff th,.suggestion__diff td{text-align:left;vertical-align:top;border-bottom:1px solid var(--colour-border);white-space:pre-wrap;padding:8px 10px}.suggestion__diff th{text-transform:uppercase;letter-spacing:.05em;color:var(--colour-textMuted);background:var(--colour-background);font-size:11.5px;font-weight:600}.suggestion__diff td>:first-child,.suggestion__reason>p:first-of-type{margin-top:0}.suggestion__diff td>:last-child,.suggestion__reason>:last-child{margin-bottom:0}.suggestion__diff .entry__sql{white-space:pre-wrap}.suggestion__now{color:var(--colour-textMuted)}.suggestion__key{color:var(--colour-textMuted);margin:4px 0;font-size:12px}.diff{white-space:pre-wrap;margin:0}.diff__added{color:inherit;background:#fde68a;border-radius:2px}.diff__removed{color:var(--colour-textMuted);text-decoration:line-through}.discuss{max-height:none;margin-top:12px}.discuss .chat__list{min-height:120px;max-height:min(60vh,640px);padding-right:4px}.discuss__head{border-bottom:1px solid var(--colour-border);margin-bottom:8px;padding-bottom:8px;font-size:13px}.discuss__head p{margin:2px 0}.discuss__source{color:var(--colour-textMuted)}.decisions{border:1px solid var(--colour-warnText);border-radius:var(--radius-md);background:var(--colour-warnBg);margin:8px 0 12px;padding:12px 14px}.decisions h4{color:var(--colour-warnText);margin:0 0 8px;font-size:13px}.decisions__past{margin:10px 0;font-size:13px}.decisions__past summary{cursor:pointer;color:var(--colour-textMuted)}.findings{border:1px solid var(--colour-border);border-left:3px solid var(--colour-infoText);border-radius:var(--radius-md);background:var(--colour-surface);margin:10px 0;padding:12px 14px;font-size:13.5px}.findings h4{margin:0 0 6px}.findings ul{margin:0;padding:0;list-style:none}.finding{border-top:1px solid var(--colour-border);padding:8px 0}.finding p{margin:2px 0}.finding__text{white-space:pre-wrap}.chat-suggestion{margin:10px 0}.chat-suggestion__entry{margin:0 0 2px}.knowledge-chat .chat__list{max-height:min(55vh,600px)}.knowledge-chats{grid-template-columns:minmax(220px,280px) 1fr;align-items:start;gap:16px;display:grid}.knowledge-chats__list{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:10px;padding:14px;display:flex}.chat-list{max-height:70vh;margin:0;padding:0;list-style:none;overflow-y:auto}.chat-list__item{text-align:left;border-radius:var(--radius-sm);width:100%;font:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;padding:8px 10px;display:flex}.chat-list__item:hover{background:var(--colour-background)}.chat-list__item.is-active{background:var(--colour-primarySubtle);box-shadow:inset 3px 0 0 var(--colour-primary)}.chat-list__title{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.chat-list__meta{color:var(--colour-textMuted);font-size:12px}@media (width<=760px){.knowledge-chats{grid-template-columns:1fr}}.reply-box{flex-direction:column;flex-basis:100%;gap:6px;margin-top:4px;display:flex}.reply-box label{font-size:13px;font-weight:600}.reply-box textarea{font:inherit;border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);resize:vertical;padding:9px 10px;font-size:14px}.reply-box textarea:focus{border-color:var(--colour-primary);outline:0}.studio{flex-direction:column;gap:16px;height:calc(100vh - 112px);display:flex}.studio__body{flex:1;grid-template-columns:minmax(320px,2fr) 3fr;gap:16px;min-height:0;display:grid}.chat,.draft{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:var(--radius-lg);min-height:0;box-shadow:var(--shadow-card);flex-direction:column;padding:14px;display:flex}.chat__list{flex-direction:column;flex:1;gap:10px;margin:0;padding:0 4px 0 0;list-style:none;display:flex;overflow-y:auto}.chat__msg{border-radius:var(--radius-md);white-space:pre-wrap;padding:10px 12px;font-size:14px;line-height:1.5}.chat__msg p{margin:2px 0 0}.chat__msg--specialist{background:var(--colour-primarySubtle);border:1px solid #0000;border-bottom-right-radius:2px;align-self:flex-end;max-width:88%}.chat__msg--agent{background:var(--colour-surface);border:1px solid var(--colour-border);border-left:3px solid var(--colour-primary)}.chat__who{text-transform:uppercase;letter-spacing:.05em;color:var(--colour-textMuted);font-size:11px;font-weight:700}.chat__tool{color:var(--colour-textMuted);border-left:2px solid var(--colour-border);text-overflow:ellipsis;white-space:nowrap;padding-left:10px;font-size:.78rem;overflow:hidden}.chat__tool.is-error{border-left-color:var(--colour-fail)}.chat__form{border-top:1px solid var(--colour-border);align-items:flex-end;gap:8px;margin-top:10px;padding-top:10px;display:flex}.chat__form textarea{font:inherit;border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);resize:vertical;flex:1;padding:9px 10px;font-size:14px}.chat__form textarea:focus{border-color:var(--colour-primary);box-shadow:0 0 0 3px var(--colour-primarySubtle);outline:0}.draft__bar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.draft__bar select{font:inherit;border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);background:var(--colour-surface);max-width:360px;height:34px;padding:0 8px;font-size:13px}.chat__empty{border:1px dashed var(--colour-borderStrong);border-radius:var(--radius-md);color:var(--colour-textMuted);text-align:center;margin:auto 0;padding:24px 16px;font-size:13.5px}.draft__meta{color:var(--colour-textMuted);margin:4px 0;font-size:.8rem}.draft__preview{border:1px solid var(--colour-border);border-radius:var(--radius-md);background:var(--colour-background);flex:1;width:100%;min-height:400px}.spec-editor{flex-direction:column;gap:6px;margin:6px 0;display:flex}.spec-editor textarea{border:1px solid var(--colour-border);border-radius:6px;min-height:260px;padding:8px;font-family:ui-monospace,Menlo,monospace;font-size:.78rem}.spec-editor input{font:inherit;border:1px solid var(--colour-border);border-radius:4px;padding:5px 8px}.shell__main--embed{padding:12px}@media (width<=1000px){.studio{height:auto}.studio__body{grid-template-columns:1fr}.draft__preview{min-height:600px}}.studio__side{flex-direction:column;gap:10px;min-height:0;display:flex}.studio__side>.draft{flex:1}.versions{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:8px;padding:14px;display:flex;overflow:auto}.versions td .button{margin:2px;padding:3px 10px;font-size:.8rem}.chat__msg--agent{white-space:normal}.md p,.md ul,.md ol,.md blockquote{margin:4px 0}.md ul,.md ol{padding-left:22px}.md li{margin:2px 0}.md blockquote{border-left:3px solid var(--colour-border);background:var(--colour-background);padding:4px 10px}.md code{background:var(--colour-background);border-radius:3px;padding:0 3px;font-size:.85em}.md__heading{margin-top:8px;font-weight:600}.chat__tools summary{cursor:pointer;color:var(--colour-textMuted);font-size:.8rem}.chat__tools ul{margin:4px 0 0;padding:0;list-style:none}.md__table-wrap{margin:6px 0;overflow-x:auto}.md__table{border-collapse:collapse;font-size:.85rem}.md__table th,.md__table td{border-bottom:1px solid var(--colour-border);text-align:left;padding:3px 10px}.md__table th{font-weight:600}.tools{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.tools__buttons{flex-wrap:wrap;gap:4px;display:flex}.tools__form{border:1px solid var(--colour-border);background:var(--colour-surface);border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;display:flex}.tests__list li{margin-bottom:6px}.tests__answer{white-space:pre-wrap;font-size:.85rem}.tests__add{gap:6px;max-width:640px;margin:10px 0;display:grid}.tests__add textarea,.tests__add input{width:100%}.reviews{margin:6px 0;font-size:.9rem}.reviews__list{gap:10px;margin:6px 0;padding:0;list-style:none;display:grid}.reviews__head{margin:0 0 4px}.reviews__findings{margin:0 0 6px;padding-left:18px}.reviews__picture{border:1px solid var(--colour-border);border-radius:6px;max-width:100%}.tests__checks{border:1px solid var(--colour-border);border-radius:var(--radius-sm);gap:8px;margin:0;padding:10px 12px;display:grid}.tests__checks legend{padding:0 4px;font-size:13px;font-weight:600}.tests__check{align-items:center;gap:8px;font-size:14px;display:flex}.tests__add .tests__check input{width:auto;margin:0}.credit-bar{background:var(--colour-neutralBg);border-radius:3px;height:6px;margin:10px 0;overflow:hidden}.credit-bar>span{background:var(--colour-pass);border-radius:3px;height:100%;display:block}.credit-bar--warn>span{background:var(--colour-warning)}.credit-bar--bad>span{background:var(--colour-fail)}.credit-meter{color:var(--colour-textMuted);margin-top:10px;font-size:12.5px}.credit-meter .credit-bar{height:4px;margin:6px 0 0}.credit-meter__line{flex-wrap:wrap;justify-content:space-between;gap:4px 12px;display:flex}.credit-meter__blocked{padding:8px 0 0}.credit-manage{border-top:1px solid var(--colour-border);flex-wrap:wrap;gap:16px 24px;margin-top:16px;padding-top:16px;display:flex}.credit-form{flex-direction:column;flex:260px;align-items:flex-start;gap:8px;display:flex}.credit-form .field{align-self:stretch}.credit-form .status{padding:0}.credit-topups{flex:100%;margin:0;padding-left:18px;font-size:13px}.credit-blocked{padding:4px 0 12px}.turn-line{color:var(--colour-textMuted);flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:-4px;font-size:12px;display:flex}.turn-line__action{padding:2px 8px;font-size:12px}.turn-line__form{border:1px solid var(--colour-border);border-radius:var(--radius-md);background:var(--colour-surface);flex-direction:column;flex:100%;gap:8px;padding:10px 12px;display:flex}.turn-line__buttons{gap:8px;display:flex}.turn-line__form .status{padding:0}.tests__complaints{margin:8px 0 12px}.tests__complaints summary{cursor:pointer;font-weight:600}.tests__complaints>.status{padding:6px 0 0}.tests__complaints ul{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:grid}.tests__complaints li{border:1px solid var(--colour-border);border-radius:var(--radius-md);background:var(--colour-surface);gap:2px;padding:8px 12px;display:grid}.tests__complaints li p{margin:0}.tests__complaint-by{color:var(--colour-textMuted);font-size:12px}.two-col{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px;display:grid}.two-col__main{flex-direction:column;gap:20px;min-width:0;display:flex}.details{grid-template-columns:200px 1fr;gap:10px 16px;margin:0;display:grid}.details dt{color:var(--colour-textMuted);font-size:12.5px;font-weight:600}.details dd{white-space:pre-wrap;margin:0}.details--compact{grid-template-columns:1fr;gap:2px}.details--compact dd{margin-bottom:8px}.workflow{position:sticky;top:80px}.workflow__actions{flex-direction:column;gap:8px;display:flex}.progress{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.progress li{color:var(--colour-textMuted);padding:0 0 14px 26px;font-size:13.5px;position:relative}.progress li:before{content:"";border:2px solid var(--colour-borderStrong);background:var(--colour-surface);border-radius:50%;width:14px;height:14px;position:absolute;top:2px;left:0}.progress li:not(:last-child):after{content:"";background:var(--colour-border);width:2px;position:absolute;top:20px;bottom:2px;left:8px}.progress li.is-done{color:var(--colour-text)}.progress li.is-done:before{border-color:var(--colour-pass);background:var(--colour-pass)}.progress li.is-current{color:var(--colour-heading);font-weight:700}.progress li.is-current:before{border-color:var(--colour-primary);box-shadow:0 0 0 3px var(--colour-primarySubtle)}.button--quiet-danger{color:var(--colour-badText);background:0 0;border-color:#0000}.button--quiet-danger:hover:not(:disabled){background:var(--colour-badBg)}.timeline{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.timeline li{gap:12px;display:flex}.timeline__who{margin:0;font-size:13px}.timeline__who span{color:var(--colour-textMuted);font-size:12px}.timeline__body{white-space:pre-wrap;margin:4px 0 0}.avatar--light{background:var(--colour-primarySubtle);color:var(--colour-primaryDark)}.steps{counter-reset:step;color:var(--colour-textMuted);gap:8px;margin:8px 0 0;padding:0;font-size:13px;list-style:none;display:flex}.steps li{counter-increment:step;align-items:center;gap:6px;display:flex}.steps li+li:before{content:"";background:var(--colour-borderStrong);order:-2;width:24px;height:1px;margin-right:2px}.steps li:after{content:counter(step);border:1px solid var(--colour-borderStrong);border-radius:50%;order:-1;place-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:grid}.steps li.is-current{color:var(--colour-heading);font-weight:600}.steps li.is-current:after{background:var(--colour-primary);border-color:var(--colour-primary);color:#fff}.steps li.is-done:after{background:var(--colour-pass);border-color:var(--colour-pass);color:#fff}.form-stack{flex-direction:column;gap:14px;max-width:720px;display:flex}.muted{color:var(--colour-textMuted)}@media (width<=1000px){.two-col{grid-template-columns:1fr}.workflow{position:static}.details{grid-template-columns:1fr;gap:2px}.details dd{margin-bottom:8px}}.admin .table:not(.status-grid){font-size:13.5px}.admin .table:not(.status-grid) th,.admin .table:not(.status-grid) td{white-space:normal;padding:10px 12px}.admin .table:not(.status-grid) thead th{background:var(--colour-background);color:var(--colour-textMuted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--colour-borderStrong);font-size:11.5px;font-weight:600}.admin .table:not(.status-grid) tbody tr:hover td,.admin .table:not(.status-grid) tbody tr:hover th{background:var(--colour-background)}.admin .table-wrap{border:1px solid var(--colour-border);border-radius:var(--radius-md);max-height:480px}.upload{background:var(--colour-background);border:1px solid var(--colour-border);border-radius:var(--radius-md);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end;gap:14px 16px;padding:16px;display:grid}.ref .upload{background:var(--colour-background);border:1px solid var(--colour-border);padding:16px}.upload>h2,.upload>p,.upload>.editor__actions,.upload>.status{grid-column:1/-1;margin:0}.upload label{flex-direction:column;gap:5px;font-size:13px;font-weight:600;display:flex}.upload input:not([type=file]),.upload select{font:inherit;border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);background:var(--colour-surface);padding:8px 10px;font-size:14px;font-weight:400}.upload input:focus,.upload select:focus{border-color:var(--colour-primary);box-shadow:0 0 0 3px var(--colour-primarySubtle);outline:0}.upload input[type=file]{border:1.5px dashed var(--colour-borderStrong);border-radius:var(--radius-md);background:var(--colour-surface);cursor:pointer;padding:18px 14px;font-size:13px;font-weight:400}.upload input[type=file]:hover{border-color:var(--colour-primary)}.upload input[type=file]::file-selector-button{border:1px solid var(--colour-primary);border-radius:var(--radius-sm);background:var(--colour-primary);color:#fff;font:inherit;cursor:pointer;margin-right:12px;padding:6px 12px;font-weight:600}.ref h3{text-transform:uppercase;letter-spacing:.05em;color:var(--colour-textMuted);margin:8px 0 0;font-size:13px;font-weight:700}.dict{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px;margin:0;display:grid}.dict div{background:var(--colour-background);border:1px solid var(--colour-border);border-radius:var(--radius-md);padding:12px 14px}.dict dt{color:var(--colour-heading);font-weight:700}.dict dd{margin:4px 0 0;font-size:13.5px;line-height:1.5}.dict__also{color:var(--colour-textMuted);margin-top:4px;font-size:12.5px;display:block}.dict-nav{z-index:5;background:var(--colour-background);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 0;display:flex;position:sticky;top:56px}.history__filters{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.history__transcript .chat__list,.admin .history__wrap{max-height:none}a.filter-chip{text-decoration:none}.history th[scope=row]{max-width:360px;font-weight:600}.history th[scope=row] a{color:var(--colour-heading);text-decoration:none}.history th[scope=row] a:hover{color:var(--colour-primary);text-decoration:underline}@media (width<=900px){.dict-nav{position:static}.dict,.upload{grid-template-columns:1fr}}.refresh-run--failed td:nth-child(3){color:var(--colour-badText);font-weight:600}.refresh-run--partial td:nth-child(3){color:var(--colour-warnText);font-weight:600}.refresh-alerts{margin:0;padding:0;list-style:none}.refresh-alert{border-left:3px solid var(--colour-border);margin-bottom:4px;padding:6px 10px}.refresh-alert--error{border-left-color:var(--colour-badText)}.refresh-alert--warning{border-left-color:var(--colour-warnText)}.browse__bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.browse__dataset{color:var(--colour-neutralText);align-items:center;gap:8px;font-size:.8rem;font-weight:600;display:flex}.browse__dataset select{border:1px solid var(--colour-borderStrong);background:var(--colour-surface);min-height:34px;font:inherit;color:var(--colour-text);border-radius:6px;padding:6px 10px;font-size:.85rem}.browse__filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.browse__filters .filters__add{flex-flow:wrap;align-items:flex-end;gap:10px;width:100%;margin:0;padding:10px 12px}.browse__filters .filters__add .filters__field{min-width:180px}.browse__filters .filters__add .filters__subhead{display:none}.browse__filters .filters__add .filters__submit{width:auto;margin:0}.browse__filters .filters__add .filters__values{flex-basis:100%}.browse-card .drill-card__table{min-height:240px;max-height:calc(100vh - 360px)}.browse-card .table td.text{text-overflow:ellipsis;max-width:320px;overflow:hidden}.admin .browse-card .table:not(.status-grid) th,.admin .browse-card .table:not(.status-grid) td{white-space:nowrap}.browse__filters .filters__add select,.browse__filters .filters__add .input,.browse__filters .filters__add .slicer__search{font:inherit;border:1px solid var(--colour-borderStrong);background:var(--colour-surface);min-height:34px;color:var(--colour-text);border-radius:6px;padding:6px 10px;font-size:.85rem}.chip__remove{color:inherit;background:0 0;border:0;margin-left:4px;padding:0 2px}.browse__pager{align-items:center;gap:8px;display:flex}.browse__pager .drill-card__count{margin-right:8px}.browse__pager .button{min-height:28px;padding:0 10px;font-size:12px}.explain{border:1px solid var(--colour-border);border-left:3px solid var(--colour-primary);border-radius:var(--radius-md);background:var(--colour-surface);margin:0 0 16px;font-size:14px}.explain>summary{cursor:pointer;color:var(--colour-primary);padding:10px 14px;font-weight:600}.explain__body{color:var(--colour-text);max-width:820px;padding:0 14px 12px}.explain__body p,.explain__body ul{margin:0 0 10px}.explain__body li{margin-bottom:4px}.org__changed{color:var(--colour-textMuted);margin:0;font-size:.88rem}.pack__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.pack__head h2,.pack p{margin:0}.pack__meta,.pack__added{color:var(--colour-textMuted);font-size:.88rem}.pack-confirm{margin:0 0 18px;font-size:14px}.pack-confirm h3{color:var(--colour-heading);margin:12px 0 4px;font-size:14px}.pack-confirm h3:first-child{margin-top:0}.pack-confirm ul{margin:0;padding-left:20px;line-height:1.5}.pack-confirm p{margin:12px 0 0}.model__layout{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:16px;display:grid}.model__canvas{border:1px solid var(--colour-border);border-radius:var(--radius-md);background:linear-gradient(var(--colour-border) 1px, transparent 1px) 0 0 / 24px 24px, linear-gradient(90deg, var(--colour-border) 1px, transparent 1px) 0 0 / 24px 24px, var(--colour-surface);background-blend-mode:normal;margin-bottom:16px;padding:8px;overflow:auto}.model__diagram{max-width:none;display:block}.model__box rect{fill:var(--colour-surface);stroke:var(--colour-borderStrong);stroke-width:1.2px;cursor:pointer;filter:drop-shadow(0 1px 2px #141e3c1f)}.model__box:hover rect{stroke:var(--colour-primary)}.model__box.is-selected rect{stroke:var(--colour-primary);stroke-width:2px;fill:var(--colour-primarySubtle)}.model__box text{pointer-events:none;fill:var(--colour-text);font-family:inherit}.model__box-title{font-size:13px;font-weight:600}.model__box-sub{fill:var(--colour-textMuted);font-size:11px}.model__line line{stroke:var(--colour-primary);stroke-width:2px;cursor:pointer}.model__line .model__hit{stroke:#0000;stroke-width:14px}.model__line.is-pending line:not(.model__hit){stroke-dasharray:6 5;stroke:var(--colour-accent)}.model__line.is-off line:not(.model__hit){stroke:var(--colour-textMuted);stroke-dasharray:2 4}.model__line.is-selected line:not(.model__hit){stroke-width:3.5px}.model__many{fill:var(--colour-primaryDark);pointer-events:none;font-size:14px;font-weight:700}.model__h{margin:0 0 8px;font-size:15px}.model__list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.model__item{text-align:left;border:1px solid var(--colour-border);border-radius:var(--radius-md);background:var(--colour-surface);width:100%;font:inherit;cursor:pointer;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:2px 10px;padding:8px 12px;display:grid}.model__item:hover{border-color:var(--colour-primary)}.model__item.is-selected{border-color:var(--colour-primary);background:var(--colour-primarySubtle)}.model__item-name{font-size:14px;font-weight:600}.model__item-keys{font-family:var(--font-mono,ui-monospace, monospace);color:var(--colour-textMuted);grid-column:1;font-size:12px}.model__item .badge{grid-row:1/span 2}.model__panel{border:1px solid var(--colour-border);border-radius:var(--radius-md);background:var(--colour-surface);max-height:calc(100vh - 120px);padding:16px;position:sticky;top:16px;overflow:auto}.model__panel h2{margin:0 0 6px;font-size:16px}.model__panel h3{text-transform:uppercase;letter-spacing:.05em;color:var(--colour-textMuted);margin:16px 0 6px;font-size:13px}.model__keys{flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 6px;display:flex}.model__keys code,.model__fields code{font-family:var(--font-mono,ui-monospace, monospace);background:var(--colour-background);border-radius:4px;padding:1px 5px;font-size:12.5px}.model__links,.model__fields{margin:0;padding:0;font-size:13px;list-style:none}.model__links li,.model__fields li{padding:3px 0}.model__verdict{margin:0 0 6px;font-weight:600}.model__verdict.is-ok{color:color-mix(in srgb, var(--colour-pass) 70%, black)}.model__verdict.is-bad{color:var(--colour-accent)}.model__verdict.is-warn,.model__warning{color:#a35a00}.admin .model__sides th,.admin .model__sides td,.admin .model__visuals th,.admin .model__visuals td{padding:5px 8px;font-size:12.5px}.model__visuals tr.is-changed td,.model__visuals tr.is-changed th{background:color-mix(in srgb, var(--colour-accent) 10%, white)}.model__report{margin:6px 0}.model__report>summary{cursor:pointer;font-size:13px}.model__actions{border-top:1px solid var(--colour-border);flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:12px;display:flex}.model__actions .status{flex-basis:100%;margin:0}.model-form{border:1px solid var(--colour-border);border-radius:var(--radius-md);background:var(--colour-background);grid-template-columns:1fr 1fr;gap:12px 16px;margin-bottom:16px;padding:16px;display:grid}.model-form__side{border:1px solid var(--colour-border);border-radius:var(--radius-sm);background:var(--colour-surface);gap:8px;margin:0;padding:10px 12px 12px;display:grid}.model-form__side legend{padding:0 4px;font-size:13px;font-weight:600}.model-form label{flex-direction:column;gap:5px;font-size:13px;font-weight:600;display:flex}.model-form input,.model-form select{font:inherit;border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);background:var(--colour-surface);padding:8px 10px;font-size:14px;font-weight:400}.model-form__actions{grid-column:1/-1;align-items:center;gap:12px;display:flex}@media (width<=1100px){.model__layout{grid-template-columns:1fr}.model__panel{max-height:none;position:static}}.cat{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:var(--radius-md);margin-bottom:14px;overflow:hidden}.cat__head,.cat__section-head{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.cat__head{background:var(--colour-primarySubtle);border-bottom:1px solid var(--colour-border);padding:12px 16px}.cat__head .cat__name{color:var(--colour-primary);margin:0;font-size:17px}.cat__counts{color:var(--colour-textMuted);font-size:13px}.cat__spacer{flex:1}.cat__rename{width:28px;height:28px}.cat__rename .icon{width:15px;height:15px}.cat__rename-form,.cat__add{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cat__add{border-bottom:1px solid var(--colour-border);background:var(--colour-background);padding:12px 16px}.page>.cat__add{border:1px solid var(--colour-border);border-radius:var(--radius-md);margin-bottom:14px}.cat__rename-form .input,.cat__add .input{min-width:220px}.cat__order{display:inline-flex}.cat__order .icon-button{width:28px;height:28px}.cat__order .icon-button:disabled{opacity:.3}.cat__section{border-bottom:1px solid var(--colour-border);padding:10px 16px 12px}.cat__section:last-child{border-bottom:0}.cat__section-head .icon{width:16px;height:16px;color:var(--colour-textMuted)}.cat__section-head .cat__name{margin:0;font-size:14.5px}.cat__reports{margin:8px 0 0;padding:0;list-style:none}.cat__report{border-top:1px solid var(--colour-border);flex-wrap:wrap;align-items:center;gap:6px 12px;padding:7px 0 7px 26px;display:flex}.cat__report-title{flex-direction:column;flex:1;min-width:200px;display:flex}.cat__report-title small{color:var(--colour-textMuted);font-size:12px}.cat__move{color:var(--colour-textMuted);align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.cat__move select{font:inherit;border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);background:var(--colour-surface);max-width:260px;color:var(--colour-text);padding:4px 6px;font-size:13px}.cat__empty{color:var(--colour-textMuted);margin:6px 0 0 26px;font-size:13px}.dialog{border:1px solid var(--colour-border);border-radius:var(--radius-lg);background:var(--colour-surface);width:min(440px,100vw - 32px);color:var(--colour-text);box-shadow:var(--shadow-dialog);padding:22px}.dialog::backdrop{background:#0f274773}.dialog h2{color:var(--colour-heading);margin:0 0 6px;font-size:17px}.dialog p{color:var(--colour-textMuted);margin:0 0 18px;font-size:14px;line-height:1.5}.toasts{z-index:50;flex-direction:column;gap:8px;max-width:min(380px,100vw - 32px);display:flex;position:fixed;bottom:20px;right:20px}.toast{border-radius:var(--radius-md);background:var(--colour-navyDeep);color:#fff;box-shadow:var(--shadow-dialog);align-items:center;gap:10px;padding:10px 10px 10px 14px;font-size:13.5px;animation:.18s ease-out toast-in;display:flex}.toast span{flex:1}.toast--ok>.icon{color:#6ee7a0}.toast--error{background:var(--colour-badText)}.toast__close{border-radius:var(--radius-sm);width:26px;height:26px;color:inherit;opacity:.8;background:0 0;border:0;place-items:center;display:grid}.toast__close:hover{opacity:1;background:#ffffff1f}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--colour-neutralBg) 0%, var(--colour-surface) 50%, var(--colour-neutralBg) 100%);background-size:200% 100%;animation:1.2s linear infinite shimmer;display:block}@media (prefers-reduced-motion:reduce){.toast,.skeleton{animation:none}}.skeleton-stack{flex-direction:column;gap:10px;display:flex}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.palette{width:min(620px,100vw - 32px);margin-top:12vh;padding:0;overflow:hidden}.palette__input{border-bottom:1px solid var(--colour-border);color:var(--colour-textMuted);align-items:center;gap:10px;padding:14px 16px;display:flex}.palette__input input{font:inherit;color:var(--colour-text);background:0 0;border:0;outline:0;flex:1;font-size:16px}.palette__input kbd,.topbar__search kbd{border:1px solid var(--colour-border);color:var(--colour-textMuted);border-radius:4px;padding:1px 6px;font:11px ui-monospace,monospace}.palette__list{max-height:50vh;margin:0;padding:6px;list-style:none;overflow-y:auto}.palette__item{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:10px;padding:9px 10px;display:flex}.palette__item.is-active{background:var(--colour-primarySubtle)}.palette__item.is-active .icon{color:var(--colour-primary)}.palette__label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.palette__hint{color:var(--colour-textMuted);font-size:12px}.palette__empty{color:var(--colour-textMuted);text-align:center;padding:16px}.print-summary{display:none}.report--print .print-summary{display:block}.print-summary p{color:var(--colour-textMuted);margin:0 0 2px;font-size:.85rem}.report--print{padding:0}.report--print .print-page+.print-page{break-before:page}.report--print .visual__tools,.report--print .how{display:none}@page{size:A4 landscape;margin:12mm 10mm}@media print{body{background:#fff}.side,.topbar,.shell__scrim,.report__actions,.slicers,.chips,.visual__tools,.how,.filters,.focus-dialog,.toasts,.skip-link{display:none!important}.shell,.shell__column,.shell__main{width:auto;margin:0;padding:0;display:block}.print-summary{margin-bottom:6px;display:block}.kpi__tile,.chart,.table tr,.kpi__breakdown tr{break-inside:avoid}.visual__header,.section__title{break-after:avoid}.visual{box-shadow:none}a[href]:after{content:none}}.print-head__logo{object-fit:contain;max-width:220px;max-height:40px;margin-bottom:8px;display:block}.report--document .doc{max-width:1100px}.doc__description{color:var(--colour-textMuted);margin:0 0 12px}.doc-contents{border:1px solid var(--colour-border);background:var(--colour-surface);border-radius:6px;margin:8px 0 20px;padding:12px 16px}.doc-contents h2{margin:0 0 6px;font-size:1rem}.doc-contents ol{margin:0;padding-left:0;list-style:none}.doc-contents ol ol{padding-left:16px;font-size:.85rem}.doc-page{margin:24px 0 8px;scroll-margin-top:72px}.doc-page__title{color:var(--colour-primary);border-bottom:2px solid var(--colour-primary);margin:0 0 8px;padding-bottom:4px;font-size:1.3rem}.report--document .section__title{color:var(--colour-primary);margin:14px 0 6px;font-size:1.05rem;display:block}.report--document .section__title:before,.report--document .section__title:after{content:none}.report--document .section__empty{text-align:left}.report--document .section__grid:not(.section__grid--free){grid-template-columns:minmax(0,1fr)}.report--document .section__grid:not(.section__grid--free)>*{grid-column:1/-1}.report--document [id^=section-]{scroll-margin-top:72px}.report--document .table-wrap:has(>.table--measures){min-height:0;max-height:none;overflow-y:visible}.table--measures th[scope=row]{white-space:normal;min-width:220px;font-weight:400}.table--measures thead th{background:var(--colour-primary);color:#fff}.table--measures td.num,.table--measures th.num{text-align:right}.report--document .visual--text table{border-collapse:collapse;width:100%;font-size:.8rem}.report--document .visual--text th,.report--document .visual--text td{border:1px solid var(--colour-border);text-align:left;padding:4px 8px}.report--document .visual--text th{background:var(--colour-primary);color:#fff}.report--document .visual--text blockquote{border-left:4px solid var(--colour-accent);background:var(--colour-surface);margin:0;padding:8px 12px}@media print{.report--document .doc{max-width:none}.report--document .doc-page{break-before:page}.doc-contents a{color:inherit;text-decoration:none}.table--measures thead th{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.builder{background:var(--colour-background);height:100vh;color:var(--colour-text);grid-template-rows:auto auto 1fr;display:grid}.builder__body{grid-template-columns:240px minmax(0,1fr) 320px;min-height:0;display:grid}.b-top{background:var(--colour-primaryDark);color:#fff;align-items:center;gap:16px;padding:8px 16px;display:flex}.b-top__back{color:#fff;align-items:center;gap:6px;font-weight:600;text-decoration:none;display:inline-flex}.b-top__title{flex-direction:column;flex:1;min-width:0;display:flex}.b-top__name{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.b-top__state{opacity:.85;font-size:.8rem}.b-top__tools{align-items:center;gap:8px;display:flex}.b-top .button--quiet{color:#fff}.b-top .button--quiet:disabled{opacity:.5}.b-seg{border:1px solid #fff6;border-radius:6px;display:inline-flex;overflow:hidden}.b-seg__item{color:#fff;background:0 0;border:0;padding:5px 12px}.b-seg__item.is-on{color:var(--colour-primaryDark);background:#fff;font-weight:600}.b-banner{background:var(--colour-warnBg);color:var(--colour-warnText);flex-wrap:wrap;align-items:center;gap:10px;padding:8px 16px;display:flex}.b-pages,.b-pane{background:var(--colour-surface);border-right:1px solid var(--colour-border);padding:12px;overflow-y:auto}.b-pane{border-right:0;border-left:1px solid var(--colour-border)}.b-panel__head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.b-panel__head h2,.b-pane__head h2{margin:0;font-size:.95rem}.b-pages__list{margin:0 0 12px;padding:0;list-style:none}.b-pages__item,.b-pages__report{text-align:left;width:100%;color:var(--colour-text);background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;padding:7px 8px;display:flex}.b-pages__item:hover,.b-pages__report:hover{background:var(--colour-background)}.b-pages__item.is-active{background:var(--colour-primarySubtle);border-color:var(--colour-primary);font-weight:600}.b-pages__num{min-width:20px;color:var(--colour-textMuted);justify-content:center;font-size:.75rem;display:inline-flex}.b-pages__report{color:var(--colour-primary);border-top:1px solid var(--colour-border);border-radius:0}.b-canvas{padding:16px 24px 48px;overflow:auto}.b-canvas__page{max-width:1400px;margin:0 auto}.b-slicers.is-locked{opacity:.75}.b-section{border-radius:8px;margin-bottom:12px;position:relative}.b-section.is-editing{border:1px dashed var(--colour-borderStrong);padding:6px 8px 10px}.b-section.is-selected{border:2px solid var(--colour-primary)}.b-section.is-drop-target{border-color:var(--colour-primary);background:var(--colour-primarySubtle)}.b-item.is-drop-before:before,.b-item.is-drop-after:before{content:"";background:var(--colour-primary);z-index:3;pointer-events:none;border-radius:2px;width:4px;position:absolute;top:0;bottom:0}.b-item.is-drop-before:before{left:-7px}.b-item.is-drop-after:before{right:-7px}.b-section__bar{width:100%;color:var(--colour-heading);cursor:grab;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:4px 2px 8px;font-weight:600;display:flex}.b-section__grip{color:var(--colour-textMuted);letter-spacing:-2px}.b-muted{color:var(--colour-textMuted);font-style:italic;font-weight:400}.b-tag{background:var(--colour-primarySubtle);color:var(--colour-primaryDark);border-radius:10px;padding:1px 6px;font-size:.72rem;font-weight:400}.b-item{outline-offset:2px;cursor:pointer;border-radius:8px;outline:2px solid #0000;position:relative}.b-item:hover{outline-color:var(--colour-borderStrong)}.b-item.is-selected{outline-color:var(--colour-primary)}.b-item:focus-visible{outline:3px solid var(--colour-primary)}.b-resize{background:var(--colour-primary);border:2px solid var(--colour-surface);cursor:ew-resize;touch-action:none;border-radius:4px;width:10px;height:36px;margin-top:-18px;position:absolute;top:50%;right:-7px}.b-item--live{cursor:default}.b-add-visual,.b-add-section{border:2px dashed var(--colour-borderStrong);color:var(--colour-primary);background:0 0;border-radius:8px;min-height:90px;font-weight:600}.b-add-visual:hover,.b-add-section:hover{background:var(--colour-primarySubtle)}.b-add-section{width:100%;min-height:48px}.b-pane__head{margin-bottom:12px}.b-pane__kind{text-transform:uppercase;letter-spacing:.04em;color:var(--colour-textMuted);font-size:.72rem}.b-field{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.b-field label{font-size:.85rem;font-weight:600}.b-field input,.b-field select,.b-field textarea{font:inherit;border:1px solid var(--colour-borderStrong);background:var(--colour-surface);color:var(--colour-text);border-radius:6px;padding:6px 8px}.b-field__help{color:var(--colour-textMuted);margin:0;font-size:.8rem}.b-actions{border-top:1px solid var(--colour-border);flex-wrap:wrap;gap:6px;margin-top:16px;padding-top:12px;display:flex}.b-danger{color:var(--colour-badText)}@media (width<=1100px){.builder__body{grid-template-columns:200px minmax(0,1fr) 280px}}@media (width<=800px){.builder__body{grid-template-columns:1fr}.b-pages,.b-pane{max-height:40vh}}.b-left{background:var(--colour-surface);border-right:1px solid var(--colour-border);flex-direction:column;min-height:0;display:flex}.b-left .b-pages{border-right:0;flex:none;max-height:40%}.b-fields{border-top:1px solid var(--colour-border);flex:1;padding:12px;overflow-y:auto}.b-fields select,.b-fields__search{width:100%;font:inherit;border:1px solid var(--colour-borderStrong);border-radius:6px;margin:6px 0;padding:5px 8px}.b-fields__group{text-transform:uppercase;letter-spacing:.04em;color:var(--colour-textMuted);margin:10px 0 4px;font-size:.75rem}.b-fields__list{margin:0;padding:0;list-style:none}.b-field-item{text-align:left;width:100%;color:var(--colour-text);cursor:grab;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;padding:4px 6px;display:flex}.b-field-item:hover{background:var(--colour-background);border-color:var(--colour-border)}.b-field-item__icon{min-width:22px;color:var(--colour-primary);justify-content:center;font-size:.75rem;font-weight:700;display:inline-flex}.b-field-item__text{flex-direction:column;flex:1;min-width:0;line-height:1.2;display:flex}.b-field-item__label{flex:1}.b-field-item__ref{font-family:var(--font-mono,ui-monospace, monospace);color:var(--colour-textMuted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.b-field-item__pending{background:var(--colour-warnBg);color:var(--colour-warnText);border-radius:8px;padding:0 5px;font-size:.68rem}.b-dialog{background:var(--colour-surface);width:min(860px,94vw);max-height:88vh;color:var(--colour-text);border:0;border-radius:10px;padding:18px 20px}.b-dialog::backdrop{background:#0006}.b-dialog__head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.b-dialog__head h2{margin:0;font-size:1.15rem}.b-types{gap:12px;display:grid}.b-types__group{border:0;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;margin:0;padding:0;display:grid}.b-types__group legend{margin-bottom:6px;font-weight:600}.b-type{text-align:left;background:var(--colour-background);border:1px solid var(--colour-border);color:var(--colour-text);border-radius:8px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.b-type:hover,.b-type:focus-visible{border-color:var(--colour-primary);background:var(--colour-primarySubtle)}.b-type span{color:var(--colour-textMuted);font-size:.82rem}.b-choices{max-width:420px;margin-top:10px}.b-choices h3{margin:0 0 10px}.b-group{border-top:1px solid var(--colour-border);padding:8px 0}.b-group>summary{cursor:pointer;color:var(--colour-heading);padding:4px 0;font-weight:600}.b-group[open]>summary{margin-bottom:8px}.b-field--group{border:0;margin:0 0 12px;padding:0}.b-field--group legend{margin-bottom:4px;font-size:.85rem;font-weight:600}.b-field--check label{font-weight:400}.b-inline{align-items:center;gap:6px;margin:4px 0;font-size:.85rem;display:flex}.b-inline input:not([type=checkbox]),.b-inline select{font:inherit;border:1px solid var(--colour-borderStrong);border-radius:5px;max-width:140px;padding:3px 6px}.b-list,.b-levels{margin:0 0 6px;padding:0;list-style:none}.b-list li,.b-level{background:var(--colour-background);border-radius:5px;align-items:center;gap:4px;margin-bottom:3px;padding:3px 6px;display:flex}.b-list li>span{flex:1;font-size:.85rem}.b-level select{flex:1;min-width:0}.b-level__num{color:var(--colour-textMuted);min-width:14px;font-size:.75rem}.b-icon-btn{width:24px;height:24px;color:var(--colour-textMuted);background:0 0;border:1px solid #0000;border-radius:4px}.b-icon-btn:hover:not(:disabled){border-color:var(--colour-border);color:var(--colour-text)}.b-icon-btn:disabled{opacity:.35}.b-rules{margin-bottom:8px}.b-rules ol{margin:4px 0;padding:0;list-style:none}.b-rule{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:4px;display:flex}.b-rule input{width:70px}.b-issues{background:var(--colour-badBg);color:var(--colour-badText);border-radius:6px;margin-bottom:12px;padding:8px 10px;font-size:.85rem}.b-issues ul{margin:4px 0 6px;padding-left:18px}.b-top__issues,.b-top__ok{white-space:nowrap;background:#ffffff26;border-radius:10px;padding:2px 8px;font-size:.8rem}.b-top__issues.is-bad{background:var(--colour-badBg);color:var(--colour-badText)}.b-filters .filters__add{flex-direction:column;gap:6px;display:flex}.b-strip{flex-wrap:wrap;gap:6px;margin:4px 0 12px;display:flex}.b-strip__item,.b-strip__add{border:1px dashed var(--colour-borderStrong);background:var(--colour-surface);color:var(--colour-text);cursor:grab;border-radius:6px;padding:5px 10px}.b-strip__item.is-selected{border:2px solid var(--colour-primary);background:var(--colour-primarySubtle)}.b-strip__kind{text-transform:uppercase;color:var(--colour-textMuted);font-size:.7rem}.b-strip__add{color:var(--colour-primary);cursor:pointer;font-weight:600}.b-link{text-align:left;color:var(--colour-primary);font:inherit;background:0 0;border:0;flex:1;padding:0;font-size:.85rem}.b-button-row{flex-wrap:wrap}.b-button-row input,.b-button-row select{font:inherit;max-width:130px;padding:2px 4px;font-size:.82rem}.builder__body{position:relative}.b-drawer{background:var(--colour-surface);border-left:1px solid var(--colour-border);z-index:20;flex-direction:column;width:min(440px,100%);display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-8px 0 24px #0f27471f}.b-drawer__head{border-bottom:1px solid var(--colour-border);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.b-drawer__head h2{margin:0;font-size:1rem}.b-drawer__body{flex-direction:column;flex:1;gap:8px;padding:12px 14px;display:flex;overflow-y:auto}.b-drawer__body h3{margin:8px 0 2px;font-size:.9rem}.b-changes,.b-history{margin:0;padding-left:18px;font-size:.85rem}.b-history li{margin-bottom:8px}.b-item.is-changed:after{content:"Changed";background:var(--colour-warnBg);color:var(--colour-warnText);border-radius:8px;padding:0 6px;font-size:.7rem;font-weight:700;position:absolute;top:-8px;left:8px}.b-item.is-changed{outline:2px dashed var(--colour-warnText)}.b-top .button--quiet:hover:not(:disabled),.b-top .button--quiet:focus-visible,.b-top .button--quiet:active{color:#fff;background:#ffffff29}.b-menu{z-index:40;background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:8px;min-width:220px;padding:4px;position:fixed;box-shadow:0 8px 24px #0f27472e}.b-menu button{text-align:left;width:100%;color:var(--colour-text);background:0 0;border:0;border-radius:5px;justify-content:space-between;gap:16px;padding:7px 10px;display:flex}.b-menu button:hover:not(:disabled),.b-menu button:focus-visible{background:var(--colour-primarySubtle)}.b-menu button:disabled{color:var(--colour-textMuted)}.b-menu kbd,.b-dialog kbd{font:inherit;color:var(--colour-textMuted);font-size:.75rem}.b-dialog--narrow{width:min(520px,94vw)}.b-narrow{display:none}@media (width<=800px){.builder{height:auto;min-height:100vh}.b-narrow{background:var(--colour-infoBg);color:var(--colour-infoText);z-index:30;margin:0;padding:8px 16px;font-size:.85rem;display:block;position:fixed;bottom:0;left:0;right:0}.b-top{flex-wrap:wrap}}.b-fields__new{align-self:flex-start;margin:4px 0 8px}.b-measure-preview{border:1px solid var(--colour-border);background:var(--colour-surfaceMuted,var(--colour-surface));border-radius:6px;padding:8px 10px}.b-measure-preview__value strong{font-size:1.25rem}.b-measure-preview code{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.78rem;display:block}.b-dialog__foot{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:8px;display:flex}.b-view-as{flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:10px;font-size:.85rem;display:flex}.b-view-as__banner{background:var(--colour-warnBg,#fff4e0);color:var(--colour-warnText,#8a5300);border:1px solid;border-radius:6px;flex-basis:100%;padding:8px 10px}.b-list--views>li{border-bottom:1px solid var(--colour-border);padding:6px 0;display:block}.b-canvas__tools{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 16px;display:flex}.b-phone-toggle{white-space:nowrap;font-size:.85rem}.b-override{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:6px;margin:3px 0;font-size:.85rem;display:grid}.b-fields__kinds{flex-wrap:wrap;gap:4px;margin:6px 0;display:flex}.b-chip{border:1px solid var(--colour-borderStrong);background:var(--colour-surface);color:var(--colour-text);font:inherit;cursor:pointer;border-radius:12px;padding:1px 8px;font-size:.75rem}.b-chip.is-on{background:var(--colour-primary);border-color:var(--colour-primary);color:var(--colour-surface)}.b-fields__related{margin:4px 0;font-size:.78rem}.b-link{color:var(--colour-primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 4px 0 0;text-decoration:underline}.b-fields__folder>summary{cursor:pointer}.b-field-item__sensitive{background:var(--colour-badBg,#fde8eb);color:var(--colour-badText,#a40e26);border-radius:8px;padding:0 5px;font-size:.68rem}.b-edit-history{margin:0 0 12px;padding-left:22px;font-size:.85rem}.b-edit-history .is-current{font-weight:700}.b-edit-history .is-undone{color:var(--colour-textMuted)}.b-perf{padding-left:20px;font-size:.85rem}.b-perf__head{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.b-perf__sql{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--colour-neutralBg);border-radius:4px;padding:6px;font-size:.75rem}.b-tag--warn{background:var(--colour-warnBg,#fff4e0);color:var(--colour-warnText,#8a5300)}.b-comment-badge{z-index:2;background:var(--colour-heading);color:var(--colour-surface);border-radius:10px;padding:1px 6px;font-size:.75rem;position:absolute;top:-8px;left:-8px}.b-threads{margin:0;padding:0;list-style:none}.b-thread{border-left:3px solid var(--colour-primary);margin-bottom:8px;padding:4px 8px}.b-thread.is-resolved{border-left-color:var(--colour-borderStrong)}.b-comment__meta{color:var(--colour-textMuted);margin:0;font-size:.75rem}.b-comment__body{white-space:pre-wrap;overflow-wrap:anywhere;margin:2px 0 6px}.b-comment-box textarea{width:100%;font:inherit}.b-records{max-height:55vh;margin:8px 0}.b-pane{padding:16px 16px 24px}.b-pane__head{border-bottom:1px solid var(--colour-border);margin:0 0 14px;padding-bottom:12px}.b-pane__head h2{overflow-wrap:anywhere;margin-top:2px;font-size:1.02rem;line-height:1.3}.b-pane__kind{letter-spacing:.08em;color:var(--colour-primary);font-size:.68rem;font-weight:700}.b-group{border:1px solid var(--colour-border);background:var(--colour-surface);border-radius:8px;margin:0 0 8px;padding:0}.b-group>summary{-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:8px;margin:0;padding:9px 12px;font-size:.85rem;list-style:none;display:flex}.b-group>summary::-webkit-details-marker{display:none}.b-group>summary:before{content:"";border-right:2px solid var(--colour-textMuted);border-bottom:2px solid var(--colour-textMuted);flex-shrink:0;width:7px;height:7px;margin-right:2px;transition:transform .15s;transform:rotate(-45deg)}.b-group[open]>summary:before{transform:rotate(45deg)}.b-group>summary:hover{background:var(--colour-primarySubtle)}.b-group>summary:focus-visible{outline:2px solid var(--colour-primary);outline-offset:-2px}.b-group[open]>summary{border-bottom:1px solid var(--colour-border);border-radius:8px 8px 0 0;margin-bottom:0}.b-group[open]>:not(summary){margin-left:12px;margin-right:12px}.b-group[open]>summary+*{margin-top:12px}.b-group[open]>:last-child{margin-bottom:12px}.b-field{gap:5px;margin-bottom:12px}.b-field label,.b-field--group legend{color:var(--colour-neutralText);font-size:.78rem;font-weight:600}.b-field input,.b-field select,.b-field textarea{border:1px solid var(--colour-borderStrong);border-radius:6px;min-height:34px;padding:6px 10px;box-shadow:inset 0 1px 1px #0f27470a}.b-field input:focus-visible,.b-field select:focus-visible,.b-field textarea:focus-visible{outline:2px solid var(--colour-primary);outline-offset:-1px;border-color:var(--colour-primary)}.b-field__help{font-size:.76rem;line-height:1.4}.b-actions{border-top:1px solid var(--colour-border);grid-template-columns:1fr 1fr;gap:8px;margin-top:16px;padding-top:16px;display:grid}.b-actions .button{min-height:32px;padding:0 10px;font-size:12.5px}.b-actions__remove{color:var(--colour-badText);border-color:var(--colour-badBg);background:var(--colour-badBg);grid-column:1/-1}.b-actions__remove:hover:not(:disabled){background:#f9d7dc}.b-issues{background:var(--colour-surface);border:1px solid var(--colour-border);border-left:3px solid var(--colour-accent);color:var(--colour-text);border-radius:8px;padding:10px 12px}.b-issues strong{color:var(--colour-badText)}.b-issues--warn{color:var(--colour-text)}.b-field--check label{color:var(--colour-text);align-items:center;gap:8px;font-weight:500;display:flex}.b-field input[type=checkbox]{width:16px;height:16px;min-height:0;box-shadow:none;accent-color:var(--colour-primary);margin:0;padding:0}.b-left .b-pages,.b-fields{padding:14px 14px 12px}.b-left .b-pages{max-height:44%;overflow-y:auto}.b-panel__head{margin-bottom:10px}.b-panel__head h2{letter-spacing:.08em;text-transform:uppercase;color:var(--colour-neutralText);font-size:.72rem;font-weight:700}.b-panel__head .button--quiet{min-height:26px;color:var(--colour-primary);padding:0 8px;font-size:12px}.b-panel__head .button--quiet:hover:not(:disabled){background:var(--colour-primarySubtle)}.b-pages__list{flex-direction:column;gap:2px;margin:0 0 14px;display:flex}.b-pages__item,.b-pages__report{border-radius:6px;padding:6px 8px;font-size:.85rem;line-height:1.3}.b-pages__item.is-active{box-shadow:inset 3px 0 0 var(--colour-primary);border-color:#0000}.b-pages__num{background:var(--colour-neutralBg);min-width:20px;height:20px;color:var(--colour-neutralText);border-radius:10px;align-items:center;font-size:.7rem;font-weight:600}.b-pages__item.is-active .b-pages__num{background:var(--colour-primary);color:#fff}.b-pages__report{border:1px solid var(--colour-border);justify-content:center;font-size:.82rem;font-weight:600}.b-pages__report:hover{background:var(--colour-primarySubtle)}.b-fields>p:first-of-type{margin:0 0 10px}.b-fields select,.b-fields__search{min-height:34px;margin:0 0 8px;padding:6px 10px;box-shadow:inset 0 1px 1px #0f27470a}.b-fields select:focus-visible,.b-fields__search:focus-visible{outline:2px solid var(--colour-primary);outline-offset:-1px;border-color:var(--colour-primary)}.b-fields__kinds{gap:4px;margin:0 0 10px}.b-chip{min-height:24px;padding:2px 10px}.b-chip:hover:not(.is-on){background:var(--colour-neutralBg)}.b-fields__related{color:var(--colour-textMuted);margin:0 0 8px}.b-fields__group{z-index:1;background:var(--colour-surface);letter-spacing:.08em;color:var(--colour-neutralText);align-items:center;gap:6px;margin:6px 0 2px;padding:8px 0 4px;font-size:.7rem;font-weight:700;list-style:none;display:flex;position:sticky;top:-14px}.b-fields__group::-webkit-details-marker{display:none}.b-fields__group:before{content:"";border-right:2px solid var(--colour-textMuted);border-bottom:2px solid var(--colour-textMuted);width:6px;height:6px;margin:0 2px 2px 0;transition:transform .15s;transform:rotate(45deg)}.b-fields__folder:not([open])>.b-fields__group:before{transform:rotate(-45deg)}.b-fields__group .b-muted{letter-spacing:0;font-weight:500}.b-field-item{gap:8px;padding:4px 6px;font-size:.85rem}.b-field-item__icon{background:var(--colour-primarySubtle);border-radius:4px;align-items:center;min-width:22px;height:20px;font-size:.7rem}.b-field-item__label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.b-field-item__pending,.b-field-item__sensitive{flex-shrink:0;line-height:1.5}.b-fields__new{border:1px dashed var(--colour-borderStrong);min-height:28px;color:var(--colour-primary);margin:2px 0 10px;padding:0 10px;font-size:12px}.b-wells{border:1px solid var(--colour-border);background:var(--colour-surface);border-radius:8px;flex-direction:column;gap:6px;margin:0 0 10px;padding:10px 12px;display:flex}.b-well{border:1px dashed #0000;border-radius:6px;grid-template-columns:76px 1fr;align-items:start;gap:8px;padding:4px;display:grid}.b-well.is-over{border-color:var(--colour-primary);background:var(--colour-primarySubtle)}.b-well.is-missing .b-well__label{color:var(--colour-badText)}.b-well__label{color:var(--colour-neutralText);padding-top:5px;font-size:.75rem;font-weight:600}.b-well__items{flex-wrap:wrap;gap:4px;min-height:28px;display:flex}.b-well__chip{background:var(--colour-primarySubtle);color:var(--colour-primaryDark);border-radius:14px;align-items:center;gap:4px;padding:2px 4px 2px 8px;font-size:.8rem;font-weight:500;display:inline-flex}.b-well__remove{width:18px;height:18px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;font-size:.9rem;line-height:1}.b-well__remove:hover:not(:disabled){background:var(--colour-primary);color:#fff}.b-well__remove:disabled{opacity:.4;cursor:default}.b-well__add{max-width:100%;min-height:28px;font:inherit;border:1px dashed var(--colour-borderStrong);background:var(--colour-surface);color:var(--colour-textMuted);border-radius:6px;padding:2px 6px;font-size:.78rem}.b-item.is-drop-swap{outline-color:var(--colour-primary);background:var(--colour-primarySubtle)}.b-item--free{flex-direction:column;height:100%;min-height:0;display:flex}.b-item--free>.b-item__body{flex-direction:column;flex:1;min-height:0;display:flex}.b-item--free>.b-item__body>.visual{flex:1}.section__grid--free>.b-add-visual{grid-area:span 3/span 2;min-height:0}.b-ghost{border:2px dashed var(--colour-primary);background:var(--colour-primarySubtle);pointer-events:none;z-index:2;border-radius:8px}.b-resize--corner{cursor:nwse-resize;border-radius:4px;width:16px;height:16px;margin:0;top:auto;bottom:-6px;right:-6px}.b-box-fields{grid-template-columns:1fr 1fr;gap:6px 10px;display:grid}.b-box-field{flex-direction:column;gap:3px;display:flex}.b-box-field label{color:var(--colour-neutralText);font-size:.75rem;font-weight:600}.b-as-at-days{white-space:nowrap;margin-top:6px}.b-as-at-days__input{width:4.5em}.b-section.is-editing.block--callout{border-left:5px solid var(--colour-primary)}.b-section.is-editing.callout--good{border-left-color:var(--colour-pass)}.b-section.is-editing.callout--warn{border-left-color:var(--colour-warnText)}.b-section.is-editing.callout--bad{border-left-color:var(--colour-fail)}.m-dialog{width:min(1080px,96vw)}.m-dataset{max-width:420px}.m-builder{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:20px;display:grid}.m-builder__main{gap:14px;min-width:0;display:grid}.m-builder__side{gap:12px;display:grid;position:sticky;top:0}.m-builder__actions{flex-wrap:wrap;gap:8px;display:flex}@media (width<820px){.m-builder{grid-template-columns:1fr}.m-builder__side{position:static}}.m-part-edit{border:1px solid var(--colour-border);background:var(--colour-surface);border-radius:10px;gap:12px;padding:14px;display:grid}.m-part-edit__head{align-items:center;gap:8px;display:flex}.m-part-edit__head h3{flex:1;margin:0;font-size:1rem}.m-part-edit__fields{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;display:grid}.m-part__letter{background:var(--colour-primary);width:24px;height:24px;color:var(--colour-surface);border-radius:50%;flex:none;place-items:center;font-size:.8rem;font-weight:700;display:inline-grid}.m-kinds,.m-ops,.m-where{border:0;min-width:0;margin:0;padding:0}.m-kinds legend,.m-ops legend,.m-where legend{margin-bottom:6px;font-weight:600}.m-kinds__grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:6px;display:grid}.m-kind,.m-op{border:1px solid var(--colour-border);background:var(--colour-background);color:var(--colour-text);cursor:pointer}.m-kind{text-align:left;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:.85rem;display:flex}.m-kind__icon,.m-op__symbol{color:var(--colour-primary);text-align:center;min-width:1.1em;font-size:1.1rem;font-weight:700}.m-kind:hover,.m-op:hover{border-color:var(--colour-primary)}.m-kind[aria-checked=true],.m-op[aria-checked=true]{border-color:var(--colour-primary);background:var(--colour-primarySubtle);box-shadow:inset 0 0 0 1px var(--colour-primary)}.m-ops__row{flex-wrap:wrap;gap:6px;display:flex}.m-op{border-radius:999px;align-items:center;gap:6px;padding:6px 14px;display:inline-flex}.m-add-part{border:1px dashed var(--colour-borderStrong);width:100%;color:var(--colour-primary);text-align:left;cursor:pointer;background:0 0;border-radius:10px;padding:12px 14px;font-weight:600}.m-add-part:hover,.m-add-part:focus-visible{background:var(--colour-primarySubtle)}.m-labels{border-top:1px solid var(--colour-border);gap:4px;padding-top:12px;display:grid}.m-labels h3,.m-sql h3{margin:0 0 4px;font-size:1rem}.m-chips{flex-wrap:wrap;gap:6px;margin:0 0 8px;padding:0;list-style:none;display:flex}.m-chip{border:1px solid var(--colour-border);background:var(--colour-primarySubtle);color:var(--colour-text);border-radius:999px;padding:3px 10px;font-size:.82rem}.m-chip--edit{align-items:center;gap:4px;display:inline-flex}.m-chip__remove{color:var(--colour-textMuted);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:1rem;line-height:1}.m-chip__remove:hover,.m-chip__remove:focus-visible{color:var(--colour-badText)}.m-formula{border:1px solid var(--colour-border);background:var(--colour-background);border-radius:10px;gap:8px;padding:12px;display:grid}.m-part{border:1px solid var(--colour-border);border-left:4px solid var(--colour-primary);background:var(--colour-surface);border-radius:8px;gap:6px;padding:10px 12px;display:grid}.m-part__head{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.m-part__icon{color:var(--colour-primary);font-weight:700}.m-part__of{color:var(--colour-textMuted)}.m-part__where{gap:4px;display:grid}.m-part__where-label,.m-result__label,.m-heading{text-transform:uppercase;letter-spacing:.05em;color:var(--colour-textMuted);font-size:.75rem}.m-part__all{color:var(--colour-textMuted);margin:0;font-size:.82rem}.m-formula__op{background:var(--colour-primary);width:36px;height:36px;color:var(--colour-surface);border-radius:50%;justify-self:center;place-items:center;font-size:1.3rem;font-weight:700;display:grid}.m-formula__as{color:var(--colour-textMuted);margin:0;font-size:.85rem}.m-result{border:1px solid var(--colour-border);background:var(--colour-surface);border-radius:10px;gap:6px;padding:14px;display:grid}.m-result__label{margin:0}.m-result__value{color:var(--colour-heading);overflow-wrap:anywhere;margin:0;font-size:2rem;font-weight:700}.m-result__how{margin:0;font-size:.9rem}.m-result__waiting,.m-result__note{color:var(--colour-textMuted);margin:0;font-size:.8rem}.m-result__sql pre,.m-sql-view pre{background:var(--colour-background);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:6px;margin:6px 0 0;padding:8px 10px;font-size:.8rem}.m-status{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.m-status__chip{border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:600}.m-status__chip--ok{background:var(--colour-okBg);color:var(--colour-okText)}.m-status__chip--warn{background:var(--colour-warnBg);color:var(--colour-warnText)}.m-status__chip--info{background:var(--colour-infoBg);color:var(--colour-infoText)}.m-meaning{margin:0;font-size:1rem}.m-heading{margin:4px 0 0}.m-how{color:var(--colour-textMuted);margin:0;font-size:.88rem}.m-sql__input{border:1px solid var(--colour-borderStrong);background:var(--colour-background);width:100%;color:var(--colour-text);resize:vertical;border-radius:8px;padding:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.b-field-row{align-items:stretch;display:flex}.b-field-row>.b-field-item{flex:1;min-width:0}.b-field-row__view{color:var(--colour-textMuted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 8px;font-style:italic;font-weight:700}.b-field-row__view:hover,.b-field-row__view:focus-visible{color:var(--colour-primary);background:var(--colour-primarySubtle)}.upload .upload__check{justify-content:flex-end;font-weight:400}.conn-test{flex-wrap:wrap;align-items:center;gap:8px 12px;display:inline-flex}.conn-test .status{margin:0}.sample{border:1px solid var(--colour-border);border-radius:var(--radius-md);background:var(--colour-surface);gap:10px;margin-bottom:10px;padding:12px 16px;display:grid}.sample__head{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.sample__head .source__meta{flex-wrap:wrap;gap:2px 14px}.sample__head .source__meta>span{white-space:nowrap}.sample__tables>summary{cursor:pointer;color:var(--colour-textMuted);font-size:13px}.admin .sample__table{width:100%;max-width:480px;margin-top:8px}.admin .sample__table td,.admin .sample__table th{padding:6px 10px}.sample .editor__actions{flex-wrap:wrap;align-items:center;margin:0}.source{border:1px solid var(--colour-border);border-radius:var(--radius-md);background:var(--colour-surface);margin-bottom:10px;overflow:hidden}.source__head{cursor:pointer;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:12px 16px;list-style:none;display:flex}.source__head::-webkit-details-marker{display:none}.source__head:before{content:"";border-right:2px solid var(--colour-textMuted);border-bottom:2px solid var(--colour-textMuted);width:7px;height:7px;margin-right:2px;transition:transform .15s;transform:rotate(-45deg)}.source[open]>.source__head:before{transform:rotate(45deg)}.source[open]>.source__head{border-bottom:1px solid var(--colour-border);background:var(--colour-background)}.source__name{font-size:15px}.source__meta{color:var(--colour-textMuted);gap:14px;margin-left:auto;font-size:13px;display:flex}.source__body{padding:12px 16px 16px}.source__schedule{flex-wrap:wrap;align-items:flex-end;gap:10px 16px;margin-bottom:14px;display:flex}.source__schedule-field{flex-direction:column;gap:5px;font-size:13px;font-weight:600;display:flex}.source__schedule-days{align-items:center;gap:8px;font-weight:400;display:flex}.source__schedule .status{align-self:center;padding:0}.source__scroll{border:1px solid var(--colour-border);border-radius:var(--radius-sm);overflow:auto}.admin .source__table{table-layout:fixed;border-collapse:collapse;width:100%;min-width:1000px}.admin .source__table:not(.status-grid) th,.admin .source__table:not(.status-grid) td{white-space:nowrap;vertical-align:middle;padding:8px 10px}.admin .source__table:not(.status-grid) thead th{white-space:normal}.source__c-entity{width:40%}.source__c-rows{width:80px}.source__c-tick{width:72px}.source__c-name{width:17%}.source__c-keys{width:200px}.source__c-save{width:64px}.source__entity{overflow:hidden}.source__entity-btn{text-align:left;white-space:nowrap}.source__entity-btn:focus-visible{outline-offset:0}.source__entity-name{text-overflow:ellipsis;min-width:0;overflow:hidden}.source__loads{color:var(--colour-textMuted);text-overflow:ellipsis;margin-top:2px;padding-left:14px;font-size:12px;display:block;overflow:hidden}code.source__loads{font-family:var(--font-mono,ui-monospace, monospace)}.source__entity .status{padding:0}.source__tick{text-align:center}.source__save{text-align:right}.source__key-summary{flex-wrap:wrap;align-items:center;gap:2px 8px;display:flex}.source__key-cols{font-family:var(--font-mono,ui-monospace, monospace);text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.source__key-none{color:var(--colour-textMuted)}.source__key-standing{color:var(--colour-textMuted);flex-basis:100%;font-size:12px}.source__key-status{color:var(--colour-textMuted);flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:4px;font-size:12px;display:flex}.admin .source__table:not(.status-grid) td.source__key{white-space:normal}.source__history-off{text-align:left;gap:4px;margin-top:6px;font-size:12px;display:grid}.source__history-off label{align-items:center;gap:6px;display:flex}.source input.source__ignore,.source__collections input.source__ignore{margin-top:6px}.source__key-use{padding:2px 8px;font-size:12px}.source input:not([type=checkbox]),.source__collections input:not([type=checkbox]){font:inherit;box-sizing:border-box;border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);background:var(--colour-surface);width:100%;padding:5px 8px;font-size:13px}.source input:disabled,.source__collections input:disabled{background:var(--colour-background);color:var(--colour-textMuted)}.source input[type=checkbox],.source__collections input[type=checkbox]{width:16px;height:16px;accent-color:var(--colour-primary)}.source__c-filter{width:17%}.admin .source__collections td.source__filter{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.source__entity-btn{min-width:0;max-width:100%;font:inherit;color:var(--colour-text);cursor:pointer;text-overflow:ellipsis;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-weight:600;display:inline-flex;overflow:hidden}.source__entity-btn:hover{color:var(--colour-primary)}.source__caret{border-right:2px solid var(--colour-textMuted);border-bottom:2px solid var(--colour-textMuted);flex:none;width:6px;height:6px;transition:transform .15s;transform:rotate(-45deg)}.source__entity-btn[aria-expanded=true] .source__caret{transform:rotate(45deg)}.admin .source__table .source__columns-row>td,.admin .source__table .source__columns-row:hover>td{background:var(--colour-background)}.admin .source__table tbody tr:has(+.source__columns-row)>td{background:var(--colour-background)}.admin .source__table tbody tr:has(+.source__columns-row)>th{background:var(--colour-background)}.admin .source__table .source__columns-row>td{white-space:normal;padding:0 10px 12px}.source__columns{border:1px solid var(--colour-border);border-radius:var(--radius-sm);background:var(--colour-surface);overflow:hidden}.source__columns-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:10px 14px 0;display:flex}.source__columns-title{flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:14px;display:flex}.source__columns-count,.source__columns-help{color:var(--colour-textMuted);font-size:12.5px}.source__columns-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.source__columns-actions .status{padding:0}.source__columns-help{margin:4px 0 10px;padding:0 14px}.admin .source__col-table{table-layout:fixed;width:100%}.source__cc-key{width:56px}.source__cc-name{width:20%}.source__cc-type{width:13%}.source__cc-label{width:20%}.source__cc-meaning{width:32%}.source__cc-used{width:13%}.source__cc-save{width:72px}.admin .source__col-table th,.admin .source__col-table td{white-space:nowrap;vertical-align:middle;padding:5px 10px}.admin .source__col-table thead th{background:var(--colour-background);border-top:1px solid var(--colour-border)}.admin .source__columns .table:not(.status-grid) tbody tr td,.admin .source__columns .table:not(.status-grid) tbody tr th{background:var(--colour-surface)}.admin .source__columns .table:not(.status-grid) tbody tr:hover td,.admin .source__columns .table:not(.status-grid) tbody tr:hover th{background:var(--colour-primarySubtle)}.admin .source__col-table tbody tr:last-child td,.admin .source__col-table tbody tr:last-child th{border-bottom:0}.source__columns input:not([type=checkbox]){border-color:var(--colour-border);background:0 0}.source__columns input:not([type=checkbox]):hover{border-color:var(--colour-borderStrong);background:var(--colour-surface)}.source__columns input:not([type=checkbox]):focus-visible{background:var(--colour-surface)}.source__col-table .source__save .button:disabled{visibility:hidden}.source__col-name{text-overflow:ellipsis;overflow:hidden}.source__col-name code{font-family:var(--font-mono,ui-monospace, monospace);font-size:12.5px}.source__col-row--key .source__col-name code{font-weight:700}.source__col-type,.source__col-used{color:var(--colour-textMuted);text-overflow:ellipsis;font-size:13px;overflow:hidden}.input--narrow,.source .input--narrow{width:5em}.column-picker{border:1px solid var(--colour-border);border-radius:var(--radius-sm);grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 12px;max-height:260px;padding:8px 12px;display:grid;overflow-y:auto}.column-picker legend{font-size:13px;font-weight:600}.upload .column-picker label{flex-direction:row;align-items:center;font-weight:400}.source-preview,.upload .upload__wide{grid-column:1/-1}.upload textarea{font:inherit;border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);background:var(--colour-surface);padding:8px 10px;font-size:14px;font-weight:400}.sql-input,.sql-view{font-family:var(--font-mono,ui-monospace, monospace);font-size:13px}.sql-view{white-space:pre-wrap;background:var(--colour-background);border:1px solid var(--colour-border);border-radius:var(--radius-sm);max-height:260px;padding:8px 10px;overflow:auto}.usage-controls{flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:16px;display:flex}.usage-bars__plot{border-bottom:1px solid var(--colour-border);align-items:flex-end;gap:3px;height:120px;padding:8px 0;display:flex}.usage-bars__bar{background:var(--colour-primary);border-radius:2px 2px 0 0;flex:1;min-height:1px}.sparkline{color:var(--colour-primary);vertical-align:middle}.checks{margin:0 0 12px;padding:0;list-style:none}.checks li{padding:4px 0}.checks__ok span[aria-hidden]{color:color-mix(in srgb, var(--colour-pass) 75%, black);font-weight:700}.dataset-history__keep{align-items:center;gap:8px;margin:0 0 8px;font-weight:600;display:flex}.dataset-history .status{margin:0 0 8px;padding:0}.dataset-history .button{margin-top:8px}.history__facts{grid-template-columns:max-content 1fr;gap:6px 18px;margin:0 0 12px;display:grid}.history__facts dt{color:var(--colour-textMuted)}.history__facts dd{margin:0;font-weight:600}.history__notice{border-left:3px solid var(--colour-warnText);background:var(--colour-warnBg);color:var(--colour-warnText);border-radius:var(--radius-sm);margin:0 0 12px;padding:10px 12px}.history__shorter{flex-wrap:wrap;align-items:end;gap:8px 12px;display:flex}.history__shorter label{gap:4px;font-size:13px;display:grid}.history__shorter input{width:120px;font:inherit;border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);padding:5px 8px}.history__shorter small{color:var(--colour-textMuted);flex-basis:100%}.history__attention,.history__gaps{gap:10px;margin:0;padding:0;list-style:none;display:grid}.history__attention li{border:1px solid var(--colour-border);border-radius:var(--radius-sm);gap:4px;padding:10px 12px;display:grid}.history__actions,.history__off{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.history__off input{font:inherit;border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);padding:4px 8px;font-size:13px}.history__table-wrap{overflow-x:auto}.history__table{width:100%;min-width:720px}.history__table td,.history__table th{white-space:nowrap}.history__confirm-all{flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 12px;display:flex}.ref-layout{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:20px;margin-bottom:20px;display:grid}.ref-picker{display:none}.ref-nav{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:18px;padding:16px 12px;display:flex;position:sticky;top:12px}.ref-nav__group h2{text-transform:uppercase;letter-spacing:.05em;color:var(--colour-heading);margin:0 0 0 10px;font-size:12px;font-weight:700}.ref-nav__group p{color:var(--colour-textMuted);margin:2px 0 6px 10px;font-size:12px}.ref-nav__group ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.ref-nav__group--rules ul{border-left:3px solid var(--colour-warnText);margin-left:4px;padding-left:4px}.ref-nav__item{border-radius:var(--radius-sm);width:100%;font:inherit;text-align:left;color:var(--colour-text);cursor:pointer;background:0 0;border:0;border-left:3px solid #0000;flex-direction:column;padding:7px 10px;display:flex}.ref-nav__item small{color:var(--colour-textMuted);font-size:12px}.ref-nav__item:hover{background:var(--colour-primarySubtle)}.ref-nav__item.is-active{background:var(--colour-primarySubtle);border-left-color:var(--colour-primary);color:var(--colour-primaryDark);font-weight:600}.ref-effect{border-left:3px solid var(--colour-warnText);background:var(--colour-warnBg);color:var(--colour-warnText);border-radius:var(--radius-sm);margin:0;padding:10px 12px}.ref-facts{flex-wrap:wrap;gap:8px 32px;margin:0;display:flex}.ref-facts dt{color:var(--colour-textMuted);font-size:12px}.ref-facts dd{margin:0}.ref-detail .admin__intro{margin-bottom:0}.ref-detail__or{margin:8px 0 0}.ref-detail__versions summary{cursor:pointer;color:var(--colour-primary);margin:8px 0;font-weight:600}@media (width<=760px){.ref-layout{grid-template-columns:minmax(0,1fr);gap:12px}.ref-picker{display:grid}.ref-nav{display:none}}.ref-detail .table-wrap{min-height:0}.import__body{grid-template-columns:240px minmax(0,1fr) minmax(320px,380px);align-items:start;gap:16px;display:grid}.import__main{min-width:0}.import__chat{height:calc(100vh - 140px);display:flex;position:sticky;top:16px}.import__chat .chat{flex:1}.import-start{grid-template-columns:minmax(0,3fr) minmax(260px,2fr);align-items:start;gap:24px 32px;display:grid}.import-start__form{flex-direction:column;gap:16px;display:flex}.import-start__form .status{padding:0}.import-start__form .form-actions{justify-content:flex-start}.import-start__guide{border-radius:var(--radius-md);background:var(--colour-background);border:1px solid var(--colour-border);padding:16px 18px}.import-start__guide h3,.ref .import-start__guide h3{margin:0 0 10px}.import-steps{counter-reset:step;color:var(--colour-text);flex-direction:column;gap:12px;margin:0;padding:0;font-size:14px;line-height:1.45;list-style:none;display:flex}.import-steps li{padding-left:36px;position:relative}.import-steps li:before{counter-increment:step;content:counter(step);background:var(--colour-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:flex;position:absolute;top:0;left:0}@media (width<=800px){.import-start{grid-template-columns:1fr}}.import-pdf,.import-picture__add{flex-wrap:wrap;align-items:end;gap:12px 16px;margin:0 0 16px;display:flex}.import-pdf>.field:first-child,.import-picture__add>.field:first-child{flex:320px}.import-pdf>.status,.import-picture__add>.status{flex-basis:100%;padding:0}.import-pages{border:1px solid var(--colour-border);border-radius:var(--radius-md);background:var(--colour-surface);max-height:calc(100vh - 140px);position:sticky;top:16px;overflow-y:auto}.import-pages ol{margin:0;padding:0;list-style:none}.import-pages__tab{border:0;border-bottom:1px solid var(--colour-border);width:100%;color:var(--colour-text);text-align:left;font:inherit;cursor:pointer;background:0 0;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.import-pages__tab:hover,.import-pages__tab:focus-visible{background:var(--colour-primarySubtle)}.import-pages__tab.is-active{background:var(--colour-primarySubtle);box-shadow:inset 3px 0 0 var(--colour-primary)}.import-pages__name{font-weight:600}.import-pages__meta{color:var(--colour-textMuted);flex-wrap:wrap;align-items:center;gap:6px;font-size:.8125rem;display:flex}.import-page__head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.import-page__head h2{margin:0}.import-page__look{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:16px;margin-bottom:20px;display:grid}.import-page__look h3{margin:0 0 8px;font-size:1rem}.import-picture{margin:0}.import-picture img{border:1px solid var(--colour-border);border-radius:var(--radius-sm);width:100%;height:auto;display:block}.import-picture figcaption{color:var(--colour-textMuted);flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:6px;font-size:.8125rem;display:flex}.import-picture .input{max-width:100%}.import-picture--empty{border:1px dashed var(--colour-borderStrong);border-radius:var(--radius-md);padding:16px}.import-visuals,.import-filters,.import-items{flex-direction:column;gap:6px;margin:0 0 12px;padding:0;list-style:none;display:flex}.import-visual{border:1px solid var(--colour-border);border-radius:var(--radius-sm);flex-wrap:wrap;gap:4px 8px;padding:6px 8px;font-size:.875rem;display:flex}.import-visual--cannot{border-color:var(--colour-warnText);background:var(--colour-warnBg)}.import-visual__type{font-weight:600}.import-visual__how,.import-visual__fields{color:var(--colour-textMuted);flex-basis:100%}.import-visual__fields{overflow-wrap:anywhere;font-size:.8125rem}.import-filters li{overflow-wrap:anywhere;font-size:.875rem}.import-group{margin-bottom:20px}.import-group h3{margin:0;font-size:1.0625rem}.import-group__count{color:var(--colour-textMuted);font-weight:400}.import-group__hint{color:var(--colour-textMuted);margin:2px 0 8px;font-size:.875rem}.import-item{border:1px solid var(--colour-border);border-radius:var(--radius-sm);background:var(--colour-surface);padding:10px 12px}.import-group--questions .import-item,.import-group--conflict .import-item{border-left:3px solid var(--colour-warnText)}.import-item__head{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.import-item__name{overflow-wrap:anywhere;font-weight:600}.import-item__kind,.import-item__detail{color:var(--colour-textMuted);font-size:.8125rem}.import-item__detail,.import-item__note{margin:4px 0 0}.import-item__code summary{cursor:pointer;color:var(--colour-primary);margin-top:4px;font-size:.8125rem}.import-item__code pre{background:var(--colour-background);border-radius:var(--radius-sm);white-space:pre-wrap;max-height:240px;margin:6px 0 0;padding:8px;font-size:.8125rem;overflow:auto}@media (width<=1200px){.import__body{grid-template-columns:220px minmax(0,1fr)}.import__chat{grid-column:1/-1;height:560px;position:static}}@media (width<=900px){.import-page__look{grid-template-columns:1fr}}@media (width<=700px){.import__body{grid-template-columns:1fr}.import-pages{max-height:280px;position:static}}.import-build{border:1px solid var(--colour-border);border-radius:var(--radius-md);background:var(--colour-surface);margin-bottom:20px;padding:12px 14px}.import-build h3{margin:12px 0 6px;font-size:1rem}.import-rounds{margin:0;padding-left:20px;font-size:.875rem}.doc-list{margin:0;padding:0;list-style:none}.doc-row{border-bottom:1px solid var(--colour-border);flex-wrap:wrap;align-items:baseline;gap:.5rem 1rem;padding:.6rem 0;display:flex}.doc-row__title{text-align:left;font-weight:600}.doc-row__meta{color:var(--colour-textMuted);flex:18rem}.ref-upload__mode{border:0;gap:1rem;margin:0;padding:0;display:flex}.doc-view__text pre{white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--colour-border);border-radius:var(--radius-md);background:var(--colour-surface);max-height:32rem;padding:.75rem;overflow:auto}.doc-findings__group{margin-top:1.25rem}.finding-list{margin:0;padding:0;list-style:none}.finding{border-bottom:1px solid var(--colour-border);padding:.75rem 0}.finding__head{margin:0 0 .25rem}.finding__section,.finding__note,.entry__source{color:var(--colour-textMuted)}.finding__quote{border-left:3px solid var(--colour-border);margin:.25rem 0;padding-left:.75rem;font-style:italic}.finding__answer{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.finding__answer .input{flex:16rem}.brand-page{flex-direction:column;gap:20px;display:flex}.brand-files__group{flex-direction:column;gap:10px;display:flex}.brand-files__group h3,.brand-group__sub{color:var(--colour-heading);margin:4px 0 0;font-size:15px}.brand-files__list{border:1px solid var(--colour-border);border-radius:var(--radius-md);margin:0;padding:0;list-style:none}.brand-files__list li{border-bottom:1px solid var(--colour-border);align-items:center;gap:12px;padding:8px 12px;display:flex}.brand-files__list li:last-child{border-bottom:0}.brand-files__name{overflow-wrap:anywhere;flex:1;min-width:0;font-weight:600}.brand-files__meta{color:var(--colour-textMuted);font-size:13px}.brand-files__row{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.brand-files__row>div{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.brand-files__row .field{width:100%}.brand-assistant__notes{background:var(--colour-background);border-radius:var(--radius-md);margin:0;padding:10px 12px}.brand-group{border:0;flex-direction:column;gap:12px;margin:0;padding:0;display:flex}.brand-group legend{color:var(--colour-heading);margin-bottom:8px;font-size:15px;font-weight:700}.brand-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px 16px;display:grid}.brand-field{flex-direction:column;gap:5px;min-width:0;font-size:13px;font-weight:600;display:flex}.brand-field__colour{gap:6px;display:flex}.brand-field__colour input[type=color]{border:1px solid var(--colour-border);border-radius:var(--radius-sm);background:var(--colour-surface);flex:none;width:40px;height:36px;padding:2px}.brand-field__colour .input{flex:1;min-width:0;font-family:ui-monospace,monospace}.brand-field__source{color:var(--colour-textMuted);overflow-wrap:anywhere;font-size:12px;font-weight:400}.brand-derived summary{cursor:pointer;margin-bottom:10px;font-weight:600}.brand-derived .button{margin-top:10px}.brand-contrast ul{flex-direction:column;gap:4px;margin:6px 0 0;padding:0;list-style:none;display:flex}.brand-contrast__swatch{text-align:center;border:1px solid var(--colour-border);border-radius:var(--radius-sm);width:32px;margin-right:8px;font-weight:700;display:inline-block}.brand-preview__controls{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.brand-preview__width{gap:6px;display:flex}.brand-preview{border:1px solid var(--colour-border);border-radius:var(--radius-md);background:var(--colour-background);overflow:hidden}.brand-preview iframe{border:0;width:100%;height:640px;display:block}.brand-preview--phone iframe{width:390px;max-width:100%;margin:0 auto}.brand-sample__tiles{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.brand-sample__charts{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;display:grid}.brand-sample .visual{min-width:0}@media (width<=600px){.brand-files__list li{flex-wrap:wrap;gap:4px 12px}.brand-files__name{flex:100%}.brand-files__meta{flex:1}.brand-preview iframe{height:520px}}.house-chips{border:0;margin:0;padding:0}.house-chips legend{margin-bottom:6px;font-size:13px;font-weight:600}.house-chips__list{flex-wrap:wrap;gap:6px;display:flex}.house-form,.house-pending{flex-direction:column;gap:14px;display:flex}.house-summary{flex-direction:column;gap:4px;margin:6px 0 0;padding-left:20px;display:flex}.house-sources summary{cursor:pointer;font-weight:600}.house-sources ul{color:var(--colour-textMuted);margin:8px 0 0;padding-left:20px;font-size:13px}.house-decide{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.house-decide .field{flex:1;min-width:220px}.search-select{flex-direction:column;gap:5px;min-width:0;display:flex;position:relative}.upload>.search-select{grid-column:1/-1;max-width:560px}.search-select>label{font-size:13px;font-weight:600}.search-select__box{border:1px solid var(--colour-borderStrong);border-radius:var(--radius-sm);background:var(--colour-surface);color:var(--colour-textMuted);align-items:center;gap:8px;padding:0 4px 0 10px;display:flex}.search-select__box:focus-within{border-color:var(--colour-primary);box-shadow:0 0 0 3px var(--colour-primarySubtle)}.search-select .search-select__box input.search-select__input,.search-select .search-select__box input.search-select__input:focus{min-width:0;box-shadow:none;font:inherit;color:var(--colour-text);background:0 0;border:0;outline:0;flex:1;padding:8px 0;font-size:14px;font-weight:400}.search-select__toggle{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--colour-textMuted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.search-select__toggle:hover{background:var(--colour-primarySubtle);color:var(--colour-primary)}.search-select__list{z-index:20;background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:var(--radius-md);max-height:min(320px,50vh);margin:4px 0 0;padding:6px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0f27472e}.search-select__list[hidden]{display:none}.search-select__option{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:10px;padding:8px 10px;font-size:14px;display:flex}.search-select__option.is-active{background:var(--colour-primarySubtle)}.search-select__option .icon{color:var(--colour-primary)}.search-select__label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.search-select__hint{color:var(--colour-textMuted);white-space:nowrap;font-size:12px}.search-select__empty{color:var(--colour-textMuted);text-align:center;padding:12px;font-size:13px}h1,h2,h3,.page-header__title{font-family:var(--font-heading)}:root[data-tiles=light] .kpi__tile{background:var(--colour-primarySubtle);color:var(--colour-primary)}:root[data-tiles=light] .kpi__tile:not(:disabled):hover,:root[data-tiles=light] .kpi__tile.is-selected{background:var(--colour-surface);box-shadow:inset 0 0 0 2px var(--colour-primary)}:root[data-tile-edge=top] .kpi__tile{border-top:4px solid var(--colour-accent)}:root[data-tile-edge=left] .kpi__tile{border-left:4px solid var(--colour-accent)}:root[data-table-header=brand] .table thead th,:root[data-table-header=brand] .kpi__breakdown thead th{background:var(--colour-primary);color:#fff}:root[data-table-stripes=off] .table tbody tr:nth-child(2n){background:0 0}.support-pill{vertical-align:2px;border-radius:999px;padding:1px 9px;font-size:12px;font-weight:700;display:inline-block}.support-pill--on{background:var(--colour-warnBg);color:var(--colour-warnText)}.support-pill--off{background:var(--colour-neutralBg);color:var(--colour-neutralText)}.support-status--on{border-left:4px solid var(--colour-warning,var(--colour-warnText))}.support-status__line{margin:0;line-height:1.5}.support-status__actions{justify-content:flex-start}.support-form__check{cursor:pointer;align-items:flex-start;gap:10px;font-size:14px;font-weight:600;display:flex}.support-form__check input{margin-top:3px}.support-form__check small{color:var(--colour-textMuted);margin-top:2px;font-size:12px;font-weight:400;display:block}.support-table{border:1px solid var(--colour-border);border-radius:var(--radius-md);overflow-x:auto}.support-page .support-table .table{font-size:13px}.support-page .support-table .table td small{color:var(--colour-textMuted);font-size:12px;display:block}.support-banner{background:var(--colour-warnBg);color:var(--colour-warnText);border-bottom:1px solid var(--colour-border);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 28px;font-size:13.5px;display:flex}.support-banner--you{background:var(--colour-infoBg);color:var(--colour-infoText)}.support-banner__tag{border-radius:var(--radius-sm);background:var(--colour-surface);text-transform:uppercase;letter-spacing:.03em;padding:2px 8px;font-size:12px;font-weight:700}.support-banner__text{flex:260px}.support-banner__action{padding:4px 12px;text-decoration:none}.support-sign-in{background:var(--colour-background);place-items:center;min-height:100vh;padding:16px;display:grid}.support-sign-in__card{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:var(--radius-lg);width:min(440px,100%);box-shadow:var(--shadow-card);padding:28px}.support-sign-in__card h1{color:var(--colour-heading);margin:0 0 12px;font-size:20px}@media (width<=900px){.support-banner{padding:8px 16px}}
