/* The app's own stylesheet, cut to the rules the home page's windows use, under .ap.
   Written by design/home-lab/harvest-parts.mjs — do not edit by hand, run it again. */
/* !important: the app's own html/body rules land on .ap too (height:100%), and the window must stay 1440×900 */
.ap{position:absolute !important; left:0; top:0; width:1440px !important; height:900px !important; margin:0 !important; overflow:hidden !important; transform-origin:0 0; pointer-events:none; user-select:none; text-align:left}
.ap *, .ap *::before, .ap *::after{transition:none !important; animation:none !important}
/* the app skips drawing what it thinks is off screen; on this page it guesses wrong, so everything is drawn */
.ap *{content-visibility:visible !important}
/* a window on a page is a picture: its scroll areas show no bars */
.ap *{scrollbar-width:none !important}
.ap *::-webkit-scrollbar{display:none !important}
.ap, .ap{margin: 0px; background: rgb(10, 10, 9);}
@keyframes bootPulse { 
  50% { opacity: 0.45; }
}
.ap{--bg: #010101; --row: #0a0a09; --surface: #121211; --panel: #191817; --sidebar: #0a0a09; --sidebar-w: 232px; --text: rgba(255, 255, 255, 0.92); --muted: rgba(255, 255, 255, 0.72); --faint: rgba(255, 255, 255, 0.55); --border: rgba(255, 255, 255, 0.1); --accent: #f2b700; --accent-hover: #e8b000; --bulk-col-bg: rgba(242, 183, 0, 0.14); --col-faded: 0.3; --ok: #3ecf8e; --bad: #ff6b6b; --viz-1: #3987e5; --viz-2: #199e70; --viz-3: #c98500; --viz-4: #008300; --viz-5: #9085e9; --viz-6: #e66767; --viz-7: #d55181; --viz-8: #d95926; --viz-other: #6f6f6a; --radius: 8px; --tip-delay: 820ms; --ease: cubic-bezier(0.22, 1, 0.36, 1); --ease-expo: cubic-bezier(0.16, 1, 0.3, 1); --titlebar-h: 38px; --content-x: 30px; --sb-w: 8px; --panel-w: 440px; --frow-label-w: 84px; --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 24px; --space-6: 32px; --space-7: 40px; --border-faint: rgba(255, 255, 255, 0.06); color-scheme: dark; --field-rest: rgba(255, 255, 255, 0.055); --field-hover: rgba(255, 255, 255, 0.095); --focus-ring: inset 0 0 0 1px rgba(242, 183, 0, 0.6); --focus-ring-outside: 0 0 0 1px rgba(242, 183, 0, 0.6); --on-accent: #000; --shell-ms: 240ms; --z-sidebar: 12; --z-panel: 30; --z-titlebar: 31; --z-titlebar-controls: 32; --z-modal-scrim: 33; --z-modal: 34; --z-scrim: 20; --z-bar: 10; --z-float: 25; --z-pop: 28; --z-menu: 40; --z-toast: 42; --z-tip: 45;}
.ap *{box-sizing: border-box;}
.ap, .ap, .ap-root{margin: 0px; padding: 0px; height: 100%; overflow: hidden;}
.ap{background: var(--bg); color: var(--text); font-family: Montserrat, -apple-system, "Segoe UI", Roboto, sans-serif; font-size: 15px; line-height: 1.5; -webkit-font-smoothing: antialiased; user-select: none; cursor: default;}
.ap input, .ap textarea, .ap [contenteditable]{user-select: text;}
.ap input:not([type="checkbox"]):not([type="radio"]), .ap textarea, .ap [contenteditable]{cursor: text;}
.ap ::-webkit-scrollbar{width: var(--sb-w); height: var(--sb-w);}
.ap ::-webkit-scrollbar-thumb{background: padding-box rgba(255, 255, 255, 0.14); border-radius: 999px; border: 2px solid transparent;}
.ap ::-webkit-scrollbar-thumb:hover{background: rgba(255, 255, 255, 0.3);}
.ap ::-webkit-scrollbar-track{background: transparent;}
.ap ::-webkit-scrollbar-corner{background: transparent;}
.ap button{font: inherit; color: inherit; background: none; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; padding: 0px; cursor: pointer;}
.ap input{font: inherit; color: var(--text);}
.ap input[type="checkbox"]{appearance: none; display: inline-block; flex: 0 0 auto; width: 15px; height: 15px; margin: 0px; border: 1px solid var(--border); border-radius: 3px; background-origin: border-box; background-position: 50% 50%; background-repeat: no-repeat; background-size: 15px 15px; background-color: var(--field-rest); cursor: pointer; transition: background 0.12s var(--ease),
    border-color 0.12s var(--ease);}
.ap input[type="checkbox"]:hover:not(:checked):not(:disabled){background-color: var(--field-hover); border-color: rgba(255, 255, 255, 0.28);}
.ap input[type="checkbox"]:checked{background-color: var(--accent); border-color: var(--accent); background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2015%2015'%3E%3Cpath%20d='M3.8%207.65%206.25%2010.1%2011.25%205.05'%20fill='none'%20stroke='%23000'%20stroke-width='2.05'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E");}
.ap input[type="checkbox"]:disabled{opacity: 0.5; cursor: default;}
@media (prefers-reduced-motion: reduce){.ap input[type="checkbox"]{transition: none;}}
.ap .btn{display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 8px 18px; border-radius: 999px; font-size: 14px; font-weight: 600; white-space: nowrap; transition: filter 0.15s var(--ease),
    background 0.15s var(--ease);}
.ap .btn-ghost{color: var(--muted); border: 1px solid var(--border);}
.ap .btn-ghost:hover{color: var(--text); background: rgba(255, 255, 255, 0.04);}
.ap .btn-accent{background: var(--accent); color: var(--on-accent);}
.ap .btn-accent:hover{background: var(--accent-hover);}
.ap .titlebar-drag{position: fixed; top: 0px; left: 0px; right: 0px; height: var(--titlebar-h); z-index: var(--z-titlebar);}
.ap .edge-grab{position: fixed; top: var(--titlebar-h); bottom: 0px; width: 10px; cursor: col-resize; z-index: var(--z-titlebar);}
.ap .edge-grab::after{content: ""; position: absolute; top: calc(-1 * var(--titlebar-h)); bottom: 0px; left: 4px; width: 2px; background: transparent; transition: background 0.12s var(--ease);}
.ap .edge-grab:hover::after, .ap .edge-grab.dragging::after{background: rgba(255, 255, 255, 0.16);}
.ap .edge-grab-left{left: calc(var(--sidebar-w) - 5px); transition: left var(--shell-ms) var(--ease);}
.ap .edge-grab-right{right: -4px; width: 8px; transition: right var(--shell-ms) var(--ease);}
.ap.panel-open .edge-grab-right{right: calc(var(--panel-w) - 5px); width: 10px;}
@media (prefers-reduced-motion: reduce){.ap .vt-sb, .ap main, .ap .vt-collapse, .ap .panel-toggle, .ap .edge-grab-left, .ap .edge-grab-right, .ap .panel{transition: none;}}
.ap main{margin-left: var(--sidebar-w); transition: margin-left var(--shell-ms) var(--ease),
    margin-right var(--shell-ms) var(--ease); padding: var(--titlebar-h) var(--content-x) 90px; height: 900.00px; overflow-x: hidden;}
.ap main.lib-view{display: flex; flex-direction: column; overflow-y: hidden; padding-bottom: 0px;}
.ap main.narrow{max-width: 1180px; overflow-y: auto;}
.ap .view-head{display: flex; align-items: center; gap: 12px; margin: 0px 0px 12px; min-height: 32px;}
.ap .view-head h1{font-size: 20px; font-weight: 800; line-height: 1.25; margin: 0px; white-space: nowrap;}
.ap .view-head .count{font-size: 13px; color: var(--faint); font-variant-numeric: tabular-nums;}
.ap .dupe-flag{display: inline-flex; align-items: center; padding: 3px 10px; border-radius: 999px; border: 1px solid rgba(255, 107, 107, 0.45); background: transparent; color: var(--bad); font-size: 12px; font-weight: 600; line-height: 1.4; cursor: pointer; transition: background-color 120ms, border-color 120ms;}
.ap .dupe-flag:hover{background: rgba(255, 107, 107, 0.1); border-color: rgba(255, 107, 107, 0.65);}
.ap .dupe-flag.on{background: rgba(255, 107, 107, 0.16); border-color: var(--bad);}
@media (prefers-reduced-motion: reduce){.ap .dupe-flag{transition: none;}}
.ap .dupes-anchor{position: relative; display: inline-flex; align-items: center; align-self: stretch;}
.ap .dupes-popover{position: absolute; top: calc(100% + 7px); left: 0px; z-index: var(--z-pop); display: flex; flex-direction: column; width: 420px; max-width: calc(-48px + 1440.00px); max-height: min(560px, calc(900.00px - var(--titlebar-h) - 96px)); background: var(--panel); border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 8px; box-shadow: rgba(255, 255, 255, 0.05) 0px 1px 0px inset, rgba(0, 0, 0, 0.7) 0px 12px 32px -8px, rgba(0, 0, 0, 0.4) 0px 3px 10px -4px; outline: none; animation: dupes-in 0.18s var(--ease-expo);}
@keyframes dupes-in { 
  0% { opacity: 0; transform: translateY(-4px); }
}
.ap .dupes-head{display: grid; grid-template-columns: minmax(0px, 1fr) auto; align-items: start; gap: 12px; padding: 12px 12px 11px 15px; border-bottom: 1px solid var(--border);}
.ap .dupes-title{display: flex; flex-direction: column; gap: 3px; min-width: 0px;}
.ap .dupes-heading{font-size: 14px; font-weight: 800; color: rgba(255, 255, 255, 0.95);}
.ap .dupes-sub{font-size: 12px; line-height: 1.45; color: var(--faint); text-wrap: pretty;}
.ap .dupes-close{display: grid; place-items: center; width: 24px; height: 24px; border-radius: 999px; color: var(--faint);}
.ap .dupes-close:hover{color: var(--text); background: rgba(255, 255, 255, 0.06);}
.ap .dupes-body{flex: 1 1 auto; min-height: 0px; overflow-y: auto; overscroll-behavior: contain; padding: 6px 8px 8px;}
.ap .dupes-section-head{display: flex; align-items: center; gap: 8px; width: 100%; padding: 7px 7px 5px; text-align: left;}
.ap .dupes-section-name{font-size: 11px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--muted);}
.ap .dupes-section-n{font-size: 11px; font-weight: 800; font-variant-numeric: tabular-nums; color: var(--faint);}
.ap .dupes-section-n.new{color: var(--bad);}
.ap .dupes-groups, .ap .dupes-tracks{list-style: none; margin: 0px; padding: 0px;}
.ap .dupes-group{padding: 6px 7px 7px; border-radius: 7px; border: 1px solid transparent;}
.ap .dupes-group-head{display: flex; align-items: center; gap: 10px; min-height: 26px;}
.ap .dupes-pick{display: inline-flex; align-items: center; gap: 9px; min-width: 0px; cursor: pointer;}
.ap .dupes-pick input{flex-shrink: 0; margin: 0px;}
.ap .dupes-name{min-width: 0px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; font-weight: 700; color: var(--text);}
.ap .dupes-n{flex-shrink: 0; font-size: 12px; color: var(--faint); font-variant-numeric: tabular-nums;}
.ap .dupes-act{flex-shrink: 0; margin-left: auto; padding: 3px 10px; border-radius: 999px; font-size: 12px; font-weight: 700; color: var(--muted); white-space: nowrap; transition: background-color 120ms, color 120ms;}
.ap .dupes-act:hover{color: var(--text); background: rgba(255, 255, 255, 0.07);}
.ap .dupes-act.keep{box-shadow: rgba(255, 255, 255, 0.16) 0px 0px 0px 1px inset; color: var(--text);}
.ap .dupes-act.keep:hover{box-shadow: rgba(255, 255, 255, 0.3) 0px 0px 0px 1px inset;}
.ap .dupes-tracks{margin: 3px 0px 0px 22px;}
.ap .dupes-track{display: flex; align-items: center; gap: 8px; width: calc(100% + 12px); margin: 0px -6px; padding: 4px 6px; border-radius: 6px; font-size: 12px; font-weight: 600; color: rgba(255, 255, 255, 0.82); text-align: left; transition: background 0.12s var(--ease);}
.ap .dupes-track:hover{background: rgba(255, 255, 255, 0.06);}
.ap .dupes-track-text{flex: 1 1 0%; min-width: 0px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.ap .dupes-track svg{flex-shrink: 0; color: var(--faint);}
.ap .dupes-foot{display: flex; align-items: center; gap: 12px; min-height: 46px; padding: 8px 10px 8px 15px; border-top: 1px solid var(--border);}
.ap .dupes-link{font-size: 12px; font-weight: 600; color: var(--muted); text-decoration: underline rgba(255, 255, 255, 0.25); text-underline-offset: 3px; border-radius: 4px;}
.ap .dupes-link:hover{color: var(--text); text-decoration-color: currentcolor;}
@media (prefers-reduced-motion: reduce){.ap .dupes-popover{animation: auto ease 0s 1 normal none running none;}.ap .dupes-fold-chev, .ap .dupes-act, .ap .dupes-track{transition: none;}}
.ap .shell-toggle{width: 32px; height: 32px; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; border-radius: 6px; color: var(--muted); background: transparent; transition: color 0.12s var(--ease),
    background 0.12s var(--ease);}
.ap .shell-toggle:hover{color: var(--text); background: rgba(255, 255, 255, 0.06);}
.ap .panel-toggle{position: fixed; top: calc((var(--titlebar-h) - 32px) / 2); right: var(--content-x); z-index: var(--z-titlebar-controls); transition: right var(--shell-ms) var(--ease),
    color 0.12s var(--ease),
    background 0.12s var(--ease);}
.ap.panel-open .panel-toggle{right: calc(var(--panel-w) - 44px);}
.ap .panel-menu-btn{position: fixed; top: calc((var(--titlebar-h) - 32px) / 2); right: 28px; z-index: var(--z-titlebar-controls); transition: color 0.12s var(--ease),
    background 0.12s var(--ease);}
.ap .insights{max-width: 760px;}
.ap .insights h2{font-size: 13px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--faint); margin: 0px 0px 14px;}
.ap .insights section{margin-bottom: 34px;}
.ap .insights section:last-child{margin-bottom: 0px;}
.ap .ins-summary{margin-bottom: 30px;}
.ap .ins-figs{display: flex; flex-wrap: wrap; gap: 32px;}
.ap .ins-fig{display: flex; flex-direction: column; gap: 5px;}
.ap .ins-fig-n{font-size: 20px; font-weight: 700; line-height: 1; color: var(--text); font-variant-numeric: tabular-nums;}
.ap .ins-fig-l{font-size: 11px; letter-spacing: 0.02em; color: var(--faint);}
.ap .ins-head{display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 14px;}
.ap .ins-head h2{margin: 0px;}
.ap .ins-controls{display: flex; align-items: center; gap: 12px;}
.ap .seg{display: inline-flex; padding: 2px; gap: 2px; background: var(--surface); border: 1px solid var(--border); border-radius: 999px;}
.ap .seg button{padding: 4px 12px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; background: transparent; color: var(--faint); font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 12px; font-weight: 600; border-radius: 999px; cursor: pointer; transition: color 120ms, background 120ms;}
.ap .seg button:hover{color: var(--muted);}
.ap .seg button.on{background: var(--accent); color: var(--on-accent);}
.ap .year-chart{max-width: 640px;}
.ap .yc-plot{display: flex; align-items: flex-end; gap: 10px; height: 200px; padding: 0px 2px; animation: 200ms cubic-bezier(0.22, 1, 0.36, 1) 0s 1 normal none running yc-fade;}
@keyframes yc-fade { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
.ap .yc-col{flex: 1 1 0px; min-width: 0px; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; cursor: default; background: none; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; padding: 0px; font: inherit; color: inherit;}
.ap .yc-col-drill{cursor: pointer;}
.ap .yc-num{min-height: 13px; margin-bottom: 6px; font-size: 11px; color: var(--muted); font-variant-numeric: tabular-nums;}
.ap .yc-stack{width: 100%; max-width: 34px; display: flex; flex-direction: column-reverse; gap: 2px; border-radius: 4px 4px 0px 0px; overflow: hidden;}
.ap .yc-seg{min-height: 0px; background: rgba(255, 255, 255, 0.16); transition: filter 120ms;}
.ap .yc-col:hover .yc-seg{filter: brightness(1.18);}
.ap .yc-axis{display: flex; gap: 10px; margin-top: 10px; padding: 8px 2px 0px; border-top: 1px solid var(--border);}
.ap .yc-axis span{flex: 1 1 0px; text-align: center; font-size: 11px; color: var(--faint); font-variant-numeric: tabular-nums;}
.ap .yc-legend{display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin-top: 16px;}
.ap .yc-leg{display: inline-flex; align-items: center; gap: 7px; padding: 0px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; background: transparent; color: var(--muted); font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 12px; cursor: pointer;}
.ap .yc-leg-dot{width: 10px; height: 10px; border-radius: 3px; flex: 0 0 auto;}
@media (prefers-reduced-motion: reduce){.ap .yc-seg, .ap .seg button, .ap .yc-undated, .ap .yc-step-btn{transition: none;}.ap .yc-plot{animation: auto ease 0s 1 normal none running none;}}
.ap .sr-only{position: absolute; width: 1px; height: 1px; padding: 0px; margin: -1px; overflow: hidden; clip: rect(0px, 0px, 0px, 0px); white-space: nowrap; border: 0px;}
.ap .meta-date, .ap .date-input{font-variant-numeric: tabular-nums;}
.ap .vt-sb{position: fixed; left: 0px; top: 0px; bottom: 0px; width: var(--sidebar-w); box-sizing: border-box; display: flex; flex-direction: column; background: var(--sidebar); border-right: 1px solid rgba(255, 255, 255, 0.06); padding: 0px 12px 14px; z-index: var(--z-sidebar); transition: width var(--shell-ms) var(--ease); overflow: hidden;}
.ap .vt-sb-scroll{flex: 1 1 0%; min-height: 0px; overflow: hidden auto; overscroll-behavior: contain; margin: 0px -12px; padding: 0px 12px;}
.ap .vt-sb-head{padding: calc(var(--titlebar-h) + 12px) 0 12px;}
.ap .vt-brand{display: flex; align-items: center; gap: 10px; padding: 0px 10px; min-height: 34px;}
.ap .vt-mark{width: 34px; height: 34px; flex-shrink: 0; display: none;}
.ap .vt-wm{font-weight: 800; font-size: 30px; letter-spacing: -0.03em; line-height: 1; color: var(--text); white-space: nowrap;}
.ap .vt-wm-dot{display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--accent); vertical-align: baseline; margin-left: 3px;}
.ap .vt-collapse{position: fixed; top: calc((var(--titlebar-h) - 32px) / 2); left: calc(var(--sidebar-w) - 44px); z-index: var(--z-titlebar-controls); transition: left var(--shell-ms) var(--ease),
    color 0.12s var(--ease),
    background 0.12s var(--ease);}
.ap .vt-sbi{display: flex; align-items: center; gap: 10px; width: 100%; padding: 8px 10px; border-radius: 8px; text-align: left; margin-bottom: 1px; color: var(--muted); background: transparent; transition: background 0.12s var(--ease),
    color 0.12s var(--ease);}
.ap .vt-sbi:hover{background: rgba(255, 255, 255, 0.05);}
.ap .vt-sbi.active{background: rgba(255, 255, 255, 0.06); color: rgba(255, 255, 255, 0.95);}
.ap .vt-sbi svg{flex-shrink: 0; opacity: 0.85;}
.ap .vt-sbi .vt-label{flex: 1 1 0%; font-size: 13px; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0px;}
.ap .vt-sbi .vt-count{font-size: 12px; font-variant-numeric: tabular-nums; flex-shrink: 0; color: var(--faint);}
.ap .vt-sbi.muted{color: var(--faint);}
.ap .vt-sbi.muted:hover{color: var(--muted); background: rgba(255, 255, 255, 0.04);}
.ap .vt-sbh{display: flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--faint); padding: 16px 10px 7px;}
.ap .vt-sbh-toggle{width: 100%; background: transparent; text-align: left; transition: color 0.12s var(--ease);}
.ap .vt-sbh-toggle:hover{color: var(--muted);}
.ap .vt-sbh-chev{opacity: 0.6; transform: rotate(-90deg); transition: transform 0.15s var(--ease);}
.ap .vt-archive-head{display: flex; align-items: center;}
.ap .vt-archive-n{margin-left: 5px; font-size: 11px; font-weight: 600; letter-spacing: 0px; text-transform: none; color: var(--faint);}
.ap .vt-archive-head .vt-sbh-chev{margin-left: auto;}
.ap .vt-dupe-dot{width: 5px; height: 5px; border-radius: 50%; background: var(--bad); flex-shrink: 0; margin-left: 7px;}
@media (prefers-reduced-motion: reduce){.ap .vt-sbh-chev{transition: none;}}
.ap .vt-sbi.vt-solo{margin-bottom: 4px;}
.ap .vt-sbi.vt-solo-below{margin-top: 16px;}
.ap .vt-sbh-row{display: flex; align-items: center; gap: 10px; width: 100%; margin-top: 14px; padding: 7px 10px; border-radius: 8px; background: transparent; text-align: left; transition: color 0.12s var(--ease),
    background 0.12s var(--ease);}
