@import "https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700&family=DM+Mono:wght@400;500&display=swap";
@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-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-600:#e40014;--color-red-700:#bf000f;--color-blue-500:#3080ff;--color-blue-600:#155dfc;--color-blue-700:#1447e6;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-500:#6a7282;--color-gray-700:#364153;--color-gray-800:#1e2939;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--font-weight-medium:500;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-600:lab(48.4493% 77.4328 61.5452);--color-red-700:lab(40.4273% 67.2623 53.7441);--color-blue-500:lab(54.1736% 13.3369 -74.6839);--color-blue-600:lab(44.0605% 29.0279 -86.0352);--color-blue-700:lab(36.9089% 35.0961 -85.6872);--color-gray-100:lab(96.1596% -.0823438 -1.13575);--color-gray-200:lab(91.6229% -.159115 -2.26791);--color-gray-500:lab(47.7841% -.393182 -10.0268);--color-gray-700:lab(27.1134% -.956401 -12.3224);--color-gray-800:lab(16.1051% -1.18239 -11.7533)}}}@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,ui-sans-serif, system-ui, 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;-webkit-text-decoration:inherit;-webkit-text-decoration: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{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])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mr-2{margin-right:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.h-4{height:calc(var(--spacing) * 4)}.w-4{width:calc(var(--spacing) * 4)}.flex-shrink,.shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-red-600{background-color:var(--color-red-600)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.p-4{padding:calc(var(--spacing) * 4)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.break-all{word-break:break-all}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.\[batch\:ATTACH_FILE_CLEANUP\]{batch:ATTACH FILE CLEANUP}@media (hover:hover){.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\:bg-red-700:hover{background-color:var(--color-red-700)}}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}}:root{--p-gray-950:#0d0e16;--p-gray-900:#111219;--p-gray-850:#13141c;--p-gray-800:#161720;--p-gray-750:#181924;--p-gray-700:#1a1b26;--p-gray-650:#1c1e2c;--p-gray-600:#1e2030;--p-gray-550:#222438;--p-gray-500:#2e3248;--p-gray-400:#474f68;--p-gray-300:#646c88;--p-gray-200:#7c84a0;--p-gray-150:#9aa0b8;--p-gray-100:#b8bdd4;--p-gray-50:#d4d8ec;--p-gray-0:#eef0f8;--p-indigo-900:#1e2050;--p-indigo-700:#2d3480;--p-indigo-500:#4a56d4;--p-indigo-400:#5b68e8;--p-indigo-300:#6e7bf0;--p-indigo-200:#9099f5;--p-indigo-100:#c4c8fb;--p-amber-500:#d4820a;--p-amber-400:#f5a623;--p-amber-300:#ffb840;--p-amber-100:#fde8b8;--p-green-500:#2e8a5c;--p-green-400:#3a9a6e;--p-green-300:#4caf82;--p-green-100:#c0e8d4;--p-red-500:#a83030;--p-red-400:#c04848;--p-red-300:#d95f5f;--p-red-100:#f0c8c8;--p-yellow-400:#d99a38;--p-yellow-300:#e8b050;--p-yellow-100:#f5e0b0;--p-blue-400:#3a8acc;--p-blue-300:#4a9edd;--p-blue-100:#c0ddf5;--p-space-1:4px;--p-space-2:8px;--p-space-3:12px;--p-space-4:16px;--p-space-5:20px;--p-space-6:24px;--p-space-8:32px;--p-space-10:40px;--p-space-12:48px;--p-space-16:64px;--p-text-2xs:9.5px;--p-text-xs:11px;--p-text-sm:12px;--p-text-md:12.5px;--p-text-base:13px;--p-text-lg:14px;--p-text-xl:16px;--p-text-2xl:20px;--p-text-3xl:24px;--p-text-4xl:30px;--p-r-0:0px;--p-r-1:2px;--p-r-2:4px;--p-r-3:6px;--p-r-4:8px;--p-r-5:10px;--p-r-6:12px;--p-r-full:9999px;--p-dur-fast:.1s;--p-dur-normal:.16s;--p-dur-slow:.26s;--p-dur-slower:.4s;--p-ease-default:cubic-bezier(.4, 0, .2, 1);--p-ease-spring:cubic-bezier(.22, 1, .36, 1);--p-ease-out:cubic-bezier(0, 0, .2, 1);--p-ease-in:cubic-bezier(.4, 0, 1, 1)}[data-theme=dark],:root{--color-bg-root:var(--p-gray-650);--color-bg-titlebar:var(--p-gray-700);--color-bg-menubar:var(--p-gray-800);--color-bg-toolbar:var(--p-gray-750);--color-bg-sidebar:var(--p-gray-700);--color-bg-content:var(--p-gray-650);--color-bg-header:var(--p-gray-650);--color-bg-card:var(--p-gray-650);--color-bg-surface:var(--p-gray-500);--color-bg-elevated:var(--p-gray-500);--color-bg-input:var(--p-gray-650);--color-bg-input-hover:var(--p-gray-550);--color-bg-label:var(--p-gray-600);--color-bg-muted:var(--p-gray-550);--color-bg-overlay:#0009;--color-bg-table-odd:var(--p-gray-750);--color-bg-table-even:var(--p-gray-650);--color-bg-table-hover:#5b68e814;--color-bg-table-sel:#5b68e81f;--color-border:#ffffff1a;--color-border-subtle:#ffffff0f;--color-border-strong:#ffffff2e;--color-border-focus:var(--p-indigo-400);--color-text-primary:var(--p-gray-50);--color-text-secondary:var(--p-gray-200);--color-text-tertiary:var(--p-gray-400);--color-text-disabled:var(--p-gray-500);--color-text-heading:var(--p-gray-100);--color-text-inverse:var(--p-gray-850);--color-text-link:var(--p-indigo-300);--color-primary:var(--p-indigo-400);--color-brand:var(--p-indigo-400);--color-brand-hover:var(--p-indigo-300);--color-brand-subtle:#5b68e824;--color-brand-border:#5b68e852;--color-brand-glow:#5b68e833;--color-accent:var(--p-amber-400);--color-accent-hover:var(--p-amber-300);--color-accent-subtle:#f5a6231f;--color-accent-border:#f5a62352;--color-accent-glow:#f5a6232e;--color-success:var(--p-green-300);--color-success-subtle:#4caf821c;--color-success-border:#4caf8247;--color-error:var(--p-red-300);--color-error-subtle:#d95f5f1c;--color-error-border:#d95f5f4d;--color-warning:var(--p-yellow-300);--color-warning-subtle:#e8b0501c;--color-warning-border:#e8b05047;--color-info:var(--p-blue-300);--color-info-subtle:#4a9edd1c;--color-info-border:#4a9edd47;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 4px #0006;--shadow-md:0 4px 14px #00000073;--shadow-lg:0 8px 28px #0000008c;--shadow-xl:0 16px 48px #000000a6;--shadow-card:0 0 0 1px #ffffff0a inset, 0 2px 8px #0006;--shadow-focus:0 0 0 2px var(--color-brand-glow);--shadow-focus-error:0 0 0 2px var(--color-error-subtle);--shadow-btn-brand:0 1px 8px var(--color-brand-glow);--shadow-btn-accent:0 1px 8px var(--color-accent-glow)}[data-theme=light]{--color-bg-root:#eceef6;--color-bg-titlebar:#2a2d3e;--color-bg-menubar:#f0f1f6;--color-bg-toolbar:#eceef6;--color-bg-sidebar:#fff;--color-bg-content:#eceef6;--color-bg-header:#fff;--color-bg-card:#fff;--color-bg-surface:#fff;--color-bg-elevated:#f4f5fa;--color-bg-input:#fff;--color-bg-input-hover:#f8f9fc;--color-bg-label:#eceef6;--color-bg-muted:#f8f9fc;--color-bg-overlay:#00000073;--color-bg-table-odd:#f4f5fa;--color-bg-table-even:#f8f9fc;--color-bg-table-hover:#4a56d40f;--color-bg-table-sel:#4a56d417;--color-border:#0000001f;--color-border-subtle:#00000012;--color-border-strong:#00000038;--color-border-focus:var(--p-indigo-500);--color-text-primary:#1e2135;--color-text-secondary:#5a6080;--color-text-tertiary:#9aa0b8;--color-text-disabled:#c0c5d8;--color-text-heading:#2e3248;--color-text-inverse:#fff;--color-text-link:var(--p-indigo-500);--color-brand:var(--p-indigo-500);--color-brand-hover:var(--p-indigo-400);--color-brand-subtle:#4a56d417;--color-brand-border:#4a56d447;--color-brand-glow:#4a56d429;--color-accent:var(--p-amber-400);--color-accent-hover:var(--p-amber-300);--color-accent-subtle:#f5a6231a;--color-accent-border:#f5a62347;--color-accent-glow:#f5a62326;--color-success:var(--p-green-400);--color-success-subtle:#3a9a6e17;--color-success-border:#3a9a6e40;--color-error:var(--p-red-400);--color-error-subtle:#c0484817;--color-error-border:#c0484847;--color-warning:var(--p-yellow-400);--color-warning-subtle:#d99a381a;--color-warning-border:#d99a3840;--color-info:var(--p-blue-400);--color-info-subtle:#3a8acc17;--color-info-border:#3a8acc40;--shadow-xs:0 1px 2px #00000014;--shadow-sm:0 1px 4px #0000001a;--shadow-md:0 4px 14px #0000001f;--shadow-lg:0 8px 28px #00000026;--shadow-xl:0 16px 48px #0000002e;--shadow-card:0 1px 3px #00000014, 0 2px 8px #0000000f;--shadow-focus:0 0 0 2px var(--color-brand-glow);--shadow-focus-error:0 0 0 2px var(--color-error-subtle);--shadow-btn-brand:0 1px 8px var(--color-brand-glow);--shadow-btn-accent:0 1px 8px var(--color-accent-glow)}[data-theme=dark-purple]{--color-bg-root:#241e38;--color-bg-titlebar:#130f1e;--color-bg-menubar:#1e1830;--color-bg-toolbar:#1c162a;--color-bg-sidebar:#312850;--color-bg-content:#241e38;--color-bg-header:#1e1830;--color-bg-card:#312850;--color-bg-surface:#3a3060;--color-bg-elevated:#3a3060;--color-bg-input:#241e38;--color-bg-input-hover:#2e2848;--color-bg-label:#2a2442;--color-bg-muted:#2a2244;--color-bg-overlay:#0a0612b3;--color-bg-table-odd:#1e1830;--color-bg-table-even:#241e38;--color-bg-table-hover:#8b5cf614;--color-bg-table-sel:#8b5cf624;--color-border:#ffffff1a;--color-border-subtle:#ffffff0f;--color-border-strong:#ffffff2e;--color-border-focus:#a78bfa;--color-text-primary:#e8e0f8;--color-text-secondary:#b0a4c8;--color-text-tertiary:#7a6e98;--color-text-disabled:#4a4060;--color-text-heading:#d4cceb;--color-text-inverse:#1a1428;--color-text-link:#c4b5fd;--color-primary:#8b5cf6;--color-brand:#8b5cf6;--color-brand-hover:#a78bfa;--color-brand-subtle:#8b5cf624;--color-brand-border:#8b5cf652;--color-brand-glow:#8b5cf638;--color-accent:var(--p-amber-400);--color-accent-hover:var(--p-amber-300);--color-accent-subtle:#f5a6231f;--color-accent-border:#f5a62352;--color-accent-glow:#f5a6232e;--color-success:#4ade80;--color-success-subtle:#4ade801c;--color-success-border:#4ade8047;--color-error:#f87171;--color-error-subtle:#f871711c;--color-error-border:#f871714d;--color-warning:var(--p-yellow-300);--color-warning-subtle:#e8b0501c;--color-warning-border:#e8b05047;--color-info:#67e8f9;--color-info-subtle:#67e8f91c;--color-info-border:#67e8f947;--shadow-xs:0 1px 2px #00000059;--shadow-sm:0 1px 4px #00000073;--shadow-md:0 4px 14px #00000080;--shadow-lg:0 8px 28px #0009;--shadow-xl:0 16px 48px #000000b3;--shadow-card:0 0 0 1px #ffffff0a inset, 0 2px 8px #00000073;--shadow-focus:0 0 0 2px var(--color-brand-glow);--shadow-focus-error:0 0 0 2px var(--color-error-subtle);--shadow-btn-brand:0 1px 8px var(--color-brand-glow);--shadow-btn-accent:0 1px 8px var(--color-accent-glow)}:root{--font-base:"Geist", "Segoe UI", system-ui, sans-serif;--font-mono:"DM Mono", "Consolas", monospace;--space-1:var(--p-space-1);--space-2:var(--p-space-2);--space-3:var(--p-space-3);--space-4:var(--p-space-4);--space-5:var(--p-space-5);--space-6:var(--p-space-6);--space-8:var(--p-space-8);--space-10:var(--p-space-10);--space-12:var(--p-space-12);--text-2xs:var(--p-text-2xs);--text-xs:var(--p-text-xs);--text-sm:var(--p-text-sm);--text-md:var(--p-text-md);--text-base:var(--p-text-base);--text-lg:var(--p-text-lg);--text-xl:var(--p-text-xl);--text-2xl:var(--p-text-2xl);--text-3xl:var(--p-text-3xl);--radius-sm:var(--p-r-2);--radius-md:var(--p-r-3);--radius-card:var(--p-r-4);--radius-lg:var(--p-r-5);--radius-full:var(--p-r-full);--transition:var(--p-dur-normal) var(--p-ease-default);--transition-fast:var(--p-dur-fast) var(--p-ease-default);--transition-slow:var(--p-dur-slow) var(--p-ease-default);--transition-spring:var(--p-dur-slow) var(--p-ease-spring);--sidebar-width:200px;--sidebar-width-collapsed:47px;--height-titlebar:34px;--height-menubar:42px;--height-toolbar:34px;--height-statusbar:26px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{font-family:var(--font-base);font-size:var(--text-base);color:var(--color-text-primary);background:var(--color-bg-root);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;zoom:1;line-height:1.5}.sp-titlebar{background:var(--color-bg-titlebar);border-bottom:1px solid var(--color-border);height:var(--height-titlebar);padding:0 var(--space-3);-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.sp-titlebar-left{align-items:center;gap:var(--space-2);display:flex}.sp-titlebar-logo{font-size:var(--text-md);letter-spacing:.02em;color:var(--p-gray-100);align-items:center;gap:6px;font-weight:700;display:flex}.sp-titlebar-logo .logo-ic{background:var(--color-accent-subtle);border:1px solid var(--color-accent-border);border-radius:var(--radius-sm);justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;display:flex}.sp-titlebar-sep{color:var(--color-text-tertiary);font-weight:300}.sp-titlebar-path{font-size:var(--text-sm);color:var(--color-text-tertiary);font-family:var(--font-mono)}.sp-titlebar-right{align-items:center;gap:1px;display:flex}.sp-win-btn{width:30px;height:26px;color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);justify-content:center;align-items:center;font-size:12px;display:flex}.sp-win-btn:hover{color:var(--color-text-primary);background:#ffffff14}.sp-win-btn.is-close:hover{color:#fff;background:#c0404a}.sp-menubar{background:var(--color-bg-menubar);border-bottom:1px solid var(--color-border);height:var(--height-menubar);padding:0 var(--space-2);flex-shrink:0;align-items:center;gap:1px;display:flex}.sp-menu-item{border-radius:var(--radius-sm);font-size:var(--text-md);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;padding:4px 11px}.sp-menu-item:hover{color:var(--color-text-primary);background:#ffffff0d}.sp-menu-item.is-active{background:var(--color-brand-subtle);color:var(--color-brand);border-color:var(--color-brand-border)}.sp-menu-sep{background:var(--color-border-subtle);width:1px;height:14px;margin:0 var(--space-1)}.sp-toolbar{background:var(--color-bg-toolbar);border-bottom:1px solid var(--color-border);height:var(--height-toolbar);padding:0 var(--space-2);align-items:center;gap:var(--space-1);flex-shrink:0;display:flex}.sp-toolbar-btn{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;font-family:var(--font-base);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;align-items:center;gap:5px;padding:4px 10px;display:flex}.sp-toolbar-btn svg{flex-shrink:0;width:12px;height:12px}.sp-toolbar-btn:hover{color:var(--color-text-primary);border-color:var(--color-border-subtle);background:#ffffff0d}.sp-toolbar-btn.is-primary{background:var(--color-brand-subtle);color:var(--color-brand);border-color:var(--color-brand-border)}.sp-toolbar-btn.is-primary:hover{background:var(--color-brand);color:var(--color-text-inverse)}.sp-toolbar-sep{background:var(--color-border);width:1px;height:18px;margin:0 var(--space-1)}.sp-toolbar-space{flex:1}.sp-toolbar-info{font-size:var(--text-xs);color:var(--color-text-tertiary);font-family:var(--font-mono)}.sp-statusbar{background:var(--color-bg-menubar);border-top:1px solid var(--color-border);height:var(--height-statusbar);font-family:var(--font-mono);font-size:var(--text-xs);flex-shrink:0;align-items:center;display:flex}.sp-status-cell{color:var(--color-text-tertiary);border-right:1px solid var(--color-border-subtle);white-space:nowrap;align-items:center;gap:4px;height:100%;padding:0 11px;display:flex}.sp-status-cell.is-ok{color:var(--color-success)}.sp-status-cell.is-warn{color:var(--color-warning)}.sp-status-cell.is-err{color:var(--color-error)}.sp-status-cell .dot{border-radius:var(--radius-full);background:currentColor;width:5px;height:5px}.sp-status-space{flex:1}.sp-sidebar-wrapper{flex-shrink:0;display:flex;position:relative}.sp-sidebar-wrapper .sp-sidebar{height:100%}.sp-sidebar{width:var(--sidebar-width);background:var(--color-bg-sidebar);border-right:1px solid var(--color-border);padding:var(--space-2) 0;transition:width var(--transition-spring);position:relative;overflow:hidden auto}.sp-sidebar::-webkit-scrollbar{width:2px}.sp-sidebar::-webkit-scrollbar-thumb{background:var(--color-border)}.sp-sidebar.is-collapsed{width:var(--sidebar-width-collapsed)}.sp-sidebar-toggle{border-radius:var(--radius-full);background:var(--color-bg-card);border:1.5px solid var(--color-border-strong);cursor:pointer;z-index:20;width:26px;height:26px;color:var(--color-text-secondary);transition:all var(--transition-fast);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;display:flex;position:absolute;top:42px;right:-13px}.sp-sidebar-toggle:hover{color:var(--color-brand);border-color:var(--color-brand);background:var(--color-brand-subtle)}.sp-sidebar-toggle svg{width:13px;height:13px;transition:transform var(--transition-slow);flex-shrink:0}.sp-sidebar-wrapper.is-collapsed .sp-sidebar-toggle svg{transform:rotate(180deg)}.sp-sidebar-section{margin-bottom:var(--space-1)}.sp-sidebar-section+.sp-sidebar-section{border-top:1px solid var(--color-border-subtle);padding-top:var(--space-2);margin-top:var(--space-1)}.sp-sidebar-title{font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary);padding:0 14px var(--space-1);white-space:nowrap;transition:opacity var(--transition-fast), height var(--transition-slow);font-weight:600}.sp-sidebar.is-collapsed .sp-sidebar-title{opacity:0;height:0;padding:0;overflow:hidden}.sp-sidebar-item{font-size:var(--text-md);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border-left:2px solid #0000;align-items:center;gap:9px;padding:7px 14px;display:flex}.sp-sidebar-item svg{width:15px;height:15px;color:var(--color-text-tertiary);transition:all var(--transition-fast);flex-shrink:0}.sp-sidebar-item span{transition:opacity var(--transition-fast);overflow:hidden}.sp-sidebar-item .item-count{font-size:var(--text-2xs);background:var(--color-brand-subtle);color:var(--color-brand);border:1px solid var(--color-brand-border);border-radius:var(--radius-sm);font-weight:600;font-family:var(--font-mono);transition:opacity var(--transition-fast);padding:1px 5px}.sp-sidebar-item:hover{color:var(--color-text-heading);background:#ffffff0a}.sp-sidebar-item:hover svg{color:var(--color-text-secondary)}.sp-sidebar-item.is-active{background:var(--color-brand-subtle);color:var(--color-brand);border-left-color:var(--color-brand);border-left-width:3px;font-weight:600}.sp-sidebar-item.is-active svg{color:var(--color-brand)}.sp-sidebar.is-collapsed .sp-sidebar-item{justify-content:center;padding:9px 0;border-left-color:#0000!important}.sp-sidebar.is-collapsed .sp-sidebar-item svg{width:20px;height:20px}.sp-sidebar.is-collapsed .sp-sidebar-item span,.sp-sidebar.is-collapsed .sp-sidebar-item .item-count{display:none}.sp-sidebar.is-collapsed .sp-sidebar-item.is-active{background:var(--color-brand-subtle)}.sp-sidebar.is-collapsed .sp-sidebar-item.is-active svg{color:var(--color-brand)}.sp-sidebar.is-collapsed .sp-sidebar-item:hover svg{color:var(--color-text-primary)}.sp-sidebar.is-collapsed .sp-sidebar-item{position:relative}.sp-sidebar.is-collapsed .sp-sidebar-item:hover:after{content:attr(data-label);left:calc(var(--sidebar-width-collapsed) + 6px);background:var(--color-bg-card);border:1px solid var(--color-border-strong);color:var(--color-text-primary);font-size:var(--text-xs);font-family:var(--font-base);border-radius:var(--radius-md);white-space:nowrap;box-shadow:var(--shadow-md);pointer-events:none;z-index:200;padding:4px 9px;position:absolute;top:50%;transform:translateY(-50%)}.sp-sidebar-wrapper{flex-direction:row;flex-shrink:0;height:100%;display:flex;position:relative}.sp-rail{background:var(--color-bg-sidebar);border-right:1px solid var(--color-border);width:68px;padding:var(--space-2) 0;flex-direction:column;flex-shrink:0;gap:2px;display:flex;overflow:hidden auto}.sp-rail::-webkit-scrollbar{width:2px}.sp-rail::-webkit-scrollbar-thumb{background:var(--color-border)}.sp-rail-item{color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-left:3px solid #0000;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:10px 4px;font-family:inherit;display:flex}.sp-rail-item:hover{color:var(--color-text-primary);background:var(--color-brand-subtle)}.sp-rail-item.is-active{color:var(--color-brand);background:var(--color-brand-subtle);border-left-color:var(--color-brand)}.sp-rail-label{text-align:center;white-space:nowrap;font-size:11px;line-height:1.15}.sp-subpane{width:var(--sidebar-width);background:var(--color-bg-sidebar);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.sp-subpane-title{color:var(--color-text-primary);border-bottom:1px solid var(--color-border-subtle);flex-shrink:0;padding:14px 14px 10px;font-size:15px;font-weight:700}.sp-subpane-items{padding:var(--space-2) 0;flex:1;overflow-y:auto}.sp-subpane-items::-webkit-scrollbar{width:4px}.sp-subpane-items::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:2px}.sp-subpane-item{color:var(--color-text-primary);white-space:nowrap;transition:all var(--transition-fast);border-left:2px solid #0000;align-items:center;gap:10px;padding:8px 14px;font-size:13.5px;text-decoration:none;display:flex}.sp-subpane-item:hover{background:var(--color-brand-subtle)}.sp-subpane-item svg{color:var(--color-text-secondary);transition:color var(--transition-fast)}.sp-subpane-item:hover svg{color:var(--color-text-primary)}.sp-subpane-item.is-active{background:var(--color-brand-subtle);color:var(--color-brand);border-left-color:var(--color-brand);font-weight:600}.sp-subpane-item.is-active svg{color:var(--color-brand)}.sp-subpane-item.is-disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.sp-subpane-item.is-indented{padding-left:26px}.sp-sidebar-wrapper.is-collapsed .sp-subpane{display:none}.sp-group{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.sp-group-header{border-bottom:1px solid var(--color-border-subtle);border-radius:var(--radius-card) var(--radius-card) 0 0;background:linear-gradient(#ffffff06 0%,#0000 100%);justify-content:space-between;align-items:center;padding:9px 14px;display:flex}[data-theme=light] .sp-group-header{background:linear-gradient(#00000005 0%,#0000 100%)}.sp-group-title{font-size:var(--text-md);color:var(--color-text-heading);letter-spacing:.01em;align-items:center;gap:7px;font-weight:600;display:flex}.sp-group-title svg{width:12px;height:12px;color:var(--color-brand);flex-shrink:0}.sp-group-body{padding:14px}.sp-field{margin-bottom:var(--space-3)}.sp-field:last-child{margin-bottom:0}.sp-field-row{gap:var(--space-2);display:flex}.sp-field-row .sp-field{flex:1}.sp-label{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-primary);justify-content:space-between;align-items:center;margin-bottom:5px;font-weight:600;display:flex}.sp-label-req{color:var(--color-brand);font-size:var(--text-xs);text-transform:none;letter-spacing:0;font-weight:400}.sp-label-opt{color:var(--color-text-disabled);font-size:var(--text-xs);text-transform:none;letter-spacing:0;font-style:italic;font-weight:400}.sp-input{background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;font-size:var(--text-base);font-family:var(--font-base);color:var(--color-text-primary);transition:all var(--transition-fast);-webkit-appearance:none;outline:none;padding:7px 10px;line-height:1.4}.sp-input::placeholder{color:var(--color-text-tertiary);opacity:1}.sp-input:hover{border-color:var(--color-border-strong);background:var(--color-bg-input-hover)}.sp-input:focus{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus);background:var(--color-bg-input-hover)}.sp-input:disabled{opacity:.45;cursor:not-allowed}.sp-input.is-ok{border-color:var(--color-success-border)}.sp-input.is-ok:focus{box-shadow:0 0 0 2px var(--color-success-subtle)}.sp-input.is-err{border-color:var(--color-error-border);background:var(--color-error-subtle)}.sp-input.is-err:focus{box-shadow:var(--shadow-focus-error)}.sp-input.sp-input-fixed{width:auto}.sp-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:32px}.sp-input-wrap{align-items:center;display:flex;position:relative}.sp-input-icon{color:var(--color-text-disabled);pointer-events:none;transition:color var(--transition-fast);position:absolute;left:9px}.sp-input-icon svg{width:12px;height:12px}.sp-input-wrap:focus-within .sp-input-icon{color:var(--color-brand)}.sp-input-wrap .sp-input{padding-left:28px}.sp-input-suffix{color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:var(--text-xs);pointer-events:none;position:absolute;right:9px}.sp-input-action{cursor:pointer;color:var(--color-text-tertiary);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;padding:3px;position:absolute;right:6px}.sp-input-action svg{width:13px;height:13px;display:block}.sp-input-action:hover{color:var(--color-text-primary);background:var(--color-bg-elevated)}.sp-select-wrap{position:relative}.sp-select-wrap .sp-input{cursor:pointer;padding-right:26px}.sp-select-arrow{color:var(--color-text-tertiary);pointer-events:none;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.sp-select-arrow svg{width:11px;height:11px}.sp-textarea{resize:vertical;min-height:72px;line-height:1.65}.sp-hint{font-size:var(--text-xs);color:var(--color-text-tertiary);align-items:center;gap:4px;margin-top:4px;line-height:1.4;display:flex}.sp-hint svg{flex-shrink:0;width:11px;height:11px}.sp-hint.is-ok{color:var(--color-success)}.sp-hint.is-err{color:var(--color-error)}.sp-hint.is-warn{color:var(--color-warning)}.sp-field-inline{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-input);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);align-items:stretch;display:flex;overflow:hidden}.sp-field-inline:focus-within{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}.sp-field-inline.is-ok{border-color:var(--color-success-border)}.sp-field-inline.is-err{border-color:var(--color-error-border);background:var(--color-error-subtle)}.sp-inline-label{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-tertiary);background:var(--color-bg-label);border-right:1px solid var(--color-border);min-width:82px;transition:color var(--transition-fast), background var(--transition-fast);flex-shrink:0;align-items:center;padding:0 10px;font-weight:600;display:flex}.sp-field-inline:focus-within .sp-inline-label{color:var(--color-brand);background:var(--color-brand-subtle)}.sp-field-inline.is-err .sp-inline-label{color:var(--color-error)}.sp-field-inline.is-ok .sp-inline-label{color:var(--color-success)}.sp-inline-input{font-size:var(--text-base);font-family:var(--font-base);color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;padding:7px 10px}.sp-inline-input::placeholder{color:var(--color-text-disabled)}.sp-inline-select{flex:1;position:relative}.sp-inline-select select{width:100%;font-size:var(--text-base);font-family:var(--font-base);color:var(--color-text-primary);cursor:pointer;-webkit-appearance:none;background:0 0;border:none;outline:none;padding:7px 26px 7px 10px}.sp-inline-select-arrow{color:var(--color-text-tertiary);pointer-events:none;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.sp-inline-select-arrow svg{width:11px;height:11px}.sp-btn{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;font-family:var(--font-base);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:5px;padding:6px 13px;line-height:1;text-decoration:none;display:inline-flex}.sp-btn:active{transform:translateY(1px)}.sp-btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.sp-btn svg{flex-shrink:0;width:12px;height:12px}.sp-btn-primary{background:var(--color-brand);color:var(--color-text-inverse);border-color:var(--color-brand);box-shadow:var(--shadow-btn-brand)}.sp-btn-primary:hover{background:var(--color-brand-hover)}.sp-btn-accent{background:var(--color-accent);color:#1a1200;border-color:var(--color-accent);box-shadow:var(--shadow-btn-accent);font-weight:600}.sp-btn-accent:hover{background:var(--color-accent-hover)}.sp-btn-secondary{background:var(--color-bg-elevated);color:var(--color-text-secondary);border-color:var(--color-border)}.sp-btn-secondary:hover{color:var(--color-text-primary);border-color:var(--color-border-strong);background:var(--color-bg-surface)}.sp-btn-ghost{color:var(--color-text-secondary);background:0 0}.sp-btn-ghost:hover{color:var(--color-text-primary);background:var(--color-bg-elevated);border-color:var(--color-border-subtle)}.sp-btn-danger{background:var(--color-error-subtle);color:var(--color-error);border-color:var(--color-error-border)}.sp-btn-danger:hover{background:var(--color-error);color:#fff;border-color:var(--color-error)}.sp-btn-success{background:var(--color-success-subtle);color:var(--color-success);border-color:var(--color-success-border)}.sp-btn-success:hover{background:var(--color-success);color:#fff}.sp-btn-xs{font-size:var(--text-xs);padding:3px 8px}.sp-btn-sm{font-size:var(--text-sm);padding:5px 11px}.sp-btn-lg{font-size:var(--text-base);padding:9px 18px}.sp-btn-xl{font-size:var(--text-lg);padding:11px 22px}.sp-btn-full{width:100%}.sp-btn-icon{justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:inline-flex}.sp-btn-icon svg{width:13px;height:13px}.sp-btn-icon.sp-btn-sm{width:24px;height:24px}.sp-btn-icon.sp-btn-lg{width:34px;height:34px}.sp-btn-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.sp-btn-row-spacer{flex:1}.sp-badge{border-radius:var(--radius-sm);font-size:var(--text-xs);letter-spacing:.04em;font-weight:600;font-family:var(--font-mono);white-space:nowrap;align-items:center;gap:4px;padding:2px 7px;line-height:1.5;display:inline-flex}.sp-badge .dot{border-radius:var(--radius-full);background:currentColor;flex-shrink:0;width:5px;height:5px}.sp-badge-brand{background:var(--color-brand-subtle);color:var(--color-brand);border:1px solid var(--color-brand-border)}.sp-badge-accent{background:var(--color-accent-subtle);color:var(--color-accent);border:1px solid var(--color-accent-border)}.sp-badge-success{background:var(--color-success-subtle);color:var(--color-success);border:1px solid var(--color-success-border)}.sp-badge-error{background:var(--color-error-subtle);color:var(--color-error);border:1px solid var(--color-error-border)}.sp-badge-warning{background:var(--color-warning-subtle);color:var(--color-warning);border:1px solid var(--color-warning-border)}.sp-badge-info{background:var(--color-info-subtle);color:var(--color-info);border:1px solid var(--color-info-border)}.sp-badge-neutral{color:var(--color-text-secondary);border:1px solid var(--color-border);background:#ffffff0f}.sp-badge-lg{font-size:var(--text-xs);border-radius:var(--radius-md);padding:3px 9px}.sp-badge-pill{border-radius:var(--radius-full)}.sp-toggle-track{background:var(--color-border);cursor:pointer;width:36px;height:20px;transition:all var(--transition-fast);border-radius:10px;flex-shrink:0;display:inline-block;position:relative}.sp-toggle-track:after{content:"";border-radius:var(--radius-full);background:var(--color-text-tertiary);width:14px;height:14px;transition:all var(--transition-fast);position:absolute;top:3px;left:3px}.sp-toggle-track.is-on{background:var(--color-brand);box-shadow:0 0 8px var(--color-brand-glow)}.sp-toggle-track.is-on:after{background:#fff;transform:translate(16px)}.sp-toggle-track:disabled,.sp-toggle-track.is-disabled{opacity:.4;cursor:not-allowed}.sp-toggle-row{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;padding:10px 12px;display:flex}.sp-toggle-row:hover{border-color:var(--color-border-strong)}.sp-toggle-row-info p{font-size:var(--text-base);color:var(--color-text-primary)}.sp-toggle-row-info span{font-size:var(--text-xs);color:var(--color-text-tertiary);margin-top:1px;display:block}.sp-radio-group{gap:var(--space-1);display:flex}.sp-radio-option{background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;text-align:center;transition:all var(--transition-fast);flex:1;justify-content:center;align-items:center;gap:5px;padding:6px 10px;display:flex}.sp-radio-option:hover{color:var(--color-text-primary);border-color:var(--color-border-strong)}.sp-radio-option.is-selected{border-color:var(--color-brand-border);background:var(--color-brand-subtle);color:var(--color-text-primary)}.sp-radio-option .radio-dot{border-radius:var(--radius-full);border:1.5px solid var(--color-border-strong);width:12px;height:12px;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex}.sp-radio-option.is-selected .radio-dot{border-color:var(--color-brand);background:var(--color-brand)}.sp-radio-option.is-selected .radio-dot:after{content:"";border-radius:var(--radius-full);background:#fff;width:4px;height:4px}.sp-checkbox-wrap{align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:var(--text-base);color:var(--color-text-secondary);display:flex}.sp-checkbox-wrap:hover{color:var(--color-text-primary)}.sp-checkbox{width:14px;height:14px;accent-color:var(--color-brand);cursor:pointer;flex-shrink:0}.sp-checkbox-wrap .req{color:var(--color-warning);font-weight:600}.sp-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.sp-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.sp-table thead tr{background:linear-gradient(180deg, var(--color-bg-label) 0%, var(--color-bg-input) 100%);border-bottom:1px solid var(--color-border)}.sp-table thead th{text-align:left;font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-tertiary);border-right:1px solid var(--color-border-subtle);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;padding:6px 11px;font-weight:600}.sp-table thead th:last-child{border-right:none}.sp-table thead th:hover{color:var(--color-text-primary)}.sp-table thead th.is-sorted{color:var(--color-brand)}.sp-table tbody tr{border-bottom:1px solid var(--color-border-subtle);cursor:pointer;transition:background var(--transition-fast)}.sp-table tbody tr:nth-child(odd){background:var(--color-bg-table-odd)}.sp-table tbody tr:nth-child(2n){background:var(--color-bg-table-even)}.sp-table tbody tr:hover{background:var(--color-bg-table-hover)}.sp-table tbody tr.is-selected{background:var(--color-bg-table-sel)}.sp-table-flat tbody tr:nth-child(odd),.sp-table-flat tbody tr:nth-child(2n){background:var(--color-bg-card)}.sp-table td{color:var(--color-text-primary);border-right:1px solid var(--color-border-subtle);padding:7px 11px}.sp-table td:last-child{border-right:none}.sp-table td.is-mono{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-secondary)}.sp-table td.is-muted{color:var(--color-text-tertiary)}.sp-doc-table-wrap{border:2px solid var(--color-border-strong);background:var(--color-bg-card);max-width:900px}.sp-doc-table{border-collapse:collapse;width:100%;font-size:var(--text-base);table-layout:fixed}.sp-doc-table td,.sp-doc-table th{border:1px solid var(--color-border);vertical-align:top;color:var(--color-text-primary);text-align:left;padding:8px 10px}.sp-doc-table .sp-doc-label{background:var(--color-border-strong);text-align:center;color:var(--color-text-primary);white-space:nowrap;font-weight:600}.sp-doc-table tr.sp-doc-row-tall td{padding-top:10px;padding-bottom:10px}.sp-doc-cell-editable{cursor:text;transition:background var(--transition-fast)}.sp-doc-cell-editable:hover{background:var(--color-bg-table-hover)}.sp-doc-textarea{resize:none;width:100%;font:inherit;color:inherit;background:0 0;border:none;outline:none;padding:0;line-height:1.5;display:block}@media print{body *{visibility:hidden}.sp-print-area,.sp-print-area *{visibility:visible}.sp-print-area{width:100%;position:absolute;top:0;left:0}.sp-no-print{display:none!important}.sp-print-reset{max-height:none!important;position:static!important;overflow:visible!important}}.sp-tab-bar{border-bottom:1px solid var(--color-border);align-items:center;gap:0;display:flex}.sp-tab{font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 14px;font-weight:500}.sp-tab:hover{color:var(--color-text-heading)}.sp-tab.is-active{color:var(--color-text-primary);border-bottom-color:var(--color-brand)}.sp-tab-seg{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);gap:2px;padding:3px;display:flex}.sp-tab-seg-item{border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:1px solid #0000;padding:5px 14px;font-weight:500}.sp-tab-seg-item:hover{color:var(--color-text-primary)}.sp-tab-seg-item.is-active{background:var(--color-bg-card);color:var(--color-text-primary);border-color:var(--color-border);box-shadow:var(--shadow-xs)}.sp-overlay{z-index:200;background:var(--color-bg-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:sp-fade-in var(--p-dur-fast) var(--p-ease-out);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@keyframes sp-fade-in{0%{opacity:0}to{opacity:1}}.sp-modal{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-xl);width:420px;max-width:calc(100vw - 32px);animation:sp-slide-up var(--p-dur-slow) var(--p-ease-spring);position:relative}@keyframes sp-slide-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.sp-modal-header{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;padding:14px 16px 12px;display:flex}.sp-modal-title{font-size:var(--text-lg);color:var(--color-text-primary);letter-spacing:-.01em;font-weight:700}.sp-modal-close{border-radius:var(--radius-sm);background:var(--color-bg-elevated);border:1px solid var(--color-border);width:24px;height:24px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;font-size:12px;display:flex}.sp-modal-close:hover{color:var(--color-text-primary);border-color:var(--color-border-strong)}.sp-modal-body{padding:16px}.sp-modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-2);border-top:1px solid var(--color-border-subtle);padding:12px 16px;display:flex}.sp-toast{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);min-width:280px;max-width:380px;animation:sp-toast-in var(--p-dur-slow) var(--p-ease-spring);align-items:flex-start;gap:10px;padding:11px 14px;display:flex}@keyframes sp-toast-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.sp-toast-icon{flex-shrink:0;margin-top:1px;font-size:14px}.sp-toast-content{flex:1}.sp-toast-title{font-size:var(--text-sm);color:var(--color-text-primary);margin-bottom:2px;font-weight:600}.sp-toast-desc{font-size:var(--text-xs);color:var(--color-text-secondary);line-height:1.5}.sp-toast-close{color:var(--color-text-tertiary);cursor:pointer;border-radius:3px;flex-shrink:0;padding:2px;font-size:12px}.sp-toast-close:hover{color:var(--color-text-primary)}.sp-toast.is-success{border-color:var(--color-success-border)}.sp-toast.is-error{border-color:var(--color-error-border)}.sp-toast.is-warning{border-color:var(--color-warning-border)}.sp-toast.is-info{border-color:var(--color-info-border)}.is-focus-flash{animation:1.6s ease-out sp-focus-pulse}@keyframes sp-focus-pulse{0%{box-shadow:0 0 0 0 var(--color-brand-subtle)}12%{box-shadow:0 0 0 6px var(--color-brand-subtle)}to{box-shadow:0 0 #0000}}.sp-divider{background:var(--color-border-subtle);height:1px;margin:var(--space-3) 0}.sp-divider-strong{background:var(--color-border);height:1px}.sp-section-title{font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary);margin-bottom:var(--space-2);font-weight:600}.sp-code{font-family:var(--font-mono);font-size:var(--text-xs);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-heading);padding:1px 5px}.sp-kbd{font-family:var(--font-mono);font-size:var(--text-xs);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);box-shadow:var(--shadow-xs);padding:2px 6px}.sp-avatar{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-brand), #8b5cf6);color:#fff;font-weight:700;font-family:var(--font-base);flex-shrink:0;justify-content:center;align-items:center;display:flex}.sp-avatar-sm{width:24px;height:24px;font-size:var(--text-xs)}.sp-avatar-md{width:32px;height:32px;font-size:var(--text-sm)}.sp-avatar-lg{width:40px;height:40px;font-size:var(--text-base)}.sp-avatar-xl{width:52px;height:52px;font-size:var(--text-xl)}.sp-spinner{border:2px solid var(--color-border);border-top-color:var(--color-brand);border-radius:var(--radius-full);width:14px;height:14px;animation:.7s linear infinite sp-spin;display:inline-block}.sp-spinner-lg{border-width:3px;width:24px;height:24px}@keyframes sp-spin{to{transform:rotate(360deg)}}.sp-empty{padding:var(--space-12) var(--space-6);text-align:center;justify-content:center;align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.sp-empty-icon{opacity:.35;font-size:32px}.sp-empty-title{font-size:var(--text-base);color:var(--color-text-secondary);font-weight:600}.sp-empty-desc{font-size:var(--text-sm);color:var(--color-text-tertiary);max-width:280px;line-height:1.6}.sp-scroll::-webkit-scrollbar{width:4px;height:4px}.sp-scroll::-webkit-scrollbar-track{background:0 0}.sp-scroll::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:2px}.sp-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-border-strong)}.sp-markdown{font-size:var(--text-sm);color:var(--color-text-primary);line-height:1.75}.sp-markdown h1{margin:1.2em 0 .5em;font-size:1.25rem;font-weight:700}.sp-markdown h2{margin:1.1em 0 .4em;font-size:1.1rem;font-weight:700}.sp-markdown h3{margin:1em 0 .3em;font-size:1rem;font-weight:700}.sp-markdown p{margin:.5em 0}.sp-markdown ul,.sp-markdown ol{margin:.5em 0;padding-left:1.5em}.sp-markdown li{margin-bottom:.25em}.sp-markdown strong{font-weight:600}.sp-markdown em{font-style:italic}.sp-markdown code{background:var(--color-bg-muted);border-radius:var(--radius-sm);padding:1px 6px;font-family:DM Mono,monospace;font-size:.85em}.sp-markdown pre{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin:.75em 0;overflow-x:auto}.sp-markdown pre code{background:0 0;padding:0;font-size:.82em}.sp-markdown blockquote{border-left:3px solid var(--color-brand);padding-left:var(--space-3);color:var(--color-text-secondary);margin:.75em 0}.sp-markdown table{border-collapse:collapse;width:100%;font-size:var(--text-sm);margin:.75em 0}.sp-markdown th{background:var(--color-bg-muted);text-align:left;border:1px solid var(--color-border);word-break:break-word;min-width:80px;padding:6px 12px;font-weight:600}.sp-markdown td{border:1px solid var(--color-border);vertical-align:top;word-break:break-word;min-width:80px;padding:6px 12px}.sp-markdown tr:nth-child(2n) td{background:var(--color-bg-subtle,#00000005)}.sp-markdown hr{border:none;border-top:1px solid var(--color-border);margin:1em 0}.sp-markdown pre.sp-diff-block{border-radius:var(--radius-md);background:#fef2f2;border:2px solid #ef5350;margin:.75em 0;padding:12px 16px}.sp-markdown .sp-diff{white-space:pre-wrap;word-break:break-word;background:0 0}.sp-diff-line-section{color:#1565c0;font-weight:700}.sp-diff-line-add{color:#2e7d32;background:#2e7d3214}.sp-diff-line-del{color:#c62828;background:#c6282814}.sp-rich-editor .ProseMirror{font-size:var(--text-base,15px);color:var(--color-text-primary);outline:none;padding:12px 16px;line-height:1.75}.sp-rich-editor .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--color-text-tertiary);pointer-events:none;float:left;height:0}.sp-rich-editor .ProseMirror>*+*{margin-top:.5em}.sp-rich-editor .ProseMirror h1{margin:1.1em 0 .3em;font-size:1.25rem;font-weight:700}.sp-rich-editor .ProseMirror h2{margin:1em 0 .3em;font-size:1.1rem;font-weight:700}.sp-rich-editor .ProseMirror h3{margin:.9em 0 .2em;font-size:1rem;font-weight:700}.sp-rich-editor .ProseMirror ul,.sp-rich-editor .ProseMirror ol{padding-left:1.5em}.sp-rich-editor .ProseMirror li{margin-bottom:.2em}.sp-rich-editor .ProseMirror strong{font-weight:600}.sp-rich-editor .ProseMirror em{font-style:italic}.sp-rich-editor .ProseMirror code{background:var(--color-bg-muted);border-radius:var(--radius-sm);padding:1px 5px;font-family:DM Mono,monospace;font-size:.85em}.sp-rich-editor .ProseMirror pre.sp-codeblock,.sp-rich-editor .ProseMirror pre{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-family:DM Mono,monospace;font-size:.82em;overflow-x:auto}.sp-rich-editor .ProseMirror pre code{background:0 0;padding:0}.sp-rich-editor .ProseMirror blockquote{border-left:3px solid var(--color-brand);padding-left:var(--space-3);color:var(--color-text-secondary);margin:.5em 0}.sp-rich-editor .ProseMirror table{border-collapse:collapse;width:100%;font-size:var(--text-sm);margin:.75em 0}.sp-rich-editor .ProseMirror th{background:var(--color-bg-muted);text-align:left;border:1px solid var(--color-border);padding:6px 10px;font-weight:600}.sp-rich-editor .ProseMirror td{border:1px solid var(--color-border);vertical-align:top;min-width:60px;padding:6px 10px}.sp-rich-editor .ProseMirror td.selectedCell,.sp-rich-editor .ProseMirror th.selectedCell{background:var(--color-brand)}@supports (color:color-mix(in lab, red, red)){.sp-rich-editor .ProseMirror td.selectedCell,.sp-rich-editor .ProseMirror th.selectedCell{background:color-mix(in srgb, var(--color-brand) 10%, transparent)}}.sp-rich-editor .ProseMirror img.sp-editor-img{border-radius:var(--radius-md);max-width:100%;margin:.5em 0;display:block}.sp-rich-editor .ProseMirror img.sp-editor-img.ProseMirror-selectednode{outline:2px solid var(--color-brand)}.sp-no-native-arrow::-webkit-calendar-picker-indicator{appearance:none!important;opacity:0!important;pointer-events:none!important;width:0!important;height:0!important;display:none!important}.sp-no-native-arrow::-webkit-list-button{-webkit-appearance:none!important;display:none!important}.sp-no-native-arrow::-ms-expand{display:none!important}[data-theme=dark] .sp-badge,[data-theme=dark-purple] .sp-badge{filter:brightness(.7)saturate(.9)contrast(1.15)}[data-theme=dark],[data-theme=dark-purple]{--sp-warn-bg:#e8b05014;--sp-warn-border:#e8b05040;--sp-warn-title:#ffb840;--sp-warn-body:var(--color-text-secondary)}[data-theme=dark] input[type=date],[data-theme=dark] input[type=datetime-local],[data-theme=dark] input[type=time],[data-theme=dark] input[type=month],[data-theme=dark] input[type=week],[data-theme=dark-purple] input[type=date],[data-theme=dark-purple] input[type=datetime-local],[data-theme=dark-purple] input[type=time],[data-theme=dark-purple] input[type=month],[data-theme=dark-purple] input[type=week]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.sp-dashboard-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.sp-dashboard-row:hover{background:var(--color-bg-elevated)}@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-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@keyframes spin{to{transform:rotate(360deg)}}
