.notification-panel{width:min(400px,calc(100vw - var(--sp-6)))}.notification-panel-list{max-height:min(480px,60vh);overflow-y:auto;margin-inline:calc(var(--sp-3) * -1)}.notification-day{font-size:var(--fs-micro);color:var(--muted);padding:var(--sp-2) var(--sp-3) var(--sp-1)}.notification-item{display:flex;gap:var(--sp-3);align-items:flex-start;padding:var(--sp-3);border-radius:var(--r);cursor:default;position:relative}.notification-item--link{cursor:pointer}.notification-item--link:hover,.notification-item--link:focus-visible{background:var(--fill-alter);outline:none}.notification-item--resolved .notification-title,.notification-item--resolved .notification-body{color:var(--muted)}.notification-icon{flex:none;width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--blue);background:var(--blue-bg)}.notification-icon--success{color:var(--teal);background:var(--tealbg)}.notification-icon--warning{color:var(--amber);background:var(--amberbg)}.notification-icon--error{color:var(--red);background:var(--redbg)}.notification-icon--resolved{color:var(--muted);background:var(--fill-alter)}.notification-main{flex:1;min-width:0}.notification-title{color:var(--text);font-size:var(--fs-body);line-height:1.4}.notification-item--unread .notification-title{font-weight:600}.notification-body{color:var(--muted-strong);font-size:var(--fs-meta);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-meta{color:var(--muted);font-size:var(--fs-micro);display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) var(--sp-2);margin-top:var(--sp-1)}.notification-side{flex:none;display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);min-width:24px}.notification-dot{width:8px;height:8px;border-radius:50%;background:var(--brand);margin-top:var(--sp-2)}.notification-toast--link{cursor:pointer}.notification-settings-link{display:inline-flex;align-items:center;min-height:var(--control-h);padding-inline:var(--sp-2)}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--text);font:var(--fs-body) / 1.5 "Inter Variable",Inter,-apple-system,"Segoe UI",sans-serif;font-feature-settings:"cv05","cv08","ss03";font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}::selection{background:var(--brand-soft);color:var(--text)}*{scrollbar-width:thin;scrollbar-color:var(--line) transparent}input,textarea{caret-color:var(--brand)}h1,h2,h3,h4,p{margin:0}h1{font-size:var(--fs-page);font-weight:var(--fw-page);line-height:1.2}h2,h3,h4{font-size:var(--fs-title);font-weight:var(--fw-title);line-height:1.3}small{font-size:var(--fs-meta)}.muted{color:var(--muted)}.fine{font-size:var(--fs-body)}.tiny{font-size:var(--fs-meta)}.code{font-weight:var(--fw-label);font-variant-numeric:tabular-nums}.code-copy{display:inline-flex;align-items:center;gap:var(--sp-1)}.copy-btn{opacity:.45;transition:opacity .12s}.barcode-inline{display:inline-flex;align-items:center;gap:var(--sp-2)}.field-item>.field-label:has(+.field-value .barcode-inline),.field-item>.field-value:has(.barcode-inline){align-self:start}tr:hover .copy-btn,.copy-btn:hover,.copy-btn:focus-visible,.detail-head:hover .copy-btn{opacity:1}.note-actor{color:var(--text);font-weight:var(--fw-label)}.note-body{white-space:pre-wrap;overflow-wrap:anywhere}.qc-totals{color:var(--muted);font-variant-numeric:tabular-nums}.qc-totals>span{display:inline-flex;align-items:center;gap:var(--sp-1);font-weight:var(--fw-title)}.qc-pass{color:var(--teal)}.qc-fail{color:var(--red)}.qc-incomplete{color:var(--amber)}.wo-time-stats{display:inline-flex;align-items:center;gap:var(--sp-1)}.wo-time-live{font-weight:var(--fw-title);font-variant-numeric:tabular-nums}.wo-time--running .wo-time-icon,.wo-time--running .wo-time-live{color:var(--blue)}.wo-time--done .wo-time-icon,.wo-time--done .wo-time-live{color:var(--teal)}.wo-time--over .wo-time-icon,.wo-time--over .wo-time-live{color:var(--amber)}@media(pointer:coarse){.copy-btn{opacity:1;min-width:32px;min-height:32px}}.eyebrow{font-weight:var(--fw-label);line-height:1.4;color:var(--muted)}.strong{font-weight:var(--fw-title)}.nowrap{white-space:nowrap}.toolbar-field{width:280px;max-width:100%}.toolbar-field-wide{width:360px;max-width:100%}.toolbar-field-narrow{width:200px;max-width:100%}.segmented-scroll{max-width:100%;overflow-x:auto;scrollbar-width:none}.list-toolbar-stack>*{width:100%;max-width:none}.right{text-align:right}.app-shell{min-height:100vh;background:var(--bg)}.app-sider{position:fixed;inset-block:0;left:0;z-index:100;display:flex;flex-direction:column;width:var(--side);background:var(--fill-alter);border-right:var(--hairline) solid var(--line2);transition:width .2s cubic-bezier(.2,0,0,1)}.app-sider[data-collapsed]{width:var(--side-collapsed)}.app-sider-drawer .app-sider{position:static;width:auto;height:100%;border-right:0}.app-sider-inner{display:flex;flex-direction:column;height:100%;min-height:0}.app-sider-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-1);height:var(--bar);padding-inline:var(--sp-2)}.app-sider[data-collapsed] .app-sider-head{justify-content:center}.app-sider-foot{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-2) var(--sp-2) var(--sp-3)}.app-sider[data-collapsed] .app-sider-foot{align-items:center}.app-brand{display:flex;align-items:center;gap:var(--sp-2);min-width:0;padding:var(--sp-1);border:0;border-radius:var(--r-sm);background:none;color:var(--text);font:inherit;font-weight:var(--fw-title);cursor:pointer}.app-brand:hover{background:var(--fill-alter)}.app-brand-mark{display:inline-flex;flex:none;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--r-sm);background:var(--brand);color:var(--brand-on)}.app-brand-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.app-sider-toggle{color:var(--muted)}.app-search-trigger{display:flex;align-items:center;gap:var(--sp-2);height:32px;margin:var(--sp-2);padding-inline:var(--sp-2);border:var(--hairline) solid var(--line);border-radius:var(--r);background:var(--paper);color:var(--muted);font:inherit;cursor:pointer}.app-search-trigger:hover{background:var(--fill-alter);color:var(--text)}.app-sider[data-collapsed] .app-search-trigger{justify-content:center;padding-inline:0}.app-search-label{flex:1;min-width:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.app-search-trigger kbd{padding-inline:var(--sp-1);border:var(--hairline) solid var(--line);border-radius:var(--r-sm);background:var(--fill-alter);color:var(--muted);font-family:inherit;font-size:var(--fs-micro)}.app-nav{display:flex;flex:1;flex-direction:column;min-height:0;overflow-y:auto}.app-nav:after{content:"";position:sticky;bottom:0;flex:none;height:var(--sp-5);background:linear-gradient(to bottom,transparent,var(--fill-alter));pointer-events:none}.app-sider[data-collapsed] .app-nav:after{height:var(--sp-2)}.app-menu-arrow{position:absolute;top:50%;inset-inline-end:var(--sp-2);color:var(--muted);transform:translateY(-50%)}.app-sider[data-collapsed] .app-menu-arrow{display:none}.app-menu-link{display:flex;align-items:center;gap:var(--sp-2);color:inherit}.app-menu-link:hover{color:inherit}.app-nav-flyout .app-menu-link{display:inline-flex}.app-menu-link{font-weight:var(--fw-label)}.app-menu-link--active{font-weight:var(--fw-title)}.app-menu-group{color:var(--text);font-weight:var(--fw-title)}.app-sider .app-nav .app-menu-link.app-menu-group{flex:auto;min-width:0}.app-nav-tile{--nav-tile: 24px;position:relative;display:inline-flex;flex:none;align-items:center;justify-content:center;width:var(--nav-tile);height:var(--nav-tile);border-radius:var(--r-sm);vertical-align:middle}.app-sider[data-collapsed] .app-nav .app-nav-tile[class]{margin-inline-start:calc((var(--fs-strong) - var(--nav-tile)) / 2)}.app-sider[data-collapsed] .app-nav-module--current .app-nav-tile{outline:var(--hairline) solid var(--nav-tone);outline-offset:2px}.app-nav-tile>svg{color:var(--nav-tone)}.app-nav-tile-count{position:absolute;top:-4px;right:-8px;min-width:16px;height:16px;padding-inline:var(--sp-1);border:var(--hairline) solid var(--fill-alter);border-radius:999px;background:var(--red-chip);color:var(--paper);font-size:var(--fs-micro);font-weight:var(--fw-title);line-height:14px;text-align:center}.app-nav-tone--blue{--nav-tone: var(--accent-blue)}.app-nav-tone--green{--nav-tone: var(--accent-green)}.app-nav-tone--purple{--nav-tone: var(--accent-purple)}.app-nav-tone--orange{--nav-tone: var(--accent-orange)}.app-nav-tone--cyan{--nav-tone: var(--accent-cyan)}.app-nav-tone--magenta{--nav-tone: var(--accent-magenta)}.app-nav-tone--geekblue{--nav-tone: var(--accent-geekblue)}.app-nav-tone--volcano{--nav-tone: var(--accent-volcano)}.app-nav-tone--gold{--nav-tone: var(--accent-gold)}.app-nav-tile.app-nav-tone--blue{background:var(--accent-blue-bg)}.app-nav-tile.app-nav-tone--green{background:var(--accent-green-bg)}.app-nav-tile.app-nav-tone--purple{background:var(--accent-purple-bg)}.app-nav-tile.app-nav-tone--orange{background:var(--accent-orange-bg)}.app-nav-tile.app-nav-tone--cyan{background:var(--accent-cyan-bg)}.app-nav-tile.app-nav-tone--magenta{background:var(--accent-magenta-bg)}.app-nav-tile.app-nav-tone--geekblue{background:var(--accent-geekblue-bg)}.app-nav-tile.app-nav-tone--volcano{background:var(--accent-volcano-bg)}.app-nav-tile.app-nav-tone--gold{background:var(--accent-gold-bg)}.app-menu-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.nav-count{flex:none;min-width:22px;padding-inline:var(--sp-2);border-radius:999px;background:var(--fill-alter);color:var(--text);font-size:var(--fs-micro);font-weight:var(--fw-label);line-height:1.6;text-align:center}.nav-count--blue{background:var(--accent-blue-bg);color:var(--accent-blue-text)}.nav-count--green{background:var(--accent-green-bg);color:var(--accent-green-text)}.nav-count--purple{background:var(--accent-purple-bg);color:var(--accent-purple-text)}.nav-count--orange{background:var(--accent-orange-bg);color:var(--accent-orange-text)}.nav-count--cyan{background:var(--accent-cyan-bg);color:var(--accent-cyan-text)}.nav-count--magenta{background:var(--accent-magenta-bg);color:var(--accent-magenta-text)}.nav-count--geekblue{background:var(--accent-geekblue-bg);color:var(--accent-geekblue-text)}.nav-count--volcano{background:var(--accent-volcano-bg);color:var(--accent-volcano-text)}.nav-count--gold{background:var(--accent-gold-bg);color:var(--accent-gold-text)}.nav-count--red{background:var(--accent-red-bg);color:var(--accent-red-text)}.app-sider[data-collapsed] .nav-count{display:none}.app-main{min-width:0;margin-left:var(--side);transition:margin-left .2s cubic-bezier(.2,0,0,1)}.app-shell-collapsed .app-main{margin-left:var(--side-collapsed)}@media(max-width:767px){.app-main,.app-shell-collapsed .app-main{margin-left:0}}.app-topbar{position:sticky;top:0;z-index:90;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);height:var(--bar);padding-inline:var(--sp-4);background:var(--paper);border-bottom:var(--hairline) solid var(--line2)}.app-topbar-left,.app-topbar-right{display:flex;align-items:center;gap:var(--sp-1);min-width:0}.app-topbar-right{flex:none}.app-crumbs{flex:0 100 auto;overflow:hidden;display:flex;align-items:center;gap:var(--sp-2);min-width:0;margin:0;padding:0;list-style:none;color:var(--muted);white-space:nowrap}.app-crumbs li+li:before{content:"/";margin-inline-end:var(--sp-2);color:var(--line)}.app-crumb-current{overflow:hidden;color:var(--text);font-weight:var(--fw-label);text-overflow:ellipsis}.theme-toggle,.app-settings-trigger{color:var(--muted)}.app-user-menu{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-2);border-radius:var(--r);cursor:pointer}.app-user-menu:hover{background:var(--fill-alter)}.app-user-title{display:flex;flex-direction:column;line-height:1.25;white-space:nowrap}.app-user-name{color:var(--text);font-weight:var(--fw-label)}.app-user-role{color:var(--muted);font-size:var(--fs-micro)}.app-content{min-height:calc(100vh - var(--bar));background:var(--paper);overflow-x:clip}.app-topbar-title{display:flex;align-items:baseline;gap:var(--sp-2);min-width:0}.app-topbar-title .page-title{overflow:hidden;color:var(--text);font-size:var(--fs-body);font-weight:var(--fw-title);line-height:1.4;white-space:nowrap;text-overflow:ellipsis}.app-crumbs+.app-topbar-title:before{content:"/";color:var(--line)}.page-subtitle{color:var(--muted);font-size:var(--fs-meta);white-space:nowrap}.app-topbar-actions{display:flex;align-items:center;gap:var(--sp-2);margin-inline-end:var(--sp-2)}.app-topbar-actions:empty{display:none}@media(max-width:767px){.page-subtitle{display:none}}.page-tabs-strip{padding-inline:var(--sp-4);border-bottom:var(--hairline) solid var(--line2)}.page-tabs-strip .ant-tabs-nav:before{display:none}.page-body{display:flex;flex-direction:column}.page-toolbar{padding:var(--sp-2) var(--sp-3);background:var(--paper)}.page-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.page-body>.view-block,.page-body>.page-toolbar,.page-body>.kpi-strip,.page-body>.content-card,.page-body>.detail-section,.page-body>.page-split{border:0;border-bottom:var(--hairline) solid var(--line2);border-radius:0}.page-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--hairline);background:var(--line2)}.page-split>*{border:0;border-radius:0;background:var(--paper)}.page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--hairline);background:var(--line2)}.page-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.page-grid>*{border:0;border-radius:0;background:var(--paper)}.page-body>.page-grid{border-bottom:var(--hairline) solid var(--line2)}@media(max-width:1199px){.page-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:991px){.page-grid:not(.page-grid-4){grid-template-columns:minmax(0,1fr)}}@media(max-width:575px){.page-grid-4{grid-template-columns:minmax(0,1fr)}}.page-body>.gantt-panel,.page-body>.gantt-layout{border:0;border-bottom:var(--hairline) solid var(--line2);border-radius:0}.page-body>.gantt-layout{gap:var(--hairline);align-items:stretch;background:var(--line2)}.page-body>.gantt-layout>.panel{border:0;border-radius:0}.page-body>.kanban-board{padding:var(--sp-4)}@media(max-width:1199px){.page-split{grid-template-columns:minmax(0,1fr)}}.ant-tag.ant-tag-processing{color:var(--blue)}.ant-tag.ant-tag-warning{color:var(--amber)}.ant-tag.ant-tag-error{color:var(--red)}.badge{display:inline-flex;align-items:center;gap:var(--sp-1);height:20px;padding-inline:calc(var(--sp-1) * 1.5);border-radius:var(--r-sm);font-size:var(--fs-micro);font-weight:var(--fw-label);line-height:1;white-space:nowrap;color:var(--paper)}.badge svg{width:12px;height:12px}.badge--neutral{background:var(--fill-secondary);color:var(--muted)}.badge--info{background:var(--blue-chip)}.badge--success{background:var(--teal-chip)}.badge--warning{background:var(--amber-chip)}.badge--danger{background:var(--red-chip)}.badge--hold{background:var(--purple-chip)}.seg{display:inline-flex;align-items:stretch;max-width:100%;height:var(--control-h, 36px);border:var(--hairline) solid var(--control-border);border-radius:var(--r);background:var(--paper);overflow:hidden;vertical-align:middle}[data-density=touch] .seg{height:calc(var(--control-h, 44px) + 2 * var(--hairline))}.seg--block{display:flex;width:100%}.seg-item{display:inline-flex;align-items:center;justify-content:center;gap:calc(var(--sp-1) * 1.5);flex:1 0 auto;min-width:0;padding:0 var(--sp-3);border:0;background:transparent;color:var(--text);font:inherit;font-weight:var(--fw-label);line-height:1;white-space:nowrap;cursor:pointer;transition:background-color .15s}:root[data-density=touch] .seg-item{min-width:44px}.seg-item+.seg-item{border-inline-start:var(--hairline) solid var(--control-border)}.seg--block .seg-item{flex:1 1 auto}.seg--small .seg-item{padding:0 var(--sp-2)}.seg-item svg{flex:none;color:var(--muted)}.seg-label{overflow:hidden;text-overflow:ellipsis}.seg-item:hover:not(:disabled):not(.seg-item--selected){background:var(--fill-alter)}.seg-item--selected{background:var(--fill-secondary)}.seg-item--selected svg{color:var(--text)}.seg-item:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.seg-item:disabled{color:var(--muted);cursor:not-allowed}.search-group-badge{min-width:96px;justify-content:center}.view-block{background:var(--paper);border:var(--hairline) solid var(--line2);border-radius:var(--r-lg);overflow:clip}.view-block-title{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);min-height:var(--bar);padding:var(--sp-2) var(--sp-4);border-bottom:var(--hairline) solid var(--line2)}.view-block-title-text{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.view-block-heading{color:var(--text);font-weight:var(--fw-title)}.view-block-description{color:var(--muted)}.view-block-extra{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}@media(max-width:767px){.view-block-title{flex-wrap:wrap}.view-block-title-text{flex:1 1 100%}}.view-block-header{padding-inline:var(--sp-4);border-bottom:var(--hairline) solid var(--line2)}.view-block-header .ant-tabs-nav:before{display:none}.view-block-toolbar{padding:var(--sp-2) var(--sp-3);border-bottom:var(--hairline) solid var(--line2)}.view-block-body{margin:calc(var(--hairline) * -1)}.view-block-body-padded{margin:0;padding:var(--sp-4)}.view-block-body>.data-card-list{padding:var(--sp-3)}.data-card{width:100%;min-width:0}.data-card-title{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.data-card-extra{flex:none}.data-card-value{min-width:0;overflow-wrap:anywhere}.data-card .cell-line{flex-wrap:wrap;white-space:normal}.data-card .cell-ellipsis{max-width:100%;overflow:visible;white-space:normal}.view-block-footer{padding:var(--sp-2) var(--sp-3);border-top:var(--hairline) solid var(--line2);color:var(--muted)}.data-table-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border-top:var(--hairline) solid var(--line2);color:var(--muted);font-size:var(--fs-meta)}.m-shell .data-table-footer .table-footer-nav{min-width:44px;min-height:44px}.list-total-row>td{background:var(--fill-alter);font-weight:var(--fw-title);font-variant-numeric:tabular-nums;white-space:nowrap}.kpi-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--hairline);background:var(--paper);border:var(--hairline) solid var(--line2);border-radius:var(--r-lg);overflow:clip}.kpi-cell{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-4);background:var(--paper);box-shadow:0 0 0 var(--hairline) var(--line2)}.kpi-cell-action{cursor:pointer}.kpi-cell-action:hover{background:var(--fill-alter)}.kpi-label{display:flex;align-items:center;gap:var(--sp-2);color:var(--muted);font-size:var(--fs-meta)}.kpi-value{color:var(--text);font-size:var(--fs-metric);font-weight:var(--fw-title);line-height:1.25;letter-spacing:-.01em}.kpi-value-warning{color:var(--amber)}.kpi-value-danger{color:var(--red)}.kpi-hint{color:var(--muted);font-size:var(--fs-meta)}.empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-4) var(--sp-4);text-align:center}.empty-state>.icon-stack{margin-bottom:var(--sp-2)}.empty-state-sm{padding:var(--sp-4)}.empty-state-sm>.icon-stack{margin-bottom:0}.icon-stack{position:relative;flex:none;width:72px;height:81px;color:var(--text)}.icon-stack--sm{width:48px;height:54px}.icon-stack--lg{width:96px;height:108px}.icon-stack-svg{width:100%;height:100%;overflow:visible}.icon-stack-layer{fill:var(--paper)}.icon-stack-shadow{filter:blur(4px)}.icon-stack-content{position:absolute;top:58%;left:71%;display:flex;align-items:center;justify-content:center;color:var(--muted);pointer-events:none;transform:translate(-50%,-50%) scaleX(.9) skewY(-26deg)}.icon-stack--primary .icon-stack-content{color:var(--brand)}.icon-stack--error,.icon-stack--error .icon-stack-content{color:var(--red)}.empty-state-title{color:var(--muted-strong)}.empty-state-description{max-width:48ch;color:var(--muted)}.empty-state-action{margin-top:var(--sp-2)}.toolbar-chip:not(.toolbar-chip-set){color:var(--muted)}.toolbar-chip-set .toolbar-chip-label{color:var(--muted)}.toolbar-chip-value{margin-inline-start:var(--sp-1);color:var(--text);font-weight:var(--fw-label)}.search-input-icon{color:var(--muted)}.ant-list .ant-list-item .ant-list-item-action{margin-inline-start:var(--sp-3)}.record.active{background:var(--brand-soft)}.form-required-mark:after{content:"*";margin-inline-start:var(--sp-1);color:var(--red)}.ant-form-item-extra{padding-block:var(--sp-2) var(--sp-1)}.form-row-2{display:grid;grid-template-columns:repeat(auto-fill,minmax(max(260px,calc((100% - 3 * var(--sp-4)) / 4)),1fr));gap:0 var(--sp-4)}.form-row-2>.form-span-2{grid-column:1 / -1}.control-block{width:100%}.measure-input.measure-pass .ant-input-number-input{background:var(--tealbg)}.measure-input.measure-fail .ant-input-number-input{background:var(--redbg);font-weight:var(--fw-title)}.cell-sub{font-size:var(--fs-meta);font-weight:var(--fw-body);color:var(--muted)}.data-table-overflow-root td,.data-table-overflow-root th{white-space:nowrap}.cell-line{display:flex;align-items:center;gap:var(--sp-2);min-width:0;white-space:nowrap}.cell-ellipsis{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:var(--cell-truncate-max, none)}.cell-ellipsis-name{max-width:320px}.cell-ellipsis-text{max-width:360px}.cell-resized{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-resized .cell-ellipsis{max-width:none}.col-resize-handle{position:absolute;top:0;bottom:0;right:0;z-index:2;width:8px;cursor:col-resize;touch-action:none}.col-resize-handle:after{content:"";position:absolute;top:20%;bottom:20%;left:3px;width:2px;border-radius:1px;background:transparent;transition:background-color .15s}th:hover>.col-resize-handle:after{background:var(--line)}.col-resize-handle:hover:after,.col-resize-handle.is-active:after,.col-resize-handle:focus-visible:after{top:0;bottom:0;background:var(--brand)}.col-resize-handle:focus-visible{outline:none}body.col-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.cell-line .row-sub{display:inline;margin-top:0;flex-shrink:0}.measure-readonly{padding:4px 11px;border-radius:var(--r);font-variant-numeric:tabular-nums}.measure-readonly.measure-pass{background:var(--tealbg)}.measure-readonly.measure-fail{background:var(--redbg);font-weight:var(--fw-title)}.heading-link{display:inline-flex;white-space:nowrap;align-items:center;gap:6px;color:var(--brand-text)}.text-danger{color:var(--red)}.color-swatch{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:0;border-radius:4px;color:var(--brand-on);cursor:pointer}.color-swatch:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.app-boot{min-height:100vh}.page-loading{display:block;margin:var(--sp-7) auto}.row-main{font-weight:var(--fw-label)}.row-sub{display:block;margin-top:var(--sp-1);font-size:var(--fs-meta);color:var(--muted)}.row-line{display:flex;align-items:center;gap:var(--sp-1);flex-shrink:0}.field-grid{display:grid;grid-template-columns:max-content minmax(0,1fr) max-content minmax(0,1fr);gap:var(--sp-3) var(--sp-5);align-items:baseline}.field-grid-1{grid-template-columns:max-content minmax(0,1fr)}.field-item{display:grid;grid-column:span 2;grid-template-columns:subgrid;align-items:inherit;row-gap:var(--sp-1);min-width:0}.field-item-wide{grid-column:1 / -1}.field-item-wide>.field-value{grid-column:2 / -1}.field-props{display:flex;flex-direction:column;gap:var(--sp-2)}.field-props-title{font-weight:var(--fw-title)}.field-props .field-grid{grid-template-columns:minmax(0,160px) minmax(0,1fr) minmax(0,160px) minmax(0,1fr);gap:0 var(--sp-4);align-items:center}.field-props .field-grid-1{grid-template-columns:minmax(0,160px) minmax(0,1fr)}.field-props .field-item{row-gap:0}.field-props .field-label,.field-props .field-value{display:flex;align-items:center;min-height:36px}.field-props-head{justify-content:flex-end}.field-props-head:has(.field-props-title){justify-content:space-between}.field-props .field-label{white-space:normal}@media(max-width:1100px){.field-props .field-grid{grid-template-columns:minmax(0,160px) minmax(0,1fr)}}@media(max-width:575px){.field-props .field-grid,.field-props .field-grid-1{grid-template-columns:minmax(0,112px) minmax(0,1fr)}}.field-with-action{display:flex;align-items:center;gap:var(--sp-1)}.detail-head-side{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);flex-shrink:0}.field-empty{color:var(--muted)}.detail-tab-pane{padding-top:var(--sp-4)}.modal-tabs-bar{margin-inline:calc(-1 * var(--modal-pad-inline))}.modal-tabs:first-child .modal-tabs-bar{margin-top:calc(-1 * var(--modal-pad-block))}.modal-tabs-nav{padding-inline:var(--modal-pad-inline)}.field-label{font-size:var(--fs-meta);color:var(--muted);white-space:nowrap}.field-value{min-width:0;font-size:var(--fs-body);overflow-wrap:anywhere}@media(max-width:1100px){.field-grid{grid-template-columns:max-content minmax(0,1fr)}}@media(max-width:575px){.field-grid{grid-template-columns:minmax(0,1fr)}.field-item{grid-column:1 / -1}.field-item-wide>.field-value{grid-column:auto}.field-label{white-space:normal}}.detail-head{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-4);padding-right:var(--sp-6)}.detail-head-id{display:flex;align-items:center;gap:var(--sp-2);min-width:0;flex:1 1 auto;white-space:nowrap}.detail-head-id,.detail-head-side{height:28px}.detail-title{flex:0 1 auto;min-width:0;margin:0;font-size:var(--fs-title);font-weight:var(--fw-title);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-entity{flex:none;font-size:var(--fs-title);font-weight:var(--fw-body);color:var(--muted)}.detail-subtitle{flex:none;font-size:var(--fs-meta);font-weight:var(--fw-body);color:var(--muted);white-space:nowrap}.detail-head-id>.copy-btn,.detail-head-id>.barcode-btn{flex:none}.detail-last-change{display:inline-flex;align-items:center;gap:var(--sp-1);flex:0 1000 auto;min-width:0;margin-left:var(--sp-2);overflow:hidden;font-size:var(--fs-meta);font-weight:var(--fw-body);color:var(--muted)}.detail-last-change>.entity-avatar{flex:none}.detail-last-change-text{overflow:hidden;text-overflow:ellipsis}@media(max-width:767px){.detail-head{flex-direction:column;align-items:stretch;gap:var(--sp-2)}.detail-last-change{display:none}}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.detail-status{display:flex;align-items:center;gap:var(--sp-2);min-width:0;white-space:nowrap}.status-line{display:inline-flex;align-items:center;min-width:0;max-width:180px;overflow:hidden;text-overflow:ellipsis}.detail-empty{color:var(--muted)}.audit-row{display:flex;flex-direction:column;gap:var(--sp-1);width:100%;min-width:0}.audit-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) var(--sp-2)}.audit-row-denied{background:var(--redbg)}.audit-actor{display:inline-flex;align-items:center;gap:var(--sp-1);color:var(--muted)}.audit-title{font-weight:var(--fw-label)}.audit-time{margin-left:auto;font-size:var(--fs-meta);color:var(--muted);white-space:nowrap}.audit-denied,.audit-version{margin-left:var(--sp-2);font-size:var(--fs-meta)}.audit-denied{color:var(--red);font-weight:var(--fw-label)}.audit-version{color:var(--muted);font-weight:var(--fw-body)}.audit-changes{display:flex;flex-wrap:wrap;gap:var(--sp-1) var(--sp-3);font-size:var(--fs-meta);color:var(--muted)}.audit-change-label{color:var(--muted)}.audit-change{color:var(--text)}.detail-footer-left{flex:1;display:flex;align-items:center}.detail-section-note{font-weight:var(--fw-body)}.alert-note{color:var(--muted)}.detail-source-link{display:inline-flex;align-items:center;gap:var(--sp-1);font-size:var(--fs-meta)}.sheet-head{min-width:0}.sheet-tile{display:inline-flex;flex:none;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--r)}.sheet-title-text{display:flex;align-items:baseline;gap:var(--sp-2);min-width:0;white-space:nowrap}.sheet-title{flex:none;font-size:var(--fs-strong);font-weight:var(--fw-title);line-height:1.3}.sheet-description{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:var(--fs-meta);font-weight:400;color:var(--muted)}.login-page{display:grid;min-height:100vh;background:var(--bg)}.login-side{position:relative;display:flex;flex-direction:column;min-width:0;background:var(--paper)}.login-side-top{display:flex;justify-content:flex-end;padding:var(--sp-4) var(--sp-4) 0}.login-main{display:flex;flex:1;align-items:center;justify-content:center;padding:var(--sp-6) var(--sp-4)}.login-panel{width:100%;max-width:400px}.login-logo{display:block;height:44px;max-width:100%}.login-title{letter-spacing:-.01em}.login-label{color:var(--text);font-weight:var(--fw-label);cursor:default}.login-forgot{padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:var(--fs-micro);cursor:pointer}.login-forgot:hover{color:var(--text)}.login-forgot:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--r-sm)}.login-field-error{font-size:var(--fs-micro)}.login-divider{color:var(--muted);font-size:var(--fs-micro);white-space:nowrap}.login-divider:before,.login-divider:after{content:"";flex:1;border-top:var(--hairline) solid var(--line)}.login-footnote{text-align:center}.login-subtitle{display:block;text-align:center}.login-legal{padding:var(--sp-4);color:var(--muted);font-size:var(--fs-micro);text-align:center}.login-brand{display:none}.login-brand-logo{position:relative;z-index:1;display:block;height:48px;align-self:flex-start}.login-brand-copy{position:relative;z-index:1}.login-brand-headline{display:flex;flex-direction:column;margin:0;font-weight:400;line-height:1.2}.login-brand-line{color:var(--brand);font-size:calc(var(--fs-page) * 1.75);font-weight:700;letter-spacing:-.01em}.login-brand-lead{max-width:30em;margin:0;color:var(--muted);font-size:var(--fs-strong);line-height:1.6}.login-brand-point{color:var(--text);font-weight:var(--fw-label)}.login-brand-point>:first-child{color:var(--brand)}.login-brand-visual{position:absolute;right:-4%;bottom:-6%;height:58%;max-width:70%;object-fit:contain;object-position:right bottom;pointer-events:none}@media(min-width:992px){.login-page{grid-template-columns:minmax(0,1.15fr) minmax(420px,1fr)}.login-brand{position:relative;display:flex;flex-direction:column;gap:var(--sp-7);overflow:hidden;padding:var(--sp-7);border-right:var(--hairline) solid var(--line);background:linear-gradient(180deg,var(--paper) 30%,var(--blue-bg) 100%)}.login-logo{display:none}}@media(min-width:992px)and (max-height:760px){.login-brand-visual{height:46%}}@media(min-width:576px){.login-main{padding:var(--sp-7) var(--sp-5)}}#print-area{display:none}@media print{body{background:#fff}#root{display:none!important}#print-area{display:block!important;margin:0;padding:0;font-size:10pt;color:#000}#print-area .print-head{display:flex;justify-content:space-between;border-bottom:2px solid #243b50;padding:0 0 15px;margin-bottom:20px}#print-area h1{font-size:21pt}#print-area h2{font-size:14pt;margin:24px 0 0}#print-area table{margin:20px 0;font-size:9pt;width:100%;border-collapse:collapse}#print-area th,#print-area td{padding:9px;border:1px solid #ccd1d8;text-align:left}#print-area .print-meta{display:grid;grid-template-columns:1fr 1fr;gap:9px}#print-area .print-note{font-size:8pt;color:#777;margin-top:20px}@page{size:A4;margin:15mm}}.app-sider-head{gap:var(--sp-1)}.ws-switcher{display:flex;flex:1 1 auto;align-items:center;gap:var(--sp-2);min-width:0;height:36px;padding-inline:var(--sp-1);border:0;border-radius:var(--r);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background-color .15s}.ws-switcher:hover{background:var(--fill-secondary)}.ws-switcher:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.ws-switcher--collapsed{flex:none;justify-content:center;width:36px;padding-inline:0}.ws-switcher--sheet{height:auto;padding:var(--sp-1)}.ws-switcher-text{display:flex;flex:1 1 auto;flex-direction:column;min-width:0;line-height:1.25}.ws-switcher-name{overflow:hidden;font-weight:var(--fw-title);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis}.ws-switcher-sub{overflow:hidden;color:var(--muted);font-size:var(--fs-micro);white-space:nowrap;text-overflow:ellipsis}.ws-switcher-chevron{flex:none;color:var(--muted)}.ws-logo{display:inline-flex;flex:none;align-items:center;justify-content:center;overflow:hidden;border-radius:var(--r-sm);background:var(--brand);color:var(--brand-on);font-weight:var(--fw-page);box-shadow:inset 0 0 0 1px var(--overlay-border)}.ws-logo--24{width:24px;height:24px;font-size:var(--fs-micro)}.ws-logo--28{width:28px;height:28px;font-size:var(--fs-meta)}.ws-logo--36{width:36px;height:36px;border-radius:var(--r);font-size:var(--fs-strong)}.ws-logo img{width:100%;height:100%;object-fit:cover;background:var(--paper)}.ws-menu-item{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);min-width:200px;margin-inline-start:var(--sp-2)}.ws-menu-name{font-weight:var(--fw-label)}.app-sider-quick{display:flex;align-items:center;gap:var(--sp-2);padding:0 var(--sp-2) var(--sp-2)}.app-sider-quick--rail{flex-direction:column}.app-sider-quick .app-search-trigger{flex:1 1 auto;min-width:0;margin:0}.app-sider[data-collapsed] .app-sider-quick .app-search-trigger{flex:none;width:36px}.app-create-trigger{flex:none;font-weight:var(--fw-label)}.app-create-trigger--icon{width:36px}.app-search-trigger kbd{white-space:nowrap}.app-menu-link--hub{font-weight:var(--fw-label)}.settings-hub{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:calc(100vh - var(--bar))}.settings-hub-nav{position:sticky;top:var(--bar);align-self:start;height:calc(100vh - var(--bar));overflow-y:auto;border-inline-end:var(--hairline) solid var(--line2);background:var(--paper)}.settings-hub-content{min-width:0}.settings-nav{display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-4) var(--sp-2)}.settings-nav-section{display:flex;flex-direction:column;gap:calc(var(--sp-1) / 2)}.settings-nav-title{padding:0 var(--sp-2) var(--sp-1);color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-label);letter-spacing:.02em}.settings-nav-link{display:flex;align-items:center;gap:var(--sp-2);min-height:var(--item-h, 32px);padding-inline:var(--sp-2);border-radius:var(--r-sm);color:var(--muted-strong);transition:background-color .15s,color .15s}.settings-nav-link svg{flex:none;color:var(--muted)}.settings-nav-link:hover{background:var(--fill-secondary);color:var(--text)}.settings-nav-link--active{background:var(--fill-secondary);color:var(--text);font-weight:var(--fw-label)}.settings-nav-link--active svg{color:var(--brand-text)}.settings-nav-label{flex:1 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.settings-nav-chevron{color:var(--muted)}.settings-hub--stacked{display:flex;flex-direction:column}.settings-strip{position:sticky;top:var(--bar);z-index:5;border-bottom:var(--hairline) solid var(--line2);background:var(--paper)}.settings-strip:before,.settings-strip:after{content:"";position:absolute;top:0;bottom:0;z-index:1;width:var(--sp-7);pointer-events:none;opacity:0;transition:opacity .15s}.settings-strip:before{inset-inline-start:0;background:linear-gradient(to right,var(--paper),transparent)}.settings-strip:after{inset-inline-end:0;background:linear-gradient(to left,var(--paper),transparent)}.settings-strip[data-fade-start]:before,.settings-strip[data-fade-end]:after{opacity:1}.settings-nav--strip{flex-direction:row;align-items:center;gap:var(--sp-3);overflow-x:auto;padding:var(--sp-2) var(--sp-3);scroll-padding-inline:var(--sp-7);scrollbar-width:none}.settings-nav--strip .settings-nav-section{flex-direction:row;align-items:center;flex:none}.settings-nav--strip .settings-nav-section+.settings-nav-section{padding-inline-start:var(--sp-3);border-inline-start:var(--hairline) solid var(--line2)}.settings-nav--strip .settings-nav-title{display:none}.settings-nav--strip .settings-nav-link{flex:none;min-height:var(--tap, 36px);white-space:nowrap}.settings-nav--list{padding:var(--sp-3) var(--sp-3) var(--sp-5)}.settings-nav--list .settings-nav-link{min-height:48px;border-bottom:var(--hairline) solid var(--line2);border-radius:0}.cmdk-input-row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:var(--hairline) solid var(--line2)}.cmdk-input-icon{flex:none;color:var(--muted)}.cmdk-input{flex:1 1 auto;padding-inline:0}.cmdk-list{max-height:min(60vh,440px);overflow-y:auto;padding:var(--sp-2);overscroll-behavior:contain}.cmdk-section{padding:var(--sp-2) var(--sp-2) var(--sp-1);color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-label)}.cmdk-item{display:flex;align-items:center;gap:var(--sp-2);min-height:40px;padding-inline:var(--sp-2);border-radius:var(--r-sm);color:var(--text);cursor:pointer}.cmdk-item--active{background:var(--fill-secondary)}.cmdk-item-icon{display:inline-flex;flex:none;align-items:center;justify-content:center;width:28px;height:28px;border:var(--hairline) solid var(--line2);border-radius:var(--r-sm);background:var(--paper);color:var(--muted)}.cmdk-item--active .cmdk-item-icon{color:var(--text)}.cmdk-item-label{flex:1 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cmdk-item-code{flex:none;color:var(--muted);font-size:var(--fs-micro);font-variant-numeric:tabular-nums}.cmdk-item-hint{flex:none;max-width:40%;overflow:hidden;color:var(--muted);font-size:var(--fs-micro);white-space:nowrap;text-overflow:ellipsis}.cmdk-empty{padding:var(--sp-6) var(--sp-3);color:var(--muted);text-align:center}.cmdk-foot{display:flex;flex-wrap:wrap;gap:var(--sp-4);padding:var(--sp-2) var(--sp-3);border-top:var(--hairline) solid var(--line2);color:var(--muted);font-size:var(--fs-micro)}.cmdk-foot span{display:inline-flex;align-items:center;gap:var(--sp-1)}.kbd{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding-inline:var(--sp-1);border:var(--hairline) solid var(--line);border-bottom-width:2px;border-radius:var(--r-sm);background:var(--paper);color:var(--muted);font-family:inherit;font-size:var(--fs-micro);font-weight:var(--fw-label);line-height:1;white-space:nowrap}.m-shell{--tabbar-h: 56px;min-height:100dvh;background:var(--paper)}.m-topbar{padding-inline:var(--sp-2);padding-top:env(safe-area-inset-top);height:calc(var(--bar) + env(safe-area-inset-top))}.m-topbar .app-topbar-left{flex:1 1 auto;gap:var(--sp-2)}.m-topbar .app-topbar-right{gap:0}.m-topbar .app-topbar-title .page-title{font-size:var(--fs-strong)}.m-topbar-back{flex:none}.m-content{min-height:calc(100dvh - var(--bar));padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + var(--sp-6))}.m-tabbar{position:fixed;right:0;bottom:0;left:0;z-index:95;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;height:calc(56px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:var(--hairline) solid var(--line2);background:color-mix(in srgb,var(--paper) 92%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(12px);backdrop-filter:saturate(1.4) blur(12px)}.m-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--sp-1) / 2);min-width:44px;height:56px;border:0;background:transparent;color:var(--muted);font:inherit;font-size:var(--fs-micro);font-weight:var(--fw-label);cursor:pointer;-webkit-tap-highlight-color:transparent}.m-tab:active{transform:scale(.96)}.m-tab--active{color:var(--brand-text)}.m-tab--active:not(.m-tab--scan) .m-tab-icon{background:var(--brand-soft)}.m-tab-icon{align-items:center;justify-content:center;width:52px;height:28px;border-radius:999px;transition:background-color .2s cubic-bezier(.2,0,0,1)}.m-tab--empty{pointer-events:none}.m-tab-icon{display:inline-flex;color:inherit}.m-tab--active .m-tab-label{font-weight:var(--fw-title)}.m-tab-label{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.m-tab--scan{justify-content:flex-end;padding-bottom:var(--sp-1)}.m-scan-button{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-top:calc(var(--sp-4) * -1);border-radius:50%;background:var(--brand);color:var(--brand-on);box-shadow:0 0 0 4px var(--paper),0 8px 20px -6px color-mix(in srgb,var(--brand) 55%,transparent);transition:transform .15s cubic-bezier(.2,0,0,1)}.m-tab--scan:active .m-scan-button{transform:scale(.94)}.m-fab{position:fixed;right:var(--sp-4);bottom:calc(56px + env(safe-area-inset-bottom) + var(--sp-4));z-index:94;display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border:0;border-radius:18px;background:var(--brand);color:var(--brand-on);box-shadow:0 10px 24px -8px color-mix(in srgb,var(--brand) 60%,transparent);cursor:pointer}.m-fab:active{transform:scale(.95)}.m-more .ant-drawer-content-wrapper,.m-more .ant-drawer-content{max-height:100dvh}.m-more .ant-drawer-body{min-height:0}.m-more-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.m-more-body{display:flex;flex-direction:column;gap:var(--sp-4);padding-bottom:calc(env(safe-area-inset-bottom) + var(--sp-2))}.m-more-section{display:flex;flex-direction:column}.m-more-section-title{padding:0 var(--sp-1) var(--sp-1);color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-label)}.m-row{display:flex;align-items:center;gap:var(--sp-3);width:100%;min-height:48px;padding-inline:var(--sp-1);border:0;border-bottom:var(--hairline) solid var(--line2);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.m-row:last-child{border-bottom:0}.m-row-icon{display:inline-flex;flex:none;align-items:center;justify-content:center;width:28px;color:var(--muted)}.m-row-label{flex:1 1 auto;min-width:0;font-weight:var(--fw-label)}.m-row-chevron{flex:none;color:var(--muted)}.m-row--control{cursor:default}.m-row--danger,.m-row--danger .m-row-icon{color:var(--red)}[data-density=touch] .app-user-menu{min-height:var(--tap)}[data-density=touch] .ws-switcher{height:var(--tap)}[data-density=touch] .ws-switcher--collapsed{width:var(--tap)}.mobile-page{display:flex;flex-direction:column;min-height:100dvh;background:var(--paper)}.mobile-page-bar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:var(--sp-2);height:calc(var(--bar) + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--sp-2) 0;border-bottom:var(--hairline) solid var(--line2);background:var(--paper)}.mobile-page-title{flex:1 1 auto;min-width:0;margin:0;overflow:hidden;color:var(--text);font-size:var(--fs-strong);font-weight:var(--fw-title);white-space:nowrap;text-overflow:ellipsis}.mobile-page-actions{display:inline-flex;flex:none;gap:var(--sp-1)}.mobile-page-body{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.public-page{min-height:100dvh;background:var(--bg)}.public-page-brand{display:flex;align-items:center;justify-content:center;gap:var(--sp-2);padding:var(--sp-4);border-bottom:var(--hairline) solid var(--line2);background:var(--paper)}.public-page-body{display:flex;flex-direction:column;gap:var(--sp-4);max-width:560px;margin-inline:auto;padding:var(--sp-5) var(--sp-4)}.public-page-title{margin:0;color:var(--text);font-size:var(--fs-page);font-weight:var(--fw-title)}.subscription-banner{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-bottom:var(--hairline) solid var(--line2);font-size:var(--fs-body);line-height:1.5}.subscription-banner-icon{flex:none}.subscription-banner--warning{background:var(--amberbg);color:var(--amber)}.subscription-banner--danger{background:var(--redbg);color:var(--red)}.subscription-banner--info{background:var(--blue-bg);color:var(--blue)}.subscription-banner-contact{color:var(--text)}.shell-result{display:flex;flex-direction:column;align-items:center;padding:var(--sp-7) var(--sp-6);text-align:center}.shell-result-icon{display:inline-flex;margin-bottom:var(--sp-5)}.shell-result--warning .shell-result-icon{color:var(--amber)}.shell-result--error .shell-result-icon{color:var(--red)}.shell-result-title{color:var(--text);font-size:var(--fs-metric);font-weight:var(--fw-title);line-height:1.35}.shell-result-subtitle{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fs-body)}.shell-result-extra{margin-top:var(--sp-5)}.topbar-sync{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:var(--tap, 44px);height:var(--tap, 44px);border-radius:var(--radius-md, 8px);color:var(--muted-strong);text-decoration:none}.topbar-sync:hover{background:var(--fill-alter);color:var(--text)}.topbar-sync:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.topbar-sync-icon{display:inline-flex}.topbar-sync-icon.is-spinning{animation:topbar-sync-spin 1s linear infinite}@keyframes topbar-sync-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.topbar-sync-icon.is-spinning{animation:none}}.topbar-sync--synced .topbar-sync-icon{color:var(--teal)}.topbar-sync--syncing .topbar-sync-icon,.topbar-sync--pulling .topbar-sync-icon{color:var(--brand-text)}.topbar-sync--pending .topbar-sync-icon{color:var(--amber)}.topbar-sync--attention{color:var(--red)}.topbar-sync--offline,.topbar-sync--paused{color:var(--muted)}.topbar-sync-count{position:absolute;top:6px;right:4px;min-width:16px;height:16px;padding:0 var(--sp-1);border-radius:999px;background:var(--amber-chip);color:var(--paper);font-size:10px;font-weight:600;line-height:16px;text-align:center;font-variant-numeric:tabular-nums}.topbar-sync--attention .topbar-sync-count{background:var(--red-chip)}.topbar-sync--offline .topbar-sync-count{background:var(--grey-chip)}.chip{display:inline-flex;align-items:center;gap:var(--sp-1);min-height:28px;padding:0 var(--sp-2);border:var(--hairline) dashed var(--line);border-radius:999px;background:var(--paper);color:var(--muted);font:inherit;font-size:var(--fs-meta);cursor:pointer;transition:background-color .15s,color .15s,border-color .15s}.chip:hover{border-color:var(--control-border);color:var(--text)}.chip:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.chip--filled,.chip--selected{border-style:solid;border-color:var(--line2);background:var(--fill-secondary);color:var(--text);font-weight:var(--fw-label)}.chip-required{color:var(--red)}[data-density=touch] .chip{min-height:44px}.action-menu-item{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);width:100%}.undo-toast{display:inline-flex;align-items:center;gap:var(--sp-2)}.approval-step-badge{max-width:100%;min-width:0;overflow:hidden}.approval-step-badge-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reason-sheet-close{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.reason-sheet-drawer .ant-drawer-close{min-width:44px;min-height:44px;margin-inline-end:0}.reason-sheet-description{color:var(--muted)}.reason-sheet-presets{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.status-seg .status-seg-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--line)}.status-seg-item--selected{font-weight:var(--fw-title)}.status-seg-item--neutral .status-seg-dot{background:var(--grey-chip)}.status-seg-item--info{background:var(--blue-bg);color:var(--blue)}.status-seg-item--info .status-seg-dot{background:var(--blue-solid)}.status-seg-item--success{background:var(--tealbg);color:var(--teal)}.status-seg-item--success .status-seg-dot{background:var(--teal-solid)}.status-seg-item--warning{background:var(--amberbg);color:var(--amber)}.status-seg-item--warning .status-seg-dot{background:var(--amber-solid)}.status-seg-item--danger{background:var(--redbg);color:var(--red)}.status-seg-item--danger .status-seg-dot{background:var(--red-solid)}.status-seg-item--hold{background:var(--purplebg);color:var(--purple)}.status-seg-item--hold .status-seg-dot{background:var(--purple-solid)}.create-sheet-body{display:flex;flex-direction:column;gap:var(--sp-4)}.create-sheet-headline{padding-inline:0;color:var(--text);font-size:calc(var(--fs-page) + 2px);font-weight:var(--fw-title);letter-spacing:-.01em;line-height:1.3}.create-sheet-chips{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.create-sheet-fields{display:flex;flex-direction:column;gap:var(--sp-3);padding-top:var(--sp-3);border-top:var(--hairline) solid var(--line2)}.create-sheet-hint{display:inline-flex;align-items:center;gap:var(--sp-1);color:var(--muted);font-size:var(--fs-micro)}.split-view{display:grid;flex:1 1 auto;min-height:0;height:calc(100vh - var(--bar))}.split-view--narrow{display:flex;flex-direction:column;height:auto}.split-list{display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--paper)}.split-list-header,.split-list-footer{flex:none;border-bottom:var(--hairline) solid var(--line2)}.split-list-footer{border-top:var(--hairline) solid var(--line2);border-bottom:0}.split-list-scroll{position:relative;flex:1 1 auto;min-height:0;overflow-y:auto;outline:none}.split-list-scroll:focus-visible{box-shadow:inset 0 0 0 2px var(--focus)}.split-list-inner{position:relative;width:100%}.split-item{position:absolute;top:0;left:0;width:100%;border-bottom:var(--hairline) solid var(--line2);cursor:pointer;transition:background-color .12s}.split-item:hover{background:var(--fill-alter)}.split-item--selected,.split-item--selected:hover{background:var(--fill-secondary);box-shadow:inset 2px 0 0 var(--brand)}.split-list-state{display:flex;justify-content:center;padding:var(--sp-6) var(--sp-3)}.split-handle{position:relative;width:1px;background:var(--line2);cursor:col-resize;touch-action:none}.split-handle:after{content:"";position:absolute;top:0;right:-4px;bottom:0;left:-4px}.split-handle:hover,.split-handle:focus-visible{background:var(--brand);outline:none}.split-detail{display:flex;flex-direction:column;min-width:0;min-height:0;overflow-y:auto}.split-detail-body{flex:1 1 auto;min-height:0}.split-detail-empty{display:flex;flex:1 1 auto;align-items:center;justify-content:center;background:var(--fill-alter)}.split-detail-hint{display:inline-flex;flex-direction:column;align-items:center;gap:var(--sp-2);color:var(--muted)}.split-detail-keys{display:inline-flex;gap:var(--sp-1)}.split-back{position:sticky;top:0;z-index:2;padding:var(--sp-1) var(--sp-2);border-bottom:var(--hairline) solid var(--line2);background:var(--paper)}.detail-pane{display:grid;grid-template-columns:minmax(0,1fr);min-height:100%}.detail-pane--rail{grid-template-columns:minmax(0,1fr) 340px}.detail-pane-main{display:flex;flex-direction:column;min-width:0}.detail-pane-head{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4) var(--sp-4) var(--sp-3);border-bottom:var(--hairline) solid var(--line2)}.detail-pane-titlebar{display:flex;align-items:center;gap:var(--sp-2);min-width:0}.detail-pane-leading{display:inline-flex;flex:none}.detail-pane-title{min-width:0;margin:0;overflow:hidden;color:var(--text);font-size:var(--fs-page);font-weight:var(--fw-title);letter-spacing:-.01em;line-height:1.3;white-space:nowrap;text-overflow:ellipsis}.detail-pane-code{display:inline-flex;flex:none;align-items:center;gap:0;color:var(--muted);font-size:var(--fs-meta);font-variant-numeric:tabular-nums}.detail-pane-actions{display:inline-flex;align-items:center;gap:var(--sp-2);margin-inline-start:auto}.detail-pane-meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--sp-1) var(--sp-3);margin:0}.meta-chip{display:flex;flex-direction:column;gap:calc(var(--sp-1) / 2);min-width:0;padding:var(--sp-1) var(--sp-2);border-radius:var(--r-sm)}.meta-chip--editable:hover{background:var(--fill-alter)}.meta-chip-label{display:inline-flex;align-items:center;gap:var(--sp-1);color:var(--muted);font-size:var(--fs-micro)}.meta-chip-value{min-width:0;margin:0;overflow:hidden;color:var(--text);white-space:nowrap;text-overflow:ellipsis}.meta-chip-button{display:inline-flex;align-items:center;max-width:100%;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.detail-pane-content{flex:1 1 auto;min-height:0;padding:0 var(--sp-4) var(--sp-4)}.detail-pane-footer{position:sticky;bottom:0;z-index:3;display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-2);min-height:var(--action-bar-h, 48px);padding:var(--sp-2) var(--sp-4);border-top:var(--hairline) solid var(--line2);background:var(--paper)}.detail-pane-rail{position:sticky;top:0;align-self:start;max-height:calc(100vh - var(--bar));overflow-y:auto;padding:var(--sp-4);border-inline-start:var(--hairline) solid var(--line2);background:var(--fill-alter)}.detail-pane-rail-title{padding-bottom:var(--sp-3);color:var(--text);font-weight:var(--fw-title)}.tab-count-label{display:inline-flex;align-items:center;gap:var(--sp-1)}.tab-count{min-width:18px;padding-inline:var(--sp-1);border-radius:999px;background:var(--fill-secondary);color:var(--muted);font-size:var(--fs-micro);text-align:center}.filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);min-height:52px;padding:var(--sp-2) var(--sp-3);border-bottom:var(--hairline) solid var(--line2);background:var(--paper)}.filter-bar-extra{display:inline-flex;align-items:center;gap:var(--sp-2);margin-inline-start:auto}.filter-chip{display:inline-flex;align-items:stretch;height:28px;overflow:hidden;border:var(--hairline) solid var(--line);border-radius:var(--r-sm);background:var(--paper)}[data-density=touch] .filter-chip{height:auto;min-height:44px}[data-density=touch] .filter-chip-main,[data-density=touch] .filter-chip-remove{min-height:44px}[data-density=touch] .filter-chip-remove{min-width:44px}.filter-chip-main{display:inline-flex;align-items:center;gap:var(--sp-1);padding:0 var(--sp-2);border:0;background:transparent;color:var(--text);font:inherit;font-size:var(--fs-meta);white-space:nowrap;cursor:pointer}.filter-chip-main:hover{background:var(--fill-alter)}.filter-chip-field{color:var(--muted-strong);font-weight:var(--fw-label)}.filter-chip-op{color:var(--muted)}.filter-chip-value{max-width:220px;overflow:hidden;color:var(--text);font-weight:var(--fw-label);text-overflow:ellipsis}.filter-chip-remove{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:0 var(--sp-1);border:0;border-inline-start:var(--hairline) solid var(--line2);background:transparent;color:var(--muted);cursor:pointer}.filter-chip-remove:hover{background:var(--fill-alter);color:var(--text)}.filter-chip-main:focus-visible,.filter-chip-remove:focus-visible,.filter-clear:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.filter-clear{display:inline-flex;align-items:center;min-height:28px;padding:0 var(--sp-2);border:0;border-radius:var(--r-sm);background:transparent;color:var(--brand-text);font:inherit;font-size:var(--fs-meta);font-weight:var(--fw-label);white-space:nowrap;cursor:pointer}.filter-clear:hover{background:var(--fill-alter)}[data-density=touch] .filter-clear{min-height:44px}.filter-add{color:var(--muted)}.filter-editor{display:flex;flex-direction:column;gap:var(--sp-2);min-width:260px;max-width:340px}.filter-editor-head{min-width:0}.filter-editor-field{font-weight:var(--fw-title)}.filter-editor-spacer{flex:1 1 auto}.filter-values{display:flex;flex-direction:column;gap:var(--sp-2)}.filter-values-list{display:flex;flex-direction:column;gap:var(--sp-1);max-height:260px;overflow-y:auto}.filter-token{color:var(--brand-text);font-weight:var(--fw-label)}.saved-views-bar{display:flex;align-items:center;gap:var(--sp-3);min-height:44px;padding:0 var(--sp-3);border-bottom:var(--hairline) solid var(--line2);background:var(--paper)}.saved-views-tabs{display:flex;flex:1 1 auto;align-items:center;gap:var(--sp-1);min-width:0;overflow-x:auto;scrollbar-width:none}.saved-views-actions{flex:none}.view-tab{display:inline-flex;flex:none;align-items:center;border-radius:var(--r-sm)}.view-tab-main{display:inline-flex;align-items:center;gap:var(--sp-1);height:28px;padding:0 var(--sp-2);border:0;border-radius:var(--r-sm);background:transparent;color:var(--muted);font:inherit;font-weight:var(--fw-label);white-space:nowrap;cursor:pointer}.view-tab-main:hover{background:var(--fill-alter);color:var(--text)}[data-density=touch] .view-tab-main,[data-density=touch] .meta-chip-button{min-height:44px}[data-density=touch] .view-tab-main{height:auto}.view-tab--active .view-tab-main{background:var(--fill-secondary);color:var(--text)}.view-tab-default{padding:0 var(--sp-1);border-radius:var(--r-sm);background:var(--brand-soft);color:var(--brand-text);font-size:var(--fs-micro)}.view-tab-dirty{width:6px;height:6px;border-radius:50%;background:var(--amber-solid)}.view-tab-menu{display:inline-flex;align-items:center;height:28px;padding:0 var(--sp-1);border:0;background:transparent;color:var(--muted);cursor:pointer}.saved-views-more{color:var(--muted)}.empty-state-lg{gap:var(--sp-3);padding:var(--sp-7) var(--sp-5)}.empty-state-lg .empty-state-title{color:var(--text);font-size:var(--fs-page);font-weight:var(--fw-title)}.empty-state-action{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-2)}.empty-state-link{display:inline-flex;align-items:center;gap:var(--sp-1);color:var(--brand-text);font-size:var(--fs-meta)}.onboarding{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4);border:var(--hairline) solid var(--line2);border-radius:var(--r-lg);background:var(--paper)}.onboarding-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.onboarding-title{display:inline-flex;align-items:center;gap:var(--sp-2);font-weight:var(--fw-title)}.onboarding-title svg{color:var(--brand-text)}.onboarding-count{color:var(--muted);font-weight:var(--fw-label);font-variant-numeric:tabular-nums}.onboarding-steps{display:flex;flex-direction:column;gap:var(--sp-1);margin:0;padding:0;list-style:none}.onboarding-step{display:flex;align-items:center;gap:var(--sp-3);min-height:44px;padding:var(--sp-1) var(--sp-2);border-radius:var(--r)}.onboarding-step--next{background:var(--fill-alter)}.onboarding-step-mark{display:inline-flex;flex:none;align-items:center;justify-content:center;width:24px;height:24px;border:var(--hairline) dashed var(--line);border-radius:50%;color:var(--muted)}.onboarding-step--done .onboarding-step-mark{border:0;background:var(--teal-solid);color:var(--paper)}.onboarding-step-text{display:flex;flex:1 1 auto;flex-direction:column;min-width:0}.onboarding-step-label{font-weight:var(--fw-label)}.onboarding-step--done .onboarding-step-label{color:var(--muted);text-decoration:line-through;text-decoration-color:var(--line)}.onboarding-step-description{color:var(--muted);font-size:var(--fs-meta)}.onboarding-compact{display:flex;align-items:center;gap:var(--sp-2);width:100%;min-height:36px;padding:0 var(--sp-2);border:var(--hairline) solid var(--line2);border-radius:var(--r);background:var(--paper);color:var(--text);font:inherit;font-weight:var(--fw-label);cursor:pointer}.onboarding-compact-label{flex:1 1 auto;text-align:left}.onboarding-compact-count{color:var(--muted);font-variant-numeric:tabular-nums}.upsell{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);max-width:520px;margin-inline:auto;padding:var(--sp-7) var(--sp-5);text-align:center}.upsell--inline{flex-direction:row;align-items:center;max-width:none;margin:0;padding:var(--sp-3) var(--sp-4);border:var(--hairline) solid var(--line2);border-radius:var(--r-lg);text-align:left}.upsell-text{display:flex;flex:1 1 auto;flex-direction:column;gap:var(--sp-1)}.upsell-title{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--sp-2);color:var(--text);font-size:var(--fs-strong);font-weight:var(--fw-title)}.upsell--inline .upsell-title{justify-content:flex-start}.upsell-description,.upsell-note{color:var(--muted)}.usage-meter{display:flex;flex-direction:column;gap:var(--sp-1)}.usage-meter-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-2)}.usage-meter-label{font-weight:var(--fw-label)}.usage-meter-value{color:var(--muted);font-variant-numeric:tabular-nums}.usage-meter-note{font-size:var(--fs-micro)}.usage-meter--near .usage-meter-note{color:var(--amber)}.usage-meter--over .usage-meter-note{color:var(--red)}.kpi-tile{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0;padding:var(--sp-3) var(--sp-4);border:0;background:var(--paper);color:var(--text);font:inherit;text-align:left}.kpi-tile--link{cursor:pointer}.kpi-tile--link:hover{background:var(--fill-alter)}.kpi-tile-label{color:var(--muted);font-size:var(--fs-meta)}.kpi-tile-value{display:inline-flex;align-items:baseline;gap:var(--sp-1)}.kpi-tile-number{font-size:var(--fs-metric);font-weight:var(--fw-title);font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.15}.kpi-tile-unit{color:var(--muted)}.kpi-tile-foot{display:flex;align-items:center;gap:var(--sp-2);min-height:28px}.kpi-tile-delta{display:inline-flex;align-items:center;gap:calc(var(--sp-1) / 2);font-size:var(--fs-micro);font-weight:var(--fw-label)}.kpi-tile-delta--success{color:var(--teal)}.kpi-tile-delta--danger{color:var(--red)}.kpi-tile-delta--neutral{color:var(--muted)}.kpi-tile-hint{color:var(--muted);font-size:var(--fs-micro)}.kpi-tile-foot .sparkline{margin-inline-start:auto}.sparkline-path{stroke:var(--muted)}.sparkline-dot{fill:var(--muted)}.sparkline--success .sparkline-path{stroke:var(--teal-solid)}.sparkline--success .sparkline-dot{fill:var(--teal-solid)}.sparkline--danger .sparkline-path{stroke:var(--red-solid)}.sparkline--danger .sparkline-dot{fill:var(--red-solid)}.sparkline--warning .sparkline-path{stroke:var(--amber-solid)}.sparkline--warning .sparkline-dot{fill:var(--amber-solid)}.sparkline--info .sparkline-path{stroke:var(--blue-solid)}.sparkline--info .sparkline-dot{fill:var(--blue-solid)}.echart{width:100%;min-width:0}.stub-panel{display:flex;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-4);border:var(--hairline) dashed var(--line);border-radius:var(--r-lg);background:var(--fill-alter)}.stub-panel-icon{display:inline-flex;flex:none;align-items:center;justify-content:center;width:40px;height:40px;border:var(--hairline) solid var(--line2);border-radius:var(--r);background:var(--paper);color:var(--muted)}.stub-panel-text{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.stub-panel-title{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);font-weight:var(--fw-title)}.stub-panel-description,.stub-panel-hint{display:inline-flex;align-items:center;gap:var(--sp-1);color:var(--muted);font-size:var(--fs-meta)}.qr-scanner{display:flex;flex:1 1 auto;flex-direction:column;min-height:100%;background:var(--paper)}.qr-scanner-viewport{position:relative;display:flex;flex:1 1 auto;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-5);min-height:360px;padding:var(--sp-6) var(--sp-4);background:var(--fill-secondary)}.qr-scanner-reticle{position:relative;width:min(62vw,240px);aspect-ratio:1}.qr-scanner-reticle span{position:absolute;width:28%;height:28%;border:4px solid var(--brand)}.qr-scanner-reticle span:nth-child(1){top:0;left:0;border-right:0;border-bottom:0;border-top-left-radius:16px}.qr-scanner-reticle span:nth-child(2){top:0;right:0;border-left:0;border-bottom:0;border-top-right-radius:16px}.qr-scanner-reticle span:nth-child(3){bottom:0;left:0;border-right:0;border-top:0;border-bottom-left-radius:16px}.qr-scanner-reticle span:nth-child(4){right:0;bottom:0;border-left:0;border-top:0;border-bottom-right-radius:16px}.qr-scanner-note{display:inline-flex;align-items:center;gap:var(--sp-2);max-width:32ch;color:var(--muted);text-align:center}.qr-scanner-panel{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4);padding-bottom:calc(env(safe-area-inset-bottom) + var(--sp-4));border-top:var(--hairline) solid var(--line2)}.qr-scanner-recent{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.qr-scanner-recent-label{color:var(--muted);font-size:var(--fs-meta)}.tab-hit{display:inline-flex;align-items:center;justify-content:center;min-width:44px}.view-block-body>.data-card-list--flat,.data-card-list--flat{padding:0}.data-card-list.data-card-list--flat .data-card-item{padding:0}.data-card-list--flat .data-card--flat{border:0;border-bottom:var(--hairline) solid var(--line2);border-radius:0;background:transparent;box-shadow:none}.data-card-list--flat .data-card-item:last-child .data-card--flat{border-bottom:0}.data-card-list--flat .data-card--flat .data-card-body{padding:var(--sp-3) var(--sp-4)}.sheet .sheet-head{contain:inline-size;width:100%;overflow:hidden}.sheet .sheet-title-text{flex:1 1 auto}.sheet .sheet-title.sheet-title--fit{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.sheet .sheet-description.sheet-description--fit{flex:0 100 auto}.sheet-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--sp-2)}