.ap .vt-sbh-row .vt-sbh-text{flex: 1 1 0%; font-size: 11px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase;}
.ap .vt-sbh-row .vt-count{font-size: 12px; font-variant-numeric: tabular-nums; color: var(--faint);}
.ap .vt-sbh-row:hover{color: var(--muted); background: rgba(255, 255, 255, 0.04);}
.ap .vt-sbh-row.active{color: rgba(255, 255, 255, 0.95); background: rgba(255, 255, 255, 0.06);}
.ap .vt-sbh-icon{display: none;}
.ap .vt-add-track{color: var(--accent); min-height: 36px; margin-bottom: 12px;}
.ap .vt-add-track:hover{background: rgba(242, 183, 0, 0.08); color: var(--accent);}
.ap .vt-add-track svg{opacity: 1;}
.ap .vt-sb-foot{display: flex; flex-direction: column; gap: 1px; margin-top: 10px; flex-shrink: 0;}
.ap .sm-scrim{position: fixed; inset: 0px; z-index: var(--z-modal-scrim); background: rgba(0, 0, 0, 0.55); display: flex; align-items: center; justify-content: center; padding: 46px 24px 24px; animation: sm-scrim-in 0.16s var(--ease);}
.ap .settings-modal{position: relative; z-index: var(--z-modal); width: min(920px, 100%); height: min(640px, 100%); display: grid; grid-template-columns: 216px 1fr; grid-template-rows: minmax(0px, 1fr); background: var(--panel); border: 1px solid var(--border); border-radius: 14px; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.55) 0px 24px 60px, rgba(0, 0, 0, 0.4) 0px 6px 16px; animation: sm-modal-in 0.2s var(--ease);}
.ap .sm-rail{background: rgba(0, 0, 0, 0.22); border-right: 1px solid var(--border); padding: 16px 12px 14px; overflow-y: auto; overscroll-behavior: contain; display: flex; flex-direction: column;}
.ap .sm-navgroup{margin-top: 12px;}
.ap .sm-navgroup:first-of-type{margin-top: 4px;}
.ap .sm-navlabel{font-size: 10.5px; font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; color: var(--faint); padding: 0px 10px 4px;}
.ap .sm-navitem{display: flex; align-items: center; gap: 10px; width: 100%; padding: 7px 10px; border-radius: 8px; font-size: 13px; font-weight: 500; color: var(--muted); background: transparent; text-align: left; transition: background 0.12s var(--ease),
    color 0.12s var(--ease);}
