.notifications-bell{width:100%;flex-shrink:0;padding:0;border:0;background:transparent;color:var(--c-muted);text-align:left}.notifications-bell:hover,.notifications-bell-open{background:var(--c-primary-tint);color:var(--c-primary)}.notifications-bell-icon{position:relative}.notifications-bell-count{position:absolute;right:-1px;top:0;display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;border-radius:var(--r-pill);background:var(--bad);color:var(--c-on-primary);font-size:10px;font-weight:700;line-height:1}.notifications-layer{--notifications-sidebar-width: 64px;--notifications-drawer-width: 420px;position:fixed;inset:0 0 0 var(--notifications-sidebar-width);z-index:60}.notifications-layer .modal-backdrop{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;padding:0;align-items:stretch;justify-content:flex-start;background:color-mix(in srgb,var(--c-ink) 18%,transparent)}.layout:has(>main .modal[aria-modal=true]) .notifications-layer .modal-backdrop:before{content:"";position:fixed;inset:0 auto 0 0;width:var(--notifications-sidebar-width);background:inherit;pointer-events:none}.notifications-layer .modal{position:relative;display:flex;flex-direction:column;width:min(var(--notifications-drawer-width),100%);max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:0;overflow:hidden;border-radius:0;background:var(--c-surface);box-shadow:var(--e3)}.notifications-layer .modal>header{flex-shrink:0;margin:0;padding:16px 20px;border-bottom:1px solid var(--c-line)}.notifications-layer .modal>header h2{margin:0;font-size:18px;padding-right:96px}.notifications-layer .modal-close{flex:none;min-width:28px;min-height:28px}.notifications-drawer{display:flex;flex-direction:column;min-height:0;flex:1}.notifications-total{position:absolute;top:18px;right:58px;min-height:24px;font-size:12px}.notifications-layer .notifications-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;margin:0;padding:12px 20px;border:0;border-radius:0;border-bottom:1px solid var(--c-line)}.notifications-scroll{min-height:0;flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;overscroll-behavior:contain}.notifications-scroll>p{margin:16px 20px}.notifications-state{min-height:140px;padding:20px}.notifications-group h3{margin:0;padding:16px 20px 8px;color:var(--c-muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.notifications-group ul{list-style:none;margin:0;padding:0}.notifications-card{border-bottom:1px solid var(--c-line);border-left:3px solid transparent}.notifications-card-unread{background:var(--c-primary-tint)}.notifications-card-urgent{border-left-color:var(--bad)}.notifications-card-toggle{display:grid;gap:8px;min-width:0;width:100%;padding:12px 17px;text-align:left;background:transparent;border:0;border-radius:0;color:var(--c-ink);white-space:normal}.notifications-card-toggle:hover:not(:disabled){background:var(--c-primary-soft)}.notifications-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:11px;min-width:0}.notifications-card-meta .ui-badge{height:auto;min-height:24px;max-width:100%;padding:4px 8px;line-height:1.4;white-space:normal;overflow-wrap:anywhere}.notifications-card-meta .ui-badge:before{flex:none}.notifications-card-meta time{margin-left:auto;color:var(--c-muted);font-family:var(--font-mono);line-height:1.5;overflow-wrap:anywhere}.notifications-object{min-width:0;color:var(--c-body);font-family:var(--font-mono);overflow-wrap:anywhere}.notifications-card-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11px}.notifications-read-status{color:var(--c-muted)}.notifications-card-unread .notifications-read-status{color:var(--c-primary);font-weight:600}.notifications-card-title{display:flex;align-items:start;gap:8px}.notifications-card-title strong{flex:1;min-width:0;overflow-wrap:anywhere;font-size:14px;font-weight:500;line-height:1.45}.notifications-card-unread .notifications-card-title strong{font-weight:600}.notifications-card-title svg{flex-shrink:0;margin-top:2px}.notifications-preview{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;color:var(--c-muted);font-size:12px;overflow-wrap:anywhere}.notifications-details{padding:0 17px 14px;min-width:0;font-size:13px}.notifications-message{margin:0 0 12px;white-space:pre-wrap;overflow-wrap:anywhere}.notifications-details dl{display:grid;grid-template-columns:90px minmax(0,1fr);gap:6px 10px;margin:0}.notifications-details .ui-section{margin-top:12px}.notifications-details .ui-section-content{padding:12px}.notifications-details .ui-section-head{font-size:12px}.notifications-details dt{min-width:0;overflow-wrap:anywhere;color:var(--c-muted)}.notifications-details dd{min-width:0;margin:0;overflow-wrap:anywhere}.notifications-feedback{display:grid;justify-items:start;gap:8px;padding:16px 20px}.notifications-more{padding:16px 20px;text-align:center}.notifications-toolbar>legend.notifications-visually-hidden{position:absolute;float:none;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.notifications-object-link{display:grid;justify-items:start;gap:8px;margin-bottom:10px}.notifications-object-link .ui-btn,.notifications-urgent-actions .ui-btn{max-width:100%;height:auto;min-height:32px;padding-top:8px;padding-bottom:8px;white-space:normal;overflow-wrap:anywhere;line-height:1.4}.notifications-urgent-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:61}.notifications-urgent-layer .modal{max-height:calc(100dvh - 32px);overflow-y:auto;border-top:3px solid var(--bad)}.notifications-urgent-layer .modal-backdrop{grid-template-columns:minmax(0,1fr);padding:16px}.notifications-urgent-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;margin-bottom:12px}.notifications-urgent-heading .ui-badge:before{display:none}.notifications-urgent-content h3,.notifications-urgent-content p{overflow-wrap:anywhere}.notifications-urgent-content h3{margin:0 0 12px;font-size:18px}.notifications-urgent-note{padding-top:12px;border-top:1px solid var(--c-line);font-size:12px}.notifications-urgent-actions{display:flex;flex-wrap:wrap;gap:8px}@media(max-width:540px){.notifications-layer .modal{width:100%}.notifications-layer .modal>header{padding:12px;border-bottom:0}.notifications-layer .modal>header h2{font-size:16px;padding-right:0}.notifications-total{position:static;padding:0 12px 8px}.notifications-layer .notifications-toolbar{padding:12px;gap:6px;flex-wrap:wrap}.notifications-card-toggle{padding:12px 9px}.notifications-details{padding:0 9px 12px}.notifications-details dl{grid-template-columns:minmax(0,1fr);gap:4px}.notifications-details dd:not(:last-child){margin-bottom:6px}.notifications-card-meta time{flex-basis:100%;margin-left:0}}.login-page{position:relative;isolation:isolate;min-height:100dvh;display:grid;place-items:center;padding:24px 16px;overflow:hidden;background:var(--p-50)}.login-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden}.login-blob{position:absolute;width:60vmax;height:60vmax;border-radius:50%;opacity:.85;will-change:transform;animation:login-drift 26s var(--ease-out) infinite alternate}.login-blob:nth-child(1){top:-22vmax;left:-18vmax;background:radial-gradient(circle at center,var(--p-300) 0%,transparent 65%)}.login-blob:nth-child(2){right:-20vmax;bottom:-24vmax;background:radial-gradient(circle at center,var(--p-400) 0%,transparent 62%);animation-duration:32s;animation-delay:-8s}.login-blob:nth-child(3){top:30%;left:45%;width:42vmax;height:42vmax;background:radial-gradient(circle at center,#b9cbe0 0%,transparent 65%);animation-duration:22s;animation-delay:-14s}.login-blob:nth-child(4){top:55%;left:-10vmax;width:36vmax;height:36vmax;background:radial-gradient(circle at center,var(--p-200) 0%,transparent 65%);animation-duration:28s;animation-delay:-4s}@keyframes login-drift{0%{transform:translate(0) scale(1)}50%{transform:translate(8vmax,6vmax) scale(1.12)}to{transform:translate(-6vmax,10vmax) scale(.94)}}.login-backdrop:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,rgba(10,76,70,.12) 1.6px,transparent 2px);background-size:28px 28px;-webkit-mask-image:radial-gradient(ellipse at center,#000 20%,transparent 70%);mask-image:radial-gradient(ellipse at center,#000 20%,transparent 70%)}.login-card{position:relative;width:min(380px,100%);display:grid;gap:16px;padding:32px 28px 28px;border-radius:24px;border:1px solid rgba(255,255,255,.7);background:linear-gradient(145deg,#ffffffc7,#ffffff85);box-shadow:inset 0 1px #fffffff2,inset 0 -1px #ffffff59,0 24px 60px #083a362e,0 2px 8px #083a360f;backdrop-filter:blur(24px) saturate(170%);-webkit-backdrop-filter:blur(24px) saturate(170%);animation:login-card-in var(--t-slow) var(--ease-out)}.login-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:linear-gradient(160deg,#ffffffa6,#fff0 38%);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:1px}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.login-card{background:#fffffff0}}@keyframes login-card-in{0%{opacity:0;transform:translateY(8px) scale(.98)}}.login-brand{display:grid;justify-items:center;gap:10px;margin-bottom:4px;text-align:center}.login-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(145deg,var(--p-500),var(--p-700));color:var(--c-on-primary);box-shadow:inset 0 1px #ffffff59,0 6px 16px #0e7c7059}.login-brand h1{margin:0;font-size:22px;font-weight:600;line-height:1.25;letter-spacing:-.01em;color:var(--c-ink)}.login-brand p{margin:0;font-size:14px;color:var(--c-body)}.login-card input{background:#ffffffb3;border-color:#0a4c462e}.login-card input:focus{background:var(--c-surface)}.login-card .ui-btn{width:100%;margin-top:4px}@media(prefers-reduced-motion:reduce){.login-blob,.login-card{animation:none}}.filter-bar>.primary{margin-left:auto}.admin-page .page-header{flex-wrap:wrap}.admin-page .page-header>.ui-btn{flex-shrink:0}.admin-page .filter-bar>input{min-width:0}.admin-page .table-scroll>table{min-width:640px}.admin-feedback{display:grid;justify-items:start;gap:8px;margin-bottom:12px;overflow-wrap:anywhere}.admin-feedback>.ui-alert{justify-self:stretch}.ui-btn.admin-name-button{height:auto;max-width:100%;padding:0;color:inherit;text-align:left;white-space:normal;overflow-wrap:anywhere;justify-content:flex-start}.admin-page .modal-backdrop{grid-template-columns:minmax(0,1fr);z-index:40}.modal footer .admin-footer-left{margin-right:auto}.modal footer .danger+.admin-footer-left{margin-right:auto}.modal footer .danger:has(+.admin-footer-left){margin-right:0}fieldset.admin-user-form.admin-user-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start;min-width:0;margin:0;padding:0;border:0}fieldset.admin-user-form.admin-user-single{grid-template-columns:minmax(0,1fr)}.admin-user-column:nth-child(2){animation:admin-column-in .25s ease}@keyframes admin-column-in{0%{opacity:0;transform:translate(12px)}}.admin-user-column{display:grid;gap:12px;align-content:start;min-width:0}.admin-user-column p{margin:0}.admin-note{font-size:13px}.admin-cards{display:grid;gap:6px;align-content:start;max-height:46vh;overflow-y:auto;padding-right:4px}.admin-card>span:not(.ui-badge){flex:1;min-width:0;overflow-wrap:anywhere}.admin-card code,.admin-picker code{padding:1px 6px;border:1px solid var(--c-line);border-radius:4px;background:var(--c-bg)}.admin-picker{display:grid;gap:12px}.admin-picker-list{display:grid;gap:2px;align-content:start;min-height:120px;max-height:46vh;overflow-y:auto}.admin-picker-list p{margin:0}.admin-picker-list .checkbox{gap:10px;padding:7px 8px;border-radius:6px;cursor:pointer}.admin-picker-list .checkbox:hover{background:var(--c-bg)}@media(max-width:760px){fieldset.admin-user-form.admin-user-form{grid-template-columns:minmax(0,1fr);gap:16px}.modal:has(.admin-user-form) footer,.admin-members>footer{flex-wrap:wrap}}.modal:has(.admin-user-form){transition:width .25s ease}.admin-members{display:grid;gap:12px}.admin-members p{margin:0}.admin-members-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.admin-members-head h3{margin:0}.admin-members-head .muted,.admin-members-note{font-size:13px}.admin-members-list{height:min(340px,46vh);max-height:none}.admin-card>span:first-child{display:grid;gap:1px}.admin-card-sub{font-size:12px;overflow-wrap:anywhere}.admin-picker-list .checkbox>span{display:grid;gap:1px}@media(prefers-reduced-motion:reduce){.admin-user-column:nth-child(2){animation:none}.modal:has(.admin-user-form){transition:none}}@media(max-width:600px){.admin-page .page-heading{flex-basis:100%}.admin-page .filter-bar>input{flex-basis:100%}}.audit-page .audit-filters{margin-bottom:20px}.audit-filters form{display:grid;gap:16px}.audit-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.audit-advanced-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-filter-grid label,.audit-filter-grid input{min-width:0}.audit-filter-grid input{width:100%}.audit-filters .ui-section-content,.audit-details .ui-section-content{padding:12px}.audit-filter-actions,.audit-object,.audit-pagination{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.audit-secondary{display:block}.audit-applied{display:grid;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--c-line)}.audit-applied ul{display:flex;gap:6px;flex-wrap:wrap;list-style:none;margin:0;padding:0}.audit-applied p{margin:0}.audit-applied li{min-width:0;max-width:100%}.audit-applied .ui-badge{align-items:flex-start;height:auto;min-height:24px;max-width:100%;padding:4px 10px;line-height:1.4;white-space:normal;overflow-wrap:anywhere}.audit-applied .ui-badge:before{flex:none;margin-top:.4em}.audit-table-scroll>table{min-width:800px}.audit-table-scroll:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ui-btn.audit-entry-button{height:auto;padding:0;white-space:normal;text-align:left}.audit-pagination{justify-content:space-between;margin-top:16px}.audit-feedback{display:grid;justify-items:start;gap:10px}.audit-page .modal-backdrop{grid-template-columns:minmax(0,1fr);z-index:40}.audit-details{display:grid;gap:20px;min-width:0}.audit-details h3,.audit-details h4{margin:0 0 12px}.audit-details :is(dt,dd){min-width:0;overflow-wrap:anywhere}.audit-details .ui-details dd>div>.ui-section{margin-top:8px}.audit-value{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.audit-value-preview{color:var(--c-muted)}.audit-changes{list-style:none;margin:0;padding:0;display:grid;gap:16px}.audit-changes li{min-width:0}.audit-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.audit-comparison>section{min-width:0;padding:12px;border:1px solid var(--c-line);border-radius:var(--r-md)}.audit-comparison h5{margin:0 0 8px;color:var(--c-muted);font-size:12px}@media(max-width:900px){.audit-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.audit-filter-grid,.audit-comparison,.audit-details .ui-details{grid-template-columns:minmax(0,1fr)}}.op{display:grid;gap:14px;min-width:0}.op-top{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.op-top h1{margin:0;font-size:24px;letter-spacing:-.015em}.op-top p{margin:2px 0 0;font-size:13.5px}.op-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr) minmax(0,1fr);gap:14px;align-items:stretch}.op-card{display:grid;gap:10px;align-content:start;min-width:0;padding:16px 18px;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-xl);box-shadow:var(--e1)}.op-card>*{min-width:0}.op-card h2{display:flex;align-items:center;gap:8px;margin:0;font-size:15px}.op-aside{margin-left:auto;font-size:12.5px;font-weight:400;color:var(--c-muted)}.op-count{min-width:22px;height:22px;padding:0 7px;border-radius:var(--r-pill);background:var(--bad-bg);color:var(--bad);font:600 12px/22px var(--font-sans);text-align:center}.op-count-warn{background:var(--warn-bg);color:var(--warn)}.op-clear{display:flex;align-items:center;gap:10px;margin:8px 0 0;color:var(--c-muted)}.op-clear svg{color:var(--ok)}.op-next{grid-template-rows:auto 1fr auto auto}.op-next-body{display:grid;gap:7px;align-content:start;animation:op-slide var(--t-slow) var(--ease-out)}@keyframes op-slide{0%{opacity:0;transform:translate(10px)}}.op-next-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.op-next-title h3{margin:0;font-size:22px;letter-spacing:-.015em}.op-next-time{display:flex;align-items:baseline;gap:10px;margin:0;font-size:15px;font-weight:600}.op-in{padding:2px 8px;border-radius:var(--r-pill);background:var(--c-primary-tint);color:var(--p-700);font:500 12.5px var(--font-mono)}.op-next-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;margin:0;font-size:13px;color:var(--c-body)}.op-progress{display:grid;gap:8px;margin-top:4px}.op-progress-label{font-size:12.5px;color:var(--c-muted)}.op-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.op-stage{display:grid;gap:5px}.op-stage-bar{height:8px;border-radius:var(--r-pill);background:var(--c-sunken);overflow:hidden}.op-stage-bar i{display:block;height:100%;border-radius:inherit;transition:width .6s var(--ease-out),background-color var(--t-slow) var(--ease-out);animation:op-grow .8s var(--ease-out)}@keyframes op-grow{0%{width:0}}.op-stage-name{font-size:11.5px;color:var(--c-faint);white-space:nowrap}.op-stage.done i{background:var(--c-primary)}.op-stage.done .op-stage-name{color:var(--c-muted)}.op-stage.now .op-stage-name{color:var(--c-ink);font-weight:600}.op-stage.scheduled i{background:var(--p-300)}.op-stage.preparing i{background:var(--p-400)}.op-stage.ready i{background:var(--c-primary)}.op-stage.ready .op-stage-name{color:var(--c-primary)}.op-stage.running i{background:repeating-linear-gradient(-45deg,var(--info) 0 8px,#4f7aab 8px 16px);background-size:23px 23px;animation:op-grow .8s var(--ease-out),op-stripes 1s linear infinite}.op-stage.running .op-stage-name{color:var(--info)}.op-stage.waiting i{background:repeating-linear-gradient(-45deg,var(--fill-warn) 0 8px,#e8c98a 8px 16px);background-size:23px 23px;animation:op-stripes 1.6s linear infinite}.op-stage.waiting .op-stage-name{color:var(--warn)}@keyframes op-stripes{to{background-position:23px 0}}.op-next-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.op-next-actions button{height:38px;justify-content:center;font-size:14px}button.op-tonal{display:inline-flex;align-items:center;gap:8px;border-color:transparent;background:var(--c-primary-soft);color:var(--p-800)}button.op-tonal:hover:not(:disabled){background:var(--p-200)}.op-carousel{display:flex;align-items:center;justify-content:space-between;gap:10px}.op-arrow{display:grid;place-items:center;width:32px;height:32px;padding:0;border-radius:50%;border:1.5px solid var(--p-200);color:var(--p-700)}.op-arrow:disabled{border-color:var(--c-line);color:var(--c-faint)}.op-dots{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;min-width:0}.op-dots button{flex:none}.op-dots button{width:8px;height:8px;padding:0;border:0;border-radius:var(--r-pill);background:var(--c-line-strong);transition:width var(--t-base) var(--ease-out)}.op-dots button.on{width:20px;background:var(--c-primary)}.op-today{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;padding:9px 0}.op-today+.op-today{border-top:1px solid var(--c-line)}.op-today-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--c-primary-tint);color:var(--p-700)}.op-today-n{display:flex;align-items:baseline;gap:8px;font-size:22px;font-weight:600;line-height:1.1}.op-today-n small{font-size:13px;font-weight:400;color:var(--c-body)}.op-today-parts{display:block;margin-top:4px;font-size:12px;color:var(--c-muted)}.op-note-bad{color:var(--bad);font-weight:500}.op-note-warn{color:var(--warn);font-weight:500}.op-go{display:grid;place-items:center;width:36px;height:36px;padding:0;border-radius:10px;color:var(--p-700)}.op-attention-card{grid-template-rows:auto minmax(0,1fr)}.op-attention-wrap{position:relative;min-height:120px}.op-attention{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;align-content:start;gap:6px;margin:0;padding:0 4px 0 0;overflow-y:auto;list-style:none}.op-att{display:flex;align-items:center;gap:10px;width:100%;height:auto;padding:7px 10px;border:0;border-left:4px solid;border-radius:var(--r-md);background:var(--c-bg);color:var(--c-ink);text-align:left}.op-att:hover{background:var(--c-sunken)}.op-att>span{flex:1;min-width:0}.op-att b{display:block;font-size:13px}.op-att small{display:block;overflow:hidden;font-size:12px;color:var(--c-muted);white-space:nowrap;text-overflow:ellipsis}.op-att code{font-size:11px;color:var(--c-body)}.op-att svg{color:var(--p-700)}.op-att-bad{border-left-color:var(--bad)}.op-att-warn{border-left-color:var(--fill-warn)}.op-att-warn b{color:var(--c-ink)}.op-more{display:inline-flex;align-items:center;gap:4px;margin-left:16px;font-size:13px;font-weight:500}.op-lanes{display:grid;grid-template-columns:168px minmax(0,1fr);gap:12px}.op-lane-names{display:grid;grid-auto-rows:62px;gap:6px;padding-top:20px}.op-lane-name{display:grid;align-content:center;justify-items:start;gap:3px;min-width:0;font-size:13px}.op-lane-name>span:first-child{display:flex;align-items:center;gap:6px}.op-lane-name small{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px}.op-scroller{position:relative;overflow:hidden;border-radius:var(--r-md)}.op-strip{display:grid;gap:6px;will-change:transform}.op-strip.stepping{transition:transform var(--t-slow) var(--ease-out)}.op-hours{display:grid;grid-template-columns:repeat(24,1fr);height:14px;line-height:14px;font:400 11px var(--font-mono);color:var(--c-muted)}.op-track{position:relative;height:62px;border:1px solid var(--c-line);border-radius:var(--r-md);background:repeating-linear-gradient(to right,var(--c-line) 0 1px,transparent 1px calc(100% / 24)),var(--c-surface);overflow:hidden}.op-off{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(90deg,transparent 0 4px,rgba(18,32,31,.04) 4px 8px)}.op-past{position:absolute;top:0;bottom:0;left:0;background:#12201f09}.op-now{position:absolute;top:0;bottom:0;width:2px;background:var(--bad);pointer-events:none}.op-now span{position:absolute;bottom:0;left:6px;font:600 11px var(--font-mono);color:var(--bad)}.op-block{position:absolute;top:8px;bottom:8px;display:grid;align-content:center;gap:2px;min-width:0;height:auto;padding:4px 8px;border:0;border-left:3px solid var(--ev-fg);border-radius:7px;background:var(--ev-bg);color:var(--ev-fg);text-align:left;overflow:hidden;box-shadow:none}.op-block b,.op-block small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.op-block b{font-size:12px}.op-block small{font-size:11px;opacity:.9}.op-block-neutral{--ev-bg: var(--c-sunken);--ev-fg: var(--n-600)}.op-block-primary{--ev-bg: var(--c-primary-soft);--ev-fg: var(--p-800)}.op-block-info{--ev-bg: var(--info-bg);--ev-fg: var(--info)}.op-block-ok{--ev-bg: var(--ok-bg);--ev-fg: var(--ok)}.op-block-warn{--ev-bg: var(--warn-bg);--ev-fg: var(--warn)}.op-block-bad{--ev-bg: var(--bad-bg);--ev-fg: var(--bad)}.op-block-solid.op-block-primary{background:var(--c-primary);color:var(--c-on-primary)}.op-block-solid.op-block-info{background:var(--info);color:#fff}.op-block-held{--ev-bg: var(--warn-bg);--ev-fg: var(--warn);background:repeating-linear-gradient(135deg,var(--warn-bg) 0 6px,var(--c-surface) 6px 12px);border:1px dashed var(--warn)}.op-block-late{border-left-color:var(--warn)}.op-edge{position:absolute;top:0;bottom:0;display:flex;align-items:center;gap:4px;width:92px;height:auto;padding:0 8px;border:0;border-radius:0;color:var(--p-700);font:600 11.5px var(--font-sans);box-shadow:none;opacity:.75;transition:opacity var(--t-fast) var(--ease-out)}.op-edge[hidden]{display:none}.op-edge:hover,.op-edge.on,.op-edge:focus-visible{opacity:1}.op-edge-left{left:0;justify-content:flex-start;background:linear-gradient(to right,var(--c-surface) 35%,transparent)}.op-edge-right{right:0;justify-content:flex-end;background:linear-gradient(to left,var(--c-surface) 35%,transparent)}button.op-edge-left:hover:not(:disabled),button.op-edge-left:focus-visible{background:linear-gradient(to right,var(--c-surface) 35%,transparent)}button.op-edge-right:hover:not(:disabled),button.op-edge-right:focus-visible{background:linear-gradient(to left,var(--c-surface) 35%,transparent)}.op-edge span{padding:2px 7px;border-radius:var(--r-pill);background:var(--c-primary-soft);white-space:nowrap}.op-legend-hint{margin-left:auto;font-style:italic}.op-legend{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0;font-size:12px;color:var(--c-muted)}.op-legend span{display:inline-flex;align-items:center;gap:6px}.op-legend i{display:inline-block;width:14px;height:10px;border-left:3px solid var(--ev-fg);border-radius:3px;background:var(--ev-bg)}.op-legend i.op-block-solid.op-block-primary{background:var(--c-primary)}.op-legend i.op-block-solid.op-block-info{background:var(--info)}.op-legend i.op-block-held{border:1px dashed var(--warn)}.op-legend i.op-off-swatch{border:0;background:repeating-linear-gradient(90deg,transparent 0 3px,rgba(18,32,31,.12) 3px 6px)}.op-search{position:relative;flex:1;max-width:480px;display:flex;align-items:center;gap:10px;height:40px;padding:0 14px;border:1.5px solid var(--p-200);border-radius:12px;background:var(--c-surface);color:var(--c-muted)}.op-search:focus-within{border-color:var(--c-primary);box-shadow:var(--focus-ring)}.op-search input{flex:1;min-width:0;height:100%;padding:0;border:0;background:transparent;box-shadow:none}.op-search input:focus{box-shadow:none}.op-search kbd{padding:1px 6px;border:1px solid var(--c-line);border-radius:4px;font:500 11px var(--font-mono)}.op-search-results{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;display:grid;margin:0;padding:6px;border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-surface);box-shadow:var(--e3);list-style:none}.op-search-results button{display:grid;grid-template-columns:18px auto minmax(0,1fr);gap:10px;align-items:center;width:100%;height:auto;padding:8px 10px;border:0;border-radius:var(--r-md);background:none;text-align:left;color:var(--c-ink)}.op-search-results button span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.op-search-results button.on,.op-search-results button:hover{background:var(--c-primary-tint)}.op-search-empty{padding:8px 10px}@media(max-width:1200px){.op-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.op-next{grid-column:1 / -1}}@media(max-width:760px){.op-row{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.op-next-body,.op-stage-bar i{animation:none;transition:none}}.op-project-list{display:grid;margin:0;padding:0;list-style:none}.op-project{display:grid;grid-template-columns:minmax(200px,1.2fr) minmax(160px,2fr) 120px minmax(170px,1fr) 16px;gap:18px;align-items:center;width:100%;height:auto;padding:7px 4px;border:0;border-top:1px solid var(--c-line);border-radius:0;background:none;color:var(--c-ink);text-align:left;box-shadow:none}.op-project-list li:first-child .op-project{border-top:0}.op-project:hover{background:var(--c-bg)}.op-project-name{display:flex;align-items:baseline;gap:8px;min-width:0}.op-project-name code{font-size:12px;color:var(--p-700)}.op-project-name b{overflow:hidden;font-size:14px;white-space:nowrap;text-overflow:ellipsis}.op-project-bar .ui-progress-bar{height:10px}.op-project-count{font:600 13px var(--font-mono);text-align:right}.op-project-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12.5px;color:var(--c-muted)}.op-project-meta span{display:inline-flex;align-items:center;gap:4px}.op-project>svg{color:var(--p-700)}@media(max-width:1000px){.op-project{grid-template-columns:minmax(0,1fr) auto 16px}.op-project-bar{grid-column:1 / -1;grid-row:2}.op-project-meta{display:none}}.op-projects{padding-top:10px;padding-bottom:10px}.op-projects.open{padding-bottom:14px}.op-drawer-head{display:flex;align-items:center;gap:8px;width:100%;height:auto;padding:4px 0;border:0;background:none;color:var(--c-ink);font:inherit;font-weight:600;text-align:left;box-shadow:none}.op-drawer-chevron{color:var(--c-muted);transition:transform var(--t-base) var(--ease-out)}.op-projects.open .op-drawer-chevron{transform:rotate(90deg)}#op-projects-body{animation:op-fade var(--t-base) var(--ease-out)}@keyframes op-fade{0%{opacity:0;transform:translateY(-4px)}}.rs{display:grid;gap:16px;min-width:0}.rs-top{display:flex;align-items:center;gap:16px}.rs-top h1{margin:0;font-size:26px;letter-spacing:-.015em}.rs-top p{margin:2px 0 0;font-size:14px}button.rs-ask{display:inline-flex;align-items:center;gap:8px;height:44px;margin-left:auto;padding:0 20px;font-size:15px}.rs-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;align-items:stretch}.rs-card{padding:20px 22px;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-xl);box-shadow:var(--e1)}.rs-card h2,.rs-needs h2{margin:0;font-size:15px}.rs-empty{display:flex;align-items:center;gap:10px;margin:0;color:var(--c-muted)}.rs-empty svg{color:var(--ok)}.rs-next:has(>.rs-empty){grid-template-rows:auto 1fr}.rs-next>.rs-empty{align-self:center;justify-self:center;flex-direction:column;gap:8px;padding:12px 0}.rs-next>.rs-empty svg{width:28px;height:28px;color:var(--p-400)}.rs-next{display:grid;gap:12px;align-content:start;border-color:var(--p-100);background:linear-gradient(140deg,var(--p-50),var(--c-surface) 60%)}.rs-kicker{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--p-700)}.rs-next-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rs-next-title h2{font-size:28px;letter-spacing:-.015em}.rs-when{display:flex;align-items:baseline;gap:10px;margin:0;font-size:16px;font-weight:600}.rs-in{padding:2px 10px;border:1px solid var(--p-100);border-radius:var(--r-pill);background:var(--c-surface);color:var(--p-700);font:500 13px var(--font-mono)}.rs-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;margin:0;font-size:13.5px;color:var(--c-body)}.rs-then{margin:0;font-size:13px;color:var(--c-muted)}.rs-then b{font-weight:500;color:var(--c-ink)}.rs-next-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}.rs-next-actions button{height:40px;justify-content:center;font-size:14px}button.rs-tonal{display:inline-flex;align-items:center;gap:8px;border-color:transparent;background:var(--c-primary-soft);color:var(--p-800)}button.rs-tonal:hover:not(:disabled){background:var(--p-200)}.rs-needs{display:flex;flex-direction:column;gap:12px}.rs-need-rest{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:64px;margin:0;border:1.5px dashed var(--c-line-strong);border-radius:var(--r-xl);color:var(--c-muted);font-size:13.5px}.rs-need-rest svg{color:var(--ok)}.rs-need{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 18px}.rs-need-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px}.rs-need-bad .rs-need-icon{background:var(--bad-bg);color:var(--bad)}.rs-need-warn .rs-need-icon{background:var(--warn-bg);color:var(--warn)}.rs-need b{display:block;overflow:hidden;font-size:14.5px;white-space:nowrap;text-overflow:ellipsis}.rs-need small{display:block;overflow:hidden;font-size:13px;color:var(--c-body);white-space:nowrap;text-overflow:ellipsis}.rs-experiments{display:grid;gap:8px}.rs-experiments h2 .muted{margin-left:6px;font-size:13px;font-weight:400}.rs-series{display:grid;margin:0;padding:0;list-style:none}.rs-series button{display:grid;grid-template-columns:220px minmax(0,1fr) 64px;gap:20px;align-items:center;width:100%;height:auto;padding:10px 6px;border:0;border-radius:var(--r-md);background:none;color:var(--c-ink);text-align:left;box-shadow:none}.rs-series button:hover{background:var(--c-bg)}.rs-series-name b{display:block;font-size:14px}.rs-series-name small{font-size:12px;color:var(--c-muted)}.rs-series .ui-progress-bar{height:14px}.rs-series-count{font:600 15px var(--font-mono);text-align:right}.rs-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.rs-link{display:grid;grid-template-columns:52px minmax(0,1fr) 18px;gap:16px;align-items:center;width:100%;height:auto;padding:18px 20px;border:1px solid var(--c-line);border-radius:var(--r-xl);background:var(--c-surface);color:var(--c-ink);text-align:left;box-shadow:var(--e1);transition:border-color var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out)}.rs-link:hover:not(:disabled){border-color:var(--p-300);box-shadow:var(--e2)}.rs-link-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--c-primary-tint);color:var(--p-700)}.rs-tone-ok{background:var(--ok-bg);color:var(--ok)}.rs-tone-warn{background:var(--warn-bg);color:var(--warn)}.rs-tone-bad{background:var(--bad-bg);color:var(--bad)}.rs-link b{display:block;font-size:16px}.rs-link small{display:block;margin-top:2px;font-size:13px;color:var(--c-muted)}.rs-link>svg:last-child{color:var(--p-700)}@media(max-width:1000px){.rs-row,.rs-links{grid-template-columns:minmax(0,1fr)}.rs-series button{grid-template-columns:minmax(0,1fr) 56px}.rs-series .ui-progress{grid-column:1 / -1;grid-row:2}}.pl-detail{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px;align-items:start}.pl-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0}.pl-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.pl-history{display:grid;grid-auto-rows:max-content;gap:10px;align-content:start;align-self:stretch;max-height:60vh;overflow-y:auto;padding-left:32px;margin-left:-16px;border-left:1px solid var(--c-line)}.pl-drawer{display:grid;gap:6px;padding:10px 12px 12px}.pl-drawer p{margin:0}.pl-count{margin-left:auto;font:500 12px var(--font-mono);color:var(--c-muted)}.pl-link{justify-content:space-between;gap:12px}.pl-link-main{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;min-width:0;font-size:13px}.pl-link-main strong{white-space:nowrap}.pl-link-note{flex-basis:100%;overflow-wrap:anywhere}.pl-location{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pl-location>div{display:grid;gap:4px}.pl-location input[type=number]{min-width:0;width:100%}@media(max-width:760px){.pl-detail{grid-template-columns:minmax(0,1fr);gap:16px}.pl-history{max-height:none;padding-left:0;margin-left:0;border-left:none;border-top:1px solid var(--c-line);padding-top:12px}}.modal-backdrop:has(.protocol-designer),.modal-backdrop:has(.protocol-designer)~.modal-backdrop{z-index:40}.modal-backdrop:has(.protocol-designer)~.modal-backdrop .modal{max-width:calc(100vw - 48px)}.modal:has(.protocol-designer){display:flex;flex-direction:column;width:min(1120px,calc(100vw - 48px));overflow:hidden}.modal .protocol-designer{display:flex;flex-direction:column;gap:12px;min-height:0}.protocol-designer :is(input,select){min-width:0;max-width:100%}.pd-body{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:28px;min-height:0;overflow-y:auto;padding:2px 6px 2px 2px}.pd-body-single{grid-template-columns:minmax(0,1fr)}.pd-column{display:grid;gap:16px;align-content:start}.pd-section{display:grid;gap:10px}.pd-section+.pd-section{border-top:1px solid var(--c-line);padding-top:16px}.pd-section h3,.pd-section p{margin:0}.pd-pair,.pd-samples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pd-parameters,.pd-list{display:grid;gap:6px}.pd-parameter{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.5fr) minmax(0,.9fr) 60px 100px;gap:6px;align-items:center}.pd-parameter-head{font-size:12px;color:var(--c-muted)}.pd-parameter-head span:nth-child(4){text-align:center}.pd-parameter input[type=checkbox]{justify-self:center}.pd-parameter-actions{display:flex;align-items:center;gap:2px}.pd-number-bounds{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-bottom:4px}.pd-row-errors{grid-column:1 / -1;display:grid;gap:4px;font-size:13px}.pd-system{font-size:12px}.pd-options{grid-column:1 / -1;padding-bottom:4px}.pd-list-row{display:grid;grid-template-columns:minmax(0,1fr) 32px;gap:6px;align-items:center}@media(max-width:900px){.pd-body{grid-template-columns:minmax(0,1fr)}.pd-parameter{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 60px 100px}.pd-parameter-head{display:none}.pd-parameter>:nth-child(1){grid-column:1 / 3}.pd-parameter>:nth-child(2){grid-column:1;grid-row:2}.pd-parameter>:nth-child(3){grid-column:2;grid-row:2}.pd-parameter>:nth-child(4){grid-column:3;grid-row:1}.pd-parameter>:nth-child(5){grid-column:4;grid-row:1}.pd-options,.pd-number-bounds{grid-row:3}}@media(max-width:600px){.pd-parameter{grid-template-columns:repeat(2,minmax(0,1fr))}.pd-parameter>:nth-child(4){grid-column:1;grid-row:3}.pd-parameter>:nth-child(5){grid-column:2;grid-row:3;justify-self:end}.pd-options,.pd-number-bounds{grid-row:4}}.run-filters{align-items:flex-end}.run-date{display:flex;align-items:center;gap:6px}.runs-layout{--ui-panel-width: 460px}.runs-table{min-width:0;overflow-x:auto}tr.selected{background:var(--c-primary-tint)}.run-missing{margin-top:4px;font-size:12px;color:var(--bad)}.run-panel{display:grid;gap:14px}.run-panel h3{margin:0 0 8px}.run-panel .ui-inline-form h3{margin:0}.run-text{white-space:pre-wrap}.run-project{display:grid;gap:6px;margin-bottom:8px}.run-project>strong{font-size:12px;font-weight:600;letter-spacing:.05em;color:var(--c-muted)}.run-task{display:grid;gap:8px;padding:10px 12px;border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface);font-size:13px}.run-task-head{display:flex;align-items:center;gap:8px}.run-task-head b{font:600 13.5px var(--font-mono)}.run-task-open{display:inline-flex;align-items:center;gap:2px;margin-left:auto;font-size:12.5px}.run-task .ui-details{gap:4px 12px}.run-barcodes{display:flex;flex-wrap:wrap;gap:4px}.run-checklist{list-style:none;margin:0;padding:0;display:grid;gap:6px}.run-check{display:flex;align-items:center;gap:8px;color:var(--c-ink)}.run-check .muted{margin-left:auto;font-size:12px}.run-checklist-block{display:grid;gap:8px}.run-checklist-block .run-checklist{padding:8px 12px}.run-checklist-block .ui-alert,.run-group-note{margin:8px 12px 0}.run-group-note{font-size:12px;color:var(--c-muted)}.run-group-count{display:inline-flex;align-items:center;gap:4px;margin-left:auto;font:500 12px var(--font-mono);color:var(--c-muted)}.run-group-done{color:var(--ok)}.run-check-auto{color:var(--c-body)}.run-check input[type=checkbox]{flex:none;width:16px;height:16px;margin:0}.run-check-auto>svg{flex:none;color:var(--ok)}.run-check-failed>svg{color:var(--bad)}.run-check-tag{margin-left:auto;font-size:12px;color:var(--c-muted);white-space:nowrap}.run-form-note{margin:0;font-size:13px}.run-section-title{display:flex;align-items:center;justify-content:space-between}.run-input td:first-child{color:var(--c-muted);width:50%}.run-files{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:13px}.run-files li{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.run-file-category{font-size:11px;text-transform:uppercase;color:var(--c-muted);min-width:48px}.run-upload{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;padding:10px;border:1px dashed var(--c-line);border-radius:6px}.run-upload input[type=file]{flex:1;min-width:0}.run-ticket{display:grid;gap:6px;margin-bottom:8px}.run-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px}.run-actions-hint{font-size:12px}:is(.run-actions,.ui-inline-form) .danger{margin-right:auto}.calendar{position:relative;isolation:isolate;background:var(--c-surface);border:1px solid var(--c-line);border-radius:8px}.cal-nav{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}.cal-nav h2{margin:0 8px;min-width:220px}.cal-nav>button{display:inline-flex;align-items:center;padding:5px 10px}.cal-views{margin-left:auto}.cal-head,.cal-body{display:grid;scrollbar-gutter:stable}.cal-head{overflow-y:hidden;border-bottom:1px solid var(--c-line)}.cal-head>div{padding:8px;font-size:12px;font-weight:600;text-align:center;color:var(--c-muted)}.cal-head>.today{color:var(--c-primary)}.cal-body{height:600px;overflow-y:auto}.cal-hours{position:relative}.cal-hours span{position:absolute;right:8px;transform:translateY(-50%);font-size:11px;color:var(--c-muted)}.cal-column{position:relative;border-left:1px solid var(--c-line);background-image:repeating-linear-gradient(to bottom,var(--c-line) 0 1px,transparent 1px 48px)}.cal-column.past{background-color:var(--c-bg)}.cal-now{position:absolute;left:0;right:0;height:2px;background:var(--bad);z-index:4;pointer-events:none}.cal-now:before{content:"";position:absolute;left:-5px;top:-4px;width:10px;height:10px;border-radius:50%;background:var(--bad)}.cal-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.cal-month-weekday{padding:8px;font-size:12px;font-weight:600;color:var(--c-muted);border-bottom:1px solid var(--c-line)}.cal-month-day{min-height:108px;min-width:0;padding:4px;border-right:1px solid var(--c-line);border-bottom:1px solid var(--c-line);display:grid;align-content:start;gap:2px}.cal-month-day.past{background:var(--c-bg)}.cal-month-day:nth-child(7n){border-right:none}.cal-month-day.outside{background:var(--c-bg)}.cal-month-day.outside .cal-month-date{color:var(--c-muted)}.cal-month-date{justify-self:start;border:none;background:none;padding:2px 7px;border-radius:999px;font-size:12px}.cal-month-date:disabled{opacity:1}.cal-month-day.today .cal-month-date{background:var(--c-primary);color:#fff;font-weight:600}.cal-month-more{font-size:12px;padding-left:4px}.cal-event{font-size:12px;line-height:1.3;border-radius:6px;border:1px solid transparent;overflow:hidden;cursor:pointer;transition:opacity .15s,box-shadow .15s}.cal-event.timed{position:absolute;padding:3px 6px;display:flex;flex-direction:column;z-index:1}.cal-event.timed>*{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-event.timed.compact{padding-block:0;justify-content:center}.cal-event.timed.compact>*{font-size:11px;line-height:1.1}.cal-event.chip{padding:2px 6px;white-space:nowrap;text-overflow:ellipsis}.cal-event-time{opacity:.8}.cal-event[draggable=true]{cursor:grab}.cal-event.selected{box-shadow:0 0 0 2px var(--c-surface),0 0 0 4px var(--c-primary);z-index:3}.cal-event.routine{box-shadow:0 0 0 2px var(--c-primary);z-index:2}.cal-event.project{box-shadow:0 0 0 1px var(--c-primary)}.cal-event.dim{opacity:.3}.cal-card{position:absolute;z-index:10;background:var(--c-surface);border:1px solid var(--c-line);border-radius:8px;box-shadow:0 8px 24px #141c282e;padding:12px;display:grid;gap:6px;justify-items:start;font-size:13px}.cal-card footer{display:flex;justify-content:flex-end;align-items:center;gap:12px;justify-self:stretch;margin-top:4px}.cal-event.ev-neutral{--ev-bg: var(--c-sunken);--ev-fg: var(--n-600)}.cal-event.ev-primary{--ev-bg: var(--c-primary-soft);--ev-fg: var(--p-800)}.cal-event.ev-info{--ev-bg: var(--info-bg);--ev-fg: var(--info)}.cal-event.ev-ok{--ev-bg: var(--ok-bg);--ev-fg: var(--ok)}.cal-event.ev-warn{--ev-bg: var(--warn-bg);--ev-fg: var(--warn)}.cal-event.ev-bad{--ev-bg: var(--bad-bg);--ev-fg: var(--bad)}.cal-event[class*=ev-]{background:var(--ev-bg);border-left:3px solid var(--ev-fg);color:var(--ev-fg)}.cal-event.ev-scheduled{background:var(--c-primary-soft);border-color:var(--p-300);border-left:3px solid var(--c-primary);color:var(--p-900)}.cal-event.ev-scheduled.overdue{border-left-color:var(--warn)}.cal-event-due{margin-right:3px;vertical-align:-1px;color:var(--warn)}.cal-event.ev-solid{background:var(--c-primary);border-color:var(--c-primary-hover);color:var(--c-on-primary)}.cal-event.ev-solid.ev-info{background:var(--info);border-color:#2d4f75;color:#fff}.cal-event.ev-held,.cal-event.ev-skipped{background:repeating-linear-gradient(135deg,var(--ev-bg) 0 6px,var(--c-surface) 6px 12px);border:1px dashed var(--ev-fg)}.cal-event.ev-skipped{text-decoration:line-through}.cal-event.ev-booked{background:var(--c-sunken);border-color:var(--c-line);color:var(--c-muted);cursor:default}.cal-event.conflict{background:var(--bad-bg);border:2px solid var(--bad);color:var(--bad);text-decoration:none}.schedule-layout{--ui-panel-width: 380px}.task-panel>header{margin-bottom:16px}@media(min-width:1101px)and (min-height:600px){.layout:has(.schedule-fill){height:100dvh;min-height:0;grid-template-rows:minmax(0,1fr);overflow:hidden}.layout:has(.schedule-fill) .sidebar{min-height:0;overflow-y:auto}.layout:has(.schedule-fill) main,.schedule-fill,.schedule-fill .schedule-main,.schedule-fill .calendar,.schedule-fill .cal-timegrid{display:flex;flex-direction:column;min-height:0}.schedule-fill,.schedule-fill .schedule-layout,.schedule-fill .calendar,.schedule-fill .cal-timegrid,.schedule-fill .cal-body,.schedule-fill .cal-month{flex:1;min-height:0}.schedule-fill .schedule-layout{grid-template-rows:minmax(0,1fr);align-items:stretch}.schedule-fill .cal-body{height:auto}.schedule-fill .cal-month{grid-template-rows:auto repeat(6,1fr);overflow-y:auto}.schedule-fill .cal-month-day{min-height:84px}.schedule-fill .task-panel{position:static;max-height:none;min-height:0}}.task-prep-head{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--p-700)}.task-prep{margin:0;padding-left:18px;font-weight:500;color:var(--c-ink)}.task-prep-note{margin:0;font-size:12px}.ticket-peek{position:fixed;z-index:50;display:grid;gap:6px;width:280px;max-height:320px;overflow:auto;padding:12px 14px;font-size:13px;background:var(--c-surface);border:1px solid var(--c-line);border-radius:8px;box-shadow:0 8px 24px #0000001f;pointer-events:none}.ticket-peek-text{margin:0;white-space:pre-wrap}.ticket-peek ul{margin:0;padding-left:18px}.ticket-peek dl{display:grid;gap:2px;margin:0}.ticket-peek dl div{display:flex;gap:6px}.ticket-peek dt{color:var(--c-muted)}.ticket-peek dt:after{content:":"}.ticket-peek dd{margin:0;font-weight:500}.task-drawer{display:grid;gap:8px;padding:10px 12px 12px}.task-drawer-count{margin-left:auto;font:500 12px var(--font-mono);color:var(--c-muted)}.task-detail,.task-detail>div{display:grid;gap:16px}.task-detail>div{gap:12px}.task-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}.task-nearby{gap:6px}.nearby-item{display:grid;gap:2px;justify-items:start;text-align:left;font-size:12px}label.inline{display:flex;align-items:center;gap:6px;color:var(--c-ink)}.inline-group{display:flex;flex-wrap:wrap;gap:8px 16px}.task-list{display:grid;gap:8px}.task-group-progress{display:inline-flex;align-items:center;gap:10px;margin-left:auto;font:500 12px var(--font-mono);color:var(--c-muted);white-space:nowrap}.task-group-progress .ui-progress{width:120px}.task-group-progress>span{min-width:13ch;text-align:right}.task-group-table{border:0;border-radius:0}.task-group-table tr:last-child td{border-bottom:0}.ui-section-content:has(>.task-group-table){padding:0}.task-list-filters{margin-bottom:0}.task-list-export{margin-left:auto}.task-series{list-style:none;margin:0;padding:10px 12px;display:grid;gap:10px;border-bottom:1px solid var(--c-line)}.task-series li{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,1.2fr);align-items:center;gap:4px 16px;font-size:13px}.task-series-name{display:flex;align-items:center;gap:8px;min-width:0}.task-series-name svg{flex:none;color:var(--c-primary)}.task-routine{display:grid;gap:6px}@media(max-width:760px){.task-series li{grid-template-columns:minmax(0,1fr)}}.task-list-export{display:inline-flex;align-items:center;gap:8px}.task-pick{width:36px}.task-pick input{margin:0}tr.picked td{background:var(--c-primary-tint)}.modal:has(.tk-layout){display:flex;flex-direction:column;overflow:hidden}.modal .tk-layout{display:flex;flex-direction:column;gap:12px;min-height:0}.tk-layout :is(input,select,textarea){min-width:0;max-width:100%}.tk-body{display:grid;gap:28px;min-height:0;overflow-y:auto;padding:2px 6px 2px 2px}.tk-body-form{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}.tk-column{display:grid;gap:16px;align-content:start}.tk-section{display:grid;gap:10px}.tk-section+.tk-section{border-top:1px solid var(--c-line);padding-top:16px}.tk-section :is(h3,p,ul){margin-top:0;margin-bottom:0}.tk-section fieldset{display:grid;gap:8px;margin:0;min-width:0}.tk-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:end}.tk-description{min-height:140px}.tk-plates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;max-height:168px;overflow-y:auto}.tk-plates .checkbox{align-items:start;min-width:0}.tk-plates .checkbox span{min-width:0;overflow-wrap:anywhere}.modal:has(.tk-detail){height:min(760px,90vh)}.modal .tk-detail{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:12px 40px;flex:1;background:linear-gradient(var(--c-line),var(--c-line)) no-repeat calc((100% - 40px)*.6296 + 20px) 0 / 1px 100%}.tk-main,.tk-thread{display:contents}.tk-meta,.tk-main-body{grid-column:1}.tk-thread>h3,.tk-thread-body{grid-column:2}.tk-meta,.tk-thread>h3{grid-row:1;margin:0;padding-bottom:12px;border-bottom:1px solid var(--c-line)}.tk-main-body,.tk-thread-body{grid-row:2;display:flex;flex-direction:column;gap:12px;min-height:0}.tk-main-scroll,.tk-thread-list{flex:1;display:grid;align-content:start;min-height:0;overflow-y:auto;padding-right:6px}.tk-main-actions,.tk-thread-compose{padding-top:12px;border-top:1px solid var(--c-line)}.tk-main-scroll{gap:16px}.tk-main-actions{display:grid;gap:10px;align-content:start}.tk-meta{display:grid;gap:6px}.tk-meta-main{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}.tk-meta-main>span:last-child{min-width:0;overflow-wrap:anywhere}.tk-meta-people{display:flex;flex-wrap:wrap;gap:2px 24px;font-size:13px}.tk-list th:nth-child(4),.tk-list td:nth-child(4){text-align:center}.tk-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px}.tk-meta-people strong{color:var(--c-ink);font-weight:600}.tk-thread-list{gap:8px}.tk-thread-list p{margin:0}.tk-thread-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start}.tk-thread-compose textarea{min-height:0;max-height:140px;resize:none;field-sizing:content}.tk-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.tk-actions-end{justify-content:flex-end}.tk-spacer{flex:1}.tk-thread .reply{display:grid;gap:2px}.tk-thread .reply .muted{font-size:12px}.tk-confirm p{margin:0}.tk-confirm textarea{min-height:96px}.modal .tk-confirm footer .danger{margin-right:0}.tk-thread-compose .error{grid-column:1 / -1;margin:0}.tk-chosen,.tk-cards{display:grid;gap:6px}.tk-card{justify-content:space-between;gap:12px}.tk-card-link{display:flex;flex:1;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left}.tk-card-link:hover:not(:disabled){background:transparent}.tk-card-link:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm)}.tk-card-link>span:first-child{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0}.tk-reopen-hint{margin:0}.modal:has(.tk-picker){display:flex;flex-direction:column;overflow:hidden}.tk-picker{display:flex;flex-direction:column;gap:12px;min-height:0}.tk-picker-filters{display:flex;align-items:center;gap:12px}.tk-picker-filters>input{flex:1;min-width:0}.tk-picker-list{min-height:160px;max-height:52vh;overflow-y:auto}.tk-picker-list p{margin:0}.tk-picker-list td:first-child{width:36px}.tk-missing{margin:0;font-size:13px;text-align:right}@media(max-width:900px){.tk-body-form{grid-template-columns:minmax(0,1fr)}.modal:has(.tk-detail){height:auto;overflow:auto}.modal .tk-detail{display:flex;flex-direction:column;gap:16px;background:none}.tk-main,.tk-thread{display:flex;flex-direction:column;gap:12px}.tk-main-body,.tk-thread-body{display:contents}.tk-main-scroll,.tk-thread-list{overflow:visible}}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff");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}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff");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}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff");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}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");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}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");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}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff");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}:root{--p-50: #eef8f6;--p-100: #d6efea;--p-200: #ade0d6;--p-300: #7ccabc;--p-400: #44ab9b;--p-500: #17907f;--p-600: #0e7c70;--p-700: #0b6158;--p-800: #0a4c46;--p-900: #083a36;--n-0: #ffffff;--n-50: #f4f7f7;--n-100: #edf2f2;--n-200: #dfe7e6;--n-300: #c7d3d2;--n-400: #9aa9a8;--n-500: #5f6f6e;--n-600: #4d5d5c;--n-700: #3b4a49;--n-900: #12201f;--ok: #2f7444;--ok-bg: #e9f4ec;--warn: #8a5a0e;--warn-bg: #fbf2e1;--bad: #b83a2e;--bad-bg: #fbeae7;--info: #3b6696;--info-bg: #e9eff7;--fill-neutral: var(--n-400);--fill-primary: var(--p-500);--fill-info: #7f9fbf;--fill-info-soft: #b9cbe0;--fill-ok: #6fa487;--fill-warn: #d9b25f;--fill-bad: #cf6e64;--c-bg: var(--n-50);--c-surface: var(--n-0);--c-sunken: var(--n-100);--c-line: var(--n-200);--c-line-strong: var(--n-300);--c-ink: var(--n-900);--c-body: var(--n-700);--c-muted: var(--n-500);--c-faint: var(--n-400);--c-primary: var(--p-600);--c-primary-hover: var(--p-700);--c-primary-press: var(--p-800);--c-primary-tint: var(--p-50);--c-primary-soft: var(--p-100);--c-on-primary: #ffffff;--focus-ring: 0 0 0 3px rgba(23, 144, 127, .28);--error-ring: 0 0 0 3px rgba(184, 58, 46, .14);--r-xs: 4px;--r-sm: 6px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--r-pill: 999px;--e1: 0 1px 2px rgba(18, 32, 31, .05);--e2: 0 4px 12px -2px rgba(18, 32, 31, .1), 0 1px 3px rgba(18, 32, 31, .06);--e3: 0 16px 40px -8px rgba(18, 32, 31, .2), 0 2px 6px rgba(18, 32, 31, .06);--t-fast: .12s;--t-base: .18s;--t-slow: .24s;--t-exit: .14s;--ease-out: cubic-bezier(.2, .8, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--font-sans: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Consolas, monospace}@media(prefers-reduced-motion:reduce){:root{--t-fast: 0ms;--t-base: 0ms;--t-slow: 0ms;--t-exit: 0ms}}:root{--bg: var(--c-bg);--panel: var(--c-surface);--border: var(--c-line);--text: var(--c-ink);--muted: var(--c-muted);--accent: var(--c-primary);--danger: var(--bad);font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--c-ink)}*{box-sizing:border-box}body{margin:0;background:var(--c-bg)}h1{font-size:26px;font-weight:600;letter-spacing:-.015em;line-height:1.2;margin:0}h2{font-size:18px;font-weight:600;margin:0}h3{font-size:15px;font-weight:600;margin:20px 0 8px}code{font-family:var(--font-mono)}.center{min-height:100vh;display:grid;place-items:center}.card{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-lg);box-shadow:var(--e1);padding:24px}.muted{color:var(--c-muted)}.error{color:var(--bad);font-size:13px;margin:0}.layout{display:grid;grid-template-columns:64px minmax(0,1fr);min-height:100vh;transition:grid-template-columns .18s ease}.layout:has(>.sidebar:hover),.layout:has(>.sidebar:focus-within){grid-template-columns:236px minmax(0,1fr)}.sidebar{position:sticky;top:0;z-index:30;box-sizing:border-box;height:100dvh;padding:12px;display:flex;flex-direction:column;gap:6px;overflow:hidden auto;background:var(--c-surface);border-right:1px solid var(--c-line)}.sidebar-row{display:flex;align-items:center;gap:10px;min-height:40px;border-radius:8px;color:var(--c-ink);text-decoration:none}.sidebar-icon{flex:none;width:40px;height:40px;display:grid;place-items:center;border-radius:8px}.sidebar-label{min-width:0;white-space:nowrap;opacity:0;transition:opacity .12s ease}.sidebar:hover .sidebar-label,.sidebar:focus-within .sidebar-label{opacity:1;transition-delay:.06s}.sidebar-brand{margin-bottom:6px;font-weight:700}.sidebar-logo{background:var(--c-primary);color:#fff}.sidebar-view{margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid var(--c-line);border-radius:0;color:var(--c-muted)}.sidebar-view .sidebar-icon{background:var(--c-bg)}.sidebar-view-select{position:relative;flex:1;display:flex;align-items:center}.sidebar-view-select select{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:7px 28px 7px 10px;border-radius:8px;font-size:13px;background:var(--c-bg);border-color:transparent;text-overflow:ellipsis}.sidebar-view-select select:hover{border-color:var(--c-line)}.sidebar-view-select svg{position:absolute;right:8px;pointer-events:none}.sidebar-view-name{overflow:hidden;text-overflow:ellipsis;font-size:13px}.sidebar nav{display:flex;flex-direction:column;gap:4px;flex:1}.sidebar nav a{color:var(--c-muted)}.sidebar nav a:hover{background:var(--c-bg);color:var(--c-ink)}.sidebar nav a.active{background:var(--c-primary-tint);color:var(--p-800);font-weight:600;box-shadow:inset 3px 0 0 var(--c-primary)}.sidebar-user{padding-top:10px;border-top:1px solid var(--c-line);border-radius:0}.sidebar-avatar{border-radius:999px;background:var(--c-primary-soft);color:var(--p-800);font-size:13px;font-weight:700}.sidebar-user-meta{flex:1;display:grid;font-size:13px;line-height:1.3}.sidebar-user-meta strong{overflow:hidden;text-overflow:ellipsis}.sidebar-user-meta span{overflow:hidden;text-overflow:ellipsis;color:var(--c-muted);font-size:12px}.sidebar-logout{flex:none;display:grid;place-items:center;width:34px;height:34px;padding:0;border:none;border-radius:8px;background:none;color:var(--c-muted)}.sidebar-logout:hover{background:var(--bad-bg);color:var(--bad)}main{padding:24px;min-width:0}@media(min-width:701px){.layout:has(.workflow-page){height:100dvh;min-height:0;grid-template-rows:minmax(0,1fr);overflow:hidden}.layout:has(.workflow-page) main{min-height:0;overflow-y:auto}}.page-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.page-header h1{flex:1}label{display:grid;gap:6px;font-size:13px;color:var(--c-body)}input,select,textarea{font:inherit;color:var(--c-ink);padding:8px 12px;border:1px solid var(--c-line-strong);border-radius:var(--r-md);background:var(--c-surface);transition:border-color var(--t-base) var(--ease-out),box-shadow var(--t-base) var(--ease-out)}:is(input,select,textarea):hover:not(:disabled){border-color:var(--n-400)}:is(input,select,textarea):focus-visible{outline:none;border-color:var(--c-primary);box-shadow:var(--focus-ring)}:is(input,select,textarea)::placeholder{color:var(--c-faint)}:is(input,select,textarea):disabled{background:var(--c-sunken);color:var(--c-faint);border-color:var(--c-line)}input[type=checkbox],input[type=radio]{accent-color:var(--c-primary);width:16px;height:16px;padding:0}textarea{min-height:72px;resize:vertical}button{font:inherit;padding:7px 14px;border:1px solid var(--c-line-strong);border-radius:var(--r-md);background:var(--c-surface);color:var(--c-ink);cursor:pointer;transition:background-color var(--t-base) var(--ease-out),border-color var(--t-base) var(--ease-out),box-shadow var(--t-base) var(--ease-out)}button:hover:not(:disabled){background:var(--c-sunken)}button:focus-visible{outline:none;box-shadow:var(--focus-ring)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--c-primary);border-color:var(--c-primary);color:var(--c-on-primary)}button.primary:hover:not(:disabled){background:var(--c-primary-hover);border-color:var(--c-primary-hover)}button.danger{color:var(--bad);border-color:#e7b8b2}button.danger:hover:not(:disabled){background:var(--bad-bg)}button.link{border:none;background:none;padding:0;color:var(--c-primary);text-align:left}button.link:hover:not(:disabled){background:none;text-decoration:underline;text-underline-offset:2px}table{width:100%;border-collapse:collapse;background:var(--c-surface);border:1px solid var(--c-line);border-radius:8px}th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--c-line)}th{font-size:11.5px;color:var(--c-muted);font-weight:500;text-transform:uppercase;letter-spacing:.05em;background:var(--c-sunken)}tr.clickable{cursor:pointer}tr.clickable:hover{background:var(--c-bg)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#12201f52;display:grid;place-items:center;padding:24px}.modal{background:var(--c-surface);border-radius:var(--r-xl);box-shadow:var(--e3);padding:20px;width:520px;max-width:100%;max-height:90vh;overflow:auto}.modal-sm{width:440px}.modal-lg{width:880px}.modal-xl{width:1120px}.modal header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.modal header h2{min-width:0;overflow-wrap:anywhere}.modal-close{display:inline-flex;flex:none;padding:4px;color:var(--c-muted)}.modal-close:hover{color:var(--c-ink)}.modal form{display:grid;gap:12px}.modal footer{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.modal footer .danger{margin-right:auto}.confirm-dialog p,.confirm-subject{margin:0}.confirm-dialog .confirm-subject,.project-members.confirm-subject{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:8px 12px;border:1px solid var(--c-line);border-radius:6px;background:var(--c-bg);overflow-wrap:anywhere}.confirm-subject code{padding:1px 6px;border:1px solid var(--c-line);border-radius:4px;background:var(--c-surface)}.modal .confirm-dialog footer .danger{margin-right:0}.confirm-dialog footer button.danger{background:var(--bad);color:#fff}.confirm-dialog footer button.danger:hover:not(:disabled){filter:brightness(.92)}.page-subtitle{margin:5px 0 0}.page-heading{flex:1;min-width:0}.workflow-page .page-heading+button{align-self:flex-start}.table-scroll{overflow-x:auto}.filter-bar{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.filter-bar>input{min-width:230px;flex:1}.reply{border:1px solid var(--c-line);border-radius:6px;padding:10px}.checkbox-grid{display:flex;gap:12px;flex-wrap:wrap}.checkbox{display:flex;align-items:center;gap:6px;color:var(--c-ink)}.checkbox input{width:auto}.form-note{margin:0;font-size:13px}.file-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.file-list li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px}.file-list li>span:first-child{min-width:0;overflow-wrap:anywhere}.file-list .link{padding:2px 0}.preserve{white-space:pre-wrap}@media(max-width:700px){.layout:has(.workflow-page) main{padding:16px}.workflow-page .page-header{flex-wrap:wrap}.workflow-page .filter-bar>:is(input,select){min-width:0;max-width:100%}.workflow-page .table-scroll>table{min-width:720px}}label:not(.checkbox,.inline,.ui-field):has(>:is(input,select,textarea):required){grid-template-columns:max-content 1fr;column-gap:2px}label:not(.checkbox,.inline,.ui-field):has(>:is(input,select,textarea):required)>*{grid-column:1 / -1}label:not(.checkbox,.inline,.ui-field):has(>:is(input,select,textarea):required):before{content:"*";grid-row:1;grid-column:2;align-self:start;color:var(--bad);font-size:12px;line-height:1}fieldset.required>legend:after{content:" *";color:var(--bad)}:is(input,select,textarea)[aria-invalid=true],label:has(>.error)>:is(input,select,textarea){border-color:var(--bad);box-shadow:var(--error-ring)}label[data-error]:after,fieldset[data-error]:after{content:attr(data-error);display:block;grid-column:1 / -1;color:var(--bad);font-size:13px}label:has(>.error)[data-error]:after{display:none}.protocol-summary{display:grid;grid-template-columns:100px minmax(0,1fr);gap:4px 12px;margin:0;padding:10px 12px;background:var(--c-primary-tint);border:1px solid var(--c-primary-soft);border-radius:var(--r-md);font-size:13px}.protocol-summary dt{color:var(--c-muted)}.protocol-summary dd{margin:0;min-width:0;overflow-wrap:anywhere}.protocol-summary ul{margin:0;padding-left:18px}fieldset:not([style],fieldset[style] *){display:grid;gap:10px;min-width:0;margin:0;padding:10px 12px 12px;border:1px solid var(--c-line);border-radius:var(--r-md)}fieldset:not([style],fieldset[style] *)>legend{float:left;width:100%;padding:0;font-size:13px;color:var(--c-muted)}fieldset:not([style],fieldset[style] *)>p{margin:0;font-size:13px}.ui-icon{flex:none}@keyframes ui-spin{to{transform:rotate(360deg)}}.ui-spin{animation:ui-spin .9s linear infinite}@media(prefers-reduced-motion:reduce){.ui-spin{animation-duration:2.4s}}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:38px;padding:0 16px;border:1px solid transparent;border-radius:var(--r-md);font:500 14px/1 var(--font-sans);white-space:nowrap;cursor:pointer;transition:background-color var(--t-base) var(--ease-out),border-color var(--t-base) var(--ease-out),box-shadow var(--t-base) var(--ease-out),transform var(--t-fast) var(--ease-out)}.ui-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ui-btn:active:not(:disabled){transform:scale(.98)}.ui-btn-sm{height:32px;padding:0 12px;font-size:13px;gap:6px}.ui-btn-icon{width:38px;padding:0}.ui-btn-sm.ui-btn-icon{width:32px}.ui-btn-primary{background:var(--c-primary);color:var(--c-on-primary);box-shadow:var(--e1)}.ui-btn-primary:hover:not(:disabled){background:var(--c-primary-hover)}.ui-btn-primary:active:not(:disabled){background:var(--c-primary-press)}.ui-btn-secondary{background:var(--c-surface);border-color:var(--c-line-strong);color:var(--c-ink)}.ui-btn-secondary:hover:not(:disabled){background:var(--c-sunken)}.ui-btn-tonal{background:var(--c-primary-soft);color:var(--p-800)}.ui-btn-tonal:hover:not(:disabled){background:var(--p-200)}.ui-btn-ghost{background:transparent;color:var(--c-primary)}.ui-btn-ghost:hover:not(:disabled){background:var(--c-primary-tint)}.ui-btn-danger{background:var(--c-surface);border-color:#e7b8b2;color:var(--bad)}.ui-btn-danger:hover:not(:disabled){background:var(--bad-bg)}.ui-btn:disabled{background:var(--c-sunken);border-color:transparent;color:var(--c-faint);box-shadow:none;cursor:not-allowed}.ui-btn-ghost:disabled{background:transparent}.ui-btn[aria-busy=true]{cursor:progress}.ui-badge{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:var(--r-pill);font:500 12px/1 var(--font-sans);white-space:nowrap}.ui-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.ui-badge-hollow:before{background:transparent;box-shadow:inset 0 0 0 1.5px currentColor}.ui-badge-outline{background:transparent!important;box-shadow:inset 0 0 0 1px var(--c-line-strong)}.ui-tone-neutral{background:var(--c-sunken);color:var(--n-600)}.ui-tone-primary{background:var(--c-primary-soft);color:var(--p-800)}.ui-tone-info{background:var(--info-bg);color:var(--info)}.ui-tone-ok{background:var(--ok-bg);color:var(--ok)}.ui-tone-warn{background:var(--warn-bg);color:var(--warn)}.ui-tone-bad{background:var(--bad-bg);color:var(--bad)}.ui-badge-solid.ui-tone-primary{background:var(--c-primary);color:var(--c-on-primary)}.ui-badge-solid.ui-tone-info{background:var(--info);color:#fff}.ui-tag{display:inline-block;padding:2px 7px;border-radius:var(--r-xs);background:var(--c-sunken);color:var(--c-body);font:500 11.5px/1.4 var(--font-mono);white-space:nowrap}.ui-card{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-lg);box-shadow:var(--e1);min-width:0}.ui-card-head{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--c-line)}.ui-card-title{margin:0;font-size:15px;font-weight:600}.ui-card-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.ui-card-body{padding:16px 20px}.ui-card-flush{padding:0}.ui-banner{display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px;padding:16px 20px;border-radius:var(--r-xl)}.ui-panel .ui-banner{align-items:flex-start;padding:12px 14px;border-radius:var(--r-lg)}.ui-panel .ui-banner-text{flex:1 1 0}.ui-panel .ui-banner-actions{flex-basis:100%;display:flex;justify-content:flex-end}.ui-banner-tint{background:var(--c-primary-tint);border:1px solid var(--c-primary-soft);color:var(--p-800)}.ui-banner-soft{background:var(--c-primary-soft);color:var(--p-800)}.ui-banner-deep{background:var(--p-700);color:#fff}.ui-banner-text{flex:1 1 200px;display:grid;gap:2px;min-width:0}.ui-banner-text strong{font-size:15px;font-weight:600;color:var(--p-900)}.ui-banner-deep .ui-banner-text strong{color:#fff}.ui-banner-icon{width:38px;height:38px;border-radius:var(--r-md);display:grid;place-items:center;background:var(--c-surface);color:var(--c-primary);flex:none}.ui-banner-deep .ui-banner-icon{background:var(--p-600);color:#fff}.ui-banner-actions{margin-left:auto;display:flex;gap:8px}.ui-alert{display:flex;gap:10px;align-items:flex-start;padding:11px 14px;border:1px solid transparent;border-radius:var(--r-md);font-size:13.5px;line-height:1.45}.ui-alert>.ui-icon{margin-top:1px}.ui-alert strong{font-weight:600}.ui-alert-error{background:var(--bad-bg);border-color:#f1cbc6;color:var(--bad)}.ui-alert-warning{background:var(--warn-bg);border-color:#efd9b0;color:var(--warn)}.ui-alert-info{background:var(--c-primary-tint);border-color:var(--c-primary-soft);color:var(--p-800)}.ui-alert-success{background:var(--ok-bg);border-color:#cfe6d6;color:var(--ok)}.ui-stat{display:grid;gap:6px;align-content:start;padding:14px 16px;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-lg);box-shadow:var(--e1);min-width:0}.ui-stat-label{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500;color:var(--c-muted)}.ui-stat-value{font:600 28px/1.05 var(--font-mono);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.ui-stat-value small{margin-left:3px;font:500 14px var(--font-sans);color:var(--c-muted)}.ui-stat-context{font-size:12px;color:var(--c-muted)}.ui-progress{display:grid;gap:6px}.ui-progress-bar{display:flex;height:8px;border-radius:var(--r-pill);background:var(--c-sunken);overflow:hidden}.ui-progress-bar i{display:block;height:100%;transition:width var(--t-slow) var(--ease-out)}.ui-progress-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;color:var(--c-muted)}.ui-progress-legend i{display:inline-block;width:9px;height:9px;margin-right:5px;border-radius:2px}.ui-fill-neutral{background:var(--fill-neutral)}.ui-fill-primary{background:var(--fill-primary)}.ui-fill-info{background:var(--fill-info)}.ui-fill-ok{background:var(--fill-ok)}.ui-fill-warn{background:var(--fill-warn)}.ui-fill-bad{background:var(--fill-bad)}.ui-fill-empty{background:var(--c-sunken);box-shadow:inset 0 0 0 1px var(--c-line-strong)}.ui-section{border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface);overflow:hidden}.ui-section-head{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:0;background:transparent;font:600 13.5px var(--font-sans);color:var(--c-ink);text-align:left;cursor:pointer}.ui-section-head:hover{background:var(--c-bg)}.ui-section-head:focus-visible{outline:none;box-shadow:inset var(--focus-ring)}.ui-section-chevron{color:var(--c-muted);transition:transform var(--t-base) var(--ease-out)}.ui-section-open .ui-section-chevron{transform:rotate(90deg)}.ui-section-open>.ui-section-head{border-bottom:1px solid var(--c-line)}.ui-section-content{padding:4px 0}.ui-seg{display:inline-flex;gap:2px;padding:3px;background:var(--c-sunken);border-radius:calc(var(--r-md) + 2px)}.ui-seg button{padding:6px 12px;border:0;border-radius:var(--r-sm);background:transparent;font:500 13px var(--font-sans);color:var(--c-muted);white-space:nowrap;cursor:pointer;transition:background-color var(--t-base) var(--ease-out),color var(--t-base) var(--ease-out)}.ui-seg button:hover{color:var(--c-ink)}.ui-seg button.ui-seg-on{background:var(--c-surface);color:var(--c-ink);box-shadow:var(--e1),0 0 0 1px var(--c-line)}.ui-seg button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ui-chip{display:inline-flex;align-items:center;height:30px;border:1px solid var(--c-line-strong);border-radius:var(--r-pill);background:var(--c-surface);overflow:hidden}.ui-chip button{height:100%;padding:0 12px;border:0;border-radius:0;background:transparent;font:500 13px var(--font-sans);color:var(--c-body);display:inline-flex;align-items:center;gap:6px;cursor:pointer}.ui-chip-on{border-color:var(--p-300);background:var(--c-primary-tint)}.ui-chip-on button{color:var(--p-800)}.ui-chip .ui-chip-remove{padding:0 10px 0 2px}.ui-chip button:focus-visible{outline:none;box-shadow:inset var(--focus-ring)}.ui-field{display:grid;gap:6px;min-width:0;font-size:13px;color:var(--c-body)}.ui-field-label{display:flex;align-items:baseline;gap:6px;font-weight:500;color:var(--c-ink)}.ui-req{color:var(--bad)}.ui-opt{font-weight:400;font-size:12px;color:var(--c-muted)}.ui-count{margin-left:auto;font:400 12px var(--font-mono);color:var(--c-muted)}.ui-help{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--c-muted)}.ui-help-error{color:var(--bad)}.ui-field-error :is(input,select,textarea){border-color:var(--bad);box-shadow:var(--error-ring)}.ui-system-value{display:flex;align-items:center;gap:8px;min-height:38px;padding:0 12px;border:1px dashed var(--p-300);border-radius:var(--r-md);background:var(--c-primary-tint);color:var(--p-800);font-size:14px}.ui-system-note{margin-left:auto;font-size:12px;color:var(--p-700)}.ui-history{margin:0;padding:0;list-style:none;display:grid;font-size:13px}.ui-history>li{position:relative;display:grid;gap:6px;padding:0 0 16px 20px}.ui-history>li:before{content:"";position:absolute;left:4px;top:12px;bottom:-4px;width:1px;background:var(--c-line)}.ui-history>li:last-child{padding-bottom:0}.ui-history>li:last-child:before{display:none}.ui-history>li:after{content:"";position:absolute;left:0;top:6px;width:9px;height:9px;border-radius:50%;background:var(--c-surface);border:2px solid var(--c-primary);box-sizing:border-box}.ui-history-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}.ui-history-who{color:var(--c-ink);font-weight:600}.ui-history-head time{color:var(--c-muted);font-size:12px}.ui-history-ticket{justify-self:start;display:inline-flex;align-items:center;gap:5px;color:var(--c-primary);font:500 12px var(--font-mono);text-decoration:none}.ui-history-ticket:hover{text-decoration:underline}.ui-history-note{margin:0;padding-left:10px;border-left:2px solid var(--c-line-strong);color:var(--c-body)}.ui-history-created{margin:0;color:var(--c-muted)}.ui-history-changes{margin:0;padding:8px 10px;border-radius:var(--r-md);background:var(--c-sunken);display:grid;gap:6px}.ui-history-changes>div{display:grid;grid-template-columns:minmax(80px,max-content) 1fr;gap:2px 12px}.ui-history-changes dt{color:var(--c-muted)}.ui-history-changes dd{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;color:var(--c-ink);overflow-wrap:anywhere}.ui-history-changes del{color:var(--c-muted)}.ui-history-changes ins{text-decoration:none;font-weight:500}.ui-history-changes svg{color:var(--c-muted);flex:none}.ui-details{display:grid;grid-template-columns:var(--ui-details-label, 100px) minmax(0,1fr);gap:8px 12px;margin:0}.ui-details dt{color:var(--c-muted)}.ui-details dd{margin:0;min-width:0;overflow-wrap:anywhere}.ui-split{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.ui-split.with-panel{grid-template-columns:minmax(0,1fr) var(--ui-panel-width, 400px)}.ui-panel{position:sticky;top:24px;max-height:calc(100vh - 48px);overflow-y:auto;padding:16px;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-lg);box-shadow:var(--e1);animation:ui-panel-in var(--t-slow) var(--ease-out)}.ui-panel>header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.ui-panel>header h2{min-width:0;overflow-wrap:anywhere}@keyframes ui-panel-in{0%{opacity:0;transform:translate(16px)}}@media(max-width:1100px){.ui-split.with-panel{grid-template-columns:minmax(0,1fr)}.ui-panel{position:static;max-height:none}}.ui-item{display:flex;align-items:center;gap:10px;width:100%;height:auto;padding:8px 12px;border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface);color:var(--c-ink);font:inherit;text-align:left;box-shadow:none}button.ui-item{transition:background var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out)}button.ui-item:hover:not(:disabled){background:var(--c-bg);border-color:var(--c-line-strong)}button.ui-item-add{justify-content:center;gap:6px;border-style:dashed;border-color:var(--c-line-strong);color:var(--c-muted)}button.ui-item-add:hover:not(:disabled){background:var(--c-primary-tint);border-color:var(--c-primary);color:var(--c-primary)}tr.ui-row-muted,tr.ui-row-muted :is(strong,code){color:var(--c-muted)}.ui-inline-form{display:grid;gap:12px;padding-top:12px;border-top:1px solid var(--c-line)}.ui-inline-form h3{margin:0}.ui-inline-form footer{display:flex;justify-content:flex-end;gap:8px}.modal footer.ui-footer-bar{align-items:center;flex-wrap:wrap;margin-top:0;padding-top:12px;border-top:1px solid var(--c-line)}.ui-btn-remove{color:var(--c-muted)}.ui-btn-remove:hover:not(:disabled){background:var(--bad-bg);color:var(--bad)}.ui-group-label{font-size:13px;color:var(--c-muted)}.ui-alert-list{margin:4px 0 0;padding-left:18px}.ui-export{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.ui-std-title{display:inline-flex;align-items:center;gap:6px}.ui-std-title svg{color:var(--c-muted)}.ui-std-count{margin-left:auto;font:500 12px var(--font-mono);color:var(--c-muted)}.ui-std{display:grid;gap:10px;padding:10px 14px 14px;font-size:13px}.ui-std-note{margin:0;font-size:12px;color:var(--c-muted)}.ui-std-group b{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--c-muted)}.ui-std-group ul{margin:4px 0 0;padding-left:18px;color:var(--c-body)}.ui-std-auto{margin-left:6px;padding:0 6px;border-radius:var(--r-pill);background:var(--ok-bg);color:var(--ok);font-size:11px}
