@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial}}}@layer theme{:root,:host{--font-sans:"Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;--spacing:4px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--text-2xs:11px;--text-2xs--line-height:1.45;--text-xs:12px;--text-xs--line-height:1.5;--text-sm:13px;--text-sm--line-height:1.55;--text-md:13.5px;--text-md--line-height:1.65;--text-base:14px;--text-base--line-height:1.65;--text-lg:15px;--text-lg--line-height:1.6;--text-xl:16px;--text-xl--line-height:1.5;--text-2xl:18px;--text-2xl--line-height:1.4;--color-bg:#fff;--color-side:#fafafd;--color-soft:#fafafd;--color-bd:#e6e6ee;--color-div:#eeeef4;--color-hair:#f4f4f8;--color-bd-btn:#e2e2ea;--color-ink:#1c1c26;--color-ink2:#23232e;--color-sub:#6b6b7a;--color-weak:#9a9aab;--color-dis:#b4b4c2;--color-pri:#6e63f5;--color-pri-hover:#5d53e0;--color-sel:#eeeefb;--color-dot-ok:#6e63f5;--color-dot-neutral:#c2c2cf;--color-dot-disabled:#d9a9a2;--color-dot-attention:#dd8a2e;--color-dot-error:#c75c4e;--color-vec:#6e63f5;--color-kw:#0d7a4f;--color-kw-bg:#e8f6ef;--color-alt-a-soft:#f0f7fd;--color-alt-a-bg:#e3f2fd;--color-alt-a-strong:#d3e9fb;--color-alt-a-ink:#1565c0;--color-alt-b-soft:#f0f9f4;--color-alt-b-bg:var(--color-kw-bg);--color-alt-b-strong:#d5eee3;--color-danger:var(--color-dot-error);--color-danger-bg:#fbeeec;--color-danger-bd:#f0d3cd;--color-note-bg:#fff8e1;--color-note-bd:#f0e0a8;--color-on-pri:#fff;--shadow-card:0 1px 2px #1c1c260a}@supports (color:color-mix(in lab,red,red)){:root,:host{--shadow-card:0 1px 2px color-mix(in srgb, var(--color-ink) 4%, transparent)}}:root,:host{--shadow-btn:0 1px 2px #1c1c261a}@supports (color:color-mix(in lab,red,red)){:root,:host{--shadow-btn:0 1px 2px color-mix(in srgb, var(--color-ink) 10%, transparent)}}:root,:host{--shadow-logo:0 1px 3px #1c1c262e}@supports (color:color-mix(in lab,red,red)){:root,:host{--shadow-logo:0 1px 3px color-mix(in srgb, var(--color-ink) 18%, transparent)}}:root,:host{--shadow-lift:0 4px 14px #1c1c2612}@supports (color:color-mix(in lab,red,red)){:root,:host{--shadow-lift:0 4px 14px color-mix(in srgb, var(--color-ink) 7%, transparent)}}:root,:host{--shadow-toast:0 8px 24px #1c1c2638}@supports (color:color-mix(in lab,red,red)){:root,:host{--shadow-toast:0 8px 24px color-mix(in srgb, var(--color-ink) 22%, transparent)}}:root,:host{--shadow-login:0 8px 32px #1c1c2614}@supports (color:color-mix(in lab,red,red)){:root,:host{--shadow-login:0 8px 32px color-mix(in srgb, var(--color-ink) 8%, transparent)}}:root,:host{--shadow-dialog:0 16px 48px #1c1c262e}@supports (color:color-mix(in lab,red,red)){:root,:host{--shadow-dialog:0 16px 48px color-mix(in srgb, var(--color-ink) 18%, transparent)}}:root,:host{--shadow-focus:0 0 0 2px var(--color-sel);--radius-2xs:3px;--radius-xs:4px;--radius-sm:5px;--radius-md:8px}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])),[hidden]{display:none!important}html{font-size:14px}body{background:var(--color-bg);color:var(--color-ink);font-size:var(--text-base);min-height:100vh;line-height:1.65}a{color:var(--color-pri)}a:hover{text-decoration:underline}a:focus-visible{outline:2px solid var(--color-pri);outline-offset:2px;border-radius:var(--radius-2xs)}@media(prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}code,.num,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}input[type=text],input[type=password],input[type=number],input[type=search],input[type=date],select,textarea{border:1px solid var(--color-bd-btn);border-radius:var(--radius-sm);width:100%;font-size:var(--text-base);background:var(--color-bg);color:var(--color-ink);padding:8px 12px;font-family:inherit;transition:border-color .15s,box-shadow .15s}input::placeholder,textarea::placeholder{color:var(--color-weak)}select{appearance:none;cursor:pointer;text-overflow:ellipsis;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%236B6B7A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:14px;padding-right:32px}select:hover:not(:disabled){border-color:var(--color-pri)}select:disabled{cursor:not-allowed}input:focus,select:focus,textarea:focus{border-color:var(--color-pri);box-shadow:var(--shadow-focus);outline:none}input:disabled,select:disabled{background:var(--color-soft);color:var(--color-dis);cursor:not-allowed;border-style:dashed}input[type=range]{appearance:none;background:linear-gradient(to right,var(--range-fill,var(--color-vec)) 0%,var(--range-fill,var(--color-vec)) var(--pct,70%),var(--range-track,var(--color-kw)) var(--pct,70%),var(--range-track,var(--color-kw)) 100%);cursor:pointer;border-radius:999px;outline:none;width:100%;height:6px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--color-bg);border:2px solid var(--color-pri);border-radius:50%;width:16px;height:16px}input[type=range]::-moz-range-thumb{background:var(--color-bg);border:2px solid var(--color-pri);border-radius:50%;width:13px;height:13px}input[type=checkbox]:not(.switch){appearance:none;border:1px solid var(--color-bd-btn);border-radius:var(--radius-xs);background:var(--color-bg) center / 12px no-repeat;cursor:pointer;vertical-align:-3px;flex:none;width:16px;min-width:16px;height:16px;min-height:16px;transition:background-color .15s,border-color .15s}input[type=checkbox]:not(.switch):hover:not(:disabled){border-color:var(--color-pri)}input[type=checkbox]:not(.switch):checked{background-color:var(--color-pri);border-color:var(--color-pri);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-7'/%3E%3C/svg%3E")}input[type=checkbox]:not(.switch):focus-visible{outline:2px solid var(--color-pri);outline-offset:1px}input[type=checkbox]:not(.switch):disabled{opacity:.5;cursor:not-allowed}input[type=checkbox].switch{appearance:none;background:var(--color-bd-btn);cursor:pointer;vertical-align:middle;border-radius:999px;width:34px;height:19px;transition:background .15s;position:relative}input[type=checkbox].switch:checked{background:var(--color-pri)}input[type=checkbox].switch:after{content:"";background:#fff;border-radius:50%;width:15px;height:15px;transition:left .15s;position:absolute;top:2px;left:2px}input[type=checkbox].switch:checked:after{left:17px}input[type=checkbox].switch:disabled{opacity:.55;cursor:not-allowed}dialog{border:1px solid var(--color-div);border-radius:var(--radius-md);max-width:420px;box-shadow:var(--shadow-dialog);margin:auto;padding:22px 24px}dialog[open]{animation:.16s ease-out dialog-in}@keyframes dialog-in{0%{opacity:0;transform:translateY(6px)scale(.98)}}dialog::backdrop{background:#1c1c2659}@supports (color:color-mix(in lab,red,red)){dialog::backdrop{background:color-mix(in srgb,var(--color-ink) 35%,transparent)}}}@layer components{.shell{align-items:stretch;min-height:100vh;display:flex}.sidebar{background:var(--color-side);border-right:1px solid var(--color-bd);flex-direction:column;flex:none;justify-content:space-between;align-self:flex-start;width:220px;min-height:100vh;display:flex;position:sticky;top:0}.sidebar-top{padding:18px 14px 8px}.brand{color:var(--color-ink);font-size:var(--text-lg);align-items:center;gap:10px;padding:6px 4px 18px;font-weight:500;display:flex}.brand:hover{text-decoration:none}.brand .logo{background:linear-gradient(135deg,var(--color-pri),var(--color-pri-hover));border-radius:var(--radius-sm);width:20px;height:20px;box-shadow:var(--shadow-logo);flex:none}.nav-group{margin-top:14px}.nav-group:first-child{margin-top:0}.nav-group-label{font-size:var(--text-2xs);letter-spacing:.08em;color:var(--color-weak);text-transform:uppercase;padding:0 11px 6px}.nav-item{border-radius:var(--radius-sm);color:var(--color-ink);font-size:var(--text-base);margin-bottom:2px;padding:8px 11px;transition:background-color .12s,color .12s;display:block}.nav-item:hover{background:var(--color-div);text-decoration:none}.nav-item.active{background:var(--color-sel);color:var(--color-pri);font-weight:500}.sidebar-footer{border-top:1px solid var(--color-div);align-items:center;gap:10px;padding:14px;display:flex}.avatar{background:linear-gradient(135deg,var(--color-pri),var(--color-pri-hover));width:24px;height:24px;color:var(--color-on-pri);border-radius:var(--radius-sm);font-size:var(--text-xs);flex:none;justify-content:center;align-items:center;font-weight:500;display:flex}.who{flex:1;min-width:0}.who .uname{font-size:var(--text-sm);color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.who .urole{font-size:var(--text-xs);color:var(--color-weak)}.content{flex:1;min-width:0;padding:24px 32px 48px}.page-title{font-size:var(--text-2xl);letter-spacing:-.01em;color:var(--color-ink);align-items:center;gap:10px;min-height:41px;margin-bottom:20px;font-weight:600;display:flex}.count{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-sm);color:var(--color-weak);margin-left:8px;font-weight:400}.page-title-row{align-items:center;gap:12px;min-height:41px;margin-bottom:20px;display:flex}.page-title-row .page-title{margin-bottom:0}.card{background:var(--color-bg);border:1px solid var(--color-bd);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:20px 22px}.card+.card{margin-top:18px}.card.flush{padding:0;overflow:hidden}.card h2,dialog h2{font-size:var(--text-lg);color:var(--color-ink);margin-bottom:12px;font-weight:600}.key-col{color:var(--color-sub)}.card-head{justify-content:space-between;align-items:center;display:flex}.card-head h2{margin:0}.card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.doc-card{background:var(--color-bg);border:1px solid var(--color-bd);border-radius:var(--radius-md);cursor:pointer;min-height:120px;color:var(--color-ink);box-shadow:var(--shadow-card);flex-direction:column;padding:16px 18px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.doc-card:hover{border-color:var(--color-pri);box-shadow:var(--shadow-lift);text-decoration:none;transform:translateY(-1px)}.doc-card .name{font-weight:600;font-size:var(--text-base);word-break:break-all;margin-bottom:8px}.doc-card .meta{color:var(--color-sub);font-size:var(--text-sm);justify-content:space-between;align-items:flex-end;margin-top:auto;padding-top:10px;display:flex}.view-toggle{border:1px solid var(--color-bd-btn);border-radius:var(--radius-sm);background:var(--color-bg);flex:none;display:inline-flex;overflow:hidden}.view-toggle .vt-btn{width:34px;height:33px;color:var(--color-sub);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:inline-flex}.view-toggle .vt-btn+.vt-btn{border-left:1px solid var(--color-bd-btn)}.view-toggle .vt-btn:hover{background:var(--color-soft);color:var(--color-ink)}.view-toggle .vt-btn.on{background:var(--color-sel);color:var(--color-pri)}.view-toggle .vt-btn:focus-visible{outline:2px solid var(--color-pri);outline-offset:-2px}.seg{border:1px solid var(--color-bd-btn);border-radius:var(--radius-sm);background:var(--color-bg);flex:none;display:inline-flex;overflow:hidden}.seg .seg-btn{color:var(--color-sub);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:8px 12px;font-family:inherit;transition:background-color .15s,color .15s}.seg .seg-btn+.seg-btn{border-left:1px solid var(--color-bd-btn)}.seg .seg-btn:hover{background:var(--color-soft);color:var(--color-ink)}.seg .seg-btn.on{background:var(--color-sel);color:var(--color-pri);font-weight:500}.seg .seg-btn:focus-visible{outline:2px solid var(--color-pri);outline-offset:-2px}.seg .seg-btn:disabled,.seg .seg-btn:disabled:hover{opacity:.45;cursor:not-allowed;color:var(--color-sub);background:0 0}.icon-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.icon-opt{appearance:none;cursor:pointer;font:inherit;font-size:var(--text-xs);color:var(--color-sub);background:var(--color-side);border:1px solid var(--color-bd);border-radius:var(--radius-md);justify-content:center;align-items:center;min-width:34px;height:34px;padding:0 8px;display:inline-flex}.icon-opt.on{border-color:var(--color-ink);color:var(--color-ink);box-shadow:inset 0 0 0 1px var(--color-ink)}.icon-opt:disabled{opacity:.45;cursor:not-allowed}.icon-glyph{width:18px;height:18px;display:inline-flex}.icon-glyph svg{width:100%;height:100%}.shape-mark{background:var(--color-weak);width:18px;height:18px}.shape-opt.on{border-color:var(--color-pri);background:var(--color-sel);box-shadow:inset 0 0 0 1px var(--color-pri)}.shape-opt.on .shape-mark{background:var(--color-pri)}.switch{font-size:var(--text-sm);color:var(--color-ink);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.switch input{opacity:0;width:0;height:0;position:absolute}.switch .track{background:var(--color-bd-btn);border-radius:10px;flex:none;width:34px;height:20px;transition:background-color .15s;position:relative}.switch .track:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.switch input:checked+.track{background:var(--color-pri)}.switch input:checked+.track:after{transform:translate(14px)}.switch input:focus-visible+.track{outline:2px solid var(--color-pri);outline-offset:2px}.switch input:disabled+.track{opacity:.4;cursor:not-allowed}.tag{background:var(--color-sel);color:var(--color-pri);font-size:var(--text-xs);border-radius:999px;margin-right:6px;padding:1px 10px;display:inline-block}.tabs{border-bottom:1px solid var(--color-div);gap:4px;margin-bottom:16px;display:flex}.tab{color:var(--color-sub);font-size:var(--text-base);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;margin-right:20px;padding:10px 4px;font-family:inherit;transition:color .15s,border-color .15s}.tab:hover{color:var(--color-ink);text-decoration:none}.tab:focus-visible{outline:2px solid var(--color-pri);outline-offset:-2px;border-radius:var(--radius-2xs)}.tab.on{color:var(--color-pri);border-bottom-color:var(--color-pri);font-weight:500}.code-box{background:var(--color-side);border:1px solid var(--color-bd);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-ink2);white-space:pre-wrap;word-break:break-all;margin:0;padding:12px 14px;line-height:1.7}table.list{border-collapse:collapse;width:100%;font-size:var(--text-md)}table.list th{text-align:left;color:var(--color-weak);font-weight:500;font-size:var(--text-xs);letter-spacing:.03em;background:var(--color-soft);border-bottom:1px solid var(--color-div);white-space:nowrap;padding:9px 16px}table.list td{border-bottom:1px solid var(--color-hair);padding:12px 16px}table.list tr.rowlink td{transition:background-color .12s}table.list tr.rowlink:focus-visible{outline:2px solid var(--color-pri);outline-offset:-2px}.num{font-variant-numeric:tabular-nums}table.list th.num,table.list td.num{text-align:right}table.list tr:last-child td{border-bottom:none}table.list tr.rowlink{cursor:pointer}table.list tr.rowlink:hover td{background:var(--color-soft)}.btn{border:1px solid var(--color-bd-btn);background:var(--color-bg);color:var(--color-ink2);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.btn:hover{border-color:var(--color-pri);color:var(--color-pri);text-decoration:none}.btn:active:not(:disabled){transform:translateY(.5px)}.btn:focus-visible{outline:2px solid var(--color-pri);outline-offset:1px}.btn.primary{background:var(--color-pri);border-color:var(--color-pri);color:var(--color-on-pri);box-shadow:var(--shadow-btn)}.btn.primary:hover{background:var(--color-pri-hover);border-color:var(--color-pri-hover);color:var(--color-on-pri)}.btn.danger{background:var(--color-danger-bg);border-color:var(--color-danger-bd);color:var(--color-danger)}.btn.danger:hover{border-color:var(--color-danger);color:var(--color-danger)}td .btn.danger,.page-title-row .btn.danger{margin-left:6px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.small{font-size:var(--text-sm);padding:5px 11px}.toolbar{align-items:center;display:flex}label.fld{font-size:var(--text-sm);color:var(--color-sub);margin:12px 0 4px;display:block}.status{font-size:var(--text-md);color:var(--color-ink2);align-items:center;gap:7px;display:inline-flex}.status:before{content:"";background:var(--color-dot-neutral);border-radius:50%;flex:none;width:6px;height:6px}.status.ok:before{background:var(--color-dot-ok)}.status.busy:before,.status.warn:before{background:var(--color-dot-attention)}.status.err:before{background:var(--color-dot-error)}.status.disabled:before{background:var(--color-dot-disabled)}.toast{background:var(--color-ink);color:#fff;border-radius:var(--radius-sm);z-index:100;font-size:var(--text-sm);box-shadow:var(--shadow-toast);padding:10px 20px;animation:.18s ease-out toast-in;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,6px)}}.toast.error{background:var(--color-dot-error)}.hint{color:var(--color-sub);font-size:var(--text-sm)}.inline-error{color:var(--color-dot-error);font-size:var(--text-sm);margin-top:8px}.empty{color:var(--color-sub);text-align:center;font-size:var(--text-md);padding:56px 0}.spinner{border:2px solid var(--color-div);border-top-color:var(--color-pri);vertical-align:-3px;border-radius:50%;width:15px;height:15px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,var(--color-div),var(--color-soft),var(--color-div));border-radius:var(--radius-md);background-size:200% 100%;min-height:60px;animation:1.1s infinite sk}@keyframes sk{to{background-position:-200% 0}}.dot-steps{align-items:center;margin-bottom:20px;display:flex}.dot-steps .dstep{color:var(--color-sub);font-size:var(--text-sm);white-space:nowrap;align-items:center;gap:8px;display:flex}.dot-steps .dstep .dot{background:var(--color-soft);border:1px solid var(--color-bd);width:24px;height:24px;color:var(--color-sub);font-size:var(--text-xs);font-weight:600;font-family:var(--font-mono);border-radius:50%;flex:none;justify-content:center;align-items:center;line-height:1;display:flex}.dot-steps .dstep.active .dot{background:var(--color-pri);border-color:var(--color-pri);color:var(--color-on-pri)}.dot-steps .dstep.active .label{color:var(--color-pri);font-weight:500}.dot-steps .dstep.done .dot{background:var(--color-sel);border-color:var(--color-sel);color:var(--color-pri)}.dot-steps .dstep.done .label{color:var(--color-ink2)}.dot-steps .connector{background:var(--color-div);flex:1;height:1px;margin:0 12px}.dropzone{border:1px dashed var(--color-bd-btn);border-radius:var(--radius-md);text-align:center;color:var(--color-sub);cursor:pointer;padding:44px}.dropzone.hover{border-color:var(--color-pri);color:var(--color-pri)}.preview-pane{max-height:480px;overflow-y:auto}.hit{border:1px solid var(--color-bd);border-radius:var(--radius-md);margin-bottom:10px;padding:14px 16px}.hit .score{background:var(--color-sel);color:var(--color-pri);font-size:var(--text-sm);border-radius:999px;margin-right:8px;padding:1px 10px}.hit .content{white-space:pre-wrap;font-size:var(--text-md);margin-top:8px}.login-wrap{background:radial-gradient(520px 340px at 50% 0%,var(--color-sel),transparent 72%),var(--color-side);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{width:380px;box-shadow:var(--shadow-login);padding:32px 32px 28px}.login-card .brand{font-size:var(--text-xl);justify-content:center;padding:0 0 22px}.login-card .brand .logo{width:26px;height:26px}.login-card h1{font-size:var(--text-xl);text-align:center;margin-bottom:4px;font-weight:600}.login-card .sub{color:var(--color-sub);font-size:var(--text-sm);text-align:center;margin-bottom:12px}.log-item{border-bottom:1px solid var(--color-hair);cursor:pointer;padding:10px 8px}.log-item:hover{background:var(--color-soft)}.log-item:last-child{border-bottom:none}.log-item .log-q{font-size:var(--text-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.log-item .log-meta{color:var(--color-sub);font-size:var(--text-xs);gap:12px;margin-top:3px;display:flex}.log-item.selected{background:var(--color-sel)}.q-quote{border-left:3px solid var(--color-bd-btn);background:var(--color-soft);color:var(--color-sub);font-size:var(--text-sm);white-space:pre-wrap;margin:10px 0;padding:8px 12px}.reviewer-note{background:var(--color-note-bg);border:1px solid var(--color-note-bd);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--color-ink2);white-space:pre-wrap;margin-top:12px;padding:10px 12px}.answer-choice{flex-direction:column;gap:10px;margin-top:12px;display:flex}.answer-choice label{font-size:var(--text-md);cursor:pointer;align-items:center;gap:8px;display:flex}.answer-choice input[type=text]{width:260px}.pager{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;display:flex}.pg-btn{min-width:32px;height:29px;font-size:var(--text-sm);justify-content:center;padding:0 8px}.pg-btn.primary{cursor:default}.pg-dots{color:var(--color-weak);padding:0 2px}.pg-total{color:var(--color-sub);font-size:var(--text-sm);margin-left:auto}.pg-size{width:auto;min-width:7.5em;height:29px;font-size:var(--text-sm);padding:0 30px 0 10px;line-height:1}.filter-sticky{z-index:30;transition:box-shadow .15s;position:sticky;top:0}.filter-sticky.stuck{box-shadow:0 6px 18px #1c1c2617}@supports (color:color-mix(in lab,red,red)){.filter-sticky.stuck{box-shadow:0 6px 18px color-mix(in srgb,var(--color-ink) 9%,transparent)}}.sticky-sentinel{height:1px}.pager-dock{z-index:20;background:var(--color-bg);border:1px solid var(--color-bd);border-radius:var(--radius-md);box-shadow:var(--shadow-lift);margin-top:14px;padding:9px 14px;position:sticky;bottom:14px}.pager-dock .pager{margin-bottom:0}@media(max-height:640px){.pager-dock{padding:6px 12px}}.filter-chip{background:var(--color-soft);border:1px solid var(--color-bd);font-size:var(--text-xs);color:var(--color-ink2);border-radius:999px;align-items:center;gap:6px;padding:3px 11px;display:inline-flex}.dialog-text{font-size:var(--text-md);color:var(--color-sub)}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.chat-card{flex-direction:column;height:580px;padding:0;display:flex;overflow:hidden}.chat-log{background:var(--color-soft);flex-direction:column;flex:1;gap:14px;min-height:0;padding:18px 20px;display:flex;overflow-y:auto}.chat-row{flex-direction:column;gap:4px;display:flex}.chat-row.user{align-items:flex-end}.chat-row.ai{align-items:flex-start}.bubble{max-width:78%;font-size:var(--text-md);white-space:pre-wrap;word-break:break-word;padding:10px 14px;line-height:1.6}.bubble.user{background:var(--color-pri);color:var(--color-on-pri);border-radius:var(--radius-md) var(--radius-md) var(--radius-2xs) var(--radius-md);box-shadow:var(--shadow-btn)}.bubble.ai{background:var(--color-bg);color:var(--color-ink);border:1px solid var(--color-div);border-radius:var(--radius-md) var(--radius-md) var(--radius-md) var(--radius-2xs);box-shadow:var(--shadow-card)}.bubble.waiting{color:var(--color-sub)}.md-body{--md-line:var(--color-div);--md-soft:var(--color-soft);--md-pre-bg:var(--color-soft);--md-sub:var(--color-sub);--md-radius:var(--radius-sm);--md-fs-sm:var(--text-sm)}.chat-error{color:var(--color-dot-error);font-size:var(--text-xs)}.chat-input-row{border-top:1px solid var(--color-div);flex:none;gap:10px;padding:14px 20px;display:flex}.chat-input-row input{flex:1}}@layer utilities{.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.top-4{top:calc(var(--spacing) * 4)}.right-4\.5{right:calc(var(--spacing) * 4.5)}.m-0{margin:0}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.my-2{margin-block:calc(var(--spacing) * 2)}.my-3\.5{margin-block:calc(var(--spacing) * 3.5)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-2\.5{margin-top:calc(var(--spacing) * 2.5)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-3\.5{margin-top:calc(var(--spacing) * 3.5)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-4\.5{margin-top:calc(var(--spacing) * 4.5)}.mt-\[1px\]{margin-top:1px}.mb-1{margin-bottom:var(--spacing)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\.5{margin-bottom:calc(var(--spacing) * 2.5)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-3\.5{margin-bottom:calc(var(--spacing) * 3.5)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:var(--spacing)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-1\.25{margin-left:calc(var(--spacing) * 1.25)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.max-h-24{max-height:calc(var(--spacing) * 24)}.max-h-30{max-height:calc(var(--spacing) * 30)}.max-h-45{max-height:calc(var(--spacing) * 45)}.max-h-105{max-height:calc(var(--spacing) * 105)}.max-h-\[82vh\]{max-height:82vh}.min-h-10{min-height:calc(var(--spacing) * 10)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-15{min-height:calc(var(--spacing) * 15)}.min-h-24{min-height:calc(var(--spacing) * 24)}.min-h-25{min-height:calc(var(--spacing) * 25)}.min-h-27\.5{min-height:calc(var(--spacing) * 27.5)}.min-h-30{min-height:calc(var(--spacing) * 30)}.min-h-50{min-height:calc(var(--spacing) * 50)}.w-11{width:calc(var(--spacing) * 11)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-19{width:calc(var(--spacing) * 19)}.w-20{width:calc(var(--spacing) * 20)}.w-22\.5{width:calc(var(--spacing) * 22.5)}.w-24{width:calc(var(--spacing) * 24)}.w-25{width:calc(var(--spacing) * 25)}.w-27\.5{width:calc(var(--spacing) * 27.5)}.w-28{width:calc(var(--spacing) * 28)}.w-29{width:calc(var(--spacing) * 29)}.w-30{width:calc(var(--spacing) * 30)}.w-32{width:calc(var(--spacing) * 32)}.w-32\.5{width:calc(var(--spacing) * 32.5)}.w-35{width:calc(var(--spacing) * 35)}.w-36{width:calc(var(--spacing) * 36)}.w-37\.5{width:calc(var(--spacing) * 37.5)}.w-38{width:calc(var(--spacing) * 38)}.w-40{width:calc(var(--spacing) * 40)}.w-45{width:calc(var(--spacing) * 45)}.w-50{width:calc(var(--spacing) * 50)}.w-55{width:calc(var(--spacing) * 55)}.w-56{width:calc(var(--spacing) * 56)}.w-65{width:calc(var(--spacing) * 65)}.w-70{width:calc(var(--spacing) * 70)}.w-180{width:calc(var(--spacing) * 180)}.w-\[18\%\]{width:18%}.w-\[28\%\]{width:28%}.w-\[30\%\]{width:30%}.w-\[90vw\]{width:90vw}.w-\[92vw\]{width:92vw}.w-\[min\(420px\,92vw\)\]{width:min(420px,92vw)}.w-auto{width:auto}.w-full{width:100%}.max-w-31{max-width:calc(var(--spacing) * 31)}.max-w-115{max-width:calc(var(--spacing) * 115)}.max-w-160{max-width:calc(var(--spacing) * 160)}.max-w-180{max-width:calc(var(--spacing) * 180)}.max-w-full{max-width:100%}.min-w-0{min-width:0}.min-w-60{min-width:calc(var(--spacing) * 60)}.min-w-65{min-width:calc(var(--spacing) * 65)}.min-w-80{min-width:calc(var(--spacing) * 80)}.min-w-85{min-width:calc(var(--spacing) * 85)}.flex-1{flex:1}.flex-\[1\.5\]{flex:1.5}.flex-none{flex:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize-y{resize:vertical}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-\[1fr_2fr_56px_36px\]{grid-template-columns:1fr 2fr 56px 36px}.grid-cols-\[1fr_2fr_64px_56px_36px\]{grid-template-columns:1fr 2fr 64px 56px 36px}.grid-cols-\[280px_1fr\]{grid-template-columns:280px 1fr}.grid-cols-\[repeat\(auto-fit\,minmax\(120px\,1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-3\.5{gap:calc(var(--spacing) * 3.5)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-\[1px\]{gap:1px}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.justify-self-center{justify-self:center}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-bd{border-color:var(--color-bd)}.border-div{border-color:var(--color-div)}.border-dot-attention{border-color:var(--color-dot-attention)}.bg-alt-a-soft{background-color:var(--color-alt-a-soft)}.bg-alt-b-soft{background-color:var(--color-alt-b-soft)}.bg-div{background-color:var(--color-div)}.bg-soft{background-color:var(--color-soft)}.bg-transparent{background-color:#0000}.p-0{padding:0}.p-2{padding:calc(var(--spacing) * 2)}.p-4{padding:calc(var(--spacing) * 4)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-3\.5{padding-top:calc(var(--spacing) * 3.5)}.pr-5{padding-right:calc(var(--spacing) * 5)}.pb-3\.5{padding-bottom:calc(var(--spacing) * 3.5)}.pb-\[1px\]{padding-bottom:1px}.text-center{text-align:center}.text-right{text-align:right}.align-\[-2px\]{vertical-align:-2px}.align-\[2px\]{vertical-align:2px}.align-bottom{vertical-align:bottom}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-2xs{font-size:var(--text-2xs);line-height:var(--tw-leading,var(--text-2xs--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-md{font-size:var(--text-md);line-height:var(--tw-leading,var(--text-md--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[11px\]{font-size:11px}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.06em\]{--tw-tracking:.06em;letter-spacing:.06em}.text-wrap{text-wrap:wrap}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-dis{color:var(--color-dis)}.text-dot-error{color:var(--color-dot-error)}.text-ink{color:var(--color-ink)}.text-ink2{color:var(--color-ink2)}.text-kw{color:var(--color-kw)}.text-pri{color:var(--color-pri)}.text-sub{color:var(--color-sub)}.text-vec{color:var(--color-vec)}.text-weak{color:var(--color-weak)}.\[--range-fill\:var\(--color-pri\)\]{--range-fill:var(--color-pri)}.\[--range-track\:var\(--color-bd\)\]{--range-track:var(--color-bd)}@media(hover:hover){.hover\:underline:hover{text-decoration-line:underline}}@media(min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}