.ap .sm-navitem svg{flex-shrink: 0; opacity: 0.8;}
.ap .sm-navitem:hover{background: rgba(255, 255, 255, 0.04); color: var(--text);}
.ap .sm-navitem.active{background: rgba(255, 255, 255, 0.07); color: var(--text); font-weight: 600;}
.ap .sm-navitem.active svg{opacity: 1;}
.ap .sm-navitem-label{flex: 1 1 0%; min-width: 0px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.ap .sm-main{display: flex; flex-direction: column; min-width: 0px; min-height: 0px; background: var(--panel);}
.ap .sm-head{display: flex; align-items: center; justify-content: space-between; padding: 18px 24px 16px; border-bottom: 1px solid var(--border); flex-shrink: 0;}
.ap .sm-head h2{font-size: 20px; font-weight: 700; letter-spacing: -0.01em;}
.ap .sm-close{width: 32px; height: 32px; display: flex; align-items: center; justify-content: center; border-radius: 8px; color: var(--faint); background: transparent; transition: background 0.12s var(--ease),
    color 0.12s var(--ease);}
.ap .sm-close:hover{background: rgba(255, 255, 255, 0.06); color: var(--text);}
.ap .sm-content{flex: 1 1 0%; min-height: 0px; overflow-y: auto; overscroll-behavior: contain; padding: 0px 24px 32px; scrollbar-gutter: stable; animation: sm-fade 0.18s var(--ease);}
.ap .sm-section{max-width: 620px;}
.ap .sm-section .section-hint{margin-top: 0px; margin-bottom: var(--space-5); max-width: 68ch; text-wrap: pretty;}
.ap .sm-setting-label{font-size: 14px; font-weight: 600; color: var(--text); display: flex; align-items: center;}
.ap .sm-setting-desc{font-size: 12.5px; color: var(--faint); line-height: 1.5; margin: 3px 0px 0px; max-width: 400px;}
.ap .sm-switch{flex-shrink: 0; width: 40px; height: 23px; border-radius: 999px; background: var(--surface); border: 1px solid var(--border); padding: 2px; display: flex; transition: background 0.16s var(--ease),
    border-color 0.16s var(--ease);}
.ap .sm-switch-knob{width: 17px; height: 17px; border-radius: 50%; background: rgba(255, 255, 255, 0.6); transition: transform 0.18s var(--ease),
    background 0.16s var(--ease);}
.ap .sm-switch.on{background: var(--accent); border-color: var(--accent);}
.ap .sm-switch.on .sm-switch-knob{background: rgb(10, 10, 9); transform: translateX(17px);}
.ap .sm-switch:disabled{cursor: default; opacity: 0.7;}
.ap .zoom-root{flex: 1 1 0%; min-height: 0px; display: flex; flex-direction: column; zoom: var(--app-zoom, 1);}
.ap .zoom-slider{position: fixed; z-index: var(--z-titlebar-controls); top: calc((var(--titlebar-h) - 20px) / 2); right: calc(var(--content-x) + 32px + 10px); display: flex; align-items: center; height: 20px; transition: right var(--shell-ms) var(--ease);}
.ap.panel-open .zoom-slider{right: calc(var(--panel-w) + 16px);}
.ap .zoom-slider input[type="range"]{appearance: none; width: 104px; height: 20px; background: transparent; cursor: pointer;}
.ap .zoom-slider input[type="range"]::-webkit-slider-runnable-track{height: 4px; border-radius: 999px; background: linear-gradient(var(--accent), var(--accent)) left / calc(var(--fill, 0) * 1%)
      100% no-repeat,
    rgba(255, 255, 255, 0.16);}
.ap .zoom-slider input[type="range"]::-webkit-slider-thumb{appearance: none; width: 14px; height: 14px; margin-top: -5px; border-radius: 50%; background: var(--accent); border: 2px solid var(--bg);}
@media (prefers-reduced-motion: reduce){.ap .zoom-slider{transition: none;}}
.ap .cr{background: var(--surface); border: 1px solid var(--border-faint); border-radius: var(--radius); padding: var(--space-4);}
.ap .cr-lede{font-size: 13px; font-weight: 600; color: var(--text); line-height: 1.5; margin: 0 0 var(--space-4); max-width: 62ch;}
.ap .cr-pair{display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); margin: 0px;}
.ap .cr-route + .cr-route{border-left: 1px solid var(--border-faint); padding-left: var(--space-4);}
.ap .cr-route dt{font-size: 12.5px; font-weight: 700; color: var(--text); margin-bottom: 3px;}
.ap .cr-route dd{margin: 0px; font-size: 12px; color: var(--faint); line-height: 1.55;}
.ap .cr-here, .ap .cr-go{display: block; margin-top: 6px; font-size: 12px; font-weight: 600;}
.ap .cr-here{color: var(--muted);}
.ap .cr-go{color: var(--muted); background: transparent; padding: 0px; border-width: medium medium 1px; border-style: none none solid; border-color: currentcolor currentcolor rgba(255, 255, 255, 0.22); border-image: none; border-radius: 0px; line-height: 1.3; width: fit-content; transition: color 0.14s var(--ease),
    border-color 0.14s var(--ease);}
.ap .cr-go:hover{color: var(--text); border-bottom-color: rgba(255, 255, 255, 0.45);}
@media (max-width: 720px){.ap .cr-pair{grid-template-columns: 1fr;}.ap .cr-route + .cr-route{border-left-width: medium; border-left-style: none; border-left-color: currentcolor; padding-left: 0px; border-top: 1px solid var(--border-faint); padding-top: var(--space-4);}}
@keyframes acc-reveal { 
  0% { opacity: 0; transform: translateY(-3px); }
}
@keyframes acc-shimmer { 
  100% { background-position: -200% 0px; }
}
.ap .sm-actions-grid{display: flex; flex-direction: column; gap: 2px; margin-bottom: 8px;}
.ap .sm-action{display: flex; align-items: center; gap: 13px; width: 100%; padding: 12px 10px; border-radius: 8px; text-align: left; color: var(--text); background: transparent; transition: background 0.12s var(--ease);}
.ap .sm-action:hover{background: rgba(255, 255, 255, 0.04);}
.ap .sm-action:disabled{opacity: 0.4; cursor: default;}
.ap .sm-action:disabled:hover{background: transparent;}
.ap .sm-action > svg{flex-shrink: 0; width: 34px; height: 34px; padding: 8px; box-sizing: border-box; border-radius: 9px; color: var(--muted); background: var(--surface);}
.ap .sm-action-label{display: block; font-size: 13.5px; font-weight: 600; color: var(--text);}
.ap .sm-action-desc{display: block; font-size: 12px; color: var(--faint); margin-top: 1px;}
.ap .sm-danger{display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 22px; padding-top: 20px; border-top: 1px solid rgba(255, 107, 107, 0.18);}
.ap .sm-danger .btn{flex-shrink: 0;}
@keyframes sk-listen { 
  50% { background: rgba(242, 183, 0, 0.16); }
}
@keyframes sm-scrim-in { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes sm-modal-in { 
  0% { opacity: 0; transform: translateY(6px) scale(0.985); }
  100% { opacity: 1; transform: none; }
}
@keyframes sm-fade { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@media (prefers-reduced-motion: reduce){.ap .sm-scrim, .ap .settings-modal, .ap .sm-content{animation: auto ease 0s 1 normal none running none;}}
@media (max-width: 760px){.ap .settings-modal{grid-template-columns: 176px 1fr;}.ap .sm-content, .ap .sm-head{padding-left: 18px; padding-right: 18px;}}
.ap[data-motion="reduced"] *, .ap[data-motion="reduced"] ::before, .ap[data-motion="reduced"] ::after{animation-duration: 0.01ms !important; animation-delay: 0ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important;}
.ap .le-scrim{position: fixed; inset: 0px; z-index: var(--z-modal-scrim); background: rgba(0, 0, 0, 0.55); display: flex; align-items: center; justify-content: center; padding: 46px 24px 24px; animation: sm-scrim-in 0.16s var(--ease);}
.ap .le-modal{position: relative; z-index: var(--z-modal); width: min(520px, 100%); max-height: 100%; display: flex; flex-direction: column; background: var(--panel); border: 1px solid var(--border); border-radius: 14px; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.55) 0px 24px 60px, rgba(0, 0, 0, 0.4) 0px 6px 16px; animation: sm-modal-in 0.2s var(--ease); transition: box-shadow 0.18s var(--ease);}
.ap .le-head{display: flex; align-items: center; justify-content: space-between; padding: 16px 20px 14px; border-bottom: 1px solid var(--border); flex-shrink: 0;}
.ap .le-head h2{font-size: 18px; font-weight: 700; letter-spacing: -0.01em;}
.ap .le-field-lbl{font-size: 11px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--faint);}
@keyframes lc-pop-in { 
  0% { opacity: 0; transform: translateY(-4px); }
}
.ap .le-foot{display: flex; justify-content: flex-end; gap: 8px; padding: 14px 20px; border-top: 1px solid var(--border); flex-shrink: 0;}
@media (prefers-reduced-motion: reduce){.ap .le-scrim, .ap .le-modal{animation: auto ease 0s 1 normal none running none;}}
.ap .sm-switch-neutral{width: 32px; height: 19px;}
.ap .sm-switch-neutral .sm-switch-knob{width: 13px; height: 13px;}
.ap .sm-switch-neutral.on .sm-switch-knob{transform: translateX(13px);}
.ap .sm-switch-neutral.on{background: rgba(255, 255, 255, 0.82); border-color: rgba(255, 255, 255, 0.82);}
.ap .sm-switch-neutral.on .sm-switch-knob{background: rgb(10, 10, 9);}
.ap.panel-open main{margin-right: var(--panel-w); padding-right: 8px;}
.ap .ctrl-row{display: flex; flex-wrap: wrap; align-items: center; gap: 10px; min-height: 34px; margin-bottom: 16px;}
.ap .ctrl-spacer{flex: 1 1 0%; min-width: 16px;}
.ap .lib-root{flex: 1 1 0%; min-height: 0px; display: flex; flex-direction: column;}
.ap .lib-search{position: relative; margin: 0px 0px 16px;}
.ap .lib-search-icon{position: absolute; left: 13px; top: 50%; transform: translateY(-50%); color: var(--faint); pointer-events: none;}
.ap .lib-search-input{width: 100%; box-sizing: border-box; background: var(--surface); border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 8px; padding: 11px 14px 11px 40px; font-size: 14px; color: var(--text); outline: none;}
.ap .lib-search-input::placeholder{color: var(--faint);}
.ap .lib-search-input:focus{box-shadow: rgba(242, 183, 0, 0.7) 0px 0px 0px 1px, rgba(242, 183, 0, 0.16) 0px 0px 0px 3px;}
.ap .filter-add{display: inline-flex; align-items: center; gap: 6px; padding: 7px 13px; border-radius: 999px; font-size: 13px; font-weight: 600; color: var(--muted); border: 1px dashed var(--border); transition: color 0.15s var(--ease),
    border-color 0.15s var(--ease),
    background 0.15s var(--ease);}
.ap .filter-add:hover, .ap .filter-add.open{color: var(--text); border-color: rgba(255, 255, 255, 0.25); background: rgba(255, 255, 255, 0.04);}
.ap .chip{display: inline-flex; align-items: center; gap: 7px; padding: 7px 14px; border-radius: 999px; font-size: 13px; font-weight: 600; color: var(--muted); background: transparent; border: 1px solid var(--border); transition: color 0.15s var(--ease),
    background 0.15s var(--ease),
    border-color 0.15s var(--ease);}
.ap .chip:hover{color: var(--text); border-color: rgba(255, 255, 255, 0.2);}
.ap .chip[aria-pressed="true"]{color: var(--on-accent); background: var(--accent); border-color: var(--accent);}
.ap .chip[aria-pressed="true"]:hover{background: var(--accent-hover); border-color: var(--accent-hover);}
.ap .chip-sm{padding: 5px 10px; font-size: 12px;}
.ap .chip:disabled{opacity: 0.4; cursor: default;}
.ap .chip:disabled:hover{color: var(--muted); border-color: var(--border);}
.ap .result-note{font-size: 13px; color: var(--muted); margin: 0px 0px 14px; font-variant-numeric: tabular-nums;}
.ap .lib-head, .ap .track-row{display: flex; align-items: center; gap: 16px;}
.ap .lib-head{align-items: center; min-height: 24px; padding: 0px 16px 9px; font-size: 11px; font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; color: var(--faint); overflow: clip;}
@keyframes cell-enter { 
  0% { opacity: 0; }
}
.ap .lib-head .col-plat{display: flex; align-items: center; gap: 0px; text-align: center;}
.ap .plat-code{flex: 0 0 26px; width: 26px; font-size: 9px; letter-spacing: 0px; overflow: hidden; text-overflow: clip; white-space: nowrap; text-align: center;}
.ap .track-list{display: flex; flex-direction: column; gap: 6px; flex: 1 1 0%; min-height: 0px; overflow: hidden auto; overscroll-behavior: contain; scrollbar-gutter: stable; padding-bottom: 90px;}
.ap .track-row{width: 100%; text-align: left; background: var(--row); border-radius: var(--radius); padding: 12px 16px; cursor: pointer; position: relative; overflow: clip; transition: background 0.15s var(--ease); content-visibility: auto; contain-intrinsic-size: auto 64px;}
.ap .track-row:hover{background: var(--surface);}
.ap .track-row[aria-current="true"]::after, .ap .track-row.row-menu-target::after{content: ""; position: absolute; inset: 1px; border: 1px solid var(--row-ring); border-radius: calc(var(--radius) - 1px); pointer-events: none;}
.ap .track-row[aria-current="true"]{--row-ring: rgba(242, 183, 0, 0.55);}
.ap .t-title-cell{flex: 2.4 1 0px; min-width: 220px; max-width: 380px;}
.ap .t-title{display: flex; align-items: center; min-width: 0px; font-size: 15px; font-weight: 700; line-height: 1.25;}
.ap .t-title-text{overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.ap .t-meta{display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; color: var(--muted); margin-top: 2px;}
.ap .t-meta-no{font-variant-numeric: tabular-nums;}
.ap .t-meta .sep{color: var(--faint); margin: 0px 4px;}
.ap .t-meta-list{display: inline-flex; align-items: center; gap: 6px; color: var(--text);}
.ap .list-swatch{width: 8px; height: 8px; border-radius: 2.5px; flex-shrink: 0; position: relative; top: 0.5px;}
.ap .badge{display: inline-block; flex-shrink: 0; margin-left: 8px; padding: 2px 8px; border-radius: 999px; font-size: 11px; font-weight: 700;}
.ap .badge-dup{color: var(--bad); border: 1px solid rgba(255, 107, 107, 0.45); line-height: inherit; transition: background-color 120ms, border-color 120ms;}
.ap .badge-dup:hover{background: rgba(255, 107, 107, 0.1); border-color: rgba(255, 107, 107, 0.65);}
@media (prefers-reduced-motion: reduce){.ap .badge-dup{transition: none;}}
.ap .plat-cells{display: flex; align-items: center;}
.ap .plat-gap{flex: 0 0 16px; width: 16px; align-self: stretch; display: flex; align-items: center; justify-content: center;}
.ap .plat-gap::before{content: ""; width: 1px; height: 12px; border-radius: 1px; background: rgba(255, 255, 255, 0.07);}
.ap .pdot-btn{display: flex; align-items: center; justify-content: center; transition: opacity 0.16s var(--ease); flex: 0 0 26px; width: 26px; height: 24px; background: transparent; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; padding: 0px; cursor: pointer;}
.ap .plat-code{transition: color 0.12s var(--ease); cursor: pointer; user-select: none;}
.ap button.plat-code{position: relative; appearance: none; background: none; border: 0px; padding: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 9px; letter-spacing: 0px; color: inherit; text-transform: inherit; overflow: clip visible;}
.ap .plat-code::after{content: ""; position: absolute; left: 50%; bottom: -5px; width: 12px; height: 2px; margin-left: -6px; border-radius: 1px; background: currentcolor; opacity: 0; transform: scaleX(0); transition: transform 0.2s var(--ease),
    opacity 0.2s var(--ease);}
.ap .pdot{display: flex; align-items: center; justify-content: center; width: 9px; height: 9px; border-radius: 50%; font-size: 11px; font-weight: 700; line-height: 1; transition: transform 0.15s var(--ease);}
.ap .pdot-btn .pdot{width: 13px; height: 13px; transform: scale(0.69);}
.ap .pdot-btn .pdot-not_uploaded{border-width: 2.2px;}
.ap .pdot-btn .pdot-not_marked{width: 11px; height: 2px; border-radius: 1px; background: rgba(255, 255, 255, 0.24);}
.ap .pdot-btn:hover .pdot{transform: scale(1);}
.ap .pdot-btn:active .pdot{transform: scale(0.76);}
.ap .pdot-uploaded{background: var(--ok);}
.ap .pdot-not_uploaded{border: 1.5px solid rgba(255, 255, 255, 0.55);}
.ap .pdot-pending{background: var(--accent);}
.ap .pdot-rejected{color: transparent; border-radius: 0px; background-color: var(--bad); mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2010%2010'%3E%3Cpath%20d='M1.1%201.1%208.9%208.9M8.9%201.1%201.1%208.9'%20stroke='%23000'%20stroke-width='1.5'%20stroke-linecap='round'/%3E%3C/svg%3E") center center / 100% 100% no-repeat;}
.ap .pdot-not_marked{width: 8px; height: 2px; border-radius: 1px; background: rgba(255, 255, 255, 0.45);}
@keyframes dot-pop-in { 
  0% { opacity: 0; transform: translate(-50%, -50%) scale(0.7); }
  100% { opacity: 1; transform: translate(-50%, -50%) scale(1); }
}
@keyframes dot-pop-out { 
  0% { opacity: 1; transform: translate(-50%, -50%) scale(1); }
  100% { opacity: 0; transform: translate(-50%, -50%) scale(0.85); }
}
.ap .field-text{display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; color: var(--muted);}
.ap .field-num{font-size: 12px; font-variant-numeric: tabular-nums; color: var(--muted);}
.ap .field-mark{display: inline-flex; align-items: center; justify-content: center; vertical-align: middle; color: var(--muted);}
.ap .field-mark svg{display: block;}
.ap .field-mark.code{color: var(--accent);}
.ap .field-dash{color: var(--faint); font-size: 12px;}
.ap .facet-bar{display: flex; flex-wrap: wrap; align-items: center; gap: 7px; min-width: 0px;}
.ap .facet-pop-wrap{position: relative;}
.ap .facet-trigger{display: inline-flex; align-items: stretch; border-radius: 999px; overflow: hidden; border: 1px solid var(--border); background: transparent; transition: border-color 0.15s var(--ease),
    background 0.15s var(--ease);}
.ap .facet-trigger.on{border-color: rgba(255, 255, 255, 0.22); background: rgba(255, 255, 255, 0.06);}
.ap .facet-trigger.open{border-color: rgba(255, 255, 255, 0.32); background: rgba(255, 255, 255, 0.1);}
.ap .facet-trigger-btn{display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; font-size: 13px; font-weight: 600; white-space: nowrap; color: var(--muted);}
.ap .facet-trigger.on .facet-trigger-btn, .ap .facet-trigger-btn:hover{color: var(--text);}
.ap .facet-trigger.on .facet-label{color: var(--faint);}
.ap .facet-dot{width: 6px; height: 6px; border-radius: 50%; background: var(--accent); flex-shrink: 0;}
.ap .facet-sep{color: rgba(255, 255, 255, 0.4);}
.ap .facet-val{color: rgb(255, 255, 255);}
.ap .facet-chevron{opacity: 0.55; flex-shrink: 0; margin-top: 1px;}
.ap .facet-clear{display: inline-flex; align-items: center; justify-content: center; width: 26px; border-width: medium medium medium 1px; border-style: none none none solid; border-color: currentcolor currentcolor currentcolor rgba(255, 255, 255, 0.12); border-image: none; background: transparent; color: var(--faint); font-size: 9px;}
.ap .facet-clear:hover{background: rgba(255, 107, 107, 0.15); color: var(--bad);}
.ap .facet-clear-all{font-size: 13px; font-weight: 600; color: var(--muted); padding: 7px 6px;}
.ap .facet-clear-all:hover{color: var(--text);}
.ap .facet-popover{position: absolute; top: calc(100% + 7px); left: 0px; z-index: var(--z-pop); width: 272px; max-width: calc(-32px + 1440.00px); background: var(--panel); border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 8px; box-shadow: rgba(255, 255, 255, 0.05) 0px 1px 0px inset, rgba(0, 0, 0, 0.7) 0px 12px 32px -8px, rgba(0, 0, 0, 0.4) 0px 3px 10px -4px; padding: 6px;}
.ap .facet-popover.wide{left: 0px; right: auto; width: 400px; max-width: calc(1440.00px - var(--sidebar-w) - 48px);}
.ap .facet-search{width: 100%; background: var(--surface); border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 8px; padding: 8px 11px; font-size: 13px; color: var(--text); margin-bottom: 6px; box-sizing: border-box;}
.ap .facet-search:focus{outline: none; box-shadow: rgba(242, 183, 0, 0.5) 0px 0px 0px 1px;}
.ap .facet-list{max-height: 300px; overflow-y: auto; overscroll-behavior: contain; display: flex; flex-direction: column; gap: 1px;}
.ap .facet-row{width: 100%; display: flex; align-items: center; gap: 10px; padding: 7px 9px; border-radius: 8px; background: transparent; text-align: left;}
.ap .facet-row:hover{background: rgba(255, 255, 255, 0.06);}
.ap .facet-row.on{background: rgba(242, 183, 0, 0.07);}
.ap .facet-check{width: 16px; height: 16px; flex-shrink: 0; border-radius: 3px; display: inline-flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 800; line-height: 1; background: var(--surface); border: 1px solid rgba(255, 255, 255, 0.22); color: transparent; transition: background 0.12s var(--ease),
    border-color 0.12s var(--ease);}
.ap .facet-check.on{background: var(--accent); border-color: var(--accent); color: var(--on-accent);}
.ap .facet-row-label{flex: 1 1 0%; font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0px; color: rgba(255, 255, 255, 0.82);}
.ap .facet-row.on .facet-row-label{color: rgba(255, 255, 255, 0.96); font-weight: 600;}
.ap .facet-popover-footer{border-top: 1px solid var(--border); margin-top: 6px; padding-top: 6px; display: flex; justify-content: flex-end;}
.ap .facet-footer-clear{font-size: 12px; font-weight: 600; color: var(--muted); padding: 5px 8px; border-radius: 8px;}
.ap .facet-footer-clear:hover{color: var(--text); background: rgba(255, 255, 255, 0.05);}
.ap .facet-hint{font-size: 12px; color: var(--faint); line-height: 1.5; margin: 0px 0px 10px;}
.ap .facet-two-col{display: flex; gap: 14px;}
.ap .facet-col{flex: 1.2 1 0%; min-width: 0px; display: flex; flex-direction: column;}
.ap .facet-col-narrow{flex: 0.9 1 0%;}
.ap .facet-col-divider{width: 1px; background: var(--border); flex-shrink: 0;}
.ap .facet-col-label{font-size: 10px; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; color: var(--faint); margin-bottom: 7px;}
.ap .facet-col .facet-list{max-height: 220px;}
.ap .facet-row-dot{flex-shrink: 0; transform: none;}
.ap .facet-row-dot.pdot-not_marked{align-self: center;}
.ap .facet-status-presets{display: flex; gap: 5px; margin-bottom: 7px;}
.ap .facet-preset{flex: 1 1 0%; padding: 6px 8px; border-radius: 6px; font-size: 12px; font-weight: 600; color: var(--muted); border: 1px solid var(--border); background: transparent; transition: color 0.12s var(--ease),
    border-color 0.12s var(--ease),
    background 0.12s var(--ease);}
.ap .facet-preset:hover{color: var(--text); border-color: rgba(255, 255, 255, 0.24);}
.ap .facet-preset.on{color: var(--on-accent); background: var(--accent); border-color: var(--accent);}
@keyframes facet-pop-in { 
  0% { opacity: 0; transform: translateY(-4px) scale(0.98); }
  100% { opacity: 1; transform: none; }
}
.ap .facet-popover, .ap .filter-menu{animation: facet-pop-in 0.14s var(--ease); transform-origin: left top;}
.ap .facet-popover.wide{transform-origin: left top;}
@media (prefers-reduced-motion: reduce){.ap .facet-popover, .ap .filter-menu{animation: auto ease 0s 1 normal none running none;}}
.ap .paint-menu-wrap{position: relative; display: inline-flex; align-items: center; flex-shrink: 0;}
.ap .paint-btn{position: relative; overflow: visible;}
.ap .paint-btn:hover, .ap .paint-btn.open{color: var(--text); background: rgba(255, 255, 255, 0.07);}
.ap .paint-btn svg{flex-shrink: 0;}
.ap .paint-btn .brush-icon{width: 20px; height: 20px; transform: scale(1); transform-origin: 50% 50%;}
.ap .paint-btn:disabled{opacity: 0.42; cursor: not-allowed;}
@keyframes paint-hit-ring { 
  0% { opacity: 0.36; transform: translate(-50%, -50%) scale(0.58); }
  100% { opacity: 0; transform: translate(-50%, -50%) scale(1.08); }
}
.ap .cols-menu-wrap{position: relative; flex-shrink: 0;}
.ap .cols-btn{display: inline-flex; align-items: center; gap: 8px; min-height: 34px; padding: 0px 13px 0px 12px; border-radius: 999px; font-size: 13px; font-weight: 700; border: 1px solid transparent; background: var(--field-rest); color: var(--muted); white-space: nowrap; transition: color 0.12s var(--ease),
    background 0.12s var(--ease),
    border-color 0.12s var(--ease);}
.ap .cols-btn:hover{color: var(--text); background: var(--field-hover);}
.ap .cols-btn svg{color: var(--faint); flex-shrink: 0;}
.ap .cols-btn:hover svg{color: var(--muted);}
.ap .cols-count{flex-shrink: 0; max-width: 108px; font-size: 13px; font-weight: 700; color: var(--muted); font-variant-numeric: tabular-nums; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.ap .cols-switch{--knob: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='13' r='13' fill='%23ffffffb8'/%3E%3C/svg%3E"); --knob-size: 13px; --knob-inset: 3px; display: inline-block; width: 32px; height: 19px; border-radius: 999px; flex-shrink: 0; padding: 0px; border: 0px; background: var(--knob) no-repeat left var(--knob-inset) center / var(--knob-size)
      var(--knob-size),
    rgba(255, 255, 255, 0.08); box-shadow: inset 0 0 0 1px var(--border); transition: background-color 0.18s var(--ease),
    background-position 0.18s var(--ease),
    box-shadow 0.18s var(--ease);}
.ap .cols-switch.on{--knob: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='13' r='13' fill='%23000'/%3E%3C/svg%3E"); background-color: var(--accent); background-position: right var(--knob-inset) center; box-shadow: none;}
.ap .cols-switch:disabled{opacity: 0.3; cursor: not-allowed;}
.ap .panel{position: fixed; top: 0px; right: 0px; bottom: 0px; z-index: var(--z-panel); width: min(var(--panel-w), 1440.00px); background: var(--sidebar); border-left: 1px solid rgba(255, 255, 255, 0.06); transform: translateX(103%); transition: transform 0.25s var(--ease); overflow-y: auto; overscroll-behavior: contain; padding: var(--titlebar-h) 28px 48px;}
.ap .panel::before{content: ""; position: fixed; top: 0px; right: 0px; width: min(var(--panel-w), 1440.00px); height: var(--titlebar-h); background: linear-gradient(
    to bottom,
    var(--sidebar),
    var(--sidebar) 45%,
    transparent
  ); pointer-events: none; z-index: 3;}
.ap.panel-open .panel{transform: none;}
.ap .panel-title-input{width: 100%; box-sizing: border-box; background: transparent; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 6px; padding: 2px 6px; margin: 0 0 var(--space-2) -6px; font-size: 20px; font-weight: 800; line-height: 1.25; color: var(--text); outline: none; text-overflow: ellipsis;}
.ap .panel-title-input:hover{background: rgba(255, 255, 255, 0.04);}
.ap .panel-title-read{display: block; text-align: left; cursor: text; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.ap .panel-meta{display: flex; align-items: center; flex-wrap: wrap; gap: 4px 7px; margin: 0px 0px 2px -8px; font-size: 13px; color: var(--muted);}
.ap .meta-list{display: inline-flex; align-items: center; gap: 6px; color: var(--text);}
.ap .panel-meta > .meta-list:first-child{margin-left: 8px;}
.ap .meta-inline{background: var(--field-rest); cursor: text; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 6px; padding: 3px 8px; font-family: inherit; font-size: 13px; color: var(--text); outline: none; transition: background 0.12s var(--ease),
    box-shadow 0.12s var(--ease),
    color 0.12s var(--ease);}
.ap .meta-inline:hover{background: var(--field-hover); color: var(--text);}
.ap .meta-inline:focus{background: var(--surface); box-shadow: var(--focus-ring); color: var(--text);}
.ap .meta-unit{margin-left: 0px; color: var(--faint);}
.ap .meta-catalogno{font-variant-numeric: tabular-nums; width: auto; min-width: 0px;}
.ap .meta-catalogno-read{cursor: text; text-align: left;}
.ap .meta-numsign{margin-right: -5px;}
.ap .p-list{display: flex; flex-direction: column;}
.ap .p-row{padding: 5px 0px; width: 100%; text-align: left; font-size: 14px;}
.ap .p-row.group-start{margin-top: 16px;}
.ap .p-name-line{display: flex; align-items: center; gap: 8px; min-width: 0px;}
.ap .p-dot{width: 9px; height: 9px; border-radius: 50%; flex-shrink: 0;}
.ap .p-dot-uploaded{background: var(--ok);}
.ap .p-dot-pending{background: var(--accent);}
.ap .p-dot-not_uploaded{background: transparent; border: 1.5px solid rgba(255, 255, 255, 0.4);}
.ap .p-dot-not_marked{background: rgba(255, 255, 255, 0.35);}
.ap .alias-sub{display: block; max-width: 100%; margin: 3px 0px 1px 12px; padding: 1px 5px; border-radius: 5px; font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; letter-spacing: -0.01em; color: var(--faint); text-align: left; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; transition: background 0.12s var(--ease),
    color 0.12s var(--ease);}
.ap .alias-sub:hover{background: var(--field-rest); color: var(--muted);}
.ap .p-hist{margin: 4px 0px 2px 17px;}
.ap .p-hist.title-hist{margin: 6px 0px 0px;}
.ap .p-hist-toggle{display: inline-flex; align-items: center; min-height: 24px; gap: 5px; background: transparent; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; padding: 0px; font-family: inherit; font-size: 11.5px; letter-spacing: 0.01em; color: var(--faint);}
.ap .p-hist-toggle:hover{color: var(--muted);}
.ap .p-hist-caret{display: inline-flex; align-items: center; transition: transform 0.15s var(--ease);}
.ap .plat-edit-toggle{display: inline-flex; align-items: center; gap: 7px; min-height: 24px; padding: 2px 4px; border-radius: 6px; font-size: 11px; font-weight: 600; color: var(--faint); transition: color 0.15s var(--ease);}
.ap .plat-edit-toggle:hover, .ap .plat-edit-toggle.on{color: var(--muted);}
.ap .plat-edit-switch{--knob-size: 10px; width: 28px; height: 16px;}
.ap .p-row-toggle{width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0px; text-align: left;}
.ap .status-pill{flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; min-width: 80px; min-height: 24px; box-sizing: border-box; font-size: 11px; font-weight: 600; white-space: nowrap; border-radius: 999px; padding: 3px 8px; cursor: pointer; transition: color 0.15s var(--ease),
    background 0.15s var(--ease),
    border-color 0.15s var(--ease);}
@media (prefers-reduced-motion: reduce){.ap .status-pill{transition: none;}}
.ap .st-up{color: var(--ok); border: 1px solid rgba(62, 207, 142, 0.55); background: transparent;}
.ap .st-pending{color: var(--on-accent); background: var(--accent); border: 1px solid var(--accent);}
.ap .st-todo{color: var(--muted); border: 1px solid rgba(255, 255, 255, 0.35); background: transparent;}
.ap .st-unk{color: var(--faint); border: 1px dashed rgba(255, 255, 255, 0.35); background: transparent;}
.ap .autotext{position: relative;}
.ap .autotext .autotext-input{display: block; width: 100%; overflow: hidden; resize: none;}
.ap .autotext-field.has-corner .autotext-input{padding-right: 30px;}
.ap .autotext.is-clamped .autotext-input{mask-image: linear-gradient(rgb(0, 0, 0) calc(100% - 46px), transparent);}
.ap .autotext-foot{display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 2px;}
.ap .autotext-toggle{padding: 3px 7px; margin-left: -8px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 5px; background: none; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 12px; font-weight: 600; color: var(--muted); cursor: pointer; transition: color 0.12s var(--ease),
    background 0.12s var(--ease);}
.ap .autotext-toggle:hover{color: var(--text); background: rgba(255, 255, 255, 0.05);}
.ap .copybtn{display: inline-flex; align-items: center; gap: 6px; color: var(--muted); background: transparent; cursor: pointer; transition: color 0.12s var(--ease),
    background 0.12s var(--ease),
    border-color 0.12s var(--ease);}
.ap .copybtn-ghost{border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 6px; padding: 5px;}
.ap .copybtn:hover:not(:disabled){color: var(--text); background: rgba(255, 255, 255, 0.06);}
.ap .copybtn:disabled{opacity: 0.35; cursor: default;}
.ap .copybtn-icon{flex: 0 0 auto;}
@keyframes copy-pop { 
  0% { transform: scale(0.6); opacity: 0.5; }
  100% { transform: scale(1); opacity: 1; }
}
.ap .finput{width: 100%; box-sizing: border-box; background: var(--field-rest); cursor: text; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 6px; padding: 4px 8px; margin-left: -8px; font-family: inherit; font-size: 13px; line-height: 1.6; color: var(--text); outline: none; transition: background 0.12s var(--ease),
    box-shadow 0.12s var(--ease);}
.ap .finput::placeholder{color: var(--faint);}
.ap .finput:hover{background: var(--field-hover);}
.ap .finput:focus{background: var(--surface); box-shadow: var(--focus-ring);}
.ap .autotext-field{position: relative; border-radius: 6px; margin-left: -8px; background: var(--field-rest); transition: background 0.12s var(--ease),
    box-shadow 0.12s var(--ease);}
.ap .autotext-corner{position: absolute; top: 3px; right: 3px;}
.ap .autotext-corner .copybtn{color: var(--faint);}
.ap .autotext-corner .copybtn:hover:not(:disabled), .ap .autotext-corner .copybtn:focus-visible{color: var(--text);}
.ap .autotext-field:hover{background: var(--field-hover);}
.ap .autotext-field .finput, .ap .autotext-field .finput:hover, .ap .autotext-field .finput:focus{background: transparent; margin-left: 0px; box-shadow: none;}
.ap .fcopy-code{width: calc(17ch + 30px);}
.ap .code-input{font-variant-numeric: tabular-nums; letter-spacing: 0.01em;}
.ap .conflict-box{margin: 10px 0px 2px; padding: 9px 11px; background: rgba(255, 107, 107, 0.09); border: 1px solid rgba(255, 107, 107, 0.3); border-radius: 8px; animation: conflict-in 0.22s var(--ease);}
@keyframes conflict-in { 
  0% { opacity: 0; transform: translateY(-4px); }
  100% { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce){.ap .conflict-box{animation: auto ease 0s 1 normal none running none;}}
.ap .conflict-title{display: flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--bad);}
.ap .conflict-dot{width: 6px; height: 6px; border-radius: 50%; background: var(--bad);}
.ap .conflict-row{margin-top: 5px; font-size: 12px; color: rgba(255, 255, 255, 0.88);}
.ap .conflict-where{color: var(--faint);}
.ap .conflict-link{display: flex; align-items: center; gap: 8px; width: calc(100% + 12px); margin: 3px -6px 0px; padding: 5px 6px; border-radius: 6px; font-size: 12px; font-weight: 600; color: rgba(255, 255, 255, 0.88); text-align: left; transition: background 0.12s var(--ease);}
.ap .conflict-link:hover{background: rgba(255, 255, 255, 0.07);}
.ap .conflict-link-text{flex: 1 1 0%; min-width: 0px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.ap .conflict-link svg{flex-shrink: 0; color: var(--faint);}
.ap .stems-check{display: inline-flex; align-items: center; gap: 8px; font-size: 13px; color: var(--muted); cursor: pointer;}
.ap .stems-check:has(input:checked){color: var(--text);}
.ap .catpick{display: flex; flex-wrap: wrap; align-items: center; gap: 6px;}
.ap .catpick-chips{display: contents;}
.ap .catpick-chip{display: inline-flex; align-items: center; min-height: 24px; font-size: 12px; color: var(--muted); background: rgba(255, 255, 255, 0.14); border: 1px solid transparent; border-radius: 999px; padding: 3px 10px; transition: color 0.15s var(--ease),
    background 0.15s var(--ease),
    border-color 0.15s var(--ease);}
.ap .catpick-chip:hover:not(:disabled){color: var(--text); background: rgba(255, 255, 255, 0.2);}
.ap .catpick-chip.on{color: var(--on-accent); background: var(--accent); border-color: var(--accent);}
.ap .catpick-chip.on:hover:not(:disabled){color: var(--on-accent); background: var(--accent-hover); border-color: var(--accent-hover);}
.ap .catpick-chip:disabled{opacity: 0.35; cursor: default;}
.ap .catpick-more{width: 25px; height: 25px; display: inline-flex; align-items: center; justify-content: center; border: 1px dashed rgba(255, 255, 255, 0.35); border-radius: 999px; line-height: 1; color: var(--faint); cursor: pointer; transition: color 0.15s var(--ease),
    border-color 0.15s var(--ease);}
.ap .catpick-more:hover{color: var(--text); border-color: rgba(255, 255, 255, 0.5);}
.ap .catpick-search{position: relative; flex: 1 1 140px; min-width: 140px;}
.ap .catpick-search[hidden]{display: none;}
.ap .catpick-add{background: var(--surface); border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 999px; padding: 5px 12px; font-size: 12px; color: var(--text); width: 100%; min-width: 140px;}
.ap .catpick-add::placeholder{color: var(--faint);}
.ap .catpick-add:focus{outline: none; box-shadow: var(--focus-ring);}
.ap .p-row .name{color: var(--text); font-weight: 600; min-width: 0px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.ap .cov-row{display: grid; grid-template-columns: 150px 1fr 74px; gap: 14px; align-items: center; padding: 8px 0px; border-bottom: 1px solid var(--border);}
.ap .cov-row:last-child{border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor;}
.ap .cov-row .name{font-size: 13px; color: var(--text);}
.ap .cov-row .bar{height: 6px; border-radius: 3px; background: rgba(255, 255, 255, 0.07); overflow: hidden;}
.ap .cov-row .fill{display: block; height: 100%; border-radius: 3px; background: rgba(255, 255, 255, 0.22);}
.ap .cov-row .val{font-size: 12px; color: var(--muted); font-variant-numeric: tabular-nums; text-align: right; white-space: nowrap;}
@media (prefers-reduced-motion: reduce){.ap *, .ap .panel, .ap .scrim{transition: none !important;}}
@keyframes vt-rise { 
  0% { opacity: 0; transform: translate(-50%, 10px); }
  100% { opacity: 1; transform: translate(-50%, 0px); }
}
.ap .toast-live{position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0px;}
@keyframes undo-drain { 
  0% { transform: scaleX(1); }
  100% { transform: scaleX(0); }
}
.ap .panel-notes{margin-top: var(--space-7); border-top: 1px solid var(--border-faint); padding-top: var(--space-4);}
.ap .panel-danger{margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--border);}
.ap .panel-danger .btn-danger{display: inline-flex; align-items: center; gap: 7px;}
.ap .vt-list-row{position: relative; padding: 0px;}
.ap .vt-list-btn{display: flex; align-items: center; gap: 10px; flex: 1 1 0%; min-width: 0px; padding: 8px 10px; background: transparent; color: inherit; font: inherit; text-align: left; border-radius: inherit;}
.ap .section-hint{font-size: 12px; color: var(--faint); line-height: 1.5; margin: 0px 0px 12px;}
.ap .ver-block{display: flex; flex-direction: column; gap: 7px;}
.ap .ver-line{display: block;}
.ap .ver-durations{font-variant-numeric: tabular-nums;}
.ap .ver-folder{display: flex; align-items: center; flex-wrap: wrap; gap: 4px; margin-right: -7px;}
.ap .ver-zone{display: flex; align-items: center; gap: 11px; width: calc(100% + 8px); margin-left: -8px; min-height: 48px; padding: 0px 12px; border: 1px dashed rgba(255, 255, 255, 0.18); border-radius: 6px; background: var(--field-rest); text-align: left; cursor: pointer; transition: background 0.12s var(--ease),
    border-color 0.12s var(--ease);}
.ap .ver-zone-text{display: flex; flex-direction: column; gap: 2px; min-width: 0px;}
.ap .ver-zone:hover:not(:disabled){background: var(--field-hover); border-color: rgba(255, 255, 255, 0.28);}
.ap .ver-zone:disabled{opacity: 0.5; cursor: default;}
.ap .ver-zone-icon{flex: 0 0 auto; width: 17px; height: 14px; border-radius: 2px 2.5px 2.5px; background: var(--muted); opacity: 0.6; clip-path: polygon(0px 0px, 42% 0px, 52% 18%, 100% 18%, 100% 100%, 0px 100%);}
.ap .ver-zone-main{font-size: 12px; font-weight: 600; color: var(--muted);}
.ap .ver-zone-sub{font-size: 11px; color: var(--faint);}
.ap .ver-folder:has(.ver-zone){margin-right: 0px;}
.ap .ver-files{list-style: none; margin: 1px 0px 0px; padding: 0px; display: flex; flex-direction: column; gap: 1px;}
.ap .ver-files li{display: flex; align-items: baseline; justify-content: space-between; gap: 10px; font-size: 12px; color: var(--faint);}
.ap .ver-files-label{overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.ap .ver-files-dur{flex-shrink: 0; font-variant-numeric: tabular-nums;}
.ap .btn-danger{color: rgb(255, 255, 255); background: rgba(255, 107, 107, 0.15); border: 1px solid rgba(255, 107, 107, 0.4);}
.ap .btn-danger:hover:not(:disabled){background: rgba(255, 107, 107, 0.25);}
.ap .pl-group + .pl-group{margin-top: 0px;}
.ap .pl-group-head{display: flex; align-items: center; gap: 4px; padding: 11px 0px; background: var(--panel); border-bottom: 1px solid var(--border); cursor: pointer; position: sticky; top: 0px; z-index: 1;}
.ap .pl-collapse{display: flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 6px; color: var(--muted); flex-shrink: 0; transition: color 0.12s var(--ease),
    background 0.12s var(--ease);}
.ap .pl-collapse:hover{color: var(--text); background: rgba(255, 255, 255, 0.07);}
.ap .pl-chev{transform: rotate(-90deg); transition: transform 0.15s var(--ease);}
.ap .pl-group-name{flex: 0 1 auto; field-sizing: content; min-width: 6ch; max-width: 100%; margin-left: -4px; background: transparent; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; color: var(--text); font-size: 15px; font-weight: 700; letter-spacing: -0.005em; padding: 4px; border-radius: 6px;}
@supports not (field-sizing: content){.ap .pl-group-name{flex: 1 1 0%; min-width: 0px;}}
.ap .pl-group-name:hover{background: var(--field-hover);}
.ap .pl-group-name:focus{outline: none; background: var(--surface); box-shadow: rgba(242, 183, 0, 0.5) 0px 0px 0px 1px;}
.ap .pl-group-tools{display: flex; align-items: center; gap: 4px; margin-left: auto;}
.ap .pl-group-count{flex-shrink: 0; font-size: 12px; color: var(--faint); font-variant-numeric: tabular-nums; white-space: nowrap;}
.ap .pl-add-row{display: inline-flex; align-items: center; gap: 5px; padding: 6px 8px; border-radius: 6px; font-size: 12.5px; font-weight: 500; color: var(--faint); text-align: left; transition: color 0.12s var(--ease),
    background 0.12s var(--ease);}
.ap .pl-add-row:hover{color: var(--text); background: rgba(255, 255, 255, 0.05);}
.ap .pl-add-row .pl-islot{opacity: 0.9;}
.ap .pl-add-group{margin-top: var(--space-4);}
.ap .pl-add-row.pl-add-group{margin-left: 18px;}
.ap .pl-islot{width: 22px; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;}
.ap .lib-head-wrap{position: relative; z-index: 2; background: var(--bg); padding-right: var(--sb-w);}
.ap .t-check-cell{display: flex; align-items: center; justify-content: center; width: 26px; height: 20px; flex-shrink: 0;}
.ap .lib-sort-btn{display: inline-flex; align-items: center; gap: 3px; color: inherit; font: inherit; letter-spacing: inherit; text-transform: inherit;}
.ap .lib-sort-btn:hover{color: var(--text);}
.ap .sort-arrow{flex-shrink: 0; color: var(--faint); opacity: 0.25; transition: opacity 0.12s var(--ease),
    color 0.12s var(--ease),
    transform 0.12s var(--ease);}
.ap .lib-sort-btn:hover .sort-arrow{opacity: 0.55;}
.ap .pzone{margin-top: var(--space-7); border-top: 1px solid var(--border-faint); padding-top: var(--space-4);}
.ap .pzone:first-of-type{margin-top: var(--space-5);}
.ap .pzone-head{display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%;}
.ap .pzone-toggle{display: flex; align-items: center; justify-content: flex-start; gap: 5px; flex: 0 1 auto; min-width: 0px; background: none; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; padding: 0px; font: inherit; color: inherit; text-align: left; cursor: pointer;}
.ap .pzone-h{margin: 0px; min-width: 0px; flex: 0 1 auto; font: inherit;}
.ap .pzone-title{font-size: 11px; font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; color: var(--faint); transition: color 0.15s var(--ease);}
.ap .pzone-toggle:hover .pzone-title, .ap .pzone-toggle:hover .pzone-chevron{color: var(--muted);}
.ap .pzone-chevron{display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; color: var(--faint); transition: transform 0.15s var(--ease),
    color 0.15s var(--ease);}
.ap .pzone-chevron.open{transform: rotate(90deg);}
.ap .pzone-body{display: grid; grid-template-rows: 0fr; opacity: 0; transition: grid-template-rows 0.24s var(--ease),
    opacity 0.2s var(--ease);}
.ap .pzone-body.open{grid-template-rows: 1fr; opacity: 1;}
.ap .pzone-body-inner{min-height: 0px; overflow: hidden; padding: 0px 6px; margin: 0px -6px; display: flex; flex-direction: column; gap: 13px;}
@media (prefers-reduced-motion: reduce){.ap .pzone-body{transition: none;}}
.ap .frow{display: grid; grid-template-columns: var(--frow-label-w) 1fr; gap: 12px; align-items: start;}
.ap .frow-center{align-items: center;}
.ap .frow-label{padding-top: 5px; font-size: 12px; font-weight: 500; line-height: 1.35; color: var(--muted); overflow-wrap: break-word;}
.ap .frow-note{color: var(--faint); font-weight: 400; font-variant-numeric: tabular-nums; white-space: nowrap;}
.ap .frow-center .frow-label{padding-top: 0px;}
.ap .frow-value{min-width: 0px;}
.ap .fcopy{position: relative; display: block; margin-left: -8px;}
.ap .fcopy > .finput{margin-left: 0px; padding-right: 30px;}
.ap .fcopy > .copybtn{position: absolute; top: 50%; right: 3px; transform: translateY(-50%); color: var(--faint);}
.ap .fcopy > .copybtn:hover:not(:disabled), .ap .fcopy > .copybtn:focus-visible{color: var(--text);}
@keyframes cmenu-in { 
  0% { opacity: 0; transform: scale(0.96); }
}
.ap .btn:disabled{opacity: 0.4; cursor: default;}
.ap .im-modal{width: min(1240px, 100%); max-height: min(860px, 100%);}
.ap .im-head{align-items: flex-start;}
.ap .im-help{width: 32px; height: 32px; flex-shrink: 0; margin-left: auto; border-radius: 999px; font-size: 14px; font-weight: 700; color: var(--faint); background: transparent; transition: color 0.15s var(--ease),
    background 0.15s var(--ease);}
.ap .im-help:hover{color: var(--text); background: rgba(255, 255, 255, 0.05);}
.ap .im-title{display: flex; align-items: baseline; gap: 10px; min-width: 0px;}
.ap .im-file{min-width: 0px; font-size: 12.5px; color: var(--faint); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 40ch;}
.ap .im-plan{flex: 1 1 0%; min-height: 0px; display: flex; flex-direction: column;}
.ap .im-decide{flex: 0 0 auto; padding: 14px 20px 16px; border-bottom: 1px solid var(--border);}
.ap .im-rows{display: grid; grid-template-columns: max-content minmax(0px, 1fr); gap: 9px 16px; align-items: start;}
.ap .im-rows .chip[aria-pressed="true"]{background: var(--text); border-color: var(--text); color: rgb(10, 10, 9);}
.ap .im-rows .chip[aria-pressed="true"]:hover{background: rgb(255, 255, 255); border-color: rgb(255, 255, 255); filter: none;}
.ap .im-row-lbl{padding-top: 7px; white-space: nowrap;}
.ap .im-row-ctl{display: flex; flex-direction: column; gap: 5px; min-width: 0px;}
.ap .im-chips{display: flex; flex-wrap: wrap; align-items: center; gap: 6px;}
.ap .im-foot{align-items: center;}
.ap .im-foot-msg{flex: 1 1 0%; margin: 0px; font-size: 12px; color: var(--muted); min-width: 0px;}
@media (max-height: 700px){.ap .im-decide{padding: 11px 20px 12px;}.ap .im-rows{row-gap: 7px;}}
@media (max-height: 620px){.ap .im-plan{overflow-y: auto; overscroll-behavior: contain;}}
.ap .ex-modal{width: min(920px, 100%); container-type: inline-size;}
.ap .ex-modal .chip[aria-pressed="true"]{background: var(--text); border-color: var(--text); color: rgb(10, 10, 9);}
.ap .ex-modal .chip[aria-pressed="true"]:hover{background: rgb(255, 255, 255); border-color: rgb(255, 255, 255); filter: none;}
.ap .ex-cols{flex: 1 1 0%; min-height: 0px; overflow-y: auto; overscroll-behavior: contain; padding: 10px 20px 14px; display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); grid-auto-flow: dense; align-content: start; column-gap: 22px;}
.ap .ex-group{min-width: 0px;}
.ap .ex-group.is-wide{grid-column: 1 / -1; order: -1;}
.ap .ex-group-h{display: flex; align-items: baseline; gap: 8px; margin: 0px; padding: 10px 8px 3px; font-size: 10px; font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; color: var(--faint);}
.ap .ex-group-hint{font-size: 10px; font-weight: 600; letter-spacing: 0px; text-transform: none; color: rgba(255, 255, 255, 0.32);}
.ap .ex-row{border-radius: 8px;}
.ap .ex-line{display: flex; align-items: center; gap: 10px; padding: 5px 8px; border-radius: 8px;}
.ap .ex-line:hover{background: rgba(255, 255, 255, 0.05);}
.ap .ex-group.is-wide .ex-line{max-width: 292px;}
.ap .ex-group.is-wide{margin-bottom: 8px;}
.ap .ex-row-name{flex: 1 1 0%; min-width: 0px; font-size: 13px; color: rgba(255, 255, 255, 0.95); overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.ap .ex-row-name.off{color: var(--muted);}
.ap .ex-row-note{flex-shrink: 0; font-size: 10.5px; font-weight: 600; color: rgba(255, 255, 255, 0.32);}
.ap .ex-link{padding: 0px; background: transparent; font-size: 11.5px; font-weight: 600; color: var(--faint); border-radius: 3px;}
.ap .ex-link:hover{color: var(--text); text-decoration: underline;}
.ap .ex-preview{flex: 0 0 auto; border-top: 1px solid var(--border); padding: 10px 20px 12px; background: rgba(0, 0, 0, 0.16);}
.ap .ex-preview-head{display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 8px;}
.ap .ex-count{font-size: 12.5px; color: var(--muted);}
.ap .ex-count b{font-weight: 700; color: var(--text); font-variant-numeric: tabular-nums;}
.ap .ex-times{margin: 0px 7px; color: rgba(255, 255, 255, 0.4);}
.ap .ex-adv-toggle{flex-shrink: 0;}
.ap .ex-table-wrap{overflow-x: auto; overscroll-behavior-x: contain; border: 1px solid var(--border); border-radius: 8px; background: var(--surface);}
.ap .ex-table{border-collapse: collapse; font-size: 11.5px; white-space: nowrap;}
.ap .ex-table th{padding: 6px 10px; text-align: left; font-size: 10px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--faint); border-bottom: 1px solid var(--border); background: var(--surface);}
.ap .ex-table td{padding: 5px 10px; color: var(--muted); max-width: 210px; overflow: hidden; text-overflow: ellipsis; border-bottom: 1px solid var(--border-faint);}
.ap .ex-table tbody tr:last-child td{border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor;}
.ap .ex-table td:first-child, .ap .ex-table th:first-child{position: sticky; left: 0px; background: var(--surface); color: var(--text);}
@media (max-height: 700px){.ap .ex-cols{padding: 8px 20px 10px;}.ap .ex-table tbody tr:nth-child(n+3){display: none;}}
@media (max-height: 620px){.ap .ex-cols{flex: 0 0 auto; overflow: visible;}.ap .ex-preview{padding: 8px 20px 10px;}.ap .ex-table tbody tr:nth-child(n+2){display: none;}}
.ap .le-modal:focus, .ap .settings-modal:focus{outline: none;}
@keyframes im-read-slide { 
  0% { transform: translateX(-110%); }
  100% { transform: translateX(320%); }
}
@keyframes fi-slide { 
  0% { transform: translateX(-110%); }
  100% { transform: translateX(330%); }
}
.ap .dp-trigger{appearance: none; font: inherit; cursor: pointer; text-align: left;}
.ap .dp-trigger:disabled{cursor: default; opacity: 0.5;}
.ap .tagsfield{display: flex; flex-direction: column; gap: 6px;}
.ap .tagsfield-box{position: relative; border-radius: 6px; margin-left: -8px; padding: 6px 8px; background: var(--field-rest); transition: background 0.12s var(--ease), box-shadow 0.12s var(--ease);}
.ap .tagsfield-box:hover{background: var(--field-hover);}
.ap .tagsfield-auto{margin: 0px 0px 6px; padding: 0px 26px 6px 0px; border-bottom: 1px solid var(--border-faint); font-size: 13.5px; line-height: 1.7;}
.ap .tagsep{color: var(--faint);}
.ap .tagw{appearance: none; background: none; border: 0px; padding: 1px 3px; margin: 0px -3px; font: inherit; white-space: nowrap; cursor: pointer; border-radius: 3px; color: var(--accent);}
.ap .tagw:hover{background: var(--field-hover);}
.ap .tagsfield-mirror, .ap .tagsfield-input{font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 13.5px; line-height: 1.7; white-space: pre-wrap; overflow-wrap: break-word; padding: 0px; margin: 0px; border: 0px;}
.ap .tagsfield-typed{position: relative;}
.ap .tagsfield-mirror{position: absolute; inset: 0px; color: transparent; pointer-events: none; user-select: none;}
.ap .tagsfield-mirror mark{background: rgba(255, 107, 107, 0.2); color: transparent; border-radius: 3px; padding: 0px;}
.ap .tagsfield-mirror mark, .ap .tagw{transition: background 0.12s var(--ease),
    text-decoration-color 0.12s var(--ease);}
.ap .tagsfield-dupnote{color: var(--bad);}
.ap .tagsfield-input{position: relative; display: block; width: 100%; min-height: 24px; background: none; resize: none; overflow: hidden; color: var(--muted); caret-color: var(--text); outline: none;}
.ap .tagsfield-input::placeholder{color: var(--faint);}
.ap .tagsfield-input:first-child{padding-right: 26px;}
.ap .tagsfield-foot{display: flex; align-items: baseline; gap: 6px; flex-wrap: wrap; margin: 0px; font-size: 11px; line-height: 1.5;}
@keyframes spop-in { 
  0% { opacity: 0; transform: translateY(-3px); }
}
.ap .relb{margin-top: 16px; display: flex; flex-direction: column; gap: 6px;}
.ap .relb-head{display: flex; align-items: center; gap: 8px; min-height: 26px; margin-bottom: 1px;}
.ap .relb-title{font-size: 12px; font-weight: 700; color: var(--muted);}
.ap .relb-n{font-size: 12px; color: var(--faint); font-variant-numeric: tabular-nums;}
.ap .relb-add{margin-left: auto; display: inline-flex; align-items: center; height: 24px; padding: 0px 10px; border: 1px dashed rgba(255, 255, 255, 0.35); border-radius: 999px; font-size: 12px; color: var(--muted); white-space: nowrap; transition: color 0.12s var(--ease), border-color 0.12s var(--ease);}
.ap .relb-add:hover{color: var(--text); border-color: rgba(255, 255, 255, 0.5);}
.ap .relb-item{padding: 0px 12px; border-radius: 8px; background: var(--field-rest); transition: background 0.15s var(--ease),
    box-shadow 0.2s var(--ease);}
.ap .relb-item:has(> .relb-line:hover){background: rgba(255, 255, 255, 0.075);}
.ap .relb-line{display: flex; align-items: center; gap: 8px; width: 100%; min-height: 36px; padding: 6px 0px; text-align: left; font-size: 13px;}
.ap .relb-chev{flex: 0 0 9px; color: var(--faint); transition: transform 0.2s var(--ease);}
.ap .relb-name{display: flex; align-items: baseline; gap: 9px; flex: 0 1 auto; min-width: 0px;}
.ap .relb-name-text{min-width: 0px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; color: var(--text);}
.ap .relb-kind{flex: 0 0 auto; font-size: 12px; font-weight: 500; color: var(--faint); font-variant-numeric: tabular-nums; white-space: nowrap;}
.ap .relb-when{flex: 0 100 auto; min-width: 0px; margin-left: auto; padding-left: 8px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; color: var(--faint); font-variant-numeric: tabular-nums;}
.ap .relb-head-row{display: flex; align-items: center; gap: 4px; min-width: 0px;}
.ap .relb-head-row > .relb-line{flex: 1 1 auto; min-width: 0px;}
.ap .relx-fact > .copybtn, .ap .alias-read > .copybtn, .ap .panel-title-row > .copybtn{flex-shrink: 0; color: var(--faint); opacity: 0; transition: opacity 0.12s var(--ease), color 0.12s var(--ease);}
.ap .relx-fact:hover > .copybtn, .ap .relx-fact > .copybtn:focus-visible, .ap .alias-read:hover > .copybtn, .ap .alias-read > .copybtn:focus-visible, .ap .panel-title-row:hover > .copybtn, .ap .panel-title-row > .copybtn:focus-visible{opacity: 1;}
.ap .relx-fact > .copybtn:hover, .ap .alias-read > .copybtn:hover, .ap .panel-title-row > .copybtn:hover{color: var(--text);}
.ap .panel-title-row{display: flex; align-items: center; gap: 4px; min-width: 0px;}
.ap .panel-title-row > .panel-title-read{flex: 0 1 auto; width: auto; min-width: 0px;}
.ap .alias-read{display: flex; align-items: center; gap: 2px; min-width: 0px; max-width: 100%;}
.ap .alias-read > .alias-sub{min-width: 0px;}
@media (prefers-reduced-motion: reduce){.ap .relb-chev{transition: none;}}
.ap .fill-aura{position: fixed; top: 0px; right: 0px; bottom: 0px; width: min(var(--panel-w), 1440.00px); z-index: 4; pointer-events: none; overflow: hidden; opacity: 0;}
.ap .fill-aura::after{content: ""; position: absolute; left: 0px; right: 0px; top: 0px; height: 180px; background: linear-gradient(
    to bottom,
    transparent,
    color-mix(in srgb, var(--accent) 7%, transparent) 70%,
    color-mix(in srgb, var(--accent) 22%, transparent) 97%,
    color-mix(in srgb, var(--accent) 70%, transparent)
  ); opacity: 0; transform: translateY(-180px);}
@keyframes fill-card-in { 
  0% { opacity: 0; transform: translateY(4px); }
}
@keyframes fill-scan { 
  0% { opacity: 1; transform: translateY(-180px); }
  75% { opacity: 1; }
  100% { opacity: 0; transform: translateY(100vh); }
}
@keyframes fill-you-open { 
  0% { grid-template-rows: 0fr; opacity: 0; margin-bottom: 0px; }
}
@keyframes fill-flash { 
  0% { background-color: color-mix(in srgb, var(--accent) 30%, transparent); }
}
.ap .side-modes{display: inline-flex; align-items: center; flex-shrink: 0; gap: 2px; padding: 2px; border-radius: 9px; background: rgba(255, 255, 255, 0.04);}
.ap .side-btn{width: 32px; height: 30px; display: inline-flex; align-items: center; justify-content: center; border: 0px; border-radius: 7px; background: transparent; color: var(--faint); transition: color 0.12s var(--ease), background 0.12s var(--ease);}
.ap .side-btn:hover{color: var(--text); background: rgba(255, 255, 255, 0.07);}
.ap .is-side-window .fw-filters :is(.facet-popover, .ap .facet-popover.wide, .ap .filter-menu){top: calc(100% - 2px); left: 12px; right: 12px; width: auto; min-width: 0px; max-width: none; max-height: calc(-150px + 900.00px); overflow-y: auto;}
@keyframes hint-words-in { 
  0% { opacity: 0.2; }
}
.ap .ic-sheet-wrap{--ic-dim: rgba(255, 255, 255, 0.5); flex: 0 1 auto; min-height: 0px; margin: 0px 22px; border: 1px solid var(--border); border-radius: 8px; overflow: hidden; display: flex; flex-direction: column; background: var(--row);}
.ap .ic-scroller{flex: 0 1 auto; min-height: 0px; overflow: auto; position: relative; overscroll-behavior: contain;}
.ap .ic-sheet{border-collapse: separate; border-spacing: 0px; table-layout: fixed; font-variant-numeric: tabular-nums;}
.ap .ic-sheet th, .ap .ic-sheet td{padding: 0px; border-right: 1px solid var(--border-faint); border-bottom: 1px solid var(--border-faint); background: var(--row); text-align: left; vertical-align: middle;}
.ap .ic-sheet thead th{position: sticky; top: 0px; z-index: 2; background: var(--surface); border-bottom-color: var(--border);}
.ap .ic-sheet .st0{position: sticky; left: 0px; z-index: 1;}
.ap .ic-sheet thead .st0{z-index: 3;}
.ap .ic-sheet .gut{width: 40px; text-align: center; color: var(--faint); font-size: 11px;}
.ap .ic-sheet td.gut, .ap .ic-sheet th.gut{background: var(--surface);}
.ap .ic-sheet thead th.gut{font-weight: 600;}
.ap .ic-sheet td{height: 38px;}
.ap .ic-cell{display: flex; align-items: center; gap: 6px; padding: 0px 12px; height: 38px; overflow: hidden; white-space: nowrap; color: var(--muted);}
.ap .ic-cell > .t{overflow: hidden; text-overflow: ellipsis;}
.ap .ic-cell.num{justify-content: flex-end;}
.ap .ic-cell.ttl{color: var(--text); font-size: 13.5px; font-weight: 600;}
.ap .ic-hb{display: flex; flex-direction: column; align-items: stretch; gap: 3px; width: 100%; padding: 9px 12px; text-align: left; border-radius: 0px; position: relative; border: 1px solid transparent; background: none; color: inherit; font: inherit; cursor: pointer; transition: background 0.15s var(--ease);}
.ap .ic-hb:hover{background: var(--field-hover);}
.ap .ic-hb .hn{display: flex; align-items: center; gap: 7px; font-size: 13.5px; font-weight: 700; color: var(--text); white-space: nowrap; overflow: hidden; padding-right: 12px;}
.ap .ic-hb .hn .t, .ap .ic-hb .ht .t{overflow: hidden; text-overflow: ellipsis;}
.ap .ic-hb .ht{display: flex; align-items: center; gap: 5px; font-size: 11px; color: var(--faint); white-space: nowrap; overflow: hidden; font-weight: 600;}
.ap .ic-hb .ht b{color: var(--text); font-weight: 600;}
.ap .ic-hb .chev{position: absolute; right: 8px; top: 11px; color: var(--faint); opacity: 0.6; transition: opacity 0.15s var(--ease);}
.ap .ic-hb:hover .chev, .ap .ic-hb[aria-expanded="true"] .chev, .ap .ic-hb:focus-visible .chev{opacity: 1; color: var(--text);}
.ap .ic-sheet [data-col] .ic-cell, .ap .ic-sheet th[data-col] .ic-hb{transition: opacity 0.2s var(--ease);}
@media (prefers-reduced-motion: reduce){.ap .ic-sheet [data-col] .ic-cell, .ap .ic-sheet th[data-col] .ic-hb{transition: none;}}
.ap .ic-gut-btn{display: inline-flex; align-items: center; justify-content: center; gap: 2px; width: 30px; height: 26px; border-radius: 6px; background: none; border: 0px; cursor: pointer; color: var(--muted); font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 11px; font-weight: 600;}
.ap .ic-gut-btn:hover, .ap .ic-gut-btn[aria-expanded="true"]{background: var(--field-hover); color: var(--text);}
.ap .ic-gut-btn svg{width: 8px; height: 8px; opacity: 0.7;}
.ap .ic-mk{display: inline-flex; align-items: center; gap: 7px;}
.ap .ic-mk .raw{color: inherit;}
.ap .ic-mk.blank .pdot{opacity: 0.45;}
.ap .ic-lchip{display: inline-flex; padding: 1px 8px; border-radius: 999px; background: rgba(255, 255, 255, 0.07); color: inherit; font-size: 11px; font-weight: 600; white-space: nowrap;}
.ap .ic-incat{font-size: 11px; font-weight: 600; color: var(--faint); white-space: nowrap; display: inline-flex; align-items: center; gap: 4px;}
.ap .ic-sheet tr.is-dim td:not(.gut) .ic-cell{color: var(--ic-dim);}
.ap .ic-sheet tr.is-dim .pdot, .ap .ic-sheet tr.is-dim .ic-tick .bx{opacity: 0.55;}
.ap .ic-sheet .more-row .ic-cell{color: var(--faint); font-size: 12px;}
.ap .ic-sr{position: absolute; top: 0px; left: 0px; margin: 0px; width: 1px; height: 1px; overflow: hidden; clip: rect(0px, 0px, 0px, 0px); white-space: nowrap;}
.ap .ic-bar{display: flex; align-items: center; gap: 16px; padding: 12px 22px; min-height: 60px;}
.ap .ic-bar p{margin: 0px;}
.ap .ic-sp{flex: 1 1 0%;}
.ap .ic-lines{display: grid; gap: 3px; min-width: 0px;}
.ap .ic-say{color: var(--muted); font-size: 13.5px;}
.ap .ic-say b{color: var(--text); font-weight: 600;}
.ap .ic-say .n{font-size: 18px; font-weight: 800; letter-spacing: -0.01em; font-variant-numeric: tabular-nums; margin-right: 2px;}
.ap .ic-say .to{white-space: nowrap;}
.ap .ic-also{color: var(--faint); font-size: 12px;}
.ap .ic-also b{color: var(--muted); font-weight: 600;}
.ap .ic-link{color: var(--muted); font-weight: 600; font-size: inherit; padding: 0px; background: none; text-decoration: underline rgba(255, 255, 255, 0.22); text-underline-offset: 3px; cursor: pointer;}
.ap .ic-link:hover{color: var(--text); text-decoration-color: var(--text);}
.ap .ic-list-mark{display: inline-flex; align-items: center; gap: 7px; white-space: nowrap;}
.ap .ic-list-swatch{width: 10px; height: 10px; border-radius: 3px; flex: 0 0 auto; background: var(--sw); transition: background-color 0.3s var(--ease);}
@keyframes ic-swatch-in { 
  0% { transform: scale(0.4); }
  100% { transform: none; }
}
@keyframes ic-tick-draw { 
  0% { stroke-dashoffset: 14; }
  100% { stroke-dashoffset: 0; }
}
@keyframes ic-say-in { 
  0% { opacity: 0; transform: translateY(5px); }
  100% { opacity: 1; transform: none; }
}
.ap .ic-prog{display: inline-flex; align-items: center; gap: 8px; font-size: 13.5px; color: var(--muted);}
.ap .ic-prog:empty{display: none;}
@media (prefers-reduced-motion: reduce){.ap .ic-list-swatch{transition: none;}}
.ap[data-motion="reduced"] .ic-list-swatch{transition: none;}
.ap .ic-body{flex: 1 1 auto; min-height: 0px; display: flex; flex-direction: column; overflow: hidden; padding-bottom: 18px;}
.ap .ic-why{margin: 0px 4px 0px auto; max-width: 440px; text-align: right; font-size: 12px; line-height: 1.45; color: var(--muted);}
.ap .ic-why:empty{display: none;}
.ap .im-foot:has(.ic-why:empty) .btn-ghost{margin-left: auto;}
.ap .ic-go{border: 1px solid transparent; transition: background 0.45s var(--ease-expo),
    color 0.45s var(--ease-expo),
    border-color 0.45s var(--ease-expo);}
@media (prefers-reduced-motion: reduce){.ap .ic-go{transition: none;}}
