/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@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-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;--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}}}@layer theme{:root,:host{--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:"Roboto Mono", "SF Mono", "Monaco", "Cascadia Code", Consolas, "Courier New", monospace;--spacing:.25rem;--breakpoint-sm:40rem;--breakpoint-md:48rem;--breakpoint-lg:64rem;--breakpoint-xl:80rem;--breakpoint-2xl:96rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-4xl:2.25rem;--font-weight-semibold:600;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:calc(var(--radius) * .5);--radius-md:var(--radius);--radius-lg:calc(var(--radius) * 1.5);--radius-xl:calc(var(--radius) * 2);--radius-2xl:calc(var(--radius) * 3);--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;--shadow-2xl:0 25px 50px -12px #00000040;--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);--color-primary:var(--primary);--color-muted:var(--muted);--radius-full:9999px}}@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;-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: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])){display:none!important}@layer base{html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;scrollbar-width:thin;scrollbar-color:var(--border) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full);background-clip:content-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground);background-clip:content-box;border:2px solid #0000}::-webkit-scrollbar-corner{background:0 0}body{font-family:var(--font-sans);color:var(--foreground);background:var(--background);font-size:.875rem;line-height:1.5;overflow-x:hidden}input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--primary)}h1{letter-spacing:-.025em;color:var(--foreground);font-size:1.875rem;font-weight:700;line-height:1.25}h2{letter-spacing:-.025em;color:var(--foreground);font-size:1.5rem;font-weight:600;line-height:1.3}h3{letter-spacing:-.01em;color:var(--foreground);font-size:1.125rem;font-weight:600;line-height:1.35}h4{color:var(--foreground);font-size:1rem;font-weight:600;line-height:1.4}p{color:var(--foreground);font-size:.875rem;line-height:1.5}a{color:inherit;text-decoration:none}a:hover{color:inherit}.prose a,.comment-body a,.chat-message a{color:var(--foreground);text-decoration:underline;-webkit-text-decoration-color:var(--border);-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:2px}.prose a:hover,.comment-body a:hover,.chat-message a:hover{-webkit-text-decoration-color:var(--foreground);-webkit-text-decoration-color:var(--foreground);text-decoration-color:var(--foreground)}code,.code,.monospace{font-family:var(--font-mono);background:var(--muted);border-radius:var(--radius-sm);border:1px solid var(--border);padding:.125rem .375rem;font-size:.875em}pre{font-family:var(--font-mono);background:var(--muted);border-radius:var(--radius-md);border:1px solid var(--border);padding:.75rem;font-size:.75rem;line-height:1.625;overflow-x:auto}pre code{font-size:inherit;background:0 0;border:none;padding:0}.text-uppercase{text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;font-weight:500}.text-technical{font-family:var(--font-mono);color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.text-muted{color:var(--muted-foreground)}.focus-ring:focus{outline:2px solid var(--ring);outline-offset:2px}}}@layer components{.icon-sprite{display:none}.icon{vertical-align:-.135em;fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;flex:none;width:1em;height:1em;display:inline-block;overflow:visible}.btn .icon,.nav-item .icon,.badge .icon{vertical-align:-.14em}.icon.is-success{color:var(--success)}.icon.is-warning{color:var(--warning)}.icon.is-danger{color:var(--error)}.icon.is-info{color:var(--info)}.icon.is-muted{color:var(--muted-foreground)}.icon--loader{animation:.9s linear infinite icon-spin}@keyframes icon-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.icon--loader{animation-duration:2.4s}}@layer components{.app-shell{background:var(--background);grid-template:"header header"56px"sidebar main"minmax(0,1fr)/240px minmax(0,1fr);height:100dvh;display:grid;overflow:hidden}.app-shell--no-sidebar{grid-template-columns:minmax(0,1fr);grid-template-areas:"header""main"}.app-header{background:var(--card);border-bottom:1px solid var(--border);z-index:40;grid-area:header;align-items:center;gap:1rem;min-width:0;padding:0 1rem;display:flex}.header-left{flex:0 auto;align-items:center;gap:.75rem;min-width:0;display:flex}.header-center{flex:auto;justify-content:center;min-width:0;display:flex}.header-right{flex:none;justify-content:flex-end;align-items:center;gap:.25rem;display:flex}.brand{letter-spacing:-.025em;color:var(--foreground);white-space:nowrap;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}.brand:hover{color:var(--foreground);opacity:.8}.brand-mark{color:var(--foreground);flex:none}.app-header .sidebar-toggle{display:none}.auth-only{transition:opacity .15s}.auth-only.hidden{visibility:hidden;opacity:0;pointer-events:none;display:flex!important}.auth-only:not(.hidden){visibility:visible;opacity:1}.project-selector-container{border-left:1px solid var(--border);align-items:center;gap:.5rem;min-width:0;padding-left:.75rem;display:flex}.project-label{color:var(--muted-foreground);white-space:nowrap;font-size:.75rem;font-weight:500}.project-selector,.project-dropdown{min-width:0;max-width:220px;height:32px;color:var(--foreground);background-color:var(--background);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;padding:0 .5rem;font-size:.8125rem;font-weight:500}.project-dropdown:hover{background-color:var(--muted)}.search-wrapper{align-items:center;width:100%;max-width:420px;display:flex}.search-container{align-items:center;width:100%;display:flex;position:relative}.search-input{width:100%;height:32px;color:var(--foreground);background-color:var(--muted);border-radius:var(--radius-md);border:1px solid #0000;padding:0 .75rem;font-size:.8125rem;transition:background-color .15s,border-color .15s}.search-input::placeholder{color:var(--muted-foreground)}.search-input:focus{background-color:var(--card);border-color:var(--ring);box-shadow:0 0 0 1px var(--ring);outline:none}.user-info{border-radius:var(--radius-md);height:32px;color:var(--foreground);align-items:center;gap:.5rem;padding:0 .5rem;display:inline-flex}.user-avatar{border-radius:var(--radius-full);background:var(--primary);width:24px;height:24px;color:var(--primary-foreground);letter-spacing:.02em;text-transform:uppercase;flex:none;justify-content:center;align-items:center;font-size:10px;font-weight:600;display:inline-flex}.user-avatar-small{width:24px;height:24px;font-size:.75rem}.user-avatar-medium{width:32px;height:32px;font-size:.875rem}.user-avatar-large{width:48px;height:48px;font-size:1.125rem}.user-name{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;max-width:140px;font-size:.8125rem;font-weight:500;overflow:hidden}.app-sidebar{overscroll-behavior:contain;background:var(--sidebar);border-right:1px solid var(--sidebar-border);scrollbar-width:thin;scrollbar-color:var(--sidebar-border) transparent;flex-direction:column;grid-area:sidebar;min-height:0;display:flex;overflow-y:auto}.sidebar-scrim{display:none}.app-main{overscroll-behavior:contain;background:var(--background);grid-area:main;min-width:0;height:100%;min-height:0;padding:1.25rem;position:relative;overflow-y:auto}.app-main>#app{flex-direction:column;min-width:0;min-height:100%;display:flex}.app-main--full{flex-direction:column;padding:0;display:flex}.app-main--full>#app{flex-direction:column;flex:1;min-height:0;display:flex}.player-page{overflow:hidden}.player-page .app-shell{background:var(--background);overflow:hidden}.player-page .app-main,.player-page .app-main--full{background:var(--background);padding:0;overflow:hidden}.player-page .app-header{border-bottom:1px solid var(--border)}body:not(.app-shell-enabled){padding:0}.page-container{max-width:1400px;margin:0 auto}.page-container--narrow{max-width:860px;margin:0 auto}.breadcrumb{flex-wrap:wrap;align-items:center;gap:.25rem;margin-bottom:.5rem;font-size:.75rem;display:flex}.breadcrumb-item{color:var(--muted-foreground);border-radius:var(--radius-sm);padding:2px .375rem;text-decoration:none;transition:background-color .15s,color .15s}.breadcrumb-item:hover{color:var(--foreground);background:var(--muted)}.breadcrumb-item.active,.breadcrumb-item[aria-current=page]{color:var(--foreground);font-weight:500}.breadcrumb-separator{color:var(--muted-foreground);display:inline-flex}.page-header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.page-header-text,.page-header-center,.page-header-left{text-align:left;flex-direction:column;flex:320px;align-items:flex-start;gap:.25rem;min-width:0;display:flex}.page-title{letter-spacing:-.025em;color:var(--foreground);margin:0;font-size:1.875rem;font-weight:700;line-height:1.25}.page-subtitle{color:var(--muted-foreground);max-width:72ch;margin:0;font-size:.875rem;line-height:1.375}.page-actions,.page-header-right{flex:none;order:2;justify-self:flex-end;align-items:center;gap:.5rem;display:flex}.page-header-spacer{display:none}.toolbar{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;gap:.5rem;min-height:44px;margin-bottom:1rem;padding:.5rem .75rem;display:flex}.toolbar-spacer{flex:auto}.toolbar-group{align-items:center;gap:.5rem;min-width:0;display:flex}.toolbar-label{color:var(--muted-foreground);white-space:nowrap;font-size:.75rem}.toolbar+.toolbar{margin-top:-.5rem}.detail-layout{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));align-items:start;gap:1.25rem;display:grid}.content-container{max-width:100%;margin:0 auto}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin-top:1rem;display:grid}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem;margin-top:1rem;display:grid}.settings-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.settings-group{margin-bottom:1.5rem}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.75rem;margin-bottom:1.25rem;display:grid}.error-state{margin-bottom:1rem}.alert{border-radius:var(--radius-md);border:1px solid #0000;align-items:flex-start;gap:.5rem;margin-bottom:1rem;padding:.75rem;font-size:.875rem;line-height:1.375;display:flex}.alert .icon{flex:none;margin-top:1px}.alert-error{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.alert-error{background:color-mix(in srgb, var(--error) 8%, var(--card))}}.alert-error{color:var(--error);border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.alert-error{border-color:color-mix(in srgb, var(--error) 25%, var(--border))}}.alert-success{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.alert-success{background:color-mix(in srgb, var(--success) 8%, var(--card))}}.alert-success{color:var(--success);border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.alert-success{border-color:color-mix(in srgb, var(--success) 25%, var(--border))}}.alert-warning{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.alert-warning{background:color-mix(in srgb, var(--warning) 10%, var(--card))}}.alert-warning{color:var(--warning);border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.alert-warning{border-color:color-mix(in srgb, var(--warning) 30%, var(--border))}}.alert-info{background:var(--info)}@supports (color:color-mix(in lab, red, red)){.alert-info{background:color-mix(in srgb, var(--info) 8%, var(--card))}}.alert-info{color:var(--info);border-color:var(--info)}@supports (color:color-mix(in lab, red, red)){.alert-info{border-color:color-mix(in srgb, var(--info) 25%, var(--border))}}.notification-bell,.user-menu{position:relative}.user-info{cursor:pointer;background:0 0;border:1px solid #0000;transition:background-color .1s,border-color .1s}.user-info:hover{background:var(--muted)}.user-info[aria-expanded=true]{background:var(--muted);border-color:var(--border)}.user-info:focus-visible{box-shadow:0 0 0 2px var(--background), 0 0 0 4px var(--ring);outline:none}.user-dropdown{z-index:50;background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:200px;padding:.25rem;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.user-dropdown[hidden]{display:none}.user-dropdown-item{box-sizing:border-box;border-radius:var(--radius-md);width:100%;height:32px;color:var(--foreground);font-family:var(--font-sans);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.75rem;padding:0 .5rem;font-size:.875rem;text-decoration:none;transition:background-color .1s;display:flex}.user-dropdown-item .icon{color:var(--muted-foreground)}.user-dropdown-item:hover{background:var(--accent);color:var(--foreground)}.user-dropdown-item:hover .icon{color:var(--foreground)}.user-dropdown-item.is-danger:hover{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.user-dropdown-item.is-danger:hover{background:color-mix(in srgb, var(--error) 10%, var(--popover))}}.user-dropdown-item.is-danger:hover,.user-dropdown-item.is-danger:hover .icon{color:var(--error)}.user-dropdown-divider{background:var(--border);height:1px;margin:.25rem 0}.nav-menu{flex-direction:column;gap:1.25rem;padding:1rem 0 1.5rem;display:flex}.nav-section{flex-direction:column;gap:1px;display:flex}.nav-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground);margin:0 0 .5rem;padding:0 1rem;font-size:11px;font-weight:600}.nav-links{flex-direction:column;gap:1px;display:flex}.nav-link,.nav-item{box-sizing:border-box;height:34px;color:var(--sidebar-foreground);white-space:nowrap;border-radius:var(--radius-md);align-items:center;gap:.75rem;margin:0 .5rem;padding:0 .625rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .1s,color .1s;display:flex;position:relative}.nav-link:hover,.nav-item:hover{color:var(--sidebar-accent-foreground);background:var(--sidebar-accent)}.nav-link.active,.nav-item.active{color:var(--sidebar-accent-foreground);background:var(--sidebar-accent);font-weight:500}.nav-icon{width:16px;height:16px;color:var(--muted-foreground);flex:none;justify-content:center;align-items:center;transition:color .1s;display:inline-flex}.nav-item:hover .nav-icon,.nav-link:hover .nav-icon{color:var(--sidebar-accent-foreground)}.nav-item.active .nav-icon,.nav-link.active .nav-icon{color:var(--sidebar-primary)}.nav-badge{border-radius:var(--radius-full);background:var(--sidebar-primary);min-width:16px;height:16px;color:var(--sidebar-primary-foreground);font-family:var(--font-mono);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;margin-left:auto;padding:0 5px;font-size:10px;font-weight:600;display:inline-flex}.nav-item--restricted,.nav-link--restricted{display:none}.nav-item.is-disabled,.nav-link.is-disabled{opacity:.38;cursor:not-allowed;pointer-events:none}.nav-context-indicator{border-radius:var(--radius-full);background:var(--sidebar-primary);opacity:.7;width:4px;height:4px;margin-left:auto;display:inline-block}.nav-item:hover .nav-context-indicator{opacity:1}.project-dropdown:disabled{opacity:.6;cursor:not-allowed;background:var(--background)}.project-dropdown--loading{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M21 12a9 9 0 1 1-6.219-8.56'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;background-size:13px;animation:.9s linear infinite nav-spin}@keyframes nav-spin{to{transform:rotate(360deg)}}button{font:inherit;color:inherit;cursor:pointer}.btn{--btn-height:32px;--btn-pad:.75rem;--btn-font:.875rem;height:var(--btn-height);padding:0 var(--btn-pad);box-sizing:border-box;font-family:var(--font-sans);font-size:var(--btn-font);letter-spacing:0;text-transform:none;white-space:nowrap;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--foreground);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:.5rem;font-weight:500;line-height:1;text-decoration:none;transition:background-color .1s,border-color .1s,color .1s,opacity .1s;display:inline-flex}.btn:hover{background:var(--muted)}.btn:active{background:var(--accent)}.btn:focus-visible{box-shadow:0 0 0 2px var(--background), 0 0 0 4px var(--ring);border-color:var(--ring);outline:none}.btn:disabled,.btn[aria-disabled=true],.btn.is-disabled{opacity:.45;cursor:not-allowed;background:var(--card);border-color:var(--border);color:var(--muted-foreground)}.btn-primary{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary);font-weight:500}.btn-primary:hover{background:var(--primary);opacity:.9}.btn-primary:active{opacity:.8}.btn-primary:disabled,.btn-primary.is-disabled{background:var(--muted);border-color:var(--border);color:var(--muted-foreground);opacity:1}.btn-secondary,.secondary{background:var(--card);color:var(--foreground);border-color:var(--border)}.btn-secondary:hover,.secondary:hover{background:var(--muted)}.btn-ghost{color:var(--muted-foreground);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--accent);color:var(--foreground);border-color:#0000}.btn-ghost:active{background:var(--muted)}.btn-destructive,.danger{color:var(--error);border-color:var(--error);background:0 0}@supports (color:color-mix(in lab, red, red)){.btn-destructive,.danger{border-color:color-mix(in srgb, var(--error) 30%, var(--border))}}.btn-destructive:hover,.danger:hover{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.btn-destructive:hover,.danger:hover{background:color-mix(in srgb, var(--error) 10%, var(--card))}}.btn-destructive:hover,.danger:hover{border-color:var(--error);color:var(--error)}.btn-destructive-solid{background:var(--destructive);color:var(--destructive-foreground);border-color:var(--destructive);font-weight:500}.btn-destructive-solid:hover{background:var(--destructive);opacity:.9}.btn-success{background:var(--success);color:var(--success-foreground);border-color:var(--success);font-weight:500}.btn-success:hover{background:var(--success);opacity:.9}.btn-warning{background:var(--warning);color:var(--warning-foreground);border-color:var(--warning);font-weight:500}.btn-warning:hover{background:var(--warning);opacity:.9}.btn-xs{--btn-height:24px;--btn-pad:.5rem;--btn-font:.75rem;gap:.25rem}.btn-sm,.btn-small{--btn-height:28px;--btn-pad:.5rem;--btn-font:.75rem;gap:.25rem}.btn-lg,.btn-large{--btn-height:40px;--btn-pad:1.25rem;--btn-font:.875rem}.btn-full{width:100%}.btn-icon{box-sizing:border-box;border-radius:var(--radius-md);width:32px;height:32px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;transition:background-color .1s,color .1s,border-color .1s;display:inline-flex}.btn-icon:hover{background:var(--accent);color:var(--foreground)}.btn-icon:focus-visible{box-shadow:0 0 0 2px var(--background), 0 0 0 4px var(--ring);outline:none}.btn-icon:disabled{opacity:.4;cursor:not-allowed;background:0 0}.btn-icon.is-active,.btn-icon.active{background:var(--accent);border-color:var(--border);color:var(--foreground)}.btn-icon.is-danger:hover{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.btn-icon.is-danger:hover{background:color-mix(in srgb, var(--error) 10%, var(--card))}}.btn-icon.is-danger:hover{color:var(--error)}.btn-icon-sm{width:26px;height:26px}.btn-icon-lg{width:38px;height:38px}.btn-technical{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted-foreground);font-size:.75rem}.btn-technical:hover{color:var(--foreground);border-color:var(--muted-foreground)}.btn-link,.linklike{height:auto;color:var(--foreground);font-size:inherit;cursor:pointer;background:0 0;border:none;border-radius:0;padding:0;font-weight:500;text-decoration:none;display:inline}.btn-link:hover,.linklike:hover{color:var(--foreground);text-underline-offset:2px;background:0 0;border:none;text-decoration:underline}.btn-link:focus-visible,.linklike:focus-visible{box-shadow:0 0 0 2px var(--ring);border-radius:2px;outline:none}.btn-group,.segmented{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--background);gap:2px;padding:2px;display:inline-flex}.btn-group>.btn,.segmented>.btn{border-radius:var(--radius-sm);height:26px;color:var(--muted-foreground);background:0 0;border:none;padding:0 .75rem;font-size:.75rem;font-weight:500}.btn-group>.btn:hover,.segmented>.btn:hover{background:var(--muted);color:var(--foreground)}.btn-group>.btn.is-active,.btn-group>.btn.active,.segmented>.btn.is-active,.segmented>.btn.active,.btn-group>.btn[aria-pressed=true],.segmented>.btn[aria-pressed=true]{background:var(--card);color:var(--foreground);box-shadow:0 1px 2px #0000000d}.btn-row,.table-actions,.card-actions{flex-flow:row;align-items:center;gap:.5rem;display:flex}.button-group{flex-flow:wrap;align-items:center;gap:.5rem;display:flex}.button-group--left{justify-content:flex-start}.button-group--center{justify-content:center}.button-group--right{justify-content:flex-end}.button-group--spacing-sm{gap:.25rem}.button-group--spacing-md{gap:.5rem}.button-group--spacing-lg{gap:1rem}.btn>.btn-icon-slot{flex:none;align-items:center;display:inline-flex}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;min-width:0;min-height:0;transition:border-color .1s;display:flex}.card.is-interactive:hover,a.card:hover,button.card:hover{border-color:var(--muted-foreground)}.card-header{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;display:flex}.card-header-text{min-width:0}.card-title{color:var(--foreground);letter-spacing:-.005em;margin:0;font-size:.875rem;font-weight:600;line-height:1.375}.card-subtitle{color:var(--muted-foreground);max-width:60ch;margin:.25rem 0 0;font-size:.75rem;line-height:1.375}.card-header-actions{flex:none;align-items:center;gap:.5rem;display:flex}.card-body{flex:auto;min-height:0;padding:1rem}.card-body-flush{padding:0}.card-body-scroll{overscroll-behavior:contain;overflow-y:auto}.card-footer{border-top:1px solid var(--border);flex:none;justify-content:flex-end;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.panel-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:stretch;gap:1rem;display:grid}.panel-grid>*{min-width:0}.panel-grid-2{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.card-stack{flex-direction:column;gap:1rem;display:flex}.card-body-scroll,.scroll-region{scrollbar-width:thin;scrollbar-color:var(--border) transparent}.card-body-scroll::-webkit-scrollbar{width:10px;height:10px}.scroll-region::-webkit-scrollbar{width:10px;height:10px}.card-body-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full);background-clip:content-box;border:3px solid #0000}.scroll-region::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full);background-clip:content-box;border:3px solid #0000}.card-body-scroll::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground);background-clip:content-box}.scroll-region::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground);background-clip:content-box}.card-body-scroll::-webkit-scrollbar-track{background:0 0}.scroll-region::-webkit-scrollbar-track{background:0 0}.asset-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;flex-direction:column;justify-content:space-between;min-height:120px;padding:1rem;transition:border-color .1s,box-shadow .1s;display:flex}.asset-card:hover{border-color:var(--muted-foreground);box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -2px #0000000d}.asset-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;display:flex}.asset-card-title{color:var(--foreground);margin:0;font-size:1rem;font-weight:600}.asset-card-type{background:var(--muted);color:var(--muted-foreground);border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:.05em;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.asset-card-meta{flex-direction:column;gap:.25rem;display:flex}.asset-card-description{color:var(--muted-foreground);flex-grow:1;margin-bottom:.75rem;font-size:.875rem;line-height:1.625}.asset-card-stats{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:auto;padding-top:.75rem;display:flex}.asset-stat{color:var(--muted-foreground);align-items:center;gap:.25rem;font-size:.75rem;display:flex}.asset-stat-icon{width:14px;height:14px}.item-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:border-color .1s,box-shadow .1s;overflow:hidden}.item-card:hover{border-color:var(--muted-foreground);box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -2px #0000000d}.item-thumbnail{aspect-ratio:16/9;background:var(--muted);justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.item-thumbnail img{object-fit:cover;width:100%;height:100%;display:block}.no-thumbnail{width:100%;height:100%;color:var(--muted-foreground);justify-content:center;align-items:center;font-size:.75rem;display:flex}.item-info{flex:1;padding:.75rem}.item-name{color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;overflow:hidden}.item-meta{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;font-size:.75rem;display:flex}.item-type,.item-status{border-radius:var(--radius-full);border:1px solid var(--border);background:var(--muted);height:18px;color:var(--muted-foreground);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;align-items:center;padding:0 .5rem;font-size:10px;font-weight:600;display:inline-flex}.item-meta-content{color:var(--muted-foreground);font-size:.75rem}.item-actions{gap:.5rem;padding:0 .75rem .75rem;display:flex}.item-actions .btn{flex:1}.item-card-media{background:var(--muted);aspect-ratio:16/9;position:relative;overflow:hidden}.item-card-thumbnail{object-fit:cover;width:100%;height:100%;display:block}.item-card-overlay{opacity:0;background:linear-gradient(#0000,#000000b3);align-items:flex-end;padding:.75rem;transition:opacity .15s;display:flex;position:absolute;inset:0}.item-card:hover .item-card-overlay{opacity:1}.item-card-content{padding:1rem}.item-card-title{color:var(--foreground);margin:0 0 .5rem;font-size:1rem;font-weight:600}.item-card-meta{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.item-card-version{background:var(--muted);color:var(--muted-foreground);border-radius:var(--radius-full);padding:2px .5rem;font-size:10px;font-weight:500}.item-card-timestamp{color:var(--muted-foreground);font-size:.75rem}.item-card-status{align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.status-badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.status-approved{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.status-approved{background:color-mix(in srgb, var(--success) 12%, var(--card))}}.status-approved{color:var(--status-approved)}.status-changes-requested{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.status-changes-requested{background:color-mix(in srgb, var(--warning) 14%, var(--card))}}.status-changes-requested{color:var(--status-changes-requested)}.status-rejected{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.status-rejected{background:color-mix(in srgb, var(--error) 12%, var(--card))}}.status-rejected{color:var(--status-rejected)}.status-in-review{background:var(--info)}@supports (color:color-mix(in lab, red, red)){.status-in-review{background:color-mix(in srgb, var(--info) 12%, var(--card))}}.status-in-review{color:var(--status-in-review)}.status-pending{background:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.status-pending{background:color-mix(in srgb, var(--muted-foreground) 12%, var(--card))}}.status-pending{color:var(--status-pending)}.badge{box-sizing:border-box;border-radius:var(--radius-full);background:var(--muted);height:20px;color:var(--muted-foreground);font-family:var(--font-sans);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;vertical-align:middle;border:1px solid #0000;align-items:center;gap:.25rem;padding:0 .5rem;font-size:11px;font-weight:500;line-height:1;display:inline-flex}.badge .icon{stroke-width:2.5px;width:11px;height:11px}.badge-technical,.badge-version{font-family:var(--font-mono);letter-spacing:0;text-transform:none;font-weight:500}.badge-lg{height:24px;padding:0 .75rem;font-size:.75rem}.badge-info{background:var(--info)}@supports (color:color-mix(in lab, red, red)){.badge-info{background:color-mix(in srgb, var(--info) 10%, var(--card))}}.badge-info{color:var(--info);border-color:var(--info)}@supports (color:color-mix(in lab, red, red)){.badge-info{border-color:color-mix(in srgb, var(--info) 25%, var(--border))}}.badge-success,.badge-approved{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.badge-success,.badge-approved{background:color-mix(in srgb, var(--success) 10%, var(--card))}}.badge-success,.badge-approved{color:var(--success);border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.badge-success,.badge-approved{border-color:color-mix(in srgb, var(--success) 25%, var(--border))}}.badge-warning,.badge-changes-requested,.badge-pending{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.badge-warning,.badge-changes-requested,.badge-pending{background:color-mix(in srgb, var(--warning) 12%, var(--card))}}.badge-warning,.badge-changes-requested,.badge-pending{color:var(--warning);border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.badge-warning,.badge-changes-requested,.badge-pending{border-color:color-mix(in srgb, var(--warning) 30%, var(--border))}}.badge-danger,.badge-error,.badge-rejected{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.badge-danger,.badge-error,.badge-rejected{background:color-mix(in srgb, var(--error) 10%, var(--card))}}.badge-danger,.badge-error,.badge-rejected{color:var(--error);border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.badge-danger,.badge-error,.badge-rejected{border-color:color-mix(in srgb, var(--error) 25%, var(--border))}}.badge-locked,.badge-in-review,.badge-purple{background:var(--info)}@supports (color:color-mix(in lab, red, red)){.badge-locked,.badge-in-review,.badge-purple{background:color-mix(in srgb, var(--info) 10%, var(--card))}}.badge-locked,.badge-in-review,.badge-purple{color:var(--info);border-color:var(--info)}@supports (color:color-mix(in lab, red, red)){.badge-locked,.badge-in-review,.badge-purple{border-color:color-mix(in srgb, var(--info) 25%, var(--border))}}.badge-cyan{background:var(--chart-2)}@supports (color:color-mix(in lab, red, red)){.badge-cyan{background:color-mix(in srgb, var(--chart-2) 10%, var(--card))}}.badge-cyan{color:var(--chart-2);border-color:var(--chart-2)}@supports (color:color-mix(in lab, red, red)){.badge-cyan{border-color:color-mix(in srgb, var(--chart-2) 25%, var(--border))}}.badge-normal,.badge-neutral,.badge-muted{background:var(--muted);color:var(--muted-foreground);border-color:#0000}.badge-video{background:var(--chart-1)}@supports (color:color-mix(in lab, red, red)){.badge-video{background:color-mix(in srgb, var(--chart-1) 10%, var(--card))}}.badge-video{color:var(--chart-1);border-color:var(--chart-1)}@supports (color:color-mix(in lab, red, red)){.badge-video{border-color:color-mix(in srgb, var(--chart-1) 25%, var(--border))}}.badge-image{background:var(--chart-2)}@supports (color:color-mix(in lab, red, red)){.badge-image{background:color-mix(in srgb, var(--chart-2) 10%, var(--card))}}.badge-image{color:var(--chart-2);border-color:var(--chart-2)}@supports (color:color-mix(in lab, red, red)){.badge-image{border-color:color-mix(in srgb, var(--chart-2) 25%, var(--border))}}.badge-sequence{background:var(--chart-3)}@supports (color:color-mix(in lab, red, red)){.badge-sequence{background:color-mix(in srgb, var(--chart-3) 10%, var(--card))}}.badge-sequence{color:var(--chart-3);border-color:var(--chart-3)}@supports (color:color-mix(in lab, red, red)){.badge-sequence{border-color:color-mix(in srgb, var(--chart-3) 25%, var(--border))}}.badge-folder{background:var(--chart-5)}@supports (color:color-mix(in lab, red, red)){.badge-folder{background:color-mix(in srgb, var(--chart-5) 12%, var(--card))}}.badge-folder{color:var(--chart-5);border-color:var(--chart-5)}@supports (color:color-mix(in lab, red, red)){.badge-folder{border-color:color-mix(in srgb, var(--chart-5) 30%, var(--border))}}.badge-count{border-radius:var(--radius-full);background:var(--primary);min-width:16px;height:16px;color:var(--primary-foreground);font-family:var(--font-mono);letter-spacing:0;font-variant-numeric:tabular-nums;border-color:#0000;justify-content:center;padding:0 4px;font-size:10px}.badge-count.is-danger{background:var(--destructive);color:var(--destructive-foreground)}.status-dot{border-radius:var(--radius-full);background:var(--status-pending);flex:none;width:6px;height:6px;display:inline-block}.status-dot.is-online,.status-dot.is-approved{background:var(--success)}.status-dot.is-pending{background:var(--warning)}.status-dot.is-error{background:var(--error)}.status-dot.is-active{background:var(--primary)}.data-table,table{background:var(--card);border-radius:var(--radius-md);border:1px solid var(--border);border-collapse:collapse;width:100%;margin-bottom:1rem;font-size:.875rem;overflow:hidden}.table-container{border-radius:var(--radius-md);border:1px solid var(--border);margin-bottom:1rem;overflow-x:auto}.table-header,thead{background:var(--muted)}.table-header th,th{text-align:left;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);background:var(--muted);z-index:10;white-space:nowrap;padding:.625rem .75rem;font-size:11px;font-weight:500;position:sticky;top:0}.table-row,tr{border-bottom:1px solid var(--border);transition:background-color .1s}.table-row:hover,tbody tr:hover{background:var(--muted)}.table-row:last-child,tbody tr:last-child{border-bottom:none}.table-cell,td{vertical-align:top;color:var(--muted-foreground);border:none;padding:.625rem .75rem;font-size:.875rem}.table-cell.table-cell-primary,td.primary{color:var(--foreground);font-weight:500}.table-cell.table-cell-center,td.center{text-align:center}.table-cell.table-cell-right,td.right{text-align:right}.table-actions{flex-flow:row;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}tbody tr .table-actions{opacity:.6;transition:opacity .1s}tbody tr:hover .table-actions,tbody tr:focus-within .table-actions{opacity:1}.table-action-btn{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card);color:var(--muted-foreground);cursor:pointer;white-space:nowrap;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.75rem;text-decoration:none;transition:background-color .1s,color .1s,border-color .1s;display:inline-flex}.table-action-btn:hover{background:var(--muted);color:var(--foreground);border-color:var(--muted-foreground)}.projects-table-wrapper .table-action-btn{justify-content:center;min-width:80px;padding:.375rem .625rem;font-size:.8125rem}.projects-table-wrapper .data-table{border-collapse:separate;border-spacing:0}.projects-table-wrapper .data-table th,.projects-table-wrapper .data-table td{border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.projects-table-wrapper .data-table th:last-child,.projects-table-wrapper .data-table td:last-child{border-right:none}.projects-table-wrapper .data-table tr:last-child td{border-bottom:none}.table-action-btn.danger:hover{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.table-action-btn.danger:hover{background:color-mix(in srgb, var(--error) 10%, var(--card))}}.table-action-btn.danger:hover{color:var(--error);border-color:var(--error)}.items-table td{vertical-align:top}.items-table .item-name{color:var(--foreground);font-weight:500}.items-table .item-meta{color:var(--muted-foreground);margin-top:.25rem;font-size:.75rem}.items-table .item-thumb{object-fit:cover;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--muted);width:72px;height:48px;display:block}.items-table .item-thumb.video-scrub{cursor:ew-resize;transition:filter .15s}.items-table .item-thumb:hover{border-color:var(--muted-foreground)}.sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.sortable-header:after{content:"";opacity:.3;border-left:4px solid #0000;border-right:4px solid #0000;width:0;height:0;transition:opacity .15s;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.sortable-header:hover:after{opacity:.6}.sortable-header.sort-asc:after{border-bottom:6px solid var(--muted-foreground);opacity:1}.sortable-header.sort-desc:after{border-top:6px solid var(--muted-foreground);opacity:1}.table-filters{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.table-filter{align-items:center;gap:.5rem;display:flex}.table-filter label{color:var(--foreground);white-space:nowrap;font-size:.875rem}.table-filter select{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--foreground);min-width:120px;padding:.5rem;font-size:.875rem}.table-empty{text-align:center;color:var(--muted-foreground);padding:2rem 1rem}.table-empty-icon{opacity:.5;margin-bottom:1rem;font-size:2.25rem}.table-empty-title{color:var(--foreground);margin-bottom:.5rem;font-size:1.125rem;font-weight:500}.table-empty-description{margin-bottom:1rem;font-size:.875rem;line-height:1.625}.pagination{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.pagination-buttons{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.pagination-btn{border-radius:var(--radius-md);min-width:28px;height:28px;color:var(--muted-foreground);font-family:var(--font-mono);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0 .5rem;font-size:.75rem;text-decoration:none;transition:background-color .1s,border-color .1s,color .1s;display:inline-flex}.pagination-btn:hover:not(.pagination-current){background:var(--muted);color:var(--foreground)}.pagination-current{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground);pointer-events:none}.pagination-ellipsis{color:var(--muted-foreground);padding:0 .25rem;font-size:.75rem}.pagination-info{color:var(--muted-foreground);font-size:.75rem}.modal{z-index:100;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal.hidden{display:none}.modal-content{background:var(--card);border-radius:var(--radius-xl);border:1px solid var(--border);width:100%;max-width:480px;max-height:90vh;padding:1.5rem;animation:.12s ease-out modalSlideIn;position:relative;overflow-y:auto;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.modal-title{color:var(--foreground);margin:0;font-size:1.125rem;font-weight:600;line-height:1.375}.modal-close{border-radius:var(--radius-md);cursor:pointer;width:28px;height:28px;color:var(--muted-foreground);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;font-size:.875rem;transition:background-color .1s,color .1s;display:flex}.modal-close:hover{background:var(--muted);color:var(--foreground)}.modal-body{margin-bottom:1rem}.modal-body h2,.modal-body h3{color:var(--foreground);margin-top:0;margin-bottom:.5rem}.modal-body p{color:var(--muted-foreground);font-size:.875rem;line-height:1.625}.modal-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:.75rem;padding-top:.75rem;display:flex}.modal-sm .modal-content{max-width:400px}.modal-lg .modal-content{max-width:800px}.modal-xl .modal-content{max-width:1200px}.modal-fullscreen .modal-content{border-radius:0;width:100vw;max-width:none;height:100vh;max-height:none;padding:2rem}.modal-confirm .modal-content{max-width:420px}.modal-confirm .modal-icon{border-radius:var(--radius-full);justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 1rem;font-size:1.5rem;display:flex}.modal-confirm.danger .modal-icon{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.modal-confirm.danger .modal-icon{background:color-mix(in srgb, var(--error) 10%, var(--card))}}.modal-confirm.danger .modal-icon{color:var(--error)}.modal-confirm.warning .modal-icon{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.modal-confirm.warning .modal-icon{background:color-mix(in srgb, var(--warning) 12%, var(--card))}}.modal-confirm.warning .modal-icon{color:var(--warning)}.modal-confirm.success .modal-icon{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.modal-confirm.success .modal-icon{background:color-mix(in srgb, var(--success) 10%, var(--card))}}.modal-confirm.success .modal-icon{color:var(--success)}.modal-confirm .modal-body{text-align:center;margin-bottom:1.5rem}.modal-confirm .modal-title{margin-bottom:.75rem;font-size:1.125rem}.modal-confirm .modal-description{color:var(--muted-foreground);margin:0;font-size:.875rem;line-height:1.625}.modal-backdrop{z-index:-1;position:absolute;inset:0}.modal-loading .modal-content{text-align:center;flex-direction:column;align-items:center;padding:2rem;display:flex}.modal-loading .spinner{border:3px solid var(--border);border-top:3px solid var(--primary);border-radius:var(--radius-full);width:32px;height:32px;margin-bottom:1rem;animation:1s linear infinite spin}.modal-loading .modal-title{margin-bottom:.5rem}.modal-loading .modal-description{color:var(--muted-foreground);font-size:.875rem}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:.5rem;margin-top:1rem;padding-top:.75rem;display:flex}.upload-progress-popup{background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:320px;max-width:420px;box-shadow:var(--shadow-lg);z-index:10000;padding:1rem;animation:.3s ease-out slideInUp;position:fixed;bottom:20px;right:20px}@keyframes slideInUp{0%{opacity:0;transform:translateY(100px)}to{opacity:1;transform:translateY(0)}}.upload-progress-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.upload-progress-title{color:var(--foreground);font-size:.95rem;font-weight:600}.upload-progress-close{color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius-md);width:28px;height:28px;transition:background var(--transition-base);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1.5rem;display:flex}.upload-progress-close:hover{background:var(--muted);color:var(--foreground)}.upload-progress-items{max-height:300px;overflow:hidden auto}.upload-progress-item{border-bottom:1px solid var(--border);margin-bottom:1rem;padding-bottom:1rem}.upload-progress-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.upload-progress-name{text-overflow:ellipsis;white-space:nowrap;color:var(--foreground);margin-bottom:.5rem;font-size:.875rem;overflow:hidden}.upload-progress-bar{background:var(--muted);border-radius:var(--radius-full);height:6px;margin-bottom:.25rem;overflow:hidden}.upload-progress-fill{background:var(--primary);height:100%;transition:width var(--transition-slow);border-radius:var(--radius-full);position:relative}.upload-progress-fill:after{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);animation:1.5s ease-in-out infinite progress-shine;position:absolute;inset:0}@keyframes progress-shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.upload-progress-status{opacity:.8;color:var(--muted-foreground);margin-top:.25rem;font-size:.75rem}.upload-progress-items::-webkit-scrollbar{width:6px}.upload-progress-items::-webkit-scrollbar-track{border-radius:var(--radius-base);background:0 0}.upload-progress-items::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-base)}.upload-progress-items::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground)}.media-page{flex-direction:column;gap:0;height:calc(100vh - 48px);min-height:calc(100vh - 48px);display:flex;overflow:hidden}.media-page .app-main,body:has(.media-page) .app-main{padding:0!important}.media-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--component-padding-sm);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);z-index:10;margin:0;display:flex}.media-toolbar-left{align-items:center;gap:var(--component-gap-md);flex:1;min-width:0;display:flex}.media-toolbar-actions{align-items:center;gap:var(--component-gap-sm);flex-wrap:wrap;display:inline-flex}.media-toolbar .breadcrumbs{align-items:center;gap:var(--space-2);font-size:var(--text-sm);flex-wrap:wrap;margin-bottom:0;display:flex}#breadcrumbs .breadcrumb{color:var(--muted-foreground);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:color var(--transition-snap), background-color var(--transition-snap);cursor:pointer;font-size:var(--text-sm);line-height:1;font-weight:var(--font-normal);align-items:center;text-decoration:none;display:inline-flex}#breadcrumbs .breadcrumb:hover{color:var(--foreground);background:var(--muted)}#breadcrumbs .breadcrumb.active{color:var(--foreground);font-weight:var(--font-medium);background:0 0}#breadcrumbs .breadcrumb:first-child{margin-left:0}#breadcrumbs .breadcrumb:not(.active):hover{text-decoration:none}#breadcrumbs .breadcrumb.is-drop-target{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){#breadcrumbs .breadcrumb.is-drop-target{background:color-mix(in srgb, var(--primary) 10%, var(--card))}}#breadcrumbs .breadcrumb.is-drop-target{color:var(--foreground)}#breadcrumbs .breadcrumb-separator{color:var(--muted-foreground);font-size:var(--text-xs);margin:0 var(--space-1);-webkit-user-select:none;user-select:none;cursor:default}.search-results-info{align-items:center;gap:var(--component-gap-sm);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-base);padding:var(--component-padding-xs);margin-left:var(--space-3);color:var(--foreground);font-size:var(--text-sm);display:flex}.search-results-text{font-weight:var(--font-medium)}.search-results-clear{color:var(--muted-foreground);cursor:pointer;font-size:var(--text-lg);border-radius:var(--radius-sm);width:18px;height:18px;transition:color var(--transition-snap), background-color var(--transition-snap);background:0 0;border:none;justify-content:center;align-items:center;padding:0;line-height:1;display:flex}.search-results-clear:hover{background:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.search-results-clear:hover{background:color-mix(in srgb, var(--muted-foreground) 12%, var(--muted))}}.search-results-clear:hover{color:var(--foreground)}.media-toolbar .view-toggle{background:var(--muted);border-radius:var(--radius-base);border:1px solid var(--border);gap:1px;padding:2px;display:inline-flex}.media-toolbar .view-toggle button{padding:var(--space-1) var(--space-2);color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius-sm);transition:background-color var(--transition-snap), color var(--transition-snap);font-size:var(--text-xs);letter-spacing:.02em;text-transform:uppercase;background:0 0;border:none;justify-content:center;align-items:center;min-width:28px;display:flex}.media-toolbar .view-toggle button:hover{background:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.media-toolbar .view-toggle button:hover{background:color-mix(in srgb, var(--muted-foreground) 8%, var(--muted))}}.media-toolbar .view-toggle button:hover{color:var(--foreground)}.media-toolbar .view-toggle button.is-active{background:var(--card);color:var(--foreground);box-shadow:inset 0 0 0 1px var(--border)}.media-canvas{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-base);flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.media-grid{min-height:0;padding:var(--space-3);gap:var(--space-3);transition:opacity var(--transition-slow), transform var(--transition-base);flex:1;grid-template-columns:repeat(auto-fill,280px);grid-auto-rows:min-content;place-content:start flex-start;display:grid;overflow:hidden auto}.media-grid.view-transitioning{opacity:.7;pointer-events:none;transform:scale(.98)}.media-grid.view-transitioning .media-item,.media-grid.view-transitioning .media-folder{transition:all var(--transition-base)}.media-grid.media-list{background:var(--border);border-radius:var(--radius-base);transition:opacity var(--transition-slow), transform var(--transition-base);flex-direction:column;gap:1px;padding:0;display:flex;overflow:hidden}.media-grid.media-list .media-item,.media-grid.media-list .media-folder{background:var(--card);border-radius:var(--radius-none);width:100%;transition:background-color var(--transition-fast), border-color var(--transition-fast), opacity var(--transition-base), transform var(--transition-base);border:none}.media-grid.media-list .item-card,.media-grid.media-list .folder-card{gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-none);min-height:68px;transition:background-color var(--transition-fast), border-color var(--transition-fast);background:0 0;border:none;flex-direction:row;grid-template-columns:120px 1fr auto auto;align-items:center;display:grid}.media-grid.media-list .media-item:hover,.media-grid.media-list .media-folder:hover{background:var(--muted)}.media-grid.media-list .media-item:hover .item-card,.media-grid.media-list .media-folder:hover .folder-card{box-shadow:none;background:0 0;border-color:#0000}.media-grid.media-list .media-item.is-selected{background:var(--muted);border-left:3px solid var(--primary);padding-left:calc(var(--space-3) - 3px)}.media-grid.media-list .media-item.is-selected .item-card{box-shadow:none;background:0 0;border-color:#0000}.media-grid.media-list .media-item.unknown{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.media-grid.media-list .media-item.unknown{background:color-mix(in srgb, var(--error) 8%, var(--card))}}.media-grid.media-list .media-item.unknown{border-left:3px solid var(--error);padding-left:calc(var(--space-3) - 3px)}.media-grid.media-list .media-item.unknown.is-selected{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.media-grid.media-list .media-item.unknown.is-selected{background:color-mix(in srgb, var(--error) 12%, var(--card))}}.media-grid.media-list .media-item.unknown.is-selected{border-left-color:var(--error)}.media-grid.media-list .item-card-media,.media-grid.media-list .folder-card-media{border-radius:var(--radius-base);background:var(--card);border-bottom:none;border-right:none;flex-shrink:0;width:120px;height:68px;position:relative;overflow:hidden}.media-grid.media-list .media-thumb{aspect-ratio:16/9;border-radius:var(--radius-base);justify-content:center;align-items:center;width:100%;height:100%;display:flex;overflow:hidden}.media-grid.media-list .media-thumb-img{object-fit:cover;border-radius:var(--radius-base);width:100%;height:100%}.media-grid.media-list .media-thumb-placeholder{background:var(--muted);width:100%;height:100%;color:var(--muted-foreground);font-size:var(--text-xl);border-radius:var(--radius-base);justify-content:center;align-items:center;display:flex}.media-grid.media-list .media-thumb.thumb-loading{background:var(--muted)}.media-grid.media-list .media-thumb-spinner{background:var(--muted);border-radius:var(--radius-base);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.media-grid.media-list .media-thumb.thumb-error .media-thumb-placeholder{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.media-grid.media-list .media-thumb.thumb-error .media-thumb-placeholder{background:color-mix(in srgb, var(--error) 8%, var(--card))}}.media-grid.media-list .media-thumb.thumb-error .media-thumb-placeholder{color:var(--error)}.media-grid.media-list .folder-card-media{background:var(--muted);border-radius:var(--radius-base);justify-content:center;align-items:center;display:flex}.media-grid.media-list .folder-icon{font-size:var(--text-2xl);color:var(--muted-foreground);transition:color var(--transition-fast)}.media-grid.media-list .media-folder:hover .folder-icon{color:var(--foreground)}.media-grid.media-list .item-card-content,.media-grid.media-list .folder-card-content{gap:var(--space-1);flex-direction:column;flex:1;justify-content:center;min-width:0;padding:0;display:flex}.media-grid.media-list .item-card-title-wrap{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);display:flex}.media-grid.media-list .item-card-title,.media-grid.media-list .folder-card-title{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground);line-height:var(--leading-tight);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin:0;overflow:hidden}.media-grid.media-list .stack-indicator{font-size:var(--text-xs);color:var(--muted-foreground);background:var(--muted);padding:2px var(--space-1);border-radius:var(--radius-sm);white-space:nowrap;flex-shrink:0}.media-grid.media-list .item-metadata{flex-direction:column;gap:2px;display:flex}.media-grid.media-list .item-metadata-row{align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-family:var(--font-mono);color:var(--muted-foreground);line-height:var(--leading-tight);display:flex}.media-grid.media-list .item-metadata-row:first-child{margin-bottom:2px}.media-grid.media-list .media-meta-primary{color:var(--foreground);font-weight:var(--font-medium)}.media-grid.media-list .media-meta-secondary{color:var(--muted-foreground)}.media-grid.media-list .media-version-wrap{align-items:center;gap:var(--space-1);flex-shrink:0;display:inline-flex}.media-grid.media-list .version-selector{min-width:60px;font-size:var(--text-xs);padding:2px var(--space-1);border:1px solid var(--input);border-radius:var(--radius-sm);background:var(--card);color:var(--foreground);cursor:pointer;transition:border-color var(--transition-snap)}.media-grid.media-list .version-selector:hover{border-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.media-grid.media-list .version-selector:hover{border-color:color-mix(in srgb, var(--muted-foreground) 35%, var(--border))}}.media-grid.media-list .version-selector:focus{border-color:var(--ring);box-shadow:var(--focus-ring-tight);outline:none}.media-grid.media-list .item-card-version{font-size:var(--text-xs);color:var(--muted-foreground);font-weight:var(--font-medium);font-family:var(--font-mono);padding:2px var(--space-1);background:var(--muted);border-radius:var(--radius-sm);white-space:nowrap}.media-grid.media-list .media-status-badges{top:var(--space-1);left:var(--space-1);gap:var(--space-1);pointer-events:none;z-index:2;display:flex;position:absolute}.media-grid.media-list .status-badge{padding:2px var(--space-1);border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-medium);letter-spacing:.06em;text-transform:uppercase;background:var(--card);color:var(--muted-foreground);border:1px solid var(--border)}.media-grid.media-list .status-badge.processing{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.media-grid.media-list .status-badge.processing{background:color-mix(in srgb, var(--warning) 8%, var(--card))}}.media-grid.media-list .status-badge.processing{color:var(--warning);border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.media-grid.media-list .status-badge.processing{border-color:color-mix(in srgb, var(--warning) 25%, var(--border))}}.media-grid.media-list .status-badge.error{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.media-grid.media-list .status-badge.error{background:color-mix(in srgb, var(--error) 8%, var(--card))}}.media-grid.media-list .status-badge.error{color:var(--error);border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.media-grid.media-list .status-badge.error{border-color:color-mix(in srgb, var(--error) 25%, var(--border))}}.media-grid.media-list .status-badge.ready{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.media-grid.media-list .status-badge.ready{background:color-mix(in srgb, var(--success) 8%, var(--card))}}.media-grid.media-list .status-badge.ready{color:var(--success);border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.media-grid.media-list .status-badge.ready{border-color:color-mix(in srgb, var(--success) 25%, var(--border))}}.media-grid.media-list .status-badge.stack{background:var(--muted);color:var(--muted-foreground);border-color:var(--border)}.media-grid.media-list .media-link-entity{font-size:var(--text-xs);color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;max-width:150px;overflow:hidden}.media-grid.media-list .media-link-entity:not([title*=Unlinked]){color:var(--foreground);font-weight:var(--font-medium)}.media-grid.media-list .media-task-chip{padding:2px var(--space-1);border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-medium);letter-spacing:.05em;text-transform:uppercase;background:var(--muted);color:var(--muted-foreground);white-space:nowrap;flex-shrink:0}.media-grid.media-list .media-link-chip{padding:2px var(--space-1);border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-medium);letter-spacing:.05em;text-transform:uppercase;background:var(--muted);color:var(--muted-foreground);cursor:pointer;transition:background-color var(--transition-snap), color var(--transition-snap);white-space:nowrap;border:none;flex-shrink:0}.media-grid.media-list .media-link-chip:hover{background:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.media-grid.media-list .media-link-chip:hover{background:color-mix(in srgb, var(--muted-foreground) 15%, var(--muted))}}.media-grid.media-list .media-link-chip:hover{color:var(--foreground)}.media-grid.media-list .item-card-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.media-grid.media-list .item-card-menu{color:var(--muted-foreground);border-radius:var(--radius-sm);padding:var(--space-1);font-size:var(--text-base);cursor:pointer;transition:color var(--transition-snap), background var(--transition-snap);background:0 0;border:none;line-height:1}.media-grid.media-list .item-card-menu:hover,.media-grid.media-list .item-card-menu:focus-visible{background:var(--muted);color:var(--foreground);outline:none}.media-grid.media-list .item-card-meta{align-items:flex-end;gap:var(--space-1);font-size:var(--text-xs);font-family:var(--font-mono);color:var(--muted-foreground);text-align:right;flex-direction:column;flex-shrink:0;min-width:80px;display:flex}.media-grid.media-list .item-card-timestamp{font-size:var(--text-xs);color:var(--muted-foreground);white-space:nowrap}.media-grid.media-list .item-card-type{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;font-size:10px}.media-grid.media-list .folder-card-tag{background:var(--muted);color:var(--muted-foreground);padding:2px var(--space-1);border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.06em;flex-shrink:0}.media-grid.media-list .folder-card-header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);display:flex}.media-grid.media-list .folder-path-indicator{color:var(--muted-foreground);font-size:var(--text-xs);background:var(--muted);padding:2px var(--space-1);border-radius:var(--radius-sm);white-space:nowrap}.media-grid.media-list .folder-preview-grid{border-radius:var(--radius-base);opacity:.7;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:1px;display:grid;position:absolute;inset:0;overflow:hidden}.media-grid.media-list .folder-preview-thumb{background:var(--muted);justify-content:center;align-items:center;display:flex;overflow:hidden}.media-grid.media-list .folder-preview-thumb img{object-fit:cover;width:100%;height:100%}.media-grid.media-list .folder-card-media.has-previews .folder-icon{font-size:var(--text-sm);background:var(--card);color:var(--foreground);border-radius:var(--radius-sm);z-index:2;padding:1px 3px;position:absolute;top:2px;left:2px}.media-grid.media-list .folder-card-media.no-previews{background:var(--muted)}.media-grid.media-list .folder-rename-wrapper{gap:var(--space-1);flex-direction:column;width:100%;display:flex}.media-grid.media-list .folder-rename-input{width:100%;padding:var(--space-1) var(--space-2);border:1px solid var(--ring);border-radius:var(--radius-base);background:var(--card);color:var(--foreground);font-size:var(--text-sm);font-weight:var(--font-medium);box-shadow:var(--focus-ring-tight);outline:none}.media-grid.media-list .folder-rename-hint{font-size:var(--text-xs);color:var(--muted-foreground);line-height:var(--leading-tight);margin:0}.media-grid.media-list .media-folder[draggable=true]{cursor:grab}.media-grid.media-list .media-folder[draggable=true]:active{cursor:grabbing}.media-grid.media-list .media-folder.dragging{opacity:.6;cursor:grabbing;background:var(--muted)}.media-grid.media-list .media-folder.is-drop-target{background:var(--muted);border-left:3px solid var(--primary);padding-left:calc(var(--space-3) - 3px)}.media-grid.media-list .lazy-load{background:var(--muted);transition:background-color var(--transition-base)}.media-grid.media-list .lazy-load:before{content:"";background:linear-gradient(90deg, transparent, var(--foreground), transparent);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.media-grid.media-list .lazy-load:before{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--foreground) 6%, transparent), transparent)}}.media-grid.media-list .lazy-load:before{animation:1.5s infinite shimmer}.media-grid.media-list .media-item[draggable=true]{cursor:grab}.media-grid.media-list .media-item[draggable=true]:active{cursor:grabbing}.media-grid.media-list .media-item.dragging{opacity:.6;cursor:grabbing;background:var(--muted)}.media-grid.media-list .media-comment-badge{top:var(--space-1);right:var(--space-1);z-index:3;position:absolute}@media (max-width:768px){.media-grid.media-list .item-card,.media-grid.media-list .folder-card{gap:var(--space-2);padding:var(--space-2);grid-template-columns:80px 1fr auto}.media-grid.media-list .item-card-media,.media-grid.media-list .folder-card-media{width:80px;height:45px}.media-grid.media-list .item-card-meta{display:none}}@media (max-width:480px){.media-grid.media-list .item-card,.media-grid.media-list .folder-card{gap:var(--space-1);padding:var(--space-1) var(--space-2);grid-template-columns:60px 1fr auto}.media-grid.media-list .item-card-media,.media-grid.media-list .folder-card-media{width:60px;height:34px}}.media-drop-overlay{pointer-events:none;opacity:0;transition:opacity var(--transition-fast);background:var(--primary);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.media-drop-overlay{background:color-mix(in srgb, var(--primary) 5%, transparent)}}.media-drop-overlay{border:2px dashed var(--muted-foreground);border-radius:inherit;z-index:5}.media-drop-overlay.active{opacity:1}.media-drop-overlay .drop-inner{text-align:center;color:var(--foreground);gap:var(--space-2);padding:var(--space-5) var(--space-6);border-radius:var(--radius-lg);background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-xl);flex-direction:column;display:flex}.media-drop-overlay .drop-icon{font-size:var(--text-3xl)}.media-empty-state{text-align:center;max-width:420px;padding:var(--space-6);border:1px dashed var(--border);border-radius:var(--radius-lg);background:var(--card);gap:var(--space-3);flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;margin:0 auto;display:flex}.media-empty-state .empty-icon{font-size:var(--text-4xl);opacity:.65;color:var(--muted-foreground)}.media-empty-state p{color:var(--muted-foreground);margin:0}.context-menu{background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:var(--z-popover);min-width:180px;padding:var(--space-1) 0;display:none;position:fixed}.context-menu.show{display:block}.context-menu-item{width:100%;color:var(--foreground);font-size:var(--text-sm);text-align:left;cursor:pointer;transition:background-color var(--transition-snap);background:0 0;border:none;padding:8px 16px;display:block}.context-menu-item:hover{background:var(--muted)}.context-menu-item.danger{color:var(--error)}.context-menu-item.danger:hover{background:var(--error-surface)}.context-menu-separator{background:var(--border);height:1px;margin:4px 0}.media-item,.media-folder{-webkit-user-select:none;user-select:none;flex-direction:column;gap:0;width:100%;height:auto;display:flex;position:relative}.media-item[draggable=true]{cursor:grab}.media-item[draggable=true]:active{cursor:grabbing}.media-item.dragging{opacity:.6;cursor:grabbing}.media-item.is-selected.item-card{border-color:var(--primary)!important;box-shadow:0 0 0 2px var(--primary)!important}@supports (color:color-mix(in lab, red, red)){.media-item.is-selected.item-card{box-shadow:0 0 0 2px color-mix(in srgb, var(--primary) 18%, transparent)!important}}.media-item.unknown.item-card{border-color:var(--error);box-shadow:0 0 0 2px var(--error)}@supports (color:color-mix(in lab, red, red)){.media-item.unknown.item-card{box-shadow:0 0 0 2px color-mix(in srgb, var(--error) 15%, transparent)}}.media-item.unknown.is-selected.item-card{border-color:var(--error)!important;box-shadow:0 0 0 2px var(--error)!important}@supports (color:color-mix(in lab, red, red)){.media-item.unknown.is-selected.item-card{box-shadow:0 0 0 2px color-mix(in srgb, var(--error) 25%, transparent)!important}}.item-card-media{background:var(--muted);border-bottom:1px solid var(--border);flex-shrink:0;width:100%;position:relative}.folder-card-media{padding:var(--space-8) var(--space-5);background:var(--muted);border-bottom:1px solid var(--border);aspect-ratio:16/9;flex-shrink:0;justify-content:center;align-items:center;width:100%;display:flex}.folder-icon{font-size:var(--text-4xl);color:var(--muted-foreground);transition:transform var(--transition-fast), color var(--transition-fast)}.folder-card-content{gap:var(--space-3);padding:var(--space-4);flex-direction:column;display:flex}.folder-card-header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.media-thumb{aspect-ratio:16/9;background:var(--muted);width:100%;color:var(--muted-foreground);font-size:var(--text-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.media-comment-badge{top:var(--space-2);right:var(--space-2);align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);background:var(--card);color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--font-medium);text-align:center;border:1px solid var(--border);cursor:default;z-index:3;white-space:nowrap;-webkit-font-smoothing:antialiased;line-height:1;display:inline-flex;position:absolute}.media-comment-badge .badge-icon{opacity:.9;justify-content:center;align-items:center;font-size:13px;display:inline-flex}.media-comment-badge .badge-count{font-variant-numeric:tabular-nums;min-width:10px;display:inline-block}.media-thumb img,.media-thumb video{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-base)}.item-card-content{gap:var(--space-3);padding:var(--space-4);flex-direction:column;flex:1;display:flex}.media-item-header{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.item-card-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--foreground);line-height:var(--leading-tight);white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.folder-card-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--foreground);line-height:var(--leading-tight);margin:0}.item-metadata{gap:var(--space-2);flex-direction:column;display:flex}.item-metadata-row{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--muted-foreground);display:flex}.folder-stats{align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:var(--muted-foreground);display:flex}.media-status{align-items:center;gap:var(--space-1);padding:2px var(--space-1);border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.08em;display:inline-flex}.media-status.pending{background:var(--status-pending)}@supports (color:color-mix(in lab, red, red)){.media-status.pending{background:color-mix(in srgb, var(--status-pending) 12%, var(--card))}}.media-status.pending{color:var(--status-pending)}.media-status.processing{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.media-status.processing{background:color-mix(in srgb, var(--warning) 8%, var(--card))}}.media-status.processing{color:var(--warning)}.media-status.ready{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.media-status.ready{background:color-mix(in srgb, var(--success) 8%, var(--card))}}.media-status.ready{color:var(--success)}.media-status.error{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.media-status.error{background:color-mix(in srgb, var(--error) 8%, var(--card))}}.media-status.error{color:var(--error)}.item-card-warning{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--error-surface);border:1px solid var(--error-border);border-radius:var(--radius-base);color:var(--error-text);font-size:var(--text-xs);font-weight:var(--font-medium)}.item-card-link-info{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--success-surface);border:1px solid var(--success-border);border-radius:var(--radius-base);color:var(--success-text);font-size:var(--text-xs);font-weight:var(--font-medium)}.media-grid:not(.media-list){--media-grid-thumb-ratio:16 / 9;--media-grid-item-text-height:78px;--media-grid-folder-text-height:calc(var(--media-grid-item-text-height) * .666667);--media-grid-folder-offset:calc(var(--media-grid-folder-text-height,0px) / 3)}.media-grid .media-item,.media-grid .media-folder .item-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-base);width:100%;height:100%;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);box-shadow:none;flex-direction:column;gap:0;display:flex;overflow:hidden}.media-grid .media-item.item-card{transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.media-grid .media-item.unknown .item-card{border-color:var(--error);box-shadow:0 0 0 2px var(--error)}@supports (color:color-mix(in lab, red, red)){.media-grid .media-item.unknown .item-card{box-shadow:0 0 0 2px color-mix(in srgb, var(--error) 15%, transparent)}}.media-grid .item-card-media{background:var(--muted);border-bottom:1px solid var(--border);width:100%;aspect-ratio:var(--media-grid-thumb-ratio,16 / 9);position:relative}.media-grid .media-status-badges{top:var(--space-2);left:var(--space-2);gap:var(--space-1);pointer-events:none;display:flex;position:absolute}.media-grid .status-badge{padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-medium);letter-spacing:.06em}.media-grid .media-thumb{aspect-ratio:16/9;background:var(--muted);width:100%;color:var(--muted-foreground);font-size:var(--text-xs);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.media-grid .media-thumb-img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-fast);display:block}.media-grid .media-thumb-placeholder,.media-grid .media-thumb-spinner{width:100%;height:100%;font-size:var(--text-lg);justify-content:center;align-items:center;display:flex}.media-grid .media-thumb-placeholder,.media-grid .media-thumb.thumb-loading{background:var(--muted);color:var(--muted-foreground)}.media-grid .media-thumb-spinner .spinner{border:3px solid var(--border);border-top-color:var(--muted-foreground);border-radius:var(--radius-full);box-sizing:border-box;width:32px;height:32px;animation:.8s linear infinite spin;display:inline-block}@media (prefers-reduced-motion:reduce){.media-grid .media-thumb-spinner .spinner{animation:none}}.media-grid .item-card-content{padding:var(--space-2) var(--space-3) var(--space-3) var(--space-3);gap:var(--space-1);min-height:var(--media-grid-item-text-height,auto);flex-direction:column;flex-shrink:0;display:flex}.media-grid .media-item-header{justify-content:space-between;align-items:center;gap:var(--space-1);display:flex}.media-grid .item-card-title{font-size:var(--text-xs);font-weight:var(--font-medium);line-height:1.25}.media-grid .item-card-actions{align-items:center;gap:var(--space-1);display:flex}.media-grid .stack-indicator{align-items:center;gap:var(--space-1);color:var(--foreground);border-radius:var(--radius-none);font-size:10px;font-weight:var(--font-semibold);letter-spacing:.05em;text-transform:uppercase;background:0 0;padding:0;display:inline-flex}.media-grid .item-card-menu{color:var(--muted-foreground);border-radius:var(--radius-sm);padding:var(--space-1);font-size:var(--text-base);cursor:pointer;transition:color var(--transition-snap), background var(--transition-snap);background:0 0;border:none;line-height:1}.media-grid .item-card-menu:hover,.media-grid .item-card-menu:focus-visible{background:var(--muted);color:var(--foreground);outline:none}.media-grid .item-card-meta{align-items:center;column-gap:var(--space-2);color:var(--muted-foreground);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);font-size:11px;display:grid}.media-grid .media-link-entity{justify-self:flex-start}.media-grid .media-version-wrap{justify-self:center;align-items:center;gap:var(--space-1);display:inline-flex}.media-grid .item-card-version{background:var(--muted);color:var(--muted-foreground);padding:1px var(--space-1);border-radius:var(--radius-sm);font-size:10px;font-family:var(--font-mono);font-weight:var(--font-medium);letter-spacing:.05em;text-transform:uppercase}.media-grid .version-selector{appearance:none;background:var(--muted);border-radius:var(--radius-sm);color:var(--muted-foreground);font-size:10px;font-family:var(--font-mono);font-weight:var(--font-medium);letter-spacing:.05em;text-transform:uppercase;padding:1px calc(var(--space-1) * 2) 1px var(--space-1);cursor:pointer;min-width:4.5rem;transition:background-color var(--transition-fast), color var(--transition-fast);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23737373' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1.5 2.5 6 6l4.5-3.5'/%3E%3C/svg%3E");background-position:right 6px center;background-repeat:no-repeat;background-size:12px 8px;border:none;line-height:1.4}.media-grid .version-selector:hover{color:var(--foreground)}.media-grid .version-selector:focus-visible,.media-grid .version-selector:focus{background-color:var(--muted-foreground);outline:none}@supports (color:color-mix(in lab, red, red)){.media-grid .version-selector:focus-visible,.media-grid .version-selector:focus{background-color:color-mix(in srgb, var(--muted-foreground) 12%, var(--muted))}}.media-grid .version-selector:focus-visible,.media-grid .version-selector:focus{color:var(--foreground)}.media-grid .version-selector option{background:var(--card);color:var(--foreground);font-weight:var(--font-medium);text-transform:uppercase}.media-grid .media-item-meta{justify-content:space-between;align-items:center;gap:var(--space-1);color:var(--muted-foreground);min-height:1.25rem;margin:0;font-size:11px;display:flex}.media-grid .media-item-meta span{white-space:nowrap}.media-grid .media-meta-primary{text-align:left;flex:1}.media-grid .media-meta-secondary{text-align:right;flex:none;min-width:3rem}.media-grid .media-info-empty{color:var(--muted-foreground)}.media-grid .item-card-type{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.06em;font-size:10px}.media-grid .item-card-timestamp{color:var(--muted-foreground);font-size:10px}.media-grid .media-item-folder-path{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--muted-foreground);margin:0;display:flex}.media-grid .item-card-warning,.media-grid .item-card-link-info{border-radius:var(--radius-sm);font-size:var(--text-xs);padding:var(--space-2);margin-top:var(--space-2)}.media-grid .media-link-entity{min-width:0;font-size:var(--text-xs);color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.media-grid .media-meta-actions{align-items:center;gap:var(--space-2);flex-shrink:0;justify-self:flex-end;display:inline-flex}.media-grid .media-version-wrap .version-selector{min-width:72px}.media-grid .media-link-chip{padding:2px var(--space-1);border-radius:var(--radius-sm);background:var(--muted);color:var(--muted-foreground);font-size:11px;font-weight:var(--font-medium);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);border:none;justify-content:center;align-items:center;display:inline-flex}.media-grid .media-link-chip:hover,.media-grid .media-link-chip:focus-visible{background:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.media-grid .media-link-chip:hover,.media-grid .media-link-chip:focus-visible{background:color-mix(in srgb, var(--muted-foreground) 15%, var(--muted))}}.media-grid .media-link-chip:hover,.media-grid .media-link-chip:focus-visible{color:var(--foreground);outline:none}.media-grid .media-task-chip{padding:2px var(--space-1);border-radius:var(--radius-sm);background:var(--muted);color:var(--muted-foreground);font-size:11px;font-weight:var(--font-medium);letter-spacing:.05em;text-transform:uppercase;align-items:center;display:inline-flex}.media-grid:not(.media-list) .folder-card .folder-card-media{background:var(--muted)}.media-grid .folder-card-media{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--muted);border-bottom:1px solid var(--border);width:100%;aspect-ratio:var(--media-grid-thumb-ratio,16 / 9);display:flex;position:relative}.media-grid .folder-icon{color:var(--muted-foreground);transition:color var(--transition-fast);flex:none;display:inline-flex}.media-grid .folder-icon .icon{stroke-width:1.5px;width:26px;height:26px}.media-grid .folder-card:hover .folder-icon{color:var(--foreground)}.media-grid .folder-card-media.has-previews{justify-content:space-between;align-items:flex-start}.media-grid .folder-card-media.no-previews{justify-content:center}.media-grid .folder-card-media.has-previews .folder-icon{margin-top:var(--media-grid-folder-offset,0px);align-self:flex-start}.media-grid .folder-card-media.has-previews .folder-icon .icon{width:20px;height:20px}.media-grid .folder-card-content{flex-direction:column;flex-shrink:0;display:flex}.media-grid .folder-card.is-editing .folder-card-content{padding:var(--space-3);gap:var(--space-2)}.media-grid .folder-card:not(.is-editing) .folder-card-content{padding:var(--space-1) var(--space-3);gap:var(--space-1);height:var(--media-grid-folder-text-height,auto);min-height:var(--media-grid-folder-text-height,auto);justify-content:center;overflow:hidden}.media-grid .folder-card-header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.media-grid .folder-card-title{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground);margin:0;line-height:1.25}.media-grid .folder-card-tag{background:var(--muted);color:var(--muted-foreground);padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.06em}.media-grid .folder-card-meta{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:11px;overflow:hidden}.media-grid .folder-preview-grid{gap:var(--space-1);padding:var(--space-1);background:var(--foreground);flex:auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);max-width:calc(100% - 72px);height:100%;display:grid}@supports (color:color-mix(in lab, red, red)){.media-grid .folder-preview-grid{background:color-mix(in srgb, var(--foreground) 14%, transparent)}}.media-grid .folder-preview-grid{border-radius:var(--radius-base)}.media-grid .folder-card-media.has-previews .folder-preview-grid{margin-top:var(--media-grid-folder-offset,0px);height:calc(100% - var(--media-grid-folder-offset,0px))}.media-grid .folder-preview-thumb{border-radius:var(--radius-sm);background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.media-grid .folder-preview-thumb{background:color-mix(in srgb, var(--foreground) 30%, transparent)}}.media-grid .folder-preview-thumb{justify-content:center;align-items:center;width:100%;height:100%;display:flex;overflow:hidden}.media-grid .folder-preview-thumb img{object-fit:cover;width:100%;height:100%;display:block}.media-grid .folder-preview-thumb.is-placeholder{font-size:var(--text-lg);color:var(--primary-foreground)}@supports (color:color-mix(in lab, red, red)){.media-grid .folder-preview-thumb.is-placeholder{color:color-mix(in srgb, var(--primary-foreground) 70%, transparent)}}.media-grid .folder-rename-wrapper{gap:var(--space-2);flex-direction:column;display:flex}.media-grid .folder-rename-input{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;padding:var(--space-2) var(--space-3);color:var(--foreground);font-size:var(--text-sm)}.media-grid .folder-rename-input:focus-visible{border-color:var(--ring);box-shadow:var(--focus-ring-tight);outline:none}.media-grid .folder-rename-hint{font-size:var(--text-xs);color:var(--muted-foreground);margin:0}.media-grid .folder-rename-input.is-invalid{border-color:var(--error)}.media-grid .folder-rename-hint.is-error{color:var(--error)}.media-grid .media-folder[draggable=true]{cursor:grab}.media-grid .media-folder[draggable=true]:active{cursor:grabbing}.media-grid .media-folder.dragging{opacity:.6}.media-grid .media-folder.is-drop-target .folder-card{border-color:var(--primary);background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.media-grid .media-folder.is-drop-target .folder-card{background:color-mix(in srgb, var(--primary) 5%, var(--card))}}.modal .form-helper{font-size:var(--text-xs);color:var(--muted-foreground);margin-top:var(--space-2)}.modal.modal-wide .modal-content,.modal .modal-content.modal-wide{width:min(720px,90vw)}.modal textarea#metadata-editor{background:var(--card);border-radius:var(--radius-base);border:1px solid var(--border);width:100%;color:var(--foreground);font-family:var(--font-mono);padding:var(--space-3)}.modal textarea#metadata-editor:focus{border-color:var(--ring);box-shadow:var(--focus-ring-tight);outline:none}.media-context-menu{z-index:var(--z-popover);background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-md);min-width:200px;box-shadow:var(--shadow-lg);padding:var(--space-1);flex-direction:column;display:none;position:fixed}.media-context-menu.is-visible{display:flex}.media-context-menu__item{color:var(--foreground);text-align:left;width:100%;padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--transition-snap);background:0 0;border:none}.media-context-menu__item:hover,.media-context-menu__item:focus{background:var(--muted);color:var(--foreground);outline:none}.panel-title{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.panel-title h3{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--foreground);margin:0}.panel-title .hint{font-size:var(--text-xs);color:var(--muted-foreground)}.playlist-item{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-base);background:var(--card);transition:border-color var(--transition-fast), background-color var(--transition-fast);display:flex}.playlist-item:hover{border-color:var(--muted-foreground);background:var(--card)}.playlist-content{flex:1;min-width:0}.playlist-title{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground);margin:0 0 var(--space-1) 0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.playlist-meta{font-size:var(--text-xs);color:var(--muted-foreground);margin:0}@media (max-width:768px){.media-grid{padding:var(--space-3);gap:var(--space-3);grid-template-columns:1fr}.media-toolbar{align-items:stretch;gap:var(--space-2);flex-direction:column}.media-toolbar-actions{justify-content:center}.media-grid.media-list .item-card{flex-direction:column}.media-grid.media-list .item-card-media{border-right:none;border-bottom:1px solid var(--border);width:100%}}.mp-container{background:var(--background);width:100%;height:100%;font-size:var(--text-sm);color:var(--foreground);flex-direction:column;display:flex;position:relative}.mp-container.mp-overlay{padding:var(--space-6);box-sizing:border-box;background:var(--scrim-strong);z-index:200;position:fixed;inset:0}.mp-container.mp-overlay .mp-shell{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2xl)}.mp-container.mp-page{background:0 0;height:calc(100vh - 48px);min-height:calc(100vh - 48px)}.app-main--full>#app>.mp-container.mp-page{flex:1}.mp-shell{gap:var(--space-4);padding:var(--space-4);flex:1;height:100%;min-height:0;display:flex}.mp-container.mp-page .mp-shell{box-shadow:none;background:0 0;grid-template-columns:clamp(240px,22vw,304px) minmax(0,1fr) clamp(240px,24vw,320px);align-items:stretch;gap:0;padding:0;display:grid}.mp-shell>*{background:var(--card);border-radius:var(--radius-md);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.mp-container.mp-page .mp-shell>*{border-radius:var(--radius-none);box-shadow:none;border:none}.mp-panel{min-height:0;transition:flex-basis var(--transition-fast), width var(--transition-fast), margin var(--transition-fast);border-radius:var(--radius-md);flex-direction:column;display:flex}.mp-playlist-panel{flex:0 0 320px;overflow:hidden}.mp-comments-panel{flex:0 0 360px;overflow:hidden}.mp-panel.folded{--folded-bar-size:44px;flex:0 0 var(--folded-bar-size);width:var(--folded-bar-size);border:1px solid var(--border);position:relative;margin:0!important}.mp-panel.folded>*{opacity:1;visibility:visible}.mp-panel.folded .mp-panel-title,.mp-panel.folded .mp-panel-body,.mp-panel.folded .mp-panel-actions>:not(.btn-panel-toggle){display:none!important}.mp-panel.folded .mp-panel-header{border:none;justify-content:center;height:100%;padding:0}.mp-panel.folded .btn-panel-toggle{border-radius:var(--radius-none);justify-content:center;align-items:center;gap:0;width:100%;height:100%;padding:0;font-size:20px;font-weight:500;display:flex}.mp-playlist-panel.folded{border-right:1px solid var(--border)}.mp-comments-panel.folded{border-left:1px solid var(--border)}.mp-panel-header{padding:var(--space-3) var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border);display:flex}.mp-container.mp-page .mp-panel-header{padding:var(--space-3) 0;padding:var(--space-4);border-bottom:none}.mp-panel-title{font-size:var(--text-sm);font-weight:var(--font-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground)}.mp-panel-actions{align-items:center;gap:var(--space-2);display:flex}.mp-panel-actions .btn-icon{border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);color:var(--muted-foreground);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:1px solid #0000}.mp-panel-actions .btn-icon:hover{background:var(--muted);color:var(--foreground)}.mp-panel-body{flex-direction:column;flex:1;gap:0;min-height:0;padding:0;display:flex;overflow:hidden}.mp-comments-panel .mp-panel-body{flex-direction:column;gap:0;display:flex}.mp-comments-panel .comment-form{padding:var(--space-3);border-top:1px solid var(--border);background:var(--card);flex-shrink:0}.mp-main{min-width:0;min-height:0;padding:var(--space-3);gap:var(--space-3);border-radius:var(--radius-none);box-shadow:none;background:0 0;border:none;flex-direction:column;flex:1;display:flex}.mp-container.mp-page .mp-main{background:var(--background);padding:0}.mp-player-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);min-height:0;box-shadow:var(--shadow-md);flex-direction:column;flex:1;display:flex;position:relative;overflow:visible}.mp-video-header,.mp-controls{flex:none}.mp-video-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-3);background:var(--card);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex;position:relative}.mp-video-meta{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.mp-video-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mp-video-subtitle{font-size:var(--text-xs);color:var(--muted-foreground);letter-spacing:.08em;text-transform:uppercase;min-height:1em}.mp-video-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-left:auto;display:inline-flex}.mp-stage-area{min-height:160px;padding:var(--space-3);background:var(--muted);border-bottom:1px solid var(--border);box-sizing:border-box;flex:1 1 0;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.mp-zoom-viewport{touch-action:none;flex:1;align-self:stretch;min-width:0;min-height:0;position:relative;overflow:hidden}.mp-zoom-viewport[data-zoomed=true],.mp-zoom-viewport.is-pan-ready{cursor:grab}.mp-zoom-viewport.is-panning{cursor:grabbing}.mp-zoom-content{transform-origin:0 0;will-change:transform;position:absolute;inset:0}.mp-zoom-content.is-animating{transition:transform var(--transition-snap)}@media (prefers-reduced-motion:reduce){.mp-zoom-content.is-animating{transition:none}}.mp-stage{border-radius:var(--radius-sm);border:1px solid var(--border);background:#000;flex:1;justify-content:center;align-items:center;width:100%;max-width:100%;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.mp-stage video,.mp-stage img{object-fit:contain;width:100%;height:100%}.mp-stage-area[data-interpolation-effective=pixelated] .mp-stage video,.mp-stage-area[data-interpolation-effective=pixelated] .mp-stage img,.mp-stage-area[data-interpolation-effective=pixelated] .mp-stage canvas{image-rendering:crisp-edges;image-rendering:pixelated}.mp-stage-area[data-interpolation-effective=smooth] .mp-stage video,.mp-stage-area[data-interpolation-effective=smooth] .mp-stage img,.mp-stage-area[data-interpolation-effective=smooth] .mp-stage canvas{image-rendering:auto}.mp-loading{color:var(--muted-foreground);font-size:var(--text-sm)}.mp-drawing-overlay{pointer-events:none;display:flex;position:absolute;inset:0}.mp-stage-area[data-annotations=hidden] .mp-drawing-overlay{display:none}.mp-sketch-layer{flex:1;position:relative}.mp-compare-labels{top:var(--space-3);right:var(--space-3);gap:var(--space-2);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;color:#ffffffbf;display:flex;position:absolute}.mp-controls{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);background:var(--card);flex-direction:column;margin-top:auto;display:flex}.mp-container.mp-page .mp-controls{background:var(--card)}.playlist-scroll{padding:var(--space-3);flex:1;overflow-y:auto}.comments-scroll{gap:var(--space-3);min-height:0;padding:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.comments-scroll .no-comments{color:var(--muted-foreground);margin:auto}.comment-form{border-top:1px solid var(--border);padding-top:var(--space-3);gap:var(--space-3);flex-direction:column;margin-top:auto;display:flex}.comment-form .form-actions{gap:var(--space-2);justify-content:flex-end;display:flex}.mp-container.mp-page .mp-shell.playlist-folded{grid-template-columns:var(--folded-bar-size,32px) minmax(0, 1fr) clamp(240px, 24vw, 320px)}.mp-container.mp-page .mp-shell.comments-folded{grid-template-columns:clamp(240px, 22vw, 304px) minmax(0, 1fr) var(--folded-bar-size,32px)}.mp-container.mp-page .mp-shell.playlist-folded.comments-folded{grid-template-columns:var(--folded-bar-size,32px) minmax(0, 1fr) var(--folded-bar-size,32px)}@media (max-width:1440px){.mp-playlist-panel{flex-basis:280px}.mp-comments-panel{flex-basis:320px}.mp-container.mp-page .mp-shell{grid-template-columns:clamp(220px,24vw,280px) minmax(0,1fr) clamp(220px,26vw,300px);gap:0;padding:0}}@media (max-width:1024px){.mp-shell{gap:var(--space-4);flex-direction:column;display:flex}.mp-shell>*{border-radius:var(--radius-md)}.mp-container.mp-page .mp-shell>*{background:var(--card);box-shadow:var(--shadow-md);border-radius:var(--radius-md)}.mp-playlist-panel,.mp-comments-panel{pointer-events:auto;flex-basis:auto;width:100%;margin:0!important}.mp-panel.folded{width:100%;height:0}.mp-panel.folded>*{display:none}}@media (max-width:768px){.mp-main{padding:var(--space-4)}.mp-video-header{flex-direction:column;align-items:flex-start}.mp-video-actions{flex-wrap:wrap;justify-content:space-between;width:100%}}.mp-download-menu{background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-2);z-index:100;min-width:160px;position:absolute;bottom:52px;right:8px}.mp-download-option{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);color:var(--foreground);cursor:pointer;border-radius:var(--radius-sm);font-size:var(--text-sm);text-align:left;transition:background-color var(--transition-fast);background:0 0;border:none;display:flex}.mp-download-option:hover{background:var(--muted)}.mp-download-option:active{background:var(--accent)}.mp-download-option:disabled{opacity:.4;cursor:not-allowed}.mp-download-option-icon{font-size:var(--text-base);line-height:1}.mp-download-option-label{flex:1}.playback-controls{position:relative}.mp-scrub-section{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.mp-scrub-wrap{background:var(--timeline-background);border:1px solid var(--border);border-radius:var(--radius-sm);-webkit-user-select:none;user-select:none;flex:1;height:40px;position:relative;overflow:visible}.mp-scrub-track{cursor:crosshair;touch-action:none;-webkit-user-drag:none;-moz-user-drag:none;-o-user-drag:none;position:absolute;inset:0}.mp-scrub-track.dragging{cursor:grabbing}.mp-scrub-track:focus{outline:none}.mp-scrub-track:focus-visible{box-shadow:var(--focus-ring);outline:none}.mp-scrub-canvas{border-radius:var(--radius-sm);width:100%;height:100%;display:block}.mp-scrub-hover{padding:2px var(--space-2);background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);font-family:var(--font-mono);color:var(--foreground);pointer-events:none;white-space:nowrap;z-index:2;flex-direction:column;align-items:center;gap:2px;font-size:10px;line-height:16px;display:flex;position:absolute;bottom:calc(100% + 4px);transform:translate(-50%)}.mp-scrub-hover[hidden]{display:none}.mp-scrub-hover-thumb{border-radius:var(--radius-sm);border:1px solid var(--border);width:120px;height:auto;display:block}.mp-scrub-hover-thumb[hidden]{display:none}.mp-scrub-hover-line{display:block}.mp-scrub-hover-note{color:var(--muted-foreground)}.mp-scrub-legacy{pointer-events:none;display:none}.mp-frame-indicator{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--foreground);font-weight:var(--font-medium);text-align:center;min-width:64px;padding:var(--space-1) var(--space-2);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);letter-spacing:.08em;text-transform:uppercase;transition:background var(--transition-fast), border-color var(--transition-fast);position:relative}.mp-frame-indicator:hover{background:var(--accent);border-color:var(--muted-foreground)}.mp-scrub-wrap{cursor:crosshair;position:relative}.mp-scrub-wrap:hover{box-shadow:0 0 0 1px var(--muted-foreground)}.mp-scrub-wrap.dragging,.mp-scrub-wrap:has(.mp-scrub-track.dragging){cursor:grabbing;box-shadow:0 0 0 2px var(--primary)}.mp-transport-row{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.transport-controls{align-items:center;gap:var(--space-2);display:inline-flex}.transport-btn{width:32px;height:32px;color:var(--muted-foreground);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:inline-flex;position:relative}.transport-btn[hidden]{display:none}.transport-btn:hover{background:var(--muted);color:var(--foreground);border-color:var(--muted-foreground)}.transport-btn:disabled{opacity:.45;cursor:default}.transport-btn:hover:after{content:attr(data-shortcut);background:var(--popover);color:var(--foreground);padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-xs);font-family:var(--font-mono);white-space:nowrap;z-index:10;margin-bottom:var(--space-1);box-shadow:var(--shadow-md);opacity:0;animation:.2s forwards tooltip-fade-in;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}@keyframes tooltip-fade-in{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.transport-btn.play{background:var(--primary);border-color:var(--primary);width:38px;height:38px;color:var(--primary-foreground);font-size:var(--text-lg)}.transport-btn.play:hover{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground);opacity:.9}.transport-btn:active{transform:scale(.95)}.transport-btn.active{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.frame-controls{flex:1;justify-content:center;align-items:center;min-width:200px;display:flex}.frame-info{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--muted-foreground);white-space:nowrap;display:inline-flex}.frame-info>*{white-space:nowrap}.frame-info-divider{color:var(--muted-foreground)}.mp-frame-input{width:7ch;padding:1px var(--space-1);border-radius:var(--radius-sm);color:var(--foreground);font-family:inherit;font-size:inherit;font-variant-numeric:tabular-nums;text-align:right;transition:background var(--transition-snap), border-color var(--transition-snap);background:0 0;border:1px solid #0000}.mp-frame-input:hover{border-color:var(--border)}.mp-frame-input:focus{background:var(--muted);border-color:var(--muted-foreground);outline:none}.mp-frame-input.is-invalid{border-color:var(--error);color:var(--error)}.zoom-controls{align-items:center;gap:var(--space-1);display:inline-flex}.zoom-controls .transport-btn{width:28px;height:28px}.mp-zoom-readout,.mp-zoom-preset{height:28px;padding:0 var(--space-2);background:var(--muted);color:var(--muted-foreground);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;letter-spacing:.02em;cursor:pointer;transition:background var(--transition-snap), color var(--transition-snap), border-color var(--transition-snap)}.mp-zoom-readout{text-align:center;min-width:56px}.mp-zoom-readout:hover,.mp-zoom-preset:hover{background:var(--accent);color:var(--foreground);border-color:var(--muted-foreground)}#mp-interpolation-toggle[data-state=pixelated]{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.playback-controls{align-items:center;gap:var(--space-3);display:inline-flex}.playback-speed{background:var(--muted);color:var(--muted-foreground);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast)}.playback-speed:hover{background:var(--accent);color:var(--foreground);border-color:var(--muted-foreground)}.volume-controls{align-items:center;gap:var(--space-2);display:inline-flex}.volume-slider{appearance:none;border-radius:var(--radius-sm);background:var(--muted);border:1px solid var(--border);cursor:pointer;width:72px;height:4px;transition:border-color var(--transition-fast);outline:none}.volume-controls:hover .volume-slider,.volume-slider:focus-visible{border-color:var(--muted-foreground)}.volume-slider::-webkit-slider-thumb{appearance:none;border-radius:var(--radius-sm);background:var(--primary);cursor:pointer;border:none;width:10px;height:14px}.volume-slider::-moz-range-thumb{border-radius:var(--radius-sm);background:var(--primary);cursor:pointer;border:none;width:10px;height:14px}@media (max-width:1200px){.volume-slider{width:48px}}.playback-actions{align-items:center;gap:var(--space-2);display:inline-flex}.playback-actions .transport-btn{width:30px;height:30px;font-size:var(--text-xs)}.btn-panel-toggle{background:var(--muted);color:var(--muted-foreground);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);cursor:pointer;font-size:var(--text-xs);align-items:center;gap:var(--space-1);transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);display:flex}.btn-panel-toggle:hover{background:var(--accent);color:var(--foreground);border-color:var(--muted-foreground)}.mp-sketch-controls{gap:var(--space-2);margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--card);border-radius:var(--radius-sm);border:1px solid var(--border);flex-wrap:wrap;align-items:center;display:flex}.mp-sketch-controls button{color:var(--muted-foreground);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);cursor:pointer;font-size:var(--text-xs);transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);background:0 0}.mp-sketch-controls button:hover{background:var(--muted);color:var(--foreground);border-color:var(--muted-foreground)}.mp-sketch-controls button.active{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.hdr-control-group{gap:var(--space-1);flex-direction:column;flex:1;min-width:180px;display:flex}.hdr-control-label{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--muted-foreground);-webkit-user-select:none;user-select:none;font-weight:500;display:flex}.hdr-control-icon{font-size:var(--text-sm)}.hdr-control-value{font-family:var(--font-mono);color:var(--foreground);background:var(--muted);padding:2px var(--space-1);border-radius:var(--radius-sm);text-align:center;min-width:40px;margin-left:auto}.hdr-slider{appearance:none;border-radius:var(--radius-base);background:var(--muted);cursor:pointer;width:100%;height:6px;transition:background var(--transition-fast);outline:none}.hdr-slider:hover{background:var(--accent)}.hdr-slider::-webkit-slider-thumb{appearance:none;border-radius:var(--radius-full);background:var(--primary);cursor:pointer;width:16px;height:16px;transition:background var(--transition-fast);border:2px solid var(--background);box-shadow:var(--shadow-sm)}.hdr-slider::-moz-range-thumb{border-radius:var(--radius-full);background:var(--primary);cursor:pointer;width:16px;height:16px;transition:background var(--transition-fast);border:2px solid var(--background);box-shadow:var(--shadow-sm)}.hdr-control-actions{align-items:center;gap:var(--space-2);display:flex}.hdr-control-actions button{background:var(--muted);color:var(--muted-foreground);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);cursor:pointer;font-size:var(--text-xs);transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);white-space:nowrap}.hdr-control-actions button:hover{background:var(--accent);color:var(--foreground);border-color:var(--muted-foreground)}@media (max-width:768px){.hdr-control-group{min-width:100%}}.mp-image-controls-btn{align-items:center;gap:var(--space-1);margin-right:var(--space-2);display:inline-flex}.mp-image-controls-btn.active{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.mp-hdr-controls-panel{background:var(--card);border-bottom:1px solid var(--border);padding:var(--space-3);animation:.2s slideDown}.mp-hdr-controls-inner{gap:var(--space-4);flex-wrap:wrap;align-items:center;max-width:100%;display:flex}.mp-hdr-controls-panel .hdr-control-group{gap:var(--space-1);flex-direction:column;flex:1;min-width:200px;max-width:280px;display:flex}.mp-hdr-controls-panel .hdr-control-label{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--muted-foreground);-webkit-user-select:none;user-select:none;font-weight:500;display:flex}.mp-hdr-controls-panel .hdr-control-icon{font-size:var(--text-sm)}.mp-hdr-controls-panel .hdr-control-value{font-family:var(--font-mono);color:var(--foreground);background:var(--muted);padding:2px var(--space-1);border-radius:var(--radius-sm);text-align:center;min-width:40px;margin-left:auto}.mp-hdr-controls-panel .hdr-control-actions{align-items:center;margin-left:auto;display:flex}.hdr-control-group--views{flex:none;min-width:0;max-width:none}.hdr-view-modes{gap:1px;display:flex}.hdr-view-btn{font-family:var(--font-mono);font-size:var(--text-xs);min-width:30px;padding:var(--space-1) var(--space-2);background:var(--muted);color:var(--muted-foreground);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-snap), color var(--transition-snap), border-color var(--transition-snap);line-height:1}.hdr-view-btn:hover{background:var(--accent);color:var(--foreground)}.hdr-view-btn.is-active{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.hdr-readout{align-items:flex-start;gap:var(--space-2);padding:var(--space-2);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);min-width:240px;display:flex}.hdr-readout[data-state=empty] .hdr-readout-value{color:var(--muted-foreground)}.hdr-readout-swatch{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;width:28px;height:28px;transition:border-color var(--transition-snap);background:0 0;flex:none;padding:0}.hdr-readout-swatch:hover{border-color:var(--muted-foreground)}.hdr-readout-grid{gap:1px 0;min-width:0;display:grid}.hdr-readout-row{gap:var(--space-2);align-items:baseline;display:flex}.hdr-readout-key{font-size:var(--text-xs);color:var(--muted-foreground);min-width:34px}.hdr-readout-value{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--foreground);white-space:nowrap}.hdr-false-colour-legend{gap:var(--space-1) var(--space-3);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.hdr-legend-band{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--muted-foreground);display:inline-flex}.hdr-legend-swatch{border-radius:var(--radius-sm);width:12px;height:12px}.hdr-status{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--error-text)}@media (max-width:1024px){.mp-hdr-controls-inner{flex-direction:column;align-items:stretch}.mp-hdr-controls-panel .hdr-control-group{max-width:100%}.hdr-readout{min-width:0}}.mp-compare-tools{gap:var(--space-2);align-items:center;display:flex}.mp-compare-controls{gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;display:flex}.mp-compare-controls[hidden]{display:none}.mp-compare-controls select{background:var(--background);border:1px solid var(--border);min-width:180px;color:var(--foreground);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2)}.mp-compare-mode-buttons{gap:var(--space-1);background:var(--card);border-radius:var(--radius-sm);border:1px solid var(--border);padding:2px;display:flex}.compare-mode-btn{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-xs);color:var(--muted-foreground);transition:background var(--transition-snap), color var(--transition-snap);background:0 0;border:none;justify-content:center;align-items:center;min-width:32px;display:flex}.compare-mode-btn:hover{background:var(--muted);color:var(--foreground)}.compare-mode-btn.active{background:var(--primary);color:var(--primary-foreground)}@media (max-width:1024px){.mp-transport-row{gap:var(--space-3)}.frame-controls{justify-content:flex-start;min-width:0}}@media (max-width:768px){.mp-transport-row{flex-direction:column;align-items:stretch}.transport-controls,.playback-controls,.frame-controls{justify-content:center}}#mp-stage.is-comparing{isolation:isolate}.mp-compare-b{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.mp-compare-media{object-fit:contain;width:100%;height:100%}.mp-compare-notice{padding:var(--space-2) var(--space-3);border:1px solid var(--primary-foreground)}@supports (color:color-mix(in lab, red, red)){.mp-compare-notice{border:1px solid color-mix(in srgb, var(--primary-foreground) 30%, transparent)}}.mp-compare-notice{border-radius:var(--radius-sm);background:var(--scrim-strong);color:var(--primary-foreground);font-size:var(--text-sm);text-align:center}.mp-compare-b[data-state=loading]:after{content:"Loading B…";bottom:var(--space-3);right:var(--space-3);padding:var(--space-1) var(--space-2);border:1px solid var(--primary-foreground);position:absolute}@supports (color:color-mix(in lab, red, red)){.mp-compare-b[data-state=loading]:after{border:1px solid color-mix(in srgb, var(--primary-foreground) 30%, transparent)}}.mp-compare-b[data-state=loading]:after{border-radius:var(--radius-sm);background:var(--scrim-strong);color:var(--primary-foreground);font-family:var(--font-mono);font-size:var(--text-xs)}.mp-compare-range-badge{display:none}.mp-compare-b[data-out-of-range=true] .mp-compare-range-badge{top:var(--space-3);left:var(--space-3);padding:var(--space-1) var(--space-2);border:1px solid var(--warning-border);border-radius:var(--radius-sm);background:var(--warning-surface);color:var(--warning-text);font-family:var(--font-mono);font-size:var(--text-xs);display:block;position:absolute}#mp-stage.is-comparing[data-compare=side-by-side]>[data-role=mp-media]{object-fit:contain;width:auto;height:auto;position:absolute;inset:0 50% 0 0}#mp-stage[data-compare=side-by-side] .mp-compare-b{border-left:1px solid var(--primary-foreground);inset:0 0 0 50%}@supports (color:color-mix(in lab, red, red)){#mp-stage[data-compare=side-by-side] .mp-compare-b{border-left:1px solid color-mix(in srgb, var(--primary-foreground) 60%, transparent)}}#mp-stage[data-compare=ab-toggle][data-compare-side=A] .mp-compare-b,#mp-stage.is-comparing[data-compare=ab-toggle][data-compare-side=B]>[data-role=mp-media]{opacity:0}#mp-stage.is-comparing[data-compare=swipe]>[data-role=mp-media]{clip-path:inset(0 calc(100% - var(--mp-compare-wipe,50%)) 0 0);transition:clip-path var(--transition-snap)}#mp-stage[data-compare=swipe] .mp-compare-b{clip-path:inset(0 0 0 var(--mp-compare-wipe,50%));transition:clip-path var(--transition-snap)}@media (prefers-reduced-motion:reduce){#mp-stage.is-comparing[data-compare=swipe]>[data-role=mp-media],#mp-stage[data-compare=swipe] .mp-compare-b{transition:none}}#mp-stage[data-compare=overlay] .mp-compare-b{opacity:var(--mp-compare-opacity,.5);transition:opacity var(--transition-snap)}#mp-stage[data-compare=difference]{filter:brightness(var(--mp-compare-gain,1));background:#000}#mp-stage[data-compare=difference] .mp-compare-b{mix-blend-mode:difference}#mp-stage .mp-swipe-divider{display:none}#mp-stage[data-compare=swipe] .mp-swipe-divider{top:0;bottom:0;left:var(--mp-compare-wipe,50%);z-index:2;background:var(--primary-foreground);cursor:ew-resize;pointer-events:auto;touch-action:none;width:2px;margin-left:-1px;display:block;position:absolute}.mp-swipe-divider:before{content:"";width:16px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.mp-swipe-divider.is-dragging{background:var(--primary-foreground)}.mp-swipe-divider:focus-visible{outline:2px solid var(--primary-foreground);outline-offset:1px}#mp-stage.is-comparing[data-compare=side-by-side]~.mp-drawing-overlay{display:none}.mp-compare-name{align-items:baseline;gap:var(--space-2);padding:var(--space-1) var(--space-2);border:1px solid var(--primary-foreground);display:inline-flex}@supports (color:color-mix(in lab, red, red)){.mp-compare-name{border:1px solid color-mix(in srgb, var(--primary-foreground) 30%, transparent)}}.mp-compare-name{border-radius:var(--radius-sm);background:var(--scrim-strong);color:var(--primary-foreground);letter-spacing:.04em;text-transform:none;white-space:nowrap}.mp-compare-name:empty{display:none}.mp-compare-name.is-active{border-color:var(--primary-foreground);color:var(--primary-foreground)}.mp-compare-name-meta{font-family:var(--font-mono);color:var(--primary-foreground)}@supports (color:color-mix(in lab, red, red)){.mp-compare-name-meta{color:color-mix(in srgb, var(--primary-foreground) 70%, transparent)}}.mp-compare-params{align-items:center;gap:var(--space-3);display:inline-flex}.mp-compare-param{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--muted-foreground);display:inline-flex}.mp-compare-param[hidden]{display:none}.mp-compare-offset{width:4.5em;padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--background);color:var(--foreground);font-family:var(--font-mono);font-size:var(--text-xs);text-align:right}.mp-compare-offset:focus-visible{outline:2px solid var(--ring);outline-offset:1px}#compare-offset-field[data-out-of-range=true] .mp-compare-offset{border-color:var(--warning-border);color:var(--warning-text)}.mp-compare-slider{width:96px;accent-color:var(--primary);cursor:pointer}.mp-compare-readout{min-width:3.5em;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted-foreground);text-align:right}.mp-compare-rate{padding:var(--space-1) var(--space-2);border:1px solid var(--warning-border);border-radius:var(--radius-sm);background:var(--warning-surface);color:var(--warning-text);font-family:var(--font-mono);font-size:var(--text-xs)}.mp-compare-rate[hidden]{display:none}@media (max-width:1024px){.mp-compare-params{gap:var(--space-2)}.mp-compare-slider{width:64px}}.item-playlist-container,.mp-playlist{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md)}.item-playlist-container{overflow-y:auto}.item-playlist-container .playlist-empty{padding:var(--space-5);text-align:center;color:var(--muted-foreground)}.item-playlist-container .playlist-item,.mp-playlist .playlist-item{gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);cursor:pointer;transition:background var(--transition-fast);grid-template-columns:96px minmax(0,1fr);align-items:center;display:grid;position:relative}.item-playlist-container .playlist-item:last-child,.mp-playlist .playlist-item:last-child{border-bottom:none}.item-playlist-container .playlist-item:hover,.mp-playlist .playlist-item:hover{background:var(--muted)}.item-playlist-container .playlist-item.active,.mp-playlist .playlist-item.active{background:var(--accent)}.item-playlist-container .playlist-item.active .playlist-item-title,.mp-playlist .playlist-item.active .playlist-item-title{color:var(--foreground);font-weight:var(--font-semibold)}.item-playlist-container .playlist-item-index,.mp-playlist .playlist-item-index{top:var(--space-2);left:var(--space-3);z-index:1;border-radius:var(--radius-sm);background:var(--scrim-strong);font-family:var(--font-mono);font-size:9px;font-weight:var(--font-medium);color:#fffffff2;padding:1px 4px;position:absolute}.item-playlist-container .playlist-item-thumbnail,.mp-playlist .playlist-item-thumbnail{background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-md);justify-content:center;align-items:center;width:96px;height:72px;display:flex;position:relative;overflow:hidden}.item-playlist-container .playlist-item-thumbnail img,.mp-playlist .playlist-item-thumbnail img{object-fit:cover;width:100%;height:100%;display:block}.item-playlist-container .playlist-item-thumbnail:after,.mp-playlist .playlist-item-thumbnail:after{content:"Play";font-size:var(--text-xs);color:#ffffffe6;opacity:0;transition:opacity var(--transition-fast);pointer-events:none;background:linear-gradient(#0000 0%,#0009 100%);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.item-playlist-container .playlist-item:hover .playlist-item-thumbnail:after,.mp-playlist .playlist-item:hover .playlist-item-thumbnail:after{opacity:1}.item-playlist-container .playlist-thumb-placeholder,.mp-playlist .playlist-thumb-placeholder{width:100%;height:100%;font-size:var(--text-lg);color:var(--muted-foreground);background:var(--muted);justify-content:center;align-items:center;display:flex}.item-playlist-container .playlist-item-info,.mp-playlist .playlist-item-info{flex-direction:column;gap:3px;min-width:0;display:flex}.item-playlist-container .playlist-item-title,.mp-playlist .playlist-item-title{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--foreground);text-align:left;white-space:nowrap;text-overflow:ellipsis;direction:rtl;margin:0;overflow:hidden}.item-playlist-container .playlist-item-meta,.mp-playlist .playlist-item-meta{align-items:center;gap:var(--space-2);color:var(--muted-foreground);white-space:nowrap;flex-wrap:nowrap;font-size:10px;display:flex;overflow:hidden}.item-playlist-container .playlist-item-version,.mp-playlist .playlist-item-version{border-radius:var(--radius-sm);background:var(--muted);color:var(--muted-foreground);font-family:var(--font-mono);font-weight:var(--font-medium);flex:none;padding:0 4px}.item-playlist-container .playlist-item-type,.mp-playlist .playlist-item-type{align-items:center;gap:var(--space-1);color:var(--muted-foreground);display:inline-flex}.item-playlist-container .playlist-item-duration,.mp-playlist .playlist-item-duration{color:var(--muted-foreground);font-family:var(--font-mono);font-size:var(--text-xs)}.item-playlist-container .playlist-item-time,.mp-playlist .playlist-item-time{color:var(--muted-foreground);font-family:var(--font-mono)}.item-playlist-container .playlist-item-separator,.mp-playlist .playlist-item-separator{color:var(--muted-foreground)}@media (max-width:560px){.item-playlist-container .playlist-item,.mp-playlist .playlist-item{padding:var(--space-2);gap:var(--space-2);grid-template-columns:28px 88px 1fr}.item-playlist-container .playlist-item-thumbnail,.mp-playlist .playlist-item-thumbnail{width:92px;height:52px}}.mp-drawing-overlay{pointer-events:none;z-index:50;position:absolute;inset:0}.mp-drawing-overlay.active{pointer-events:all}.player-page .mp-overlay{height:100vh;position:relative}.player-page .app-main{padding:0}}@media (max-width:1024px){.app-shell,.app-shell--no-sidebar{grid-template-columns:minmax(0,1fr);grid-template-areas:"header""main"}.app-header .sidebar-toggle{display:inline-flex}.app-sidebar{z-index:50;width:260px;transition:transform .2s;position:fixed;top:56px;bottom:0;left:0;transform:translate(-100%);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.app-shell.sidebar-open .app-sidebar{transform:translate(0)}.app-shell.sidebar-open .sidebar-scrim{z-index:49;background:#0006;display:block;position:fixed;inset:56px 0 0}.settings-layout{grid-template-columns:minmax(0,1fr)}}@media (max-width:860px){.header-center,.project-label{display:none}.project-selector-container{border-left:none;padding-left:0}.app-main{padding:1rem .75rem}}@media (max-width:600px){.user-name{display:none}.project-dropdown{max-width:150px}.page-header{gap:.75rem}.page-actions{order:3;width:100%}.app-main{padding:.75rem .75rem 1.5rem}}@media (prefers-reduced-motion:reduce){.app-sidebar{transition:none}}@media (prefers-contrast:high){.nav-item.is-disabled,.nav-link.is-disabled{opacity:.5;text-decoration:line-through}}@media (prefers-reduced-motion:reduce){.nav-item,.nav-link,.project-dropdown{transition:none}.project-dropdown--loading{animation:none}}.input,.form-input,input[type=text],input[type=search],input[type=email],input[type=password],input[type=number],input[type=url],input[type=tel],input[type=date],input[type=datetime-local],input[type=time],select,textarea{box-sizing:border-box;height:32px;font-family:var(--font-sans);color:var(--foreground);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);appearance:none;padding:0 .75rem;font-size:.875rem;line-height:1;transition:border-color .1s,background-color .1s,box-shadow .1s}input[type=number],.input-mono,input.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}textarea{resize:vertical;height:auto;min-height:84px;padding:.5rem .75rem;line-height:1.5}::placeholder{color:var(--muted-foreground);opacity:1}.input:hover,.form-input:hover,input:hover:not([type=checkbox]):not([type=radio]):not([type=range]):not([disabled]),select:hover:not([disabled]),textarea:hover:not([disabled]){border-color:var(--muted-foreground)}.input:focus,.form-input:focus,input:focus:not([type=checkbox]):not([type=radio]):not([type=range]),select:focus,textarea:focus{border-color:var(--ring);background:var(--card);box-shadow:0 0 0 1px var(--ring);outline:none}input:disabled,select:disabled,textarea:disabled{opacity:.5;cursor:not-allowed;background:var(--muted);color:var(--muted-foreground)}input[readonly],textarea[readonly]{background:var(--muted);color:var(--foreground)}.input.is-invalid,.form-input.is-invalid,input.is-invalid,select.is-invalid,textarea.is-invalid,[aria-invalid=true]{border-color:var(--error);background:var(--error)}@supports (color:color-mix(in lab, red, red)){.input.is-invalid,.form-input.is-invalid,input.is-invalid,select.is-invalid,textarea.is-invalid,[aria-invalid=true]{background:color-mix(in srgb, var(--error) 4%, var(--card))}}.input.is-invalid:focus,input.is-invalid:focus,[aria-invalid=true]:focus{box-shadow:0 0 0 2px var(--error)}@supports (color:color-mix(in lab, red, red)){.input.is-invalid:focus,input.is-invalid:focus,[aria-invalid=true]:focus{box-shadow:0 0 0 2px color-mix(in srgb, var(--error) 35%, transparent)}}.input-sm,input.input-sm,select.input-sm{height:28px;padding:0 .5rem;font-size:.75rem}.input-lg,input.input-lg,select.input-lg{height:40px;font-size:.875rem}select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;background-size:13px;padding-right:30px}select option,select optgroup{background:var(--card);color:var(--foreground)}select[multiple]{background-image:none;height:auto;padding:.25rem}input[type=search]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E");background-position:9px;background-repeat:no-repeat;background-size:14px;padding-left:30px}input[type=search]::-webkit-search-cancel-button{appearance:none;cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E") 50%/contain no-repeat;width:13px;height:13px}input[type=checkbox],input[type=radio],.form-checkbox{box-sizing:border-box;appearance:none;background:var(--card);border:1px solid var(--muted-foreground);border-radius:var(--radius-sm);cursor:pointer;flex:none;place-content:center;width:16px;height:16px;margin:0;padding:0;transition:background-color .1s,border-color .1s;display:inline-grid}input[type=radio]{border-radius:var(--radius-full)}input[type=checkbox]:hover,input[type=radio]:hover{border-color:var(--foreground)}input[type=checkbox]:before,.form-checkbox:before{content:"";background:var(--primary-foreground);clip-path:polygon(14% 44%,0 65%,40% 100%,100% 16%,84% 0,39% 68%);width:10px;height:10px;transition:transform .1s;transform:scale(0)}input[type=radio]:before{content:"";border-radius:var(--radius-full);background:var(--primary-foreground);width:6px;height:6px;transition:transform .1s;transform:scale(0)}input[type=checkbox]:checked,input[type=radio]:checked,.form-checkbox:checked{background:var(--primary);border-color:var(--primary)}input[type=checkbox]:checked:before,input[type=radio]:checked:before,.form-checkbox:checked:before{transform:scale(1)}input[type=checkbox]:indeterminate{background:var(--primary);border-color:var(--primary)}input[type=checkbox]:indeterminate:before{clip-path:none;height:2px;transform:scale(1)}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{box-shadow:0 0 0 2px var(--background), 0 0 0 4px var(--ring);outline:none}input[type=checkbox]:disabled,input[type=radio]:disabled{opacity:.45;cursor:not-allowed}.check,.checkbox-label,.radio-label{color:var(--foreground);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.switch{box-sizing:border-box;border-radius:var(--radius-full);background:var(--muted);border:1px solid var(--border);appearance:none;cursor:pointer;width:34px;height:18px;padding:0;transition:background-color .15s,border-color .15s;display:inline-block;position:relative}.switch:after{content:"";border-radius:var(--radius-full);background:var(--card);width:12px;height:12px;transition:transform .15s,background-color .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000026}.switch:checked{background:var(--primary);border-color:var(--primary)}.switch:checked:after{transform:translate(16px)}.switch:focus-visible{box-shadow:0 0 0 2px var(--background), 0 0 0 4px var(--ring);outline:none}input[type=range]{appearance:none;background:var(--muted);border-radius:var(--radius-full);cursor:pointer;border:none;width:100%;height:4px;padding:0}input[type=range]::-webkit-slider-thumb{appearance:none;border-radius:var(--radius-full);background:var(--primary);cursor:pointer;border:none;width:14px;height:14px}input[type=range]::-moz-range-thumb{border-radius:var(--radius-full);background:var(--primary);cursor:pointer;border:none;width:14px;height:14px}input[type=range]:focus-visible{box-shadow:0 0 0 2px var(--background), 0 0 0 4px var(--ring);outline:none}input[type=file]{height:auto;color:var(--muted-foreground);cursor:pointer;padding:.5rem;font-size:.75rem}input[type=file]::file-selector-button{height:24px;font-family:var(--font-sans);color:var(--foreground);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;margin-right:.75rem;padding:0 .75rem;font-size:.75rem;font-weight:500}input[type=file]::file-selector-button:hover{background:var(--accent)}.input-group{align-items:stretch;gap:.5rem;display:flex}.input-group>.input,.input-group>input,.input-group>select{flex:auto;min-width:0}.input-group>.btn{flex:none}.field{flex-direction:column;gap:.5rem;min-width:0;display:flex}.field>label,.field-label{color:var(--foreground);font-size:.875rem;font-weight:500;line-height:1.375}.field-hint{color:var(--muted-foreground);font-size:.75rem;line-height:1.375}.field-error{color:var(--error);font-size:.75rem;line-height:1.375}.field.is-required>label:after,label.required:after{content:" *";color:var(--error)}.form-section{margin-bottom:1.5rem}.form-group{margin-bottom:1rem}.form-group:last-child{margin-bottom:0}.form-group label,.form-label{color:var(--foreground);margin-bottom:.5rem;font-size:.875rem;font-weight:500;line-height:1.375;display:block}.form-group input:not([type=checkbox]):not([type=radio]),.form-group select,.form-group textarea,.form-input,.form-select{width:100%}.form-help,.form-hint{color:var(--muted-foreground);margin-top:.25rem;font-size:.75rem;line-height:1.375}.form-error,.error-message{color:var(--error);margin-top:.25rem;font-size:.75rem;line-height:1.375}.form-error:empty,.error-message:empty{display:none}.status{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--muted);color:var(--foreground);margin-top:.75rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.375;display:block}.status:empty,.status[hidden]{display:none}.status.success{border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.status.success{border-color:color-mix(in srgb, var(--success) 30%, var(--border))}}.status.success{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.status.success{background:color-mix(in srgb, var(--success) 8%, var(--card))}}.status.success{color:var(--success)}.status.error{border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.status.error{border-color:color-mix(in srgb, var(--error) 30%, var(--border))}}.status.error{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.status.error{background:color-mix(in srgb, var(--error) 8%, var(--card))}}.status.error{color:var(--error)}.status.info{border-color:var(--info)}@supports (color:color-mix(in lab, red, red)){.status.info{border-color:color-mix(in srgb, var(--info) 30%, var(--border))}}.status.info{background:var(--info)}@supports (color:color-mix(in lab, red, red)){.status.info{background:color-mix(in srgb, var(--info) 8%, var(--card))}}.status.info{color:var(--info)}.form-group.error input,.form-group.error select,.form-group.error textarea,.form-group.has-error input,.form-group.has-error select,.form-group.has-error textarea{border-color:var(--error);background:var(--error)}@supports (color:color-mix(in lab, red, red)){.form-group.error input,.form-group.error select,.form-group.error textarea,.form-group.has-error input,.form-group.has-error select,.form-group.has-error textarea{background:color-mix(in srgb, var(--error) 4%, var(--card))}}.form-group.success input,.form-group.has-success input,.form-group.success select,.form-group.has-success select{border-color:var(--success)}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem;display:grid}.form-row-3{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1rem;display:grid}.form-inline{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.form-inline .form-group{margin-bottom:0}.form-check{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.form-check label{color:var(--foreground);cursor:pointer;margin-bottom:0;font-size:.875rem}.input-group-text{height:32px;font-size:.75rem;font-family:var(--font-mono);color:var(--muted-foreground);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;padding:0 .75rem;display:inline-flex}.status-container{margin-bottom:.75rem}.status-container:empty{margin-bottom:0}.form-message{border-radius:var(--radius-md);background:var(--muted);color:var(--foreground);border:1px solid #0000;margin-top:.75rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.375}.form-message:empty{display:none}.form-message.success{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.form-message.success{background:color-mix(in srgb, var(--success) 8%, var(--card))}}.form-message.success{color:var(--success);border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.form-message.success{border-color:color-mix(in srgb, var(--success) 30%, var(--border))}}.form-message.error{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.form-message.error{background:color-mix(in srgb, var(--error) 8%, var(--card))}}.form-message.error{color:var(--error);border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.form-message.error{border-color:color-mix(in srgb, var(--error) 30%, var(--border))}}.form-message.warning{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.form-message.warning{background:color-mix(in srgb, var(--warning) 10%, var(--card))}}.form-message.warning{color:var(--warning);border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.form-message.warning{border-color:color-mix(in srgb, var(--warning) 30%, var(--border))}}.form-message.info{background:var(--info)}@supports (color:color-mix(in lab, red, red)){.form-message.info{background:color-mix(in srgb, var(--info) 8%, var(--card))}}.form-message.info{color:var(--info);border-color:var(--info)}@supports (color:color-mix(in lab, red, red)){.form-message.info{border-color:color-mix(in srgb, var(--info) 30%, var(--border))}}.plain-list{margin:0;padding:0;list-style:none}.permission-groups-container{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);grid-template-columns:1fr 1fr;gap:1rem;padding:1rem;display:grid}.user-permissions-zone,.available-permissions-zone{flex-direction:column;min-height:200px;display:flex}.zone-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.zone-title{color:var(--foreground);font-size:.875rem;font-weight:500}.permission-count{color:var(--muted-foreground);background:var(--muted);border-radius:var(--radius-sm);border:1px solid var(--border);padding:.25rem .5rem;font-size:.75rem}.permissions-list{border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--background);flex-direction:column;flex:1;gap:.5rem;min-height:120px;padding:.5rem;display:flex}.user-permissions-zone .permissions-list{background:var(--background)}.user-permissions-zone .permissions-list.drag-over{border-color:var(--ring);background:var(--muted);border-style:solid}.zone-instructions{height:100%;color:var(--muted-foreground);text-align:center;justify-content:center;align-items:center;padding:1rem;font-size:.75rem;display:flex}.zone-instructions p{margin:0;line-height:1.5}.permission-pill{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--foreground);cursor:grab;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;transition:background-color .1s,border-color .1s;display:flex}.permission-pill:hover{background:var(--muted)}.permission-pill:active{cursor:grabbing}.permission-pill.dragging{opacity:.5;transform:rotate(5deg)}.user-permission-pill{background:var(--card);border-color:var(--foreground)}.user-permission-pill:hover{background:var(--muted)}.available-permission-pill{background:var(--card)}.available-permission-pill:hover{background:var(--muted);border-color:var(--muted-foreground)}.permission-name{white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:500;overflow:hidden}.permission-badge{border-radius:var(--radius-sm);background:var(--muted);color:var(--muted-foreground);border:1px solid var(--border);padding:.25rem .5rem;font-size:.75rem}.permission-badge.admin{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.permission-badge.admin{background:color-mix(in srgb, var(--error) 10%, var(--card))}}.permission-badge.admin{color:var(--error);border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.permission-badge.admin{border-color:color-mix(in srgb, var(--error) 20%, var(--border))}}.permission-badge.user{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.permission-badge.user{background:color-mix(in srgb, var(--success) 10%, var(--card))}}.permission-badge.user{color:var(--success);border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.permission-badge.user{border-color:color-mix(in srgb, var(--success) 20%, var(--border))}}.remove-permission{color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;width:16px;height:16px;padding:0;transition:background-color .1s,color .1s;display:flex}.remove-permission:hover{background:var(--destructive);color:var(--destructive-foreground)}.drag-hint{opacity:.4;color:var(--muted-foreground);flex-shrink:0;font-size:10px}.available-permission-pill:hover .drag-hint{opacity:.8;color:var(--foreground)}.empty-permissions-state{height:100%;color:var(--muted-foreground);text-align:center;justify-content:center;align-items:center;padding:1rem;font-size:.75rem;display:flex}.empty-permissions-state p{margin:0;line-height:1.5}@media (max-width:768px){.table-responsive{white-space:nowrap;width:100%;display:block;overflow-x:auto}.table-responsive th,.table-responsive td{min-width:120px}.table-actions{flex-direction:column;gap:.25rem}.table-filters{flex-direction:column;align-items:stretch}.table-filter{justify-content:space-between}}.table-actions-header{text-align:right;width:120px}.projects-table-wrapper{max-width:600px;margin:0 auto}.projects-table-wrapper .data-table{margin-bottom:0}.projects-table-wrapper th,.projects-table-wrapper td{padding:.75rem .875rem}#project-wrapper.card:hover{transform:none}.loading-state{color:var(--muted-foreground);justify-content:center;align-items:center;gap:.5rem;padding:2rem;font-size:.875rem;display:flex}.loading-text{color:var(--muted-foreground);justify-content:center;align-items:center;gap:.5rem;padding:1.5rem;font-size:.875rem;display:flex}.loading-spinner,.spinner{box-sizing:border-box;border:2px solid var(--border);border-top-color:var(--primary);border-radius:var(--radius-full);text-indent:-9999px;flex:none;width:16px;height:16px;font-size:0;line-height:0;animation:.7s linear infinite state-spin;display:inline-block;overflow:hidden}.loading-spinner-lg{border-width:2px;width:24px;height:24px}@keyframes state-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.loading-spinner,.spinner{animation-duration:2s}}.skeleton{background:linear-gradient(90deg, var(--muted) 0%, var(--accent) 50%, var(--muted) 100%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.4s ease-in-out infinite skeleton-sweep}@keyframes skeleton-sweep{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.empty-state,.empty-placeholder,.empty-loading,.empty-error{text-align:center;color:var(--muted-foreground);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:2.5rem 1.5rem;font-size:.875rem;display:flex}.empty-state-icon{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--muted);width:40px;height:40px;color:var(--muted-foreground);justify-content:center;align-items:center;margin-bottom:.5rem;display:inline-flex}.empty-state-icon .icon{stroke-width:1.75px;width:19px;height:19px}.empty-state-title{color:var(--foreground);font-size:.875rem;font-weight:600}.empty-state-text{color:var(--muted-foreground);max-width:42ch;font-size:.75rem;line-height:1.5}.empty-state-actions{gap:.5rem;margin-top:.75rem;display:flex}.empty-error{color:var(--error)}.error-body{background:var(--background);min-height:100vh;display:block}.error-shell{justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.error-panel,.error-inline{flex-direction:column;align-items:flex-start;gap:.75rem;max-width:46ch;display:flex}.error-inline{margin:3rem auto}.error-status{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-foreground);margin:0;font-size:.75rem}.error-heading{letter-spacing:-.02em;color:var(--foreground);margin:0;font-size:1.5rem;font-weight:600;line-height:1.25}.error-message{color:var(--muted-foreground);margin:0;font-size:.875rem;line-height:1.5}.error-actions{gap:.5rem;margin-top:.5rem;display:flex}.notification-container{z-index:var(--z-toast);pointer-events:none;flex-direction:column;gap:.5rem;width:360px;max-width:calc(100vw - 2rem);display:flex;position:fixed;top:1rem;right:1rem}.notification{background:var(--card);border:1px solid var(--border);border-left:3px solid var(--muted-foreground);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);pointer-events:auto;opacity:0;transition:transform var(--transition-slow), opacity var(--transition-slow);align-items:flex-start;gap:.75rem;padding:.75rem 1rem;display:flex;position:relative;overflow:hidden;transform:translate(calc(100% + 1rem))}.notification.show{opacity:1;transform:translate(0)}.notification.success{border-left-color:var(--success)}.notification.error{border-left-color:var(--error)}.notification.warning{border-left-color:var(--warning)}.notification.info{border-left-color:var(--info)}.notification .notification-icon{flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;margin-top:1px;font-size:.875rem;line-height:1;display:flex}.notification.success .notification-icon{color:var(--success)}.notification.error .notification-icon{color:var(--error)}.notification.warning .notification-icon{color:var(--warning)}.notification.info .notification-icon{color:var(--info)}.notification .notification-content{flex:1;min-width:0}.notification .notification-title{color:var(--foreground);margin-bottom:.25rem;font-size:.875rem;font-weight:600;line-height:1.25}.notification .notification-message{color:var(--muted-foreground);word-wrap:break-word;font-size:.875rem;line-height:1.375}.notification .notification-close{border-radius:var(--radius-sm);width:20px;height:20px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.125rem;line-height:1;transition:background-color 80ms,color 80ms;display:flex}.notification .notification-close:hover{background:var(--muted);color:var(--foreground)}.notification .notification-progress{background:var(--muted-foreground);height:2px;position:absolute;bottom:0;left:0}.notification.success .notification-progress{background:var(--success)}.notification.error .notification-progress{background:var(--error)}.notification.warning .notification-progress{background:var(--warning)}.notification.info .notification-progress{background:var(--info)}@media (max-width:768px){.notification-container{width:auto;max-width:none;top:.5rem;left:.5rem;right:.5rem}}@media (prefers-contrast:high){.notification{border-width:2px 2px 2px 6px}}@media (prefers-reduced-motion:reduce){.notification{transition:opacity var(--transition-fast);transform:none}.notification.show{transform:none}.notification .notification-progress{transition:none}}.notification-bell{align-items:center;display:flex;position:relative}.notification-btn{cursor:pointer;color:var(--muted-foreground);border-radius:var(--radius-md);background:0 0;border:none;padding:.5rem;transition:background-color 80ms,color 80ms;position:relative}.notification-btn:hover{background:var(--muted);color:var(--foreground)}.notification-btn .notification-icon{font-size:1.125rem}.notification-badge{min-width:14px;height:14px;box-shadow:0 0 0 2px var(--card);padding:0 3px;font-size:9px;position:absolute;top:1px;right:0}.notification-badge[hidden]{display:none}.notification-dropdown{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);width:360px;max-height:480px;box-shadow:var(--shadow-xl);z-index:var(--z-dropdown);position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden}.notification-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem;display:flex}.notification-header h3{color:var(--foreground);margin:0;font-size:1rem;font-weight:600}.notification-list{max-height:400px;overflow-y:auto}.notification-item{border-bottom:1px solid var(--border);align-items:stretch;transition:background-color 80ms;display:flex}.notification-item:hover{background:var(--muted)}.notification-item.unread{background:var(--accent)}.notification-item-main{text-align:left;cursor:pointer;color:inherit;font:inherit;background:0 0;border:none;flex:auto;align-items:flex-start;gap:.75rem;min-width:0;padding:1rem;display:flex}.notification-item-icon{color:var(--muted-foreground);align-items:center;padding-top:1px;display:flex}.notification-item-body{flex-direction:column;gap:.25rem;min-width:0;display:flex}.notification-item.unread .notification-item-icon{color:var(--foreground)}.notification-item-title{color:var(--foreground);font-size:.875rem;font-weight:500}.notification-item-content{color:var(--muted-foreground);overflow-wrap:anywhere;font-size:.875rem}.notification-item-time{color:var(--muted-foreground);font-size:.75rem}.notification-dismiss{color:var(--muted-foreground);cursor:pointer;opacity:0;background:0 0;border:none;flex:none;align-items:center;padding:0 .75rem;transition:opacity 80ms,color 80ms;display:flex}.notification-item:hover .notification-dismiss,.notification-dismiss:focus-visible{opacity:1}.notification-dismiss:hover{color:var(--foreground)}.notification-empty,.notification-state{text-align:center;color:var(--muted-foreground);justify-content:center;align-items:center;gap:.5rem;padding:2rem;font-size:.875rem;display:flex}.notification-state.is-error{color:var(--foreground);padding:1rem}.notification-footer{border-top:1px solid var(--border);justify-content:center;padding:.75rem;display:flex}@media (max-width:768px){.notification-dropdown{width:320px}}.loading-indicator{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:1.25rem;display:flex}.loading-indicator.overlay{background:var(--scrim-strong);z-index:var(--z-modal-backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:absolute;inset:0}.loading-indicator.hidden,.loading-indicator[hidden]{display:none}.loading-spinner{border:2px solid var(--border);border-top:2px solid var(--primary);border-radius:var(--radius-full);animation:1s linear infinite loading-spin}.loading-spinner.small{border-width:1px;width:16px;height:16px}.loading-spinner.medium{width:24px;height:24px}.loading-spinner.large{border-width:3px;width:32px;height:32px}@keyframes loading-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-progress{background:var(--muted);border-radius:var(--radius-sm);width:100%;max-width:300px;height:4px;overflow:hidden}.loading-progress-bar{background:var(--primary);border-radius:var(--radius-sm);height:100%;transition:width var(--transition-slow);width:0%}.loading-progress-indeterminate .loading-progress-bar{width:30%;animation:2s ease-in-out infinite loading-progress}@keyframes loading-progress{0%{transform:translate(-100%)}50%{transform:translate(0%)}to{transform:translate(100%)}}.loading-skeleton{background:linear-gradient(90deg, var(--muted) 25%, var(--accent) 50%, var(--muted) 75%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.5s ease-in-out infinite loading-skeleton}@keyframes loading-skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}.loading-skeleton.text{height:1em;margin:.5em 0}.loading-skeleton.text.short{width:60%}.loading-skeleton.text.medium{width:80%}.loading-skeleton.text.long{width:100%}.loading-skeleton.block{width:100%;height:100px}.loading-skeleton.card{width:100%;height:120px;margin-bottom:1rem}.loading-skeleton.thumbnail{border-radius:var(--radius-md);width:80px;height:60px}.loading-skeleton.avatar{border-radius:var(--radius-full);width:40px;height:40px}.loading-message{color:var(--foreground);margin:0;font-size:.875rem;font-weight:500}.loading-details{color:var(--muted-foreground);margin:4px 0 0;font-size:.75rem}.loading{pointer-events:none;opacity:.7;position:relative}.loading:after{content:"";border:2px solid var(--border);border-top:2px solid var(--primary);border-radius:var(--radius-full);z-index:1;width:20px;height:20px;margin:-10px 0 0 -10px;animation:1s linear infinite loading-spin;position:absolute;top:50%;left:50%}.btn.loading{color:#0000;pointer-events:none;position:relative}.btn.loading:after{content:"";border:2px solid var(--primary-foreground);width:16px;height:16px;margin:-8px 0 0 -8px;position:absolute;top:50%;left:50%}@supports (color:color-mix(in lab, red, red)){.btn.loading:after{border:2px solid color-mix(in srgb, var(--primary-foreground) 30%, transparent)}}.btn.loading:after{border-top:2px solid var(--primary-foreground);border-radius:var(--radius-full);animation:1s linear infinite loading-spin}.table-loading{min-height:200px;position:relative}.table-loading tbody{opacity:.5}.table-loading:after{content:"";border:2px solid var(--border);border-top:2px solid var(--primary);border-radius:var(--radius-full);z-index:1;width:24px;height:24px;margin:-12px 0 0 -12px;animation:1s linear infinite loading-spin;position:absolute;top:50%;left:50%}.form-loading{pointer-events:none;position:relative}.form-loading:after{content:"";background:var(--scrim);z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.form-loading:before{content:"";border:2px solid var(--border);border-top:2px solid var(--primary);border-radius:var(--radius-full);z-index:2;width:24px;height:24px;margin:-12px 0 0 -12px;animation:1s linear infinite loading-spin;position:absolute;top:50%;left:50%}.card.loading{position:relative;overflow:hidden}.card.loading:after{content:"";background:var(--scrim);z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.card.loading:before{content:"";border:2px solid var(--border);border-top:2px solid var(--primary);border-radius:var(--radius-full);z-index:2;width:24px;height:24px;margin:-12px 0 0 -12px;animation:1s linear infinite loading-spin;position:absolute;top:50%;left:50%}.media-loading{background:var(--card);justify-content:center;align-items:center;min-height:100px;display:flex;position:relative}.media-loading:after{content:"";border:3px solid var(--border);border-top:3px solid var(--primary);border-radius:var(--radius-full);width:32px;height:32px;animation:1s linear infinite loading-spin}@media (prefers-reduced-motion:reduce){.loading-spinner,.loading-progress-bar,.loading-skeleton,.loading:after,.btn.loading:after,.table-loading:after,.form-loading:before,.card.loading:before,.media-loading:after{animation:none}.loading-skeleton{background:var(--muted)}}.auth-body{min-height:100vh;font-family:var(--font-sans);background:var(--background);color:var(--foreground);justify-content:center;align-items:center;margin:0;padding:1rem;display:flex;position:relative;overflow:hidden}.auth-aurora{display:none}.auth-theme-toggle{z-index:50;position:fixed;top:1rem;right:1rem}.auth-shell{z-index:1;width:min(448px,100%);position:relative}.auth-brand{text-align:center;margin-bottom:2rem}.auth-title{letter-spacing:-.025em;color:var(--foreground);margin:0 0 .5rem;font-size:2.25rem;font-weight:700;line-height:1.1}.auth-subtitle{color:var(--muted-foreground);margin:0;font-size:.875rem;line-height:1.5}.auth-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:2.5rem}.auth-form{flex-direction:column;gap:1.25rem;margin:0;display:flex}.auth-form input{height:44px;font-size:.875rem}.auth-form .form-group{margin:0}.auth-form .btn{height:44px;margin-top:0}.auth-error{min-height:1.25rem;color:var(--error);margin:0;font-size:.875rem}@media (max-width:640px){.auth-body{padding:.5rem}}@media (max-width:540px){.auth-body{padding:1.5rem 1rem}.auth-card{padding:1.75rem 1.5rem}}.comments-container{background:var(--card);border-radius:var(--radius-lg);border:1px solid var(--border);margin-bottom:var(--space-6)}.comments-header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.comments-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--foreground);margin:0}.comments-count{background:var(--muted);color:var(--muted-foreground);padding:2px var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-bold)}.comments-body{padding:var(--space-3)}.comment-thread{flex-direction:column;gap:0;display:flex}.comment-avatar{border-radius:var(--radius-full);background:var(--primary);width:32px;height:32px;color:var(--primary-foreground);font-weight:var(--font-bold);font-size:var(--text-xs);flex-shrink:0;justify-content:center;align-items:center;display:flex}.comment-content{flex-direction:column;flex:0 auto;gap:0;min-width:0;max-width:100%;min-height:0;display:flex}.comment-header{align-items:center;gap:var(--space-1);margin-bottom:var(--space-1);flex-wrap:wrap;flex-shrink:0;min-height:0;display:flex}.comment-author{font-weight:var(--font-semibold);color:var(--foreground);font-size:var(--text-sm)}.comment-timestamp{color:var(--muted-foreground);align-items:center;gap:4px;font-size:11px;display:flex}.comment-text{color:var(--muted-foreground);font-size:var(--text-sm);margin-bottom:var(--space-1);word-wrap:break-word;flex-shrink:0;max-width:100%;min-height:0;line-height:1.5}.comment-frame.clickable{color:var(--foreground);cursor:pointer;font-weight:var(--font-medium);transition:opacity var(--transition-fast)}.comment-frame.clickable:hover{opacity:.7;text-decoration:underline}.comment-frame-badge{border-radius:var(--radius-sm);background-color:var(--muted);color:var(--muted-foreground);font-size:11px;font-weight:var(--font-semibold);font-family:var(--font-mono);border:1px solid var(--border);justify-content:center;align-items:center;min-width:24px;padding:2px 6px;line-height:1.2;display:inline-flex}.comment-frame-badge.clickable{cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast)}.comment-frame-badge.clickable:hover{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.comment-frame-badge.clickable:hover{background-color:color-mix(in srgb, var(--muted-foreground) 12%, var(--muted))}}.comment-frame-badge.clickable:hover{border-color:var(--muted-foreground);color:var(--foreground)}.comment-frame-badge.clickable:active{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.comment-frame-badge.clickable:active{background-color:color-mix(in srgb, var(--muted-foreground) 18%, var(--muted))}}.comment-drawing-indicator{opacity:.9;margin-left:3px;font-size:10px}.comment-status-checkbox{top:var(--space-2);right:var(--space-2);cursor:pointer;z-index:1;align-items:center;margin-left:0;display:flex;position:absolute}.comment-status-checkbox input{opacity:0;pointer-events:none;border:0;width:1px;height:1px;margin:0;padding:0;position:absolute}.comment-status-checkbox input:focus-visible+.status-checkbox{outline:2px solid var(--ring);outline-offset:2px}.status-checkbox{border-radius:var(--radius-md);width:18px;height:18px;transition:all var(--transition-fast);justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.status-checkbox.open{border:1px solid var(--border);background:var(--muted)}.comment-section{margin-bottom:var(--space-4)}.comment-section-title{font-size:11px;font-weight:var(--font-semibold);color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.08em;margin:0 0 var(--space-2) 0;padding:var(--space-2) var(--space-2) var(--space-1) var(--space-2)}.comment-section-resolved{opacity:.65}.comment-section-resolved .comment-item{border-left:2px solid var(--success);padding-left:var(--space-3);margin-left:0}.comment-reply{padding-left:var(--space-3);border-left:3px solid var(--border);background:var(--muted);margin-top:0;margin-bottom:0;margin-left:44px;position:relative}.comment-reply:before{content:"";background:linear-gradient(180deg, var(--muted-foreground) 0%, var(--border) 100%);width:3px;position:absolute;top:0;bottom:0;left:-3px}.comment-reply .comment-avatar{width:28px;height:28px;font-size:11px}.comment-reply:hover{background:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.comment-reply:hover{background:color-mix(in srgb, var(--muted-foreground) 6%, var(--muted))}}.reply-indicator{color:var(--muted-foreground);margin-bottom:var(--space-1);font-size:11px;font-weight:var(--font-medium);align-items:center;gap:var(--space-1);display:flex}.reply-indicator:before{content:"↳";opacity:.7;font-size:14px}.comment-item{gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-3) var(--space-2);border-radius:var(--radius-lg);transition:background var(--transition-fast);background:0 0;border:1px solid #0000;align-items:flex-start;min-height:0;margin-bottom:0;display:flex;position:relative}.comment-item:hover{background:var(--muted)}.comment-item:has(+.comment-reply){padding-bottom:var(--space-2)}.comment-item:has(+.comment-reply):after{content:"";background:var(--border);width:2px;height:8px;position:absolute;bottom:0;left:28px}.comment-item.active-frame-comment,.comment-item.current-frame{background:var(--tint-amber);border-left:3px solid var(--warning);padding-left:9px;position:relative}.comment-status-badge{padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.05em;margin-left:auto}.comment-status-badge.approved{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.comment-status-badge.approved{background:color-mix(in srgb, var(--success) 12%, var(--card))}}.comment-status-badge.approved{color:var(--status-approved)}.comment-status-badge.changes-requested{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.comment-status-badge.changes-requested{background:color-mix(in srgb, var(--warning) 12%, var(--card))}}.comment-status-badge.changes-requested{color:var(--status-changes-requested)}.comment-status-badge.rejected{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.comment-status-badge.rejected{background:color-mix(in srgb, var(--error) 12%, var(--card))}}.comment-status-badge.rejected{color:var(--status-rejected)}.comment-actions{gap:var(--space-1);margin-top:var(--space-1);align-items:center;display:flex}.comment-action{color:var(--muted-foreground);cursor:pointer;padding:4px var(--space-2);border-radius:var(--radius-base);transition:all var(--transition-fast);align-items:center;gap:var(--space-1);font-size:11px;font-weight:var(--font-medium);background:0 0;border:none;display:flex}.comment-action:hover{background:var(--muted);color:var(--foreground)}.comment-action.danger:hover{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.comment-action.danger:hover{background:color-mix(in srgb, var(--error) 8%, var(--card))}}.comment-action.danger:hover{color:var(--error)}.comment-form{background:0 0;padding:0}.comment-form__form{gap:var(--space-2);flex-direction:column;display:flex}.comment-form__textarea{width:100%;min-height:72px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);color:var(--foreground);font-size:var(--text-sm);resize:vertical;transition:border-color var(--transition-fast);font-family:inherit;line-height:1.5}.comment-form__textarea:focus{border-color:var(--ring);box-shadow:var(--focus-ring-tight);outline:none}.comment-form__textarea::placeholder{color:var(--muted-foreground)}.comment-reply-form{margin-left:44px;margin-top:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-3);background:var(--muted);border-radius:var(--radius-lg);border:1px solid var(--border)}.reply-form-header{margin-bottom:var(--space-2)}.reply-form-header h5{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--muted-foreground);margin:0}.reply-form-content{gap:var(--space-2);flex-direction:column;display:flex}.comment-reply-textarea{width:100%;min-height:60px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--foreground);font-size:var(--text-sm);resize:vertical;transition:border-color var(--transition-fast);font-family:inherit;line-height:1.5}.comment-reply-textarea:focus{border-color:var(--ring);box-shadow:var(--focus-ring-tight);outline:none}.comment-reply-textarea::placeholder{color:var(--muted-foreground)}.reply-form-actions{gap:var(--space-2);justify-content:flex-end;display:flex}.reply-submit-btn,.reply-cancel-btn{padding:var(--space-1) var(--space-3);border-radius:var(--radius-base);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.reply-submit-btn{background:var(--primary);color:var(--primary-foreground);border:none}.reply-submit-btn:hover{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.reply-submit-btn:hover{background:color-mix(in srgb, var(--primary) 85%, black)}}.reply-cancel-btn{color:var(--muted-foreground);border:1px solid var(--border);background:0 0}.reply-cancel-btn:hover{background:var(--muted);border-color:var(--muted-foreground)}.comment-edit-form{margin-top:var(--space-2)}.comment-edit-textarea{width:100%;min-height:60px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--foreground);font-size:var(--text-sm);resize:vertical;transition:border-color var(--transition-fast);margin-bottom:var(--space-2);font-family:inherit;line-height:1.5}.comment-edit-textarea:focus{border-color:var(--ring);box-shadow:var(--focus-ring-tight);outline:none}.comment-edit-actions{gap:var(--space-2);justify-content:flex-end;display:flex}.comment-save-btn,.comment-cancel-btn{padding:var(--space-1) var(--space-3);border-radius:var(--radius-base);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.comment-save-btn{background:var(--primary);color:var(--primary-foreground);border:none}.comment-save-btn:hover{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.comment-save-btn:hover{background:color-mix(in srgb, var(--primary) 85%, black)}}.comment-cancel-btn{color:var(--muted-foreground);border:1px solid var(--border);background:0 0}.comment-cancel-btn:hover{background:var(--muted);border-color:var(--muted-foreground)}.comment-form__toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.comment-form__toolbar-left{gap:var(--space-1);align-items:center;display:flex}.comment-form__toolbar-right{align-items:center;display:flex}.comment-form .comment-tool-btn,.comment-tool-btn{background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);width:32px;height:32px;color:var(--muted-foreground);cursor:pointer;transition:all var(--transition-snap);justify-content:center;align-items:center;padding:0;font-size:16px;display:flex}.comment-form .comment-tool-btn:hover,.comment-tool-btn:hover{background:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.comment-form .comment-tool-btn:hover,.comment-tool-btn:hover{background:color-mix(in srgb, var(--muted-foreground) 10%, var(--muted))}}.comment-form .comment-tool-btn:hover,.comment-tool-btn:hover{color:var(--foreground);border-color:var(--muted-foreground)}.comment-form .comment-tool-btn.active,.comment-tool-btn.active{background:var(--card);border-color:var(--foreground);color:var(--foreground);box-shadow:0 0 0 1px var(--foreground)}.comment-form .comment-form__submit,.comment-form__submit{padding:var(--space-2) var(--space-4);background:var(--muted);color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-snap);font-weight:500}.comment-form .comment-form__submit:hover,.comment-form__submit:hover{background:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.comment-form .comment-form__submit:hover,.comment-form__submit:hover{background:color-mix(in srgb, var(--muted-foreground) 10%, var(--muted))}}.comment-form .comment-form__submit:hover,.comment-form__submit:hover{border-color:var(--muted-foreground)}.comment-form .comment-form__submit:active,.comment-form__submit:active{transform:translateY(1px)}.comment-form .comment-drawing-panel,.comment-drawing-panel{padding:var(--space-2);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:var(--space-2);order:-1}.comment-drawing-tools{gap:var(--space-1);align-items:center;display:flex}.comment-form .drawing-tool-btn,.drawing-tool-btn{background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);width:32px;height:32px;color:var(--muted-foreground);cursor:pointer;transition:all var(--transition-snap);justify-content:center;align-items:center;padding:0;font-size:14px;display:flex}.comment-form .drawing-tool-btn:hover,.drawing-tool-btn:hover{background:var(--card);color:var(--foreground);border-color:var(--muted-foreground)}.comment-form .drawing-tool-btn.active,.drawing-tool-btn.active{background:var(--card);border-color:var(--foreground);color:var(--foreground);box-shadow:0 0 0 1px var(--foreground)}.comment-form .drawing-tool-btn.clear-btn,.drawing-tool-btn.clear-btn{color:var(--muted-foreground);margin-left:auto;font-size:16px;font-weight:700}.comment-form .drawing-tool-btn.clear-btn:hover,.drawing-tool-btn.clear-btn:hover{color:var(--error);border-color:var(--error)}.color-picker-wrapper{position:relative}.drawing-tool-btn.color-btn{padding:4px}.color-indicator{border-radius:var(--radius-sm);border:1px solid var(--border);width:20px;height:20px;box-shadow:inset 0 1px 2px #0003}.color-dropdown{margin-top:var(--space-1);padding:var(--space-2);background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);gap:var(--space-1);z-index:100;grid-template-columns:repeat(4,1fr);display:grid;position:absolute;top:100%;left:0}.color-swatch{border:2px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;width:28px;height:28px;transition:all var(--transition-snap);padding:0;box-shadow:inset 0 1px 2px #0003}.color-swatch:hover{border-color:var(--muted-foreground);transform:scale(1.1);box-shadow:0 2px 6px #0000004d,inset 0 1px 2px #0003}.color-swatch.active{border-color:var(--foreground);box-shadow:0 0 0 1px var(--foreground), 0 2px 8px #0006, inset 0 1px 2px #0003;transform:scale(1.15)}.attachment-preview{padding:var(--space-2);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm)}.attachment-list{gap:var(--space-2);margin-bottom:var(--space-2);flex-direction:column;display:flex}.attachment-item{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--card);border-radius:var(--radius-sm);display:flex}.attachment-icon{font-size:16px}.attachment-name{font-size:var(--text-sm);color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.attachment-size{font-size:var(--text-xs);color:var(--muted-foreground)}.attachment-remove{width:20px;height:20px;color:var(--muted-foreground);cursor:pointer;transition:color var(--transition-snap);background:0 0;border:none;padding:0;font-size:18px;line-height:1}.attachment-remove:hover{color:var(--error)}.btn-text{color:var(--muted-foreground);font-size:var(--text-sm);cursor:pointer;transition:color var(--transition-snap);background:0 0;border:none;padding:0;text-decoration:underline}.btn-text:hover{color:var(--foreground)}.comment-form .btn-ghost{color:var(--muted-foreground);padding:var(--space-2) var(--space-4);border-radius:var(--radius-base);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-snap);background:0 0;border:1px solid #0000}.comment-form .btn-ghost:hover{background:var(--muted);color:var(--foreground);border-color:var(--border)}@media (max-width:768px){.comment-toolbar{align-items:stretch;gap:var(--space-2);flex-direction:column}.comment-toolbar-left{order:2;overflow-x:auto}.comment-toolbar-right{order:1;justify-content:flex-end}}.status-option{padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--muted);color:var(--muted-foreground);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast)}.status-option.active,.status-option:hover{border-color:var(--muted-foreground);color:var(--foreground)}.status-option.approved.active{border-color:var(--success);color:var(--success);background:var(--success)}@supports (color:color-mix(in lab, red, red)){.status-option.approved.active{background:color-mix(in srgb, var(--success) 10%, var(--card))}}.status-option.changes-requested.active{border-color:var(--warning);color:var(--warning);background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.status-option.changes-requested.active{background:color-mix(in srgb, var(--warning) 10%, var(--card))}}.status-option.rejected.active{border-color:var(--error);color:var(--error);background:var(--error)}@supports (color:color-mix(in lab, red, red)){.status-option.rejected.active{background:color-mix(in srgb, var(--error) 10%, var(--card))}}.comment-textarea{width:100%;min-height:100px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);color:var(--foreground);font-size:var(--text-sm);line-height:var(--leading-relaxed);resize:vertical;margin-bottom:var(--space-3);font-family:inherit}.comment-textarea:focus{border-color:var(--ring);box-shadow:var(--focus-ring);outline:none}.comment-textarea::placeholder{color:var(--muted-foreground)}.comment-form-actions{justify-content:space-between;align-items:center;display:flex}.comment-form-help{color:var(--muted-foreground);font-size:var(--text-xs);align-items:center;gap:var(--space-1);display:flex}.comment-form-buttons{gap:var(--space-2);display:flex}.comment{padding:var(--space-3);border-radius:var(--radius-lg);transition:background var(--transition-fast);background:0 0;border:1px solid #0000}.comment+.comment{margin-top:var(--space-3)}.comment:hover{background:var(--muted)}.comment .comment-header{margin-bottom:var(--space-2)}.comment .comment-author strong{font-weight:var(--font-semibold)}.comment .comment-actions{gap:var(--space-2);margin-top:var(--space-2);display:flex}.status-checkbox.open{border:1px solid var(--border);border-radius:var(--radius-md);justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.status-checkbox.resolved{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.status-checkbox.resolved{background:color-mix(in srgb, var(--success) 15%, var(--card))}}.status-checkbox.resolved{color:var(--status-approved);border:1px solid var(--success);border-radius:var(--radius-md);justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.comments-empty{text-align:center;padding:var(--space-8) var(--space-4);color:var(--muted-foreground)}.comments-empty-icon{font-size:var(--text-4xl);margin-bottom:var(--space-4);opacity:.5}.comments-empty-title{font-size:var(--text-lg);font-weight:var(--font-medium);color:var(--foreground);margin-bottom:var(--space-2)}.comments-empty-description{font-size:var(--text-sm);line-height:var(--leading-relaxed)}@media (max-width:768px){.comment-item{gap:var(--space-2);padding:var(--space-2)}.comment-avatar{width:32px;height:32px;font-size:var(--text-xs)}.comment-header{align-items:flex-start;gap:var(--space-1);flex-direction:column}.comment-status-badge{align-self:flex-start;margin-left:0}.comment-form{padding:var(--space-3)}.comment-form-header{align-items:stretch;gap:var(--space-3);flex-direction:column}.comment-form-status{flex-wrap:wrap;justify-content:flex-start}.comment-form-actions{gap:var(--space-3);flex-direction:column;align-items:stretch}.comment-form-buttons{justify-content:flex-end}}@keyframes comment-highlight{0%{background:color-mix(in srgb, var(--warning) 30%, var(--card));transform:translate(-2px)}to{background:color-mix(in srgb, var(--warning) 10%, var(--card));transform:translate(0)}}.comment-frame.clickable{color:var(--foreground);cursor:pointer;font-weight:var(--font-medium);margin-left:var(--space-1);text-decoration:underline}.comment-frame.clickable:hover{color:var(--muted-foreground);text-decoration:none}.comment-navigation{gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.comment-nav-btn{background:var(--muted);color:var(--muted-foreground);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:var(--space-1);display:flex}.comment-nav-btn:hover{background:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.comment-nav-btn:hover{background:color-mix(in srgb, var(--muted-foreground) 10%, var(--muted))}}.comment-nav-btn:hover{color:var(--foreground);border-color:var(--muted-foreground)}.comment-nav-btn:disabled{opacity:.5;cursor:not-allowed}.comment-nav-btn:disabled:hover{background:var(--muted);color:var(--muted-foreground);border-color:var(--border)}.comments-count-badge{min-width:18px;padding:1px var(--space-1);margin-left:var(--space-1);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--muted-foreground);font-family:var(--font-mono);text-align:center;font-size:10px;line-height:1.4;display:inline-block}.comments-count-badge[hidden]{display:none}.comments-filter{padding:var(--space-2) var(--space-2) 0 var(--space-2);gap:2px;display:flex}.comments-filter-btn{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:var(--muted-foreground);font-size:11px;font-weight:var(--font-semibold);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:color var(--transition-snap), background var(--transition-snap), border-color var(--transition-snap);background:0 0;border:1px solid #0000;flex:1}.comments-filter-btn:hover{background:var(--muted);color:var(--foreground)}.comments-filter-btn.is-active{background:var(--muted);border-color:var(--muted-foreground);color:var(--foreground)}.comments-filter-btn:focus-visible{outline:2px solid var(--ring);outline-offset:1px}.comment-section-count{margin-left:var(--space-1);font-family:var(--font-mono);color:var(--muted-foreground)}.comment-frame-badge.is-general{cursor:default;color:var(--muted-foreground)}.comment-origin-badge{margin-left:var(--space-1);background:var(--info-surface);border:1px solid var(--info-border);border-radius:var(--radius-sm);color:var(--info-text);font-size:10px;font-weight:var(--font-semibold);letter-spacing:.04em;text-transform:uppercase;padding:0 4px}.comment-edited-badge{margin-left:var(--space-1);color:var(--muted-foreground);font-size:10px;font-style:italic}.comment-reply-count{color:var(--muted-foreground);font-family:var(--font-mono);margin-left:auto;font-size:11px}.comment-status-checkbox input:disabled+.status-checkbox{opacity:.4;cursor:not-allowed}.comment-form__anchor{padding:0 var(--space-1);color:var(--muted-foreground);font-family:var(--font-mono);white-space:nowrap;font-size:11px}.comment-form__scope{color:var(--muted-foreground);cursor:pointer;align-items:center;gap:4px;font-size:11px;display:inline-flex}.comment-form__scope input{accent-color:var(--primary);margin:0}.comment-attachments{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.comment-attachments .attachment-image{max-width:120px}.comment-attachments .attachment-thumbnail{border:1px solid var(--border);border-radius:var(--radius-sm);object-fit:cover;background:var(--muted);width:120px;height:68px;display:block}.comment-attachments .attachment-filename{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;overflow:hidden}.comment-attachments .attachment-link{max-width:100%;padding:2px var(--space-2);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted-foreground);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;transition:color var(--transition-snap), border-color var(--transition-snap);align-items:center;gap:4px;text-decoration:none;display:inline-flex;overflow:hidden}.comment-attachments .attachment-link:hover{border-color:var(--muted-foreground);color:var(--foreground)}.chat-page-surface{height:calc(100vh - 200px);min-height:320px}.chat-panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);height:100%;display:flex;overflow:hidden}.chat-sidebar{border-right:1px solid var(--border);background:var(--sidebar);flex-direction:column;width:280px;display:flex}.chat-sidebar-header{padding:var(--space-4);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.chat-sidebar-header h3{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--foreground);margin:0}.chat-sidebar-header .btn-icon{padding:var(--space-2);cursor:pointer;color:var(--muted-foreground);border-radius:var(--radius-sm);transition:background var(--transition-snap), color var(--transition-snap);background:0 0;border:none}.chat-sidebar-header .btn-icon:hover{background:var(--sidebar-accent);color:var(--foreground)}.chat-channels-list{padding:var(--space-2);flex:1;overflow-y:auto}.channel-group{margin-bottom:var(--space-4)}.channel-group-header{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.5px;padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2)}.channel-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-snap), color var(--transition-snap);display:flex;position:relative}.channel-item:hover{background:var(--sidebar-accent)}.channel-item.active{background:var(--primary);color:var(--primary-foreground)}.channel-item.active .channel-name,.channel-item.active .channel-meta{color:var(--primary-foreground)}.channel-icon{width:18px;color:var(--muted-foreground);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.channel-item.active .channel-icon,.entity-header.active .channel-icon{color:var(--primary-foreground)}.channel-info{flex:1;min-width:0}.channel-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.channel-meta{font-size:var(--text-xs);color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.unread-badge{background:var(--primary);color:var(--primary-foreground);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--font-semibold);padding:1px var(--space-2);border-radius:var(--radius-full);text-align:center;min-width:18px}.channel-item.active .unread-badge,.entity-header.active .unread-badge{background:var(--primary-foreground);color:var(--primary)}.chat-empty-state{text-align:center;padding:var(--space-8) var(--space-4);color:var(--muted-foreground)}.chat-empty-state p{margin:var(--space-2) 0}.chat-main{background:var(--card);flex-direction:column;flex:1;display:flex}.chat-placeholder{height:100%;color:var(--muted-foreground);flex-direction:column;justify-content:center;align-items:center;display:flex}.chat-placeholder-icon{margin-bottom:var(--space-4);opacity:.5}.chat-placeholder h3{font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-2)}.chat-placeholder p{font-size:var(--text-sm)}.chat-header{padding:var(--space-4);border-bottom:1px solid var(--border);background:var(--card)}.chat-header-info h3{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--foreground);margin:0 0 var(--space-1) 0}.chat-description{font-size:var(--text-sm);color:var(--muted-foreground);margin:0}.task-filter-dropdown{margin-top:var(--space-3);align-items:center;gap:var(--space-2);display:flex}.task-filter-dropdown label{font-size:var(--text-sm);color:var(--muted-foreground);font-weight:var(--font-medium);margin:0}.task-filter-select{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-base);background:var(--card);color:var(--foreground);font-size:var(--text-sm);cursor:pointer;min-width:200px;transition:border-color var(--transition-snap), box-shadow var(--transition-snap)}.task-filter-select:hover{border-color:var(--muted-foreground)}.task-filter-select:focus{border-color:var(--ring);box-shadow:var(--focus-ring-tight);outline:none}.task-filter-select option{padding:var(--space-2)}.chat-messages{padding:var(--space-4);gap:var(--space-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-empty-messages{text-align:center;padding:var(--space-8);color:var(--muted-foreground);font-size:var(--text-sm)}.chat-message{gap:var(--space-3);animation:chat-message-in var(--transition-fast);scroll-margin:var(--space-4);display:flex}@keyframes chat-message-in{0%{opacity:0}to{opacity:1}}.chat-message.is-highlighted{background:var(--muted);border-radius:var(--radius-base);outline:1px solid var(--border)}.message-avatar{border-radius:var(--radius-full);background:var(--primary);width:36px;height:36px;color:var(--primary-foreground);font-weight:var(--font-semibold);font-size:var(--text-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-message.own-message .message-avatar{background:var(--muted-foreground)}.message-content{flex:1;min-width:0}.message-header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);display:flex}.message-author{font-weight:var(--font-semibold);font-size:var(--text-sm);color:var(--foreground)}.message-time{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted-foreground)}.message-edited{font-size:var(--text-xs);color:var(--muted-foreground);font-style:italic}.message-actions{gap:var(--space-1);opacity:0;transition:opacity var(--transition-snap);margin-left:auto;display:inline-flex}.chat-message:hover .message-actions,.message-actions:focus-within{opacity:1}.message-action{padding:var(--space-1);cursor:pointer;color:var(--muted-foreground);border-radius:var(--radius-sm);transition:background var(--transition-snap), color var(--transition-snap);background:0 0;border:none;line-height:1}.message-action:hover{background:var(--muted);color:var(--foreground)}.chat-load-older{align-self:center;align-items:center;gap:var(--space-2);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-base);color:var(--muted-foreground);font-size:var(--text-xs);padding:var(--space-2) var(--space-3);cursor:pointer;transition:background var(--transition-snap), color var(--transition-snap);display:inline-flex}.chat-load-older:hover:not(:disabled){background:var(--muted);color:var(--foreground)}.chat-load-older:disabled{cursor:default;opacity:.6}.message-text{font-size:var(--text-sm);color:var(--foreground);line-height:var(--leading-relaxed);word-wrap:break-word}.message-context{font-size:var(--text-xs);color:var(--muted-foreground);background:var(--muted);padding:var(--space-2) var(--space-3);border-radius:var(--radius-base);margin-bottom:var(--space-2);border-left:3px solid var(--foreground)}.message-context a{color:var(--foreground);text-decoration:none}.message-context a:hover{text-decoration:underline}.chat-typing-indicator{padding:var(--space-2) var(--space-4);font-size:var(--text-xs);color:var(--muted-foreground);font-style:italic}.chat-input-area{border-top:1px solid var(--border);padding:var(--space-4);background:var(--card)}.chat-input-wrapper{gap:var(--space-3);align-items:flex-end;display:flex}.chat-input{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);font-size:var(--text-sm);color:var(--foreground);resize:none;min-height:40px;max-height:150px;transition:border-color var(--transition-snap);flex:1;font-family:inherit}.chat-input:focus{border-color:var(--ring);box-shadow:var(--focus-ring-tight);outline:none}.chat-input::placeholder{color:var(--muted-foreground)}#send-message-btn{padding:var(--space-3) var(--space-4);flex-shrink:0}.chat-error{height:100%;padding:var(--space-8);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.chat-error p{color:var(--muted-foreground);margin:var(--space-2) 0}.error-details{font-size:var(--text-sm);color:var(--muted-foreground);font-family:var(--font-mono)}@media (max-width:768px){.chat-sidebar{width:240px}}@media (max-width:640px){.chat-panel{flex-direction:column}.chat-sidebar{border-right:none;border-bottom:1px solid var(--border);width:100%;height:200px}}.entity-channel-item{margin-bottom:var(--space-2)}.entity-header{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-snap), color var(--transition-snap);display:flex;position:relative}.entity-header:hover{background:var(--sidebar-accent)}.entity-header.active{background:var(--primary);color:var(--primary-foreground)}.entity-header.active .channel-name,.entity-header.active .channel-meta{color:var(--primary-foreground)}.entity-expand-icon{font-size:var(--text-xs);color:var(--muted-foreground);transition:transform var(--transition-snap);margin-left:auto}.entity-channel-item.expanded .entity-expand-icon{transform:rotate(90deg)}.task-submenu{margin-left:var(--space-8);padding:var(--space-2) 0;border-left:2px solid var(--border)}.task-filter-item{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:var(--radius-sm);margin:var(--space-1) 0;transition:background var(--transition-snap), color var(--transition-snap);display:flex}.task-filter-item:hover{background:var(--sidebar-accent)}.task-filter-item.active{background:var(--sidebar-accent);color:var(--foreground);font-weight:var(--font-medium)}.task-icon{font-size:var(--text-sm);text-align:center;width:16px;color:var(--muted-foreground)}.task-name{font-size:var(--text-sm);color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.task-filter-item.active .task-icon,.task-filter-item.active .task-name{color:var(--foreground)}.task-submenu-empty{font-size:var(--text-xs);color:var(--muted-foreground);padding:var(--space-2) var(--space-3);font-style:italic}.message-task-badge{background:var(--muted);color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--font-medium);padding:1px var(--space-2);border-radius:var(--radius-full);margin-right:var(--space-2);display:inline-block}.message-task-badge-sm{background:var(--muted);color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--font-medium);padding:1px var(--space-2);border-radius:var(--radius-full);margin-left:var(--space-1);display:inline-block}.message-context{margin-top:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--muted);border-left:3px solid var(--foreground);border-radius:var(--radius-base);font-size:var(--text-sm);color:var(--muted-foreground)}.context-link{color:var(--foreground);font-weight:var(--font-medium);text-decoration:none}.context-link:hover{text-decoration:underline}.player-chat-bubble-container{z-index:1000;position:fixed;top:80px;right:20px}.chat-bubble{position:relative}.chat-bubble-panel{background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-lg);width:380px;max-height:500px;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:absolute;top:0;right:0}.chat-bubble-header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:var(--card);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.chat-bubble-header h4{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--foreground);margin:0}.chat-bubble-close{padding:var(--space-2);cursor:pointer;color:var(--muted-foreground);border-radius:var(--radius-sm);transition:background var(--transition-snap), color var(--transition-snap);background:0 0;border:none;line-height:1}.chat-bubble-close:hover{background:var(--muted);color:var(--foreground)}.chat-bubble-messages{padding:var(--space-4);flex:auto;min-height:0;max-height:340px;overflow:hidden auto}.chat-bubble-messages::-webkit-scrollbar{width:8px}.chat-bubble-messages::-webkit-scrollbar-track{background:0 0}.chat-bubble-messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-sm)}.chat-bubble-messages::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground)}.chat-bubble-messages>*{margin-bottom:var(--space-3)}.chat-bubble-messages>:last-child{margin-bottom:0}.chat-bubble-message{gap:var(--space-2);align-items:flex-start;display:flex}.chat-bubble-message.own-message{flex-direction:row-reverse}.message-avatar-sm{border-radius:var(--radius-full);background:var(--primary);width:28px;height:28px;color:var(--primary-foreground);font-size:var(--text-xs);font-weight:var(--font-semibold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.message-content-sm{flex:1;min-width:0}.message-header-sm{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);flex-wrap:wrap;display:flex}.message-author-sm{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground)}.message-time-sm{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted-foreground);margin-left:auto}.message-text-sm{font-size:var(--text-sm);color:var(--foreground);word-wrap:break-word}.chat-bubble-message.own-message .message-text-sm{background:var(--muted);padding:var(--space-2) var(--space-3);border-radius:var(--radius-base)}.message-item-indicator{font-size:var(--text-sm);cursor:help}.chat-bubble-typing{padding:var(--space-1) var(--space-4);font-size:var(--text-xs);color:var(--muted-foreground);border-top:1px solid var(--border);flex-shrink:0;font-style:italic}.chat-bubble-input{padding:var(--space-3);border-top:1px solid var(--border);gap:var(--space-2);background:var(--card);flex-shrink:0;display:flex}.chat-bubble-input .chat-input{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);resize:none;background:var(--card);min-height:36px;max-height:100px;color:var(--foreground);flex:1}.chat-bubble-input .btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.chat-loading,.chat-empty,.chat-error{text-align:center;padding:var(--space-8);color:var(--muted-foreground);font-size:var(--text-sm)}.chat-error{color:var(--error)}.chat-bubble-badge{z-index:1;min-width:18px;height:18px;padding:0 var(--space-1);background:var(--primary);color:var(--primary-foreground);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--font-semibold);border-radius:var(--radius-full);justify-content:center;align-items:center;display:inline-flex;position:absolute;top:-6px;right:-6px}.chat-bubble-badge[hidden],.chat-bubble-panel[hidden],.chat-bubble-typing[hidden],.chat-typing-indicator[hidden]{display:none}@media (max-width:768px){.chat-bubble-panel{width:320px}}@media (max-height:720px){.chat-bubble-panel{max-height:calc(100vh - 120px)}.chat-bubble-messages{max-height:none}}@media (max-width:480px){.chat-bubble-panel{width:calc(100vw - var(--space-8));right:calc(var(--space-4) * -1)}}.mention{color:var(--foreground);background:var(--muted);border-radius:var(--radius-sm);font-weight:var(--font-medium);padding:1px 4px;text-decoration:none}.mention--you{color:var(--primary-foreground);background:var(--primary)}.mention-dropdown{background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:10000;min-width:240px;max-width:min(360px,100vw - 16px);max-height:300px;padding:var(--space-1);position:fixed;overflow-y:auto}.mention-dropdown[hidden]{display:none}.mention-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-snap);display:flex}.mention-item.selected{background:var(--muted)}.mention-avatar{border-radius:var(--radius-full);background:var(--primary);width:28px;height:28px;color:var(--primary-foreground);font-size:var(--text-xs);font-weight:var(--font-semibold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.mention-info{flex:1;min-width:0}.mention-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mention-username{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mention-empty{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--muted-foreground)}.mention-textarea-wrapper{display:block;position:relative}.mention-highlight-overlay{padding:var(--space-3);border-radius:var(--radius-md);font-family:inherit;font-size:inherit;line-height:inherit;letter-spacing:inherit;word-wrap:break-word;white-space:pre-wrap;pointer-events:none;color:#0000;z-index:1;background:0 0;border:1px solid #0000;position:absolute;inset:0;overflow:auto}.mention-textarea-wrapper textarea{z-index:2;background:0 0;position:relative}.mention-highlight-overlay mark.mention-highlight{color:var(--foreground);background:var(--muted);border-radius:var(--radius-sm);font-weight:var(--font-medium);padding:1px 2px}.annotation-text-input{box-sizing:border-box;border-radius:var(--radius-sm);font-family:var(--font-sans);caret-color:currentColor;box-shadow:0 2px 8px #00000059}.annotation-text-input::placeholder{color:var(--muted-foreground);opacity:.7}.annotation-text-input:focus{box-shadow:var(--focus-ring-tight)}.mp-sketch-controls{align-items:center;gap:var(--space-2);flex-wrap:wrap}.comment-drawing-tools{row-gap:var(--space-1);flex-wrap:wrap}.drawing-tool-divider{width:1px;height:20px;margin:0 var(--space-1);background:var(--border);flex:none}.drawing-tool-divider.is-spacer{margin-left:auto}.comment-drawing-tools .drawing-tool-btn.clear-btn{margin-left:0}.drawing-width{align-items:center;display:inline-flex}.drawing-width-select{height:32px;padding:0 var(--space-1);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted-foreground);font-family:var(--font-mono);font-size:var(--text-xs);cursor:pointer;transition:background var(--transition-snap), color var(--transition-snap), border-color var(--transition-snap)}.drawing-width-select:hover{background:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.drawing-width-select:hover{background:color-mix(in srgb, var(--muted-foreground) 10%, var(--muted))}}.drawing-width-select:hover{color:var(--foreground);border-color:var(--muted-foreground)}.mp-annotation-authors{left:var(--space-2);bottom:var(--space-2);z-index:11;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);pointer-events:none;background:#0000008c;border:1px solid #ffffff1f;flex-direction:column;gap:2px;max-width:40%;display:flex;position:absolute}.mp-annotation-authors[hidden]{display:none}.mp-annotation-authors-item{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:#ffffffdb;line-height:1.4;display:flex}.mp-annotation-authors-dot{border-radius:var(--radius-full);flex:none;width:8px;height:8px;box-shadow:0 0 0 1px #00000080}.mp-annotation-authors-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mp-annotation-authors-count{padding-left:var(--space-1);font-family:var(--font-mono);color:#fff9;margin-left:auto}@media (max-width:768px){.annotation-text-input{min-width:80px;max-width:280px;font-size:14px}}@media (max-width:480px){.annotation-text-input{max-width:220px}}@media (prefers-contrast:high){.annotation-text-input{color:canvastext;background-color:canvas;border-width:3px}}@media (prefers-reduced-motion:reduce){.annotation-text-input{transition:none}}.permissions-config{gap:var(--space-4);max-height:500px;padding:var(--space-3);background:var(--muted);border-radius:var(--radius-md);border:1px solid var(--border);flex-direction:column;display:flex;overflow-y:auto}.permission-filter{top:calc(var(--space-3) * -1);z-index:1;padding-bottom:var(--space-2);background:var(--muted);position:sticky}.permission-filter-input{width:100%}.permission-category{background:var(--card);border-radius:var(--radius-md);padding:var(--space-3);border:1px solid var(--border)}.permission-category-header{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border);display:flex}.permission-category-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--foreground);margin:0}.permission-category-toggle-label{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--muted-foreground);cursor:pointer;-webkit-user-select:none;user-select:none;margin:0;display:flex}.permission-category-toggle{cursor:pointer;width:16px;height:16px}.permission-item[hidden],.permission-category[hidden]{display:none}.permissions-unavailable{padding:var(--space-3);font-size:var(--text-sm);color:var(--muted-foreground);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);margin:0}.permission-group-users{font-size:var(--text-sm);color:var(--muted-foreground)}.permission-list{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));display:grid}.permission-item{align-items:center;gap:var(--space-2);padding:var(--space-1);display:flex}.permission-item input[type=checkbox]{cursor:pointer;width:18px;height:18px}.permission-label{font-size:var(--text-sm);color:var(--muted-foreground);cursor:pointer;-webkit-user-select:none;user-select:none;margin:0}.permission-label:hover{color:var(--foreground)}.permission-badge{padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:capitalize;align-items:center;display:inline-flex}.permission-badge.admin{background:var(--primary);color:var(--primary-foreground)}.permission-badge.user{background:var(--muted);color:var(--muted-foreground)}#modal-create-group .modal-content,#modal-edit-group .modal-content{max-width:800px;max-height:90vh}#modal-create-group .modal-body,#modal-edit-group .modal-body{max-height:calc(90vh - 200px);overflow-y:auto}.mp-session-btn{align-items:center;gap:var(--space-2);display:inline-flex}.mp-session-btn.active{background:var(--success);border-color:var(--success);color:var(--success-foreground)}.mp-session-btn.active:hover{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.mp-session-btn.active:hover{background:color-mix(in srgb, var(--success) 88%, black)}}.mp-session-btn.active .status-dot.is-online{background:var(--success-foreground)}.mp-session-panel{top:calc(100% + var(--space-1));right:var(--space-3);width:380px;max-width:calc(100vw - var(--space-6));background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-popover);position:absolute;overflow:hidden}.mp-session-panel[hidden]{display:none}.mp-video-header>.mp-session-panel{right:0}.mp-session-panel-content{padding:var(--space-3);max-height:min(60vh,520px);overflow-y:auto}.session-info-banner{gap:var(--space-3);padding:var(--space-3);background:var(--muted);border:1px solid var(--border);border-left:2px solid var(--success);border-radius:var(--radius-md);flex-direction:column;display:flex}.session-info-content{align-items:center;gap:var(--space-2);min-width:0;display:flex}.session-info-icon{flex:none;display:inline-flex}.session-info-text{min-width:0}.session-info-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--foreground);line-height:var(--leading-tight);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.session-info-subtitle{color:var(--muted-foreground);font-size:11px;line-height:var(--leading-tight);margin-top:1px}.session-link-display{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-1) var(--space-2);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex}.session-link-label{font-size:10px;font-weight:var(--font-semibold);letter-spacing:.05em;text-transform:uppercase;color:var(--muted-foreground);flex:none}.session-link-text{min-width:0;font-family:var(--font-mono);color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;overflow:hidden}.session-info-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.session-info-actions .session-link-display{flex:1 0 100%}.session-link-copy-btn,.session-leave-btn{height:26px;padding:0 var(--space-3);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--foreground);font-family:inherit;font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;cursor:pointer;transition:background var(--transition-snap), border-color var(--transition-snap), color var(--transition-snap);flex:1;line-height:1}.session-link-copy-btn:hover,.session-leave-btn:hover{background:var(--muted);border-color:var(--muted-foreground);color:var(--foreground)}.session-link-copy-btn.copied{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.session-link-copy-btn.copied{background:color-mix(in srgb, var(--success) 10%, var(--card))}}.session-link-copy-btn.copied{border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.session-link-copy-btn.copied{border-color:color-mix(in srgb, var(--success) 30%, var(--card))}}.session-link-copy-btn.copied{color:var(--status-approved)}.session-leave-btn:hover{border-color:var(--error);color:var(--error)}.session-participants{margin-top:var(--space-3)}.session-participants-header{justify-content:space-between;align-items:center;gap:var(--space-2);padding-bottom:var(--space-2);margin-bottom:var(--space-2);border-bottom:1px solid var(--border);display:flex}.session-participants-title{font-size:10px;font-weight:var(--font-semibold);letter-spacing:.05em;text-transform:uppercase;color:var(--muted-foreground)}.session-participants-count{font-family:var(--font-mono);color:var(--muted-foreground);font-size:11px}.session-participants-list{flex-direction:column;gap:1px;display:flex}.session-participant{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2);border-radius:var(--radius-sm);transition:background var(--transition-snap);display:flex}.session-participant:hover{background:var(--muted)}.session-participant-color{border-radius:var(--radius-full);flex:none;width:8px;height:8px}.session-participant-name{min-width:0;font-size:var(--text-sm);color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.session-participant-badge{height:18px;padding:0 var(--space-2);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--muted-foreground);font-size:10px;font-weight:var(--font-semibold);letter-spacing:.05em;text-transform:uppercase;flex:none;align-items:center;line-height:1;display:inline-flex}.session-create-prompt{text-align:center;padding:var(--space-4) var(--space-2) var(--space-2)}.session-create-prompt-text{font-size:var(--text-sm);color:var(--muted-foreground);line-height:var(--leading-normal);margin-bottom:var(--space-4)}#mp-session-create-btn{width:100%}.session-modal{background:var(--scrim-strong);z-index:var(--z-modal,1050);opacity:0;pointer-events:none;transition:opacity var(--transition-fast);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.session-modal.active{opacity:1;pointer-events:auto}.session-modal-content{width:min(440px, calc(100vw - var(--space-8)));padding:var(--space-5);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2xl)}.session-modal-header{margin-bottom:var(--space-4)}.session-modal-title{margin:0 0 var(--space-1);font-size:var(--text-lg);font-weight:var(--font-semibold);letter-spacing:-.01em;color:var(--foreground)}.session-modal-subtitle{font-size:var(--text-sm);color:var(--muted-foreground);margin:0}.session-modal-body,.session-form-group{margin-bottom:var(--space-4)}.session-form-group:last-child{margin-bottom:0}.session-form-group label{margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground);display:block}.session-form-group input[type=text],.session-form-group select{width:100%;height:32px;padding:0 var(--space-3);background:var(--card);border:1px solid var(--input);border-radius:var(--radius-sm);color:var(--foreground);font-family:inherit;font-size:var(--text-sm);transition:border-color var(--transition-snap), box-shadow var(--transition-snap)}.session-form-group input[type=text]:focus,.session-form-group select:focus{border-color:var(--ring);box-shadow:var(--focus-ring);outline:none}.session-toggle{margin-top:var(--space-3)}.session-checkbox{align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);color:var(--muted-foreground);cursor:pointer;display:flex}.session-checkbox input{accent-color:var(--primary);margin-top:2px}.session-toggle-hint{margin:var(--space-1) 0 0 22px;color:var(--muted-foreground);font-size:11px;line-height:var(--leading-snug)}.session-link-container{gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-2);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-md);display:flex}.session-link-container[hidden]{display:none}.session-link-input{min-width:0;height:26px;padding:0 var(--space-2);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted-foreground);font-family:var(--font-mono);flex:1;font-size:11px}.session-link-container .session-link-copy-btn{flex:none}.session-modal-actions{gap:var(--space-2);justify-content:flex-end;display:flex}.session-pointers-overlay{pointer-events:none;z-index:100;position:absolute;inset:0}.session-pointer{color:var(--pointer-color,var(--foreground));pointer-events:none;filter:drop-shadow(0 1px 3px #000000b3);z-index:101;transition:left var(--transition-snap), top var(--transition-snap);position:absolute;transform:translate(-7px,-2px)}.session-pointer svg{display:block}.pointer-label{padding:2px var(--space-2);background:var(--pointer-color,var(--foreground));border-radius:var(--radius-sm);color:var(--primary-foreground);font-size:10px;font-weight:var(--font-semibold);letter-spacing:.02em;white-space:nowrap;box-shadow:var(--shadow-sm);line-height:1.4;position:absolute;top:20px;left:12px}#pointer-tool-btn.active{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.is-guest-session #mp-comments-panel,.is-guest-session #mp-chat-toggle,.is-guest-session .mp-sketch-controls,.is-guest-session #player-chat-bubble-container{display:none}.session-input-error{border-color:var(--error)!important}.upload-container{margin-bottom:var(--space-6)}.drop-zone{border:2px dashed var(--border);border-radius:var(--radius-lg);padding:var(--space-6);text-align:center;background:var(--muted);transition:all var(--transition-fast);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;min-height:200px;display:flex;position:relative}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--foreground);background:var(--card);border-style:solid}.drop-zone.drag-over{box-shadow:var(--shadow-md);transform:scale(1.02)}.drop-zone-icon{font-size:var(--text-4xl);color:var(--muted-foreground);margin-bottom:var(--space-4);transition:all var(--transition-fast)}.drop-zone:hover .drop-zone-icon,.drop-zone.drag-over .drop-zone-icon{color:var(--foreground);transform:scale(1.1)}.drop-zone-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--foreground);margin-bottom:var(--space-2)}.drop-zone-description{color:var(--muted-foreground);font-size:var(--text-sm);margin-bottom:var(--space-4);line-height:var(--leading-relaxed)}.drop-zone-formats{color:var(--muted-foreground);font-size:var(--text-xs);margin-top:var(--space-2)}.file-list{margin:var(--space-4) 0 0;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card);max-height:300px;padding:0;list-style:none;overflow-y:auto}.file-list:empty{display:none}.file-list-item{padding:var(--space-3);border-bottom:1px solid var(--border);transition:background var(--transition-fast);justify-content:space-between;align-items:center;display:flex}.file-list-item:last-child{border-bottom:none}.file-list-item:hover{background:var(--muted)}.file-info{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.file-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.file-meta{font-size:var(--text-xs);color:var(--muted-foreground);gap:var(--space-2);display:flex}.file-actions{gap:var(--space-2);align-items:center;display:flex}.file-remove{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;width:24px;height:24px;color:var(--muted-foreground);font-size:var(--text-xs);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.file-remove:hover{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.file-remove:hover{background:color-mix(in srgb, var(--error) 8%, var(--card))}}.file-remove:hover{color:var(--error);border-color:var(--error)}.upload-progress{margin-top:var(--space-4)}.progress-container{background:var(--muted);border-radius:var(--radius-full);height:8px;margin-bottom:var(--space-2);border:1px solid var(--border);overflow:hidden}.progress-bar{background:var(--primary);width:0;height:100%;transition:width var(--transition-slow);border-radius:var(--radius-full);position:relative}.progress-bar:after{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);animation:2s ease-in-out infinite progress-shine;position:absolute;inset:0}@keyframes progress-shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-text{font-size:var(--text-xs);color:var(--muted-foreground);justify-content:space-between;align-items:center;display:flex}.progress-status{font-weight:var(--font-medium)}.progress-percentage{font-family:var(--font-mono)}.upload-idle .drop-zone{border-style:dashed}.upload-active .drop-zone{border-color:var(--foreground);background:var(--card);pointer-events:none}.upload-complete .drop-zone{border-color:var(--success);background:var(--success)}@supports (color:color-mix(in lab, red, red)){.upload-complete .drop-zone{background:color-mix(in srgb, var(--success) 5%, var(--card))}}.upload-error .drop-zone{border-color:var(--error);background:var(--error)}@supports (color:color-mix(in lab, red, red)){.upload-error .drop-zone{background:color-mix(in srgb, var(--error) 5%, var(--card))}}.upload-message{margin-top:var(--space-3);padding:var(--space-3);border-radius:var(--radius-lg);font-size:var(--text-sm);align-items:center;gap:var(--space-2);display:flex}.upload-message.success{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.upload-message.success{background:color-mix(in srgb, var(--success) 8%, var(--card))}}.upload-message.success{border:1px solid var(--success)}@supports (color:color-mix(in lab, red, red)){.upload-message.success{border:1px solid color-mix(in srgb, var(--success) 25%, var(--card))}}.upload-message.success{color:var(--status-approved)}.upload-message.error{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.upload-message.error{background:color-mix(in srgb, var(--error) 8%, var(--card))}}.upload-message.error{border:1px solid var(--error)}@supports (color:color-mix(in lab, red, red)){.upload-message.error{border:1px solid color-mix(in srgb, var(--error) 25%, var(--card))}}.upload-message.error{color:var(--status-rejected)}.upload-message.warning{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.upload-message.warning{background:color-mix(in srgb, var(--warning) 8%, var(--card))}}.upload-message.warning{border:1px solid var(--warning)}@supports (color:color-mix(in lab, red, red)){.upload-message.warning{border:1px solid color-mix(in srgb, var(--warning) 25%, var(--card))}}.upload-message.warning{color:var(--status-changes-requested)}.upload-message.info{background:var(--info)}@supports (color:color-mix(in lab, red, red)){.upload-message.info{background:color-mix(in srgb, var(--info) 8%, var(--card))}}.upload-message.info{border:1px solid var(--info)}@supports (color:color-mix(in lab, red, red)){.upload-message.info{border:1px solid color-mix(in srgb, var(--info) 25%, var(--card))}}.upload-message.info{color:var(--info)}.drop-overlay{background:var(--foreground);position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.drop-overlay{background:color-mix(in srgb, var(--foreground) 6%, transparent)}}.drop-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;justify-content:center;align-items:center;display:none}.drop-overlay.active{display:flex}.drop-overlay-content{text-align:center;color:var(--foreground);padding:var(--space-8);border:3px dashed var(--foreground);border-radius:var(--radius-lg);background:var(--card);max-width:400px}.drop-overlay-icon{font-size:var(--text-4xl);margin-bottom:var(--space-4)}.drop-overlay-title{font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--space-2)}.drop-overlay-description{font-size:var(--text-base);opacity:.8}@media (max-width:768px){.drop-zone{padding:var(--space-4);min-height:150px}.drop-zone-icon{font-size:var(--text-3xl);margin-bottom:var(--space-3)}.drop-zone-title{font-size:var(--text-lg)}.file-list{max-height:200px}.file-meta{gap:var(--space-1);flex-direction:column}.upload-message{padding:var(--space-2);font-size:var(--text-xs)}}.entities-layout{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(360px,1fr));align-items:start;margin-top:0;display:grid}.entities-left,.entities-right{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.entity-section{min-height:240px;position:relative}.section-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border);display:flex}.section-header h2{font-size:var(--text-base);font-weight:var(--font-semibold);letter-spacing:-.01em;color:var(--foreground);margin:0}.section-header h2 .entity-count{margin-left:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--font-normal);color:var(--muted-foreground)}.inline-form input{min-width:180px}.inline-form{gap:var(--space-2);display:flex}.entity-search{align-items:center;gap:var(--space-2);display:flex}.entity-search input[type=search]{min-width:220px}.entity-search .muted{font-family:var(--font-mono);white-space:nowrap}.entity-list{gap:var(--space-2);overscroll-behavior:contain;max-height:min(52vh,520px);padding-right:var(--space-2);padding-bottom:var(--space-1);flex-direction:column;display:flex;overflow-y:auto}.entity-card{border:1px solid var(--border);background:var(--card);padding:var(--space-3);border-radius:var(--radius-md);gap:var(--space-2);flex-direction:column;display:flex;position:relative}.entity-card.drag-over{background:var(--muted);border:2px dashed var(--foreground);padding:calc(var(--space-3) - 1px);box-shadow:0 0 0 2px var(--foreground)}@supports (color:color-mix(in lab, red, red)){.entity-card.drag-over{box-shadow:0 0 0 2px color-mix(in srgb, var(--foreground) 12%, transparent)}}.entity-card.drag-over{transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.entity-card-header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.entity-card-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.entity-name{align-items:center;gap:var(--space-2);min-width:0;font-weight:var(--font-medium);font-size:var(--text-sm);color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;display:flex;overflow:hidden}.entity-name .icon{color:var(--muted-foreground);flex-shrink:0}.entity-task-count{font-size:var(--text-xs);color:var(--muted-foreground);white-space:nowrap}.btn-entity-delete:hover{color:var(--error)}.entity-type-pill{height:18px;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--muted);color:var(--muted-foreground);font-size:10px;font-weight:var(--font-semibold);letter-spacing:.05em;text-transform:uppercase;align-items:center;display:inline-flex}.tasks-chip-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.task-chip{background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-xs);cursor:default;color:var(--muted-foreground);align-items:center;gap:4px;padding:2px 6px;display:inline-flex}.task-chip button.remove-task{color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;padding:0;font-size:10px;line-height:1}.task-chip button.remove-task:hover{color:var(--error)}.tasks-palette{min-height:300px}.tasks-list{gap:var(--space-1);overscroll-behavior:contain;max-height:min(60vh,620px);padding:0 var(--space-2) var(--space-1) 0;margin-top:var(--space-3);flex-direction:column;display:flex;overflow-y:auto}.tasks-list li{list-style:none}.task-palette-item{background:var(--card);border:1px solid var(--border);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:grab;font-size:var(--text-sm);transition:background var(--transition-fast),border-color var(--transition-fast), transform var(--transition-fast);justify-content:space-between;align-items:center;display:flex}.task-palette-item:active{cursor:grabbing}.task-palette-item:hover{border-color:var(--muted-foreground);background:var(--muted)}.task-palette-item.dragging{opacity:.5;transform:scale(.95)}.palette-remove{color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;font-size:10px}.palette-remove:hover{color:var(--error)}.asset-shot-drop-hint{font-size:var(--text-xs);color:var(--muted-foreground)}.entity-section.drop-target{border:2px dashed var(--foreground);padding:calc(var(--space-4) - 1px)}.entity-section.drop-target .section-header{color:var(--foreground)}.preview-block{margin-top:var(--space-4)}.preview-header{font-weight:var(--font-medium);margin-bottom:var(--space-2);color:var(--foreground);justify-content:space-between;align-items:center;display:flex}.multi-shot-preview-list{gap:var(--space-2);flex-direction:column;max-height:220px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.multi-shot-preview-item{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);background:var(--card);font-size:var(--text-sm);color:var(--foreground);justify-content:space-between;align-items:center;display:flex}.multi-shot-preview-item .meta{color:var(--muted-foreground)}.multi-shot-preview-item.existing{opacity:.65;background:var(--muted);border-style:dashed}@media (max-width:1080px){.entities-layout{grid-template-columns:1fr}}.entity-props-layout{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.entity-props-left,.entity-props-right{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.entity-props-layout .vertical-scroll{overscroll-behavior:contain;max-height:min(60vh,620px);padding-right:var(--space-2);overflow-y:auto}.entity-props-layout .task-block{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);padding:var(--space-3);margin-bottom:var(--space-2)}.entity-props-layout .task-block-header{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground);display:flex}.entity-props-layout .task-count{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted-foreground);white-space:nowrap}.entity-props-layout .task-items{gap:var(--space-2);flex-wrap:wrap;display:flex}@media (max-width:1080px){.entity-props-layout{grid-template-columns:1fr}}.entity-item-chip{max-width:260px;padding:2px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--muted);color:var(--muted-foreground);font-family:var(--font-mono);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;transition:border-color var(--transition-fast), color var(--transition-fast);align-items:center;text-decoration:none;display:inline-flex;overflow:hidden}.entity-item-chip:hover{border-color:var(--muted-foreground);color:var(--foreground)}.items-list{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.items-list.empty{color:var(--muted-foreground);font-size:var(--text-sm)}.task-status--not-started{--task-accent:var(--status-pending)}.task-status--in-progress{--task-accent:var(--info)}.task-status--pending-review{--task-accent:var(--warning)}.task-status--approved{--task-accent:var(--success)}.task-status--on-hold{--task-accent:var(--error)}.task-priority--low{--task-accent:var(--status-pending)}.task-priority--medium{--task-accent:var(--info)}.task-priority--high{--task-accent:var(--warning)}.task-priority--urgent{--task-accent:var(--error)}.task-status-pill{align-items:center;gap:var(--space-1);height:18px;padding:0 var(--space-2);border:1px solid var(--task-accent,var(--muted-foreground));display:inline-flex}@supports (color:color-mix(in lab, red, red)){.task-status-pill{border:1px solid color-mix(in srgb, var(--task-accent,var(--muted-foreground)) 30%, var(--card))}}.task-status-pill{border-radius:var(--radius-full);background:var(--task-accent,var(--muted-foreground))}@supports (color:color-mix(in lab, red, red)){.task-status-pill{background:color-mix(in srgb, var(--task-accent,var(--muted-foreground)) 12%, var(--card))}}.task-status-pill{color:var(--task-accent,var(--muted-foreground));font-size:10px;font-weight:var(--font-semibold);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.task-chip-status-dot{border-radius:var(--radius-full);background:var(--task-accent,var(--muted-foreground));width:6px;height:6px;box-shadow:0 0 0 2px var(--task-accent,var(--muted-foreground));flex-shrink:0}@supports (color:color-mix(in lab, red, red)){.task-chip-status-dot{box-shadow:0 0 0 2px color-mix(in srgb, var(--task-accent,var(--muted-foreground)) 20%, transparent)}}.task-chip-assignee{padding-left:var(--space-1);border-left:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.02em;color:var(--muted-foreground);font-size:10px}.task-detail-layout{gap:var(--space-4);grid-template-columns:minmax(0,3fr) minmax(240px,1fr);align-items:start;display:grid}.task-detail-main,.task-detail-side{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.task-workflow-card .section-header h2{align-items:center;gap:var(--space-2);display:flex}.task-status-control{gap:var(--space-1);flex-wrap:wrap;display:flex}.task-status-option{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);color:var(--muted-foreground);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;cursor:pointer;transition:background var(--transition-snap), border-color var(--transition-snap), color var(--transition-snap);flex:auto}.task-status-option:hover{border-color:var(--task-accent,var(--muted-foreground))}@supports (color:color-mix(in lab, red, red)){.task-status-option:hover{border-color:color-mix(in srgb, var(--task-accent,var(--muted-foreground)) 50%, var(--card))}}.task-status-option:hover{color:var(--foreground)}.task-status-option:focus-visible{box-shadow:var(--focus-ring-tight);outline:none}.task-status-option.is-active{background:var(--task-accent,var(--muted-foreground))}@supports (color:color-mix(in lab, red, red)){.task-status-option.is-active{background:color-mix(in srgb, var(--task-accent,var(--muted-foreground)) 12%, var(--card))}}.task-status-option.is-active{border-color:var(--task-accent,var(--muted-foreground))}@supports (color:color-mix(in lab, red, red)){.task-status-option.is-active{border-color:color-mix(in srgb, var(--task-accent,var(--muted-foreground)) 55%, var(--card))}}.task-status-option.is-active{color:var(--task-accent,var(--foreground))}.task-detail-fields{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.task-detail-fields label{align-items:center;gap:var(--space-2);color:var(--foreground);display:flex}.task-due-row{gap:var(--space-2);align-items:center;display:flex}.task-due-row input[type=date]{min-width:0;font-family:var(--font-mono);flex:auto}.task-priority-select{border-left:3px solid var(--task-accent,var(--border))}.task-description-group{margin-top:var(--space-4)}.task-description-actions{align-items:center;gap:var(--space-3);margin-top:var(--space-2);display:flex}.task-meta-list{gap:var(--space-2) var(--space-3);font-size:var(--text-xs);grid-template-columns:auto minmax(0,1fr);margin:0;display:grid}.task-meta-list dt{color:var(--muted-foreground);white-space:nowrap}.task-meta-list dd{min-width:0;font-family:var(--font-mono);color:var(--muted-foreground);overflow-wrap:anywhere;margin:0}.task-meta-path{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted-foreground)}.task-media-list{gap:var(--space-1);flex-direction:column;display:flex}.task-media-list.is-empty{color:var(--muted-foreground);font-size:var(--text-sm)}.task-media-row{gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);color:var(--muted-foreground);transition:border-color var(--transition-snap), color var(--transition-snap);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;text-decoration:none;display:grid}.task-media-row:hover{border-color:var(--muted-foreground);color:var(--foreground)}.task-media-name{font-family:var(--font-mono);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.task-media-meta{font-size:var(--text-xs);color:var(--muted-foreground);white-space:nowrap}.task-media-status{font-size:10px;font-weight:var(--font-semibold);letter-spacing:.05em;text-transform:uppercase;color:var(--muted-foreground);white-space:nowrap}@media (max-width:1080px){.task-detail-layout{grid-template-columns:1fr}}#playlists-page{gap:var(--space-6);margin-top:var(--space-4);grid-template-columns:minmax(280px,420px) minmax(0,1fr);align-items:flex-start;display:grid}#playlists-page .playlists-section,#playlists-page .items-section{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-5)}#playlists-page .section-header{align-items:flex-start;gap:var(--space-1);margin-bottom:var(--space-4);flex-direction:column;display:flex}#playlists-page .section-header h3{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--foreground);margin:0}#playlists-page .section-hint{font-size:var(--text-xs);color:var(--muted-foreground);max-width:52ch;line-height:var(--leading-snug);text-align:left;margin:0}#playlists-page .playlist-creation-form{margin:var(--space-4) 0 var(--space-6);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--muted)}#playlists-page .playlist-creation-row{align-items:center;gap:var(--space-3);flex-direction:row;margin-bottom:0;display:flex}#playlists-page .playlist-name-input{flex:1;min-width:0}#playlists-page .playlists-container{gap:var(--space-3);flex-direction:column;display:flex}#playlists-page .playlist-item{align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--transition-fast), background var(--transition-base);display:flex;position:relative}#playlists-page .playlist-item:hover{border-color:var(--muted-foreground);background:var(--muted)}#playlists-page .playlist-item:focus-within{border-color:var(--ring);box-shadow:var(--focus-ring-tight)}#playlists-page .playlist-item.is-drop-target{border-color:var(--foreground);background:var(--muted);box-shadow:0 0 0 2px var(--foreground)}@supports (color:color-mix(in lab, red, red)){#playlists-page .playlist-item.is-drop-target{box-shadow:0 0 0 2px color-mix(in srgb, var(--foreground) 20%, transparent)}}#playlists-page .playlist-card-media{border-radius:var(--radius-lg);background:var(--muted);border:1px solid var(--border);width:56px;height:56px;color:var(--muted-foreground);justify-content:center;align-items:center;display:flex}#playlists-page .playlist-card-initial{font-size:1.5rem;font-weight:var(--font-semibold);letter-spacing:.04em}#playlists-page .playlist-card-body{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}#playlists-page .playlist-card-header{justify-content:space-between;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}#playlists-page .playlist-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--foreground);margin:0}#playlists-page .playlist-meta{font-size:var(--text-sm);color:var(--muted-foreground);white-space:nowrap}#playlists-page .playlist-submeta{font-size:var(--text-sm);color:var(--muted-foreground)}#playlists-page .playlist-share-row{display:flex}#playlists-page .playlist-share-url{min-width:0;padding:var(--space-1) var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted-foreground);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);flex:1}#playlists-page .playlist-share-url:focus{border-color:var(--ring);box-shadow:var(--focus-ring-tight);outline:none}#playlists-page .playlist-card-actions{align-items:center;gap:var(--space-2);opacity:0;pointer-events:none;transition:opacity var(--transition-fast), transform var(--transition-fast);display:flex;transform:translateY(-4px)}#playlists-page .playlist-item:hover .playlist-card-actions,#playlists-page .playlist-item:focus-within .playlist-card-actions{opacity:1;pointer-events:auto;transform:translateY(0)}#playlists-page .playlist-action-button{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card);width:34px;height:34px;color:var(--muted-foreground);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}#playlists-page .playlist-action-button:hover{color:var(--foreground);border-color:var(--muted-foreground);background:var(--muted)}#playlists-page .playlist-action-button:focus-visible{border-color:var(--ring);box-shadow:var(--focus-ring-tight);outline:none}#playlists-page .playlist-action-danger{color:var(--error);border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){#playlists-page .playlist-action-danger{border-color:color-mix(in srgb, var(--error) 20%, var(--card))}}#playlists-page .playlist-action-danger:hover{border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){#playlists-page .playlist-action-danger:hover{border-color:color-mix(in srgb, var(--error) 45%, var(--card))}}#playlists-page .playlist-action-danger:hover{background:var(--error)}@supports (color:color-mix(in lab, red, red)){#playlists-page .playlist-action-danger:hover{background:color-mix(in srgb, var(--error) 8%, var(--card))}}#playlists-page .empty-placeholder{padding:var(--space-6);text-align:center;color:var(--muted-foreground);border:1px dashed var(--border);border-radius:var(--radius-lg);background:var(--muted)}#playlists-page .items-grid-container{background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;min-height:280px;max-height:calc(100vh - 300px);display:flex;overflow:hidden}#playlists-page .items-grid-container .empty-placeholder{background:0 0;border:none}#playlists-page .media-grid{min-height:0;padding:var(--space-5);gap:var(--space-4);flex:1;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));align-content:start;display:grid;overflow-y:auto}@media (max-width:1200px){#playlists-page{grid-template-columns:1fr}#playlists-page .section-header{flex-direction:column;align-items:flex-start}#playlists-page .section-hint{text-align:left;max-width:none}}@media (max-width:720px){#playlists-page .playlists-section,#playlists-page .items-section{padding:var(--space-5) var(--space-4)}#playlists-page .playlist-item{flex-direction:column;align-items:flex-start}#playlists-page .playlist-card-actions{width:100%;margin-top:var(--space-3);justify-content:flex-end}#playlists-page .playlist-card-header{flex-direction:column;align-items:flex-start}#playlists-page .playlist-meta{white-space:normal}#playlists-page .media-grid{padding:var(--space-4);gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}#reviews-page{gap:var(--space-6);margin-top:var(--space-4);grid-template-columns:minmax(280px,420px) minmax(0,1fr);align-items:flex-start;display:grid}#reviews-page.playlists-layout{display:grid}#reviews-page .playlists-section,#reviews-page .items-section{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-5)}#reviews-page .section-header{align-items:flex-start;gap:var(--space-1);margin-bottom:var(--space-4);flex-direction:column;display:flex}#reviews-page .section-header h3{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--foreground);margin:0}#reviews-page .section-hint{font-size:var(--text-xs);color:var(--muted-foreground);max-width:52ch;line-height:var(--leading-snug);text-align:left;margin:0}#reviews-page .playlist-creation-form{margin:var(--space-4) 0 var(--space-6);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--muted)}#reviews-page .playlist-creation-row{align-items:center;gap:var(--space-3);flex-direction:row;margin-bottom:0;display:flex}#reviews-page .playlist-name-input{flex:1;min-width:0}#reviews-page .playlists-container{gap:var(--space-3);flex-direction:column;display:flex}#reviews-page .playlist-card{gap:var(--space-3);padding:var(--space-4);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--transition-fast), background var(--transition-base);flex-direction:column;display:flex;position:relative}#reviews-page .playlist-card:hover{border-color:var(--muted-foreground);background:var(--muted)}#reviews-page .playlist-card.is-drop-target{border-color:var(--warning);background:var(--warning)}@supports (color:color-mix(in lab, red, red)){#reviews-page .playlist-card.is-drop-target{background:color-mix(in srgb, var(--warning) 8%, var(--card))}}#reviews-page .playlist-card.is-drop-target{box-shadow:0 0 0 2px var(--warning)}@supports (color:color-mix(in lab, red, red)){#reviews-page .playlist-card.is-drop-target{box-shadow:0 0 0 2px color-mix(in srgb, var(--warning) 28%, transparent)}}#reviews-page .playlist-card-header{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}#reviews-page .playlist-name{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--foreground);margin:0}#reviews-page .playlist-card-body{gap:var(--space-3);flex-direction:column;display:flex}#reviews-page .playlist-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}#reviews-page .empty-placeholder{padding:var(--space-6);text-align:center;color:var(--muted-foreground);border:1px dashed var(--border);border-radius:var(--radius-lg);background:var(--muted)}#reviews-page .items-grid-container{background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;min-height:280px;max-height:calc(100vh - 300px);display:flex;overflow:hidden}#reviews-page .items-grid-container .empty-placeholder{background:0 0;border:none}#reviews-page .media-grid{min-height:0;padding:var(--space-5);gap:var(--space-4);flex:1;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));align-content:start;display:grid;overflow-y:auto}#reviews-page .item-card{cursor:grab}#reviews-page .item-card:active{cursor:grabbing}@media (max-width:1200px){#reviews-page{grid-template-columns:1fr}#reviews-page .section-header{flex-direction:column;align-items:flex-start}#reviews-page .section-hint{text-align:left;max-width:none}}@media (max-width:720px){#reviews-page .media-grid{padding:var(--space-4);gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}#edits-page{max-width:880px;margin-top:var(--space-4)}#edits-page .edits-column{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4)}#edits-page .section-header{align-items:flex-start;gap:var(--space-1);margin-bottom:var(--space-4);flex-direction:column;display:flex}#edits-page .section-header h2{font-size:var(--text-base);font-weight:var(--font-semibold);letter-spacing:-.01em;color:var(--foreground);margin:0}#edits-page .section-hint{font-size:var(--text-xs);color:var(--muted-foreground);max-width:64ch;line-height:var(--leading-snug);margin:0}#edits-page .edit-create-form{margin:0 0 var(--space-5);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--muted)}#edits-page .edit-create-row{align-items:center;gap:var(--space-2);margin-bottom:0;display:flex}#edits-page .edit-name-input{flex:1;min-width:0}#edits-page .edits-container{gap:var(--space-2);flex-direction:column;display:flex}#edits-page .edit-card{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color var(--transition-fast), background var(--transition-fast);grid-template-columns:auto 1fr auto;display:grid}#edits-page .edit-card:hover{border-color:var(--muted-foreground);background:var(--muted)}#edits-page .edit-card:focus-within{border-color:var(--ring)}#edits-page .edit-card-icon{border-radius:var(--radius-sm);background:var(--muted);border:1px solid var(--border);width:32px;height:32px;color:var(--muted-foreground);justify-content:center;align-items:center;display:flex}#edits-page .edit-card-body{flex-direction:column;gap:2px;min-width:0;display:flex}#edits-page .edit-card-header{align-items:baseline;gap:var(--space-2);min-width:0;display:flex}#edits-page .edit-card-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}#edits-page .edit-card-created{color:var(--muted-foreground);white-space:nowrap;font-size:10px}#edits-page .edit-card-meta{align-items:center;gap:var(--space-2);font-family:var(--font-mono);color:var(--muted-foreground);margin:0;font-size:11px;display:flex}#edits-page .edit-card-sep{color:var(--muted-foreground);opacity:.5}#edits-page .edit-card-actions{align-items:center;gap:var(--space-1);display:flex}#edits-page .edit-card-action{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--muted-foreground);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}#edits-page .edit-card-action:hover{color:var(--foreground);border-color:var(--border);background:var(--muted)}#edits-page .edit-card-action:focus-visible{border-color:var(--ring);outline:none}#edits-page .edit-card-action svg{width:14px;height:14px}#edits-page .edit-card-action-danger:hover{color:var(--error);border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){#edits-page .edit-card-action-danger:hover{border-color:color-mix(in srgb, var(--error) 40%, transparent)}}#edits-page .edit-card-action-danger:hover{background:var(--error)}@supports (color:color-mix(in lab, red, red)){#edits-page .edit-card-action-danger:hover{background:color-mix(in srgb, var(--error) 8%, var(--card))}}#edits-page .empty-placeholder{padding:var(--space-6) var(--space-4);text-align:center;font-size:var(--text-xs);color:var(--muted-foreground);border:1px dashed var(--border);border-radius:var(--radius-md)}.edit-facts{gap:var(--space-5);margin:0 0 var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.edit-facts dt{text-transform:uppercase;letter-spacing:.05em;color:var(--muted-foreground);font-size:10px}.edit-facts dd{font-size:var(--text-sm);color:var(--foreground);margin:0}@media (max-width:720px){#edits-page .edit-card{grid-template-columns:auto 1fr}#edits-page .edit-card-actions{grid-column:1/-1;justify-content:flex-end}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.page-header-professional{background:var(--card);border-bottom:1px solid var(--border);padding:var(--space-6) var(--space-8);margin-bottom:var(--space-8)}.page-header-content{justify-content:space-between;align-items:flex-start;gap:var(--space-6);max-width:1600px;margin:0 auto;display:flex}.page-header-info{flex:1}.breadcrumb{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);font-size:var(--text-sm);display:flex}.breadcrumb-link{color:var(--muted-foreground);transition:color var(--transition-snap);text-decoration:none}.breadcrumb-link:hover{color:var(--foreground)}.breadcrumb-separator{color:var(--muted-foreground);font-size:var(--text-sm)}.breadcrumb-current{color:var(--foreground);font-weight:var(--font-medium)}.page-title-xl{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--foreground);margin:0 0 var(--space-2) 0;letter-spacing:-.02em;line-height:var(--leading-tight)}.page-subtitle{font-size:var(--text-base);color:var(--muted-foreground);line-height:var(--leading-normal);margin:0}.page-header-actions{align-items:center;gap:var(--space-3);display:flex}.config-container{max-width:1600px;padding:0 var(--space-8);margin:0 auto}.config-grid-professional{gap:var(--space-6);grid-template-columns:1fr 1fr 1fr;align-items:start;display:grid}@media (max-width:1400px){.config-grid-professional{grid-template-columns:1fr 1fr}}@media (max-width:1000px){.config-grid-professional{grid-template-columns:1fr}.config-container{padding:0 var(--space-4)}.page-header-professional{padding:var(--space-4)}.page-header-content{flex-direction:column;align-items:stretch}}.config-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--transition-fast);overflow:hidden}.config-card:hover{border-color:var(--muted-foreground)}.config-card-header{background:var(--muted);border-bottom:1px solid var(--border);padding:var(--space-4);justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.config-card-title-group{flex:1}.config-card-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--foreground);margin:0 0 var(--space-1) 0;line-height:var(--leading-tight)}.config-card-subtitle{font-size:var(--text-sm);color:var(--muted-foreground);line-height:var(--leading-normal);margin:0}.config-card-body{padding:var(--space-4)}.loading-text{font-size:var(--text-sm)}.metadata-table-container{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.professional-table{border-collapse:collapse;background:var(--card);width:100%}.professional-table thead{background:var(--muted);border-bottom:1px solid var(--border)}.professional-table th{padding:var(--space-3);text-align:left;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;border-right:1px solid var(--border)}.professional-table th:last-child{border-right:none}.professional-table td{padding:var(--space-3);border-bottom:1px solid var(--border);border-right:1px solid var(--border);vertical-align:top}.professional-table td:last-child{border-right:none}.professional-table tbody tr:hover{background:var(--muted)}.col-key{width:35%}.col-value{width:50%}.col-actions{text-align:center;width:15%}.meta-key,.meta-value{background:var(--card);border:1px solid var(--input);border-radius:var(--radius-sm);width:100%;padding:var(--space-2);font-size:var(--text-sm);color:var(--foreground);transition:all var(--transition-snap)}.meta-key:focus,.meta-value:focus{border-color:var(--ring);box-shadow:var(--focus-ring-tight);outline:none}.meta-value[type=number]{font-family:var(--font-mono)}.meta-value select{background:var(--card);border:1px solid var(--input);color:var(--foreground)}.meta-value textarea{resize:vertical;min-height:60px;font-family:var(--font-mono);font-size:var(--text-sm)}.remove-meta{border:1px solid var(--error);color:var(--error);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-snap);font-weight:var(--font-medium);background:0 0}.remove-meta:hover{background:var(--error);color:var(--error-foreground)}.team-stats{align-items:center;gap:var(--space-2);display:flex}.stat-badge{background:var(--muted);color:var(--muted-foreground);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);border:1px solid var(--border)}.team-zone{border:2px dashed var(--border);border-radius:var(--radius-lg);min-height:200px;padding:var(--space-4);transition:all var(--transition-fast);position:relative}.team-zone.drag-over{border-color:var(--foreground);background:var(--muted);border-style:solid}.zone-instructions{text-align:center;padding:var(--space-6) var(--space-4);color:var(--muted-foreground)}.instruction-icon{font-size:var(--text-2xl);margin-bottom:var(--space-3)}.instruction-text{font-size:var(--text-sm);font-weight:var(--font-medium);margin-bottom:var(--space-1)}.instruction-sub{font-size:var(--text-xs);color:var(--muted-foreground);margin:0}.team-pills,.available-user-pills{gap:var(--space-2);flex-wrap:wrap;min-height:40px;display:flex}.pill{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground);cursor:grab;-webkit-user-select:none;user-select:none;transition:all var(--transition-snap);box-sizing:border-box;align-items:center;gap:8px;height:32px;min-height:32px;max-height:32px;padding:8px 12px;line-height:1;display:inline-flex}.pill:hover{border-color:var(--muted-foreground);background:var(--muted)}.pill.dragging{opacity:.4;transform:rotate(5deg)}.pill .remove{color:var(--muted-foreground);font-weight:var(--font-bold);cursor:pointer;border-radius:var(--radius-full);width:16px;height:16px;min-height:16px;max-height:16px;transition:all var(--transition-snap);box-sizing:border-box;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:0 0 0 4px;padding:0;font-size:14px;line-height:1;display:flex}.pill .remove:hover{background:var(--error);color:var(--error-foreground)}.user-search-container{margin-bottom:var(--space-4);position:relative}.search-input-professional{background:var(--card);border:1px solid var(--input);border-radius:var(--radius-md);width:100%;padding:var(--space-3) var(--space-10) var(--space-3) var(--space-3);font-size:var(--text-sm);color:var(--foreground);transition:all var(--transition-snap)}.search-input-professional:focus{border-color:var(--ring);box-shadow:var(--focus-ring-tight);background:var(--card);outline:none}.search-input-professional::placeholder{color:var(--muted-foreground)}.search-icon-container{right:var(--space-3);color:var(--muted-foreground);font-size:var(--text-sm);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.users-zone{max-height:400px;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);overflow-y:auto}.users-zone::-webkit-scrollbar{width:6px}.users-zone::-webkit-scrollbar-track{background:0 0}.users-zone::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-base)}.team-member-pill{background:var(--card);border-color:var(--border)}.available-user-pill{cursor:grab;transition:all var(--transition-fast)}.available-user-pill:hover{background:var(--muted);border-color:var(--muted-foreground)}.available-user-pill:active{cursor:grabbing}.pill .member-avatar,.pill .user-avatar{opacity:.7;flex-shrink:0!important;justify-content:center!important;align-items:center!important;width:16px!important;height:16px!important;font-size:14px!important;line-height:1!important;display:flex!important}.pill .member-name,.pill .user-name{font-weight:var(--font-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;flex:1!important;font-size:14px!important;line-height:1!important}.drag-hint{opacity:.4;color:var(--muted-foreground);flex-shrink:0!important;justify-content:center!important;align-items:center!important;width:16px!important;height:16px!important;font-size:10px!important;line-height:1!important;display:flex!important}.available-user-pill:hover .drag-hint{opacity:.8;color:var(--foreground)}.btn-technical{background:var(--card);color:var(--muted-foreground);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-family:inherit;font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.1em;transition:all var(--transition-snap)}.btn-technical:hover{background:var(--muted);color:var(--foreground);border-color:var(--muted-foreground)}.btn-danger-outline{color:var(--error);border:1px solid var(--error);background:0 0}.btn-danger-outline:hover{background:var(--error);color:var(--error-foreground);box-shadow:0 3px 8px var(--error)}@supports (color:color-mix(in lab, red, red)){.btn-danger-outline:hover{box-shadow:0 3px 8px color-mix(in srgb, var(--error) 30%, transparent)}}.btn-icon-text{margin-right:var(--space-2);font-size:var(--text-base);align-items:center;display:inline-flex}.btn-primary-pulse{animation:2s ease-in-out infinite pulse-primary}@keyframes pulse-primary{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--primary) 40%, transparent)}50%{box-shadow:0 0 0 4px color-mix(in srgb, var(--primary) 10%, transparent)}}.btn-loading{pointer-events:none;position:relative}.spinner{animation:1s linear infinite spin}.empty-state a{color:var(--foreground);font-weight:var(--font-medium);text-decoration:none}.empty-state a:hover{text-decoration:underline}.empty-users-state{text-align:center;padding:var(--space-4);color:var(--muted-foreground);font-size:var(--text-sm)}.empty-users-state p{margin:0}#metadata-table.compact td,#metadata-table.compact th{padding:var(--space-2) var(--space-3)}#metadata-table textarea{resize:vertical}#metadata-table input[type=text],#metadata-table input[type=number],#metadata-table select{width:100%}.droppable{border:1px dashed var(--border);min-height:200px;padding:var(--space-3);border-radius:var(--radius-lg)}.droppable.drag-over{background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.droppable.drag-over{background:color-mix(in srgb, var(--foreground) 5%, var(--card))}}.droppable.drag-over{border-color:var(--foreground)}.data-table.compact td{padding:4px 6px}.project-detail{gap:var(--space-6);padding:var(--space-6);flex-direction:column;max-width:1200px;margin:0 auto;display:flex}.project-detail__header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border);display:flex}.project-detail__title-section{flex:1;min-width:0}.project-detail__title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--foreground);margin-bottom:var(--space-2);line-height:var(--leading-tight)}.project-detail__description{font-size:var(--text-base);color:var(--muted-foreground);line-height:var(--leading-normal);margin-bottom:var(--space-3)}.project-detail__meta{gap:var(--space-4);font-size:var(--text-sm);color:var(--muted-foreground);flex-wrap:wrap;display:flex}.project-detail__meta-item{align-items:center;gap:var(--space-1);display:flex}.project-detail__actions{gap:var(--space-2);flex-shrink:0;display:flex}.project-detail__stats{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.project-stat{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);text-align:center}.project-stat__value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--foreground);margin-bottom:var(--space-1)}.project-stat__label{font-size:var(--text-sm);color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em}.project-detail__section{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.project-detail__section-header{padding:var(--space-4);background:var(--muted);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.project-detail__section-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--foreground);margin:0}.project-detail__section-content{padding:var(--space-4)}.project-detail__activity{gap:var(--space-3);flex-direction:column;display:flex}.activity-item{align-items:flex-start;gap:var(--space-3);padding:var(--space-3);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);display:flex}.activity-item__icon{background:var(--muted);border-radius:var(--radius-full);width:32px;height:32px;color:var(--muted-foreground);flex-shrink:0;justify-content:center;align-items:center;display:flex}.activity-item__content{flex:1;min-width:0}.activity-item__title{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground);margin-bottom:var(--space-1)}.activity-item__description{font-size:var(--text-sm);color:var(--muted-foreground);margin-bottom:var(--space-1)}.activity-item__meta{font-size:var(--text-xs);color:var(--muted-foreground)}.project-detail__team{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));display:grid}.team-member{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);display:flex}.team-member__avatar{background:var(--muted);border-radius:var(--radius-full);width:40px;height:40px;color:var(--muted-foreground);font-weight:var(--font-medium);flex-shrink:0;justify-content:center;align-items:center;display:flex}.team-member__info{flex:1;min-width:0}.team-member__name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground);margin-bottom:var(--space-1)}.team-member__role{font-size:var(--text-xs);color:var(--muted-foreground)}@media (max-width:768px){.project-detail{padding:var(--space-4);gap:var(--space-4)}.project-detail__header{align-items:stretch;gap:var(--space-3);flex-direction:column}.project-detail__actions{justify-content:stretch}.project-detail__stats{gap:var(--space-3);grid-template-columns:1fr}.project-detail__team{grid-template-columns:1fr}.project-detail__meta{gap:var(--space-2);flex-direction:column}}.items-page{gap:var(--space-6);padding:var(--space-6);flex-direction:column;max-width:1400px;margin:0 auto;display:flex}.items-page__header{justify-content:space-between;align-items:center;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border);display:flex}.items-page__title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--foreground);margin:0}.items-page__actions{gap:var(--space-2);align-items:center;display:flex}.items-page__filters{gap:var(--space-3);padding:var(--space-4);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;display:flex}.items-page__search{flex:1;min-width:200px;max-width:400px}.items-page__filter-group{align-items:center;gap:var(--space-2);display:flex}.items-page__filter-label{font-size:var(--text-sm);color:var(--muted-foreground);white-space:nowrap}.items-page__filter-select{min-width:120px}.items-page__view-toggle{background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-base);gap:1px;padding:2px;display:flex}.items-page__view-button{padding:var(--space-1) var(--space-3);color:var(--muted-foreground);cursor:pointer;transition:background-color var(--transition-snap), color var(--transition-snap);font-size:var(--text-sm);border-radius:var(--radius-sm);background:0 0;border:none}.items-page__view-button--active{background:var(--card);color:var(--foreground);box-shadow:inset 0 0 0 1px var(--border)}.items-page__view-button:hover:not(.items-page__view-button--active){background:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.items-page__view-button:hover:not(.items-page__view-button--active){background:color-mix(in srgb, var(--muted-foreground) 8%, var(--muted))}}.items-page__view-button:hover:not(.items-page__view-button--active){color:var(--foreground)}.items-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.items-grid--list{gap:var(--space-2);grid-template-columns:1fr}.item-card--list{align-items:center;gap:var(--space-3);padding:var(--space-3);display:flex}.item-card__thumbnail{aspect-ratio:16/9;background:var(--muted);position:relative;overflow:hidden}.item-card--list .item-card__thumbnail{border-radius:var(--radius-base);flex-shrink:0;width:120px;height:68px}.item-card__image{object-fit:cover;width:100%;height:100%}.item-card__placeholder{width:100%;height:100%;color:var(--muted-foreground);font-size:var(--text-lg);justify-content:center;align-items:center;display:flex}.item-card__duration{bottom:var(--space-1);right:var(--space-1);padding:var(--space-1) var(--space-2);color:#fff;font-size:var(--text-xs);font-family:var(--font-mono);border-radius:var(--radius-sm);background:#000c;position:absolute}.item-card__content{padding:var(--space-4)}.item-card--list .item-card__content{flex:1;min-width:0;padding:0}.item-card__title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--foreground);margin-bottom:var(--space-2);line-height:var(--leading-snug);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.item-card--list .item-card__title{margin-bottom:var(--space-1);-webkit-line-clamp:1}.item-card__meta{gap:var(--space-2);font-size:var(--text-xs);color:var(--muted-foreground);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.item-card__meta-item{align-items:center;gap:var(--space-1);display:flex}.item-card__status{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em;display:inline-flex}.item-card__status--approved{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.item-card__status--approved{background:color-mix(in srgb, var(--success) 8%, var(--card))}}.item-card__status--approved{color:var(--status-approved);border:1px solid var(--success)}@supports (color:color-mix(in lab, red, red)){.item-card__status--approved{border:1px solid color-mix(in srgb, var(--success) 25%, var(--border))}}.item-card__status--pending{background:var(--status-pending)}@supports (color:color-mix(in lab, red, red)){.item-card__status--pending{background:color-mix(in srgb, var(--status-pending) 10%, var(--card))}}.item-card__status--pending{color:var(--status-pending);border:1px solid var(--status-pending)}@supports (color:color-mix(in lab, red, red)){.item-card__status--pending{border:1px solid color-mix(in srgb, var(--status-pending) 25%, var(--border))}}.item-card__status--changes-requested{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.item-card__status--changes-requested{background:color-mix(in srgb, var(--warning) 8%, var(--card))}}.item-card__status--changes-requested{color:var(--status-changes-requested);border:1px solid var(--warning)}@supports (color:color-mix(in lab, red, red)){.item-card__status--changes-requested{border:1px solid color-mix(in srgb, var(--warning) 25%, var(--border))}}.item-card__status--rejected{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.item-card__status--rejected{background:color-mix(in srgb, var(--error) 8%, var(--card))}}.item-card__status--rejected{color:var(--status-rejected);border:1px solid var(--error)}@supports (color:color-mix(in lab, red, red)){.item-card__status--rejected{border:1px solid color-mix(in srgb, var(--error) 25%, var(--border))}}.items-page__empty{padding:var(--space-12);text-align:center;color:var(--muted-foreground);flex-direction:column;justify-content:center;align-items:center;display:flex}.items-page__empty-icon{width:64px;height:64px;margin-bottom:var(--space-4);opacity:.5}.items-page__empty-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--foreground);margin-bottom:var(--space-2)}.items-page__empty-description{font-size:var(--text-sm);color:var(--muted-foreground);margin-bottom:var(--space-4);max-width:400px}.items-page__loading{padding:var(--space-12);color:var(--muted-foreground);justify-content:center;align-items:center;gap:var(--space-2);display:flex}.items-page__spinner{border:2px solid var(--border);border-top:2px solid var(--muted-foreground);border-radius:var(--radius-full);width:20px;height:20px;animation:1s linear infinite spin}@media (max-width:768px){.items-page{padding:var(--space-4);gap:var(--space-4)}.items-page__header,.items-page__filters{align-items:stretch;gap:var(--space-3);flex-direction:column}.items-page__search{max-width:none}.items-grid{gap:var(--space-3);grid-template-columns:1fr}.item-card--list{align-items:stretch;gap:var(--space-2);flex-direction:column}.item-card--list .item-card__thumbnail{width:100%;height:120px}.item-card--list .item-card__content{padding:var(--space-3)}}.settings-page{gap:var(--space-6);padding:var(--space-6);max-width:1200px;min-height:calc(100vh - 120px);margin:0 auto;display:flex}.settings-nav{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);width:240px;padding:var(--space-4);height:fit-content;top:var(--space-6);flex-shrink:0;position:sticky}.settings-nav__title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--foreground);margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}.settings-nav__list{gap:var(--space-1);flex-direction:column;display:flex}.settings-nav__item{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);color:var(--muted-foreground);border-radius:var(--radius-sm);transition:background var(--transition-fast), color var(--transition-fast);font-size:var(--text-sm);text-decoration:none;display:flex}.settings-nav__item:hover{background:var(--muted);color:var(--foreground)}.settings-nav__item--active{background:var(--primary);color:var(--primary-foreground)}.settings-nav__icon{flex-shrink:0;width:16px;height:16px}.settings-content{flex:1;min-width:0}.settings-section{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-6);overflow:hidden}.settings-section__header{padding:var(--space-4);background:var(--muted);border-bottom:1px solid var(--border)}.settings-section__title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--foreground);margin-bottom:var(--space-1)}.settings-section__description{font-size:var(--text-sm);color:var(--muted-foreground);line-height:var(--leading-normal)}.settings-section__content{padding:var(--space-4)}.settings-form{flex-direction:column;max-width:600px;margin:0 auto;display:flex}.settings-form__group{gap:var(--space-2);flex-direction:column;display:flex}.settings-form__group--horizontal{justify-content:space-between;align-items:center;gap:var(--space-4);flex-direction:row}.settings-form__label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground)}.settings-form__description{font-size:var(--text-sm);color:var(--muted-foreground);line-height:var(--leading-normal)}.settings-form__input{width:100%;max-width:400px}.settings-form__group--horizontal .settings-form__input{width:auto;min-width:200px}.settings-form .form-group{align-items:center;gap:var(--space-1) var(--space-3);padding:var(--space-2) var(--space-3);transition:background var(--transition-snap);flex-wrap:wrap;display:flex}.settings-form .form-group+.form-group{border-top:1px solid var(--border)}.settings-form .form-group:hover{background:var(--muted)}.settings-field__line{align-items:center;gap:var(--space-2);flex:auto;min-width:0;display:flex}.settings-form .form-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--foreground);flex-shrink:0;margin:0}.settings-form .form-input,.settings-form .form-control{width:auto;max-width:280px;padding:var(--space-1) var(--space-2);font-size:var(--text-sm)}.settings-field__line>.form-input,.settings-field__line>.form-control{min-width:0;margin-left:auto}.settings-field__line>.form-checkbox{flex-shrink:0;margin-left:auto}.settings-form .form-control--compact{max-width:220px}.settings-form .form-checkbox{border-radius:var(--radius-sm);appearance:none;background:var(--card);border:1px solid var(--muted-foreground);cursor:pointer;max-width:none;transition:all var(--transition-snap);flex-shrink:0;position:relative;width:16px!important;height:16px!important}.settings-form .form-checkbox:checked{background:var(--primary);border-color:var(--primary)}.settings-form .form-checkbox:checked:after{content:"";color:var(--primary-foreground);font-size:10px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.settings-form .form-checkbox:focus{border-color:var(--ring);box-shadow:0 0 0 2px var(--ring);outline:none}.settings-field__info{color:var(--muted-foreground);cursor:help;border-radius:var(--radius-sm);transition:color var(--transition-snap);align-items:center;padding:2px;display:inline-flex;position:relative}.settings-field__info:hover,.settings-field__info:focus-visible{color:var(--foreground);outline:none}.settings-field__tip{gap:var(--space-1);width:max-content;max-width:300px;padding:var(--space-2) var(--space-3);background:var(--popover);color:var(--popover-foreground);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-normal);line-height:var(--leading-normal);text-align:left;z-index:var(--z-tooltip);pointer-events:none;flex-direction:column;display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.settings-field__tip:after{content:"";border:5px solid #0000;border-top-color:var(--popover);position:absolute;top:100%;left:50%;transform:translate(-50%)}.settings-field__info:hover .settings-field__tip,.settings-field__info:focus-visible .settings-field__tip{display:flex}.settings-field__tip-effect{color:var(--muted-foreground);font-style:italic}.settings-form .form-group>.settings-field__warning,.settings-form .form-group>.settings-field__meta{flex-basis:100%}.settings-toggle{cursor:pointer;align-items:center;display:inline-flex;position:relative}.settings-toggle__input{opacity:0;pointer-events:none;position:absolute}.settings-toggle__slider{background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-lg);width:44px;height:24px;transition:all var(--transition-base);position:relative}.settings-toggle__slider:before{content:"";background:var(--card);border:1px solid var(--border);border-radius:var(--radius-full);width:18px;height:18px;transition:transform var(--transition-base);position:absolute;top:2px;left:2px}.settings-toggle__input:checked+.settings-toggle__slider{background:var(--primary);border-color:var(--primary)}.settings-toggle__input:checked+.settings-toggle__slider:before{background:var(--primary-foreground);border-color:var(--primary-foreground);transform:translate(20px)}.settings-toggle__input:focus+.settings-toggle__slider{outline:2px solid var(--ring);outline-offset:2px}.settings-actions{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border);margin-top:var(--space-4);display:flex}.settings-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.settings-table th{text-align:left;padding:var(--space-3);background:var(--muted);border-bottom:1px solid var(--border);font-weight:var(--font-semibold);color:var(--foreground)}.settings-table td{padding:var(--space-3);border-bottom:1px solid var(--border);color:var(--muted-foreground)}.settings-table tr:hover{background:var(--muted)}.settings-table__actions{gap:var(--space-2);display:flex}.settings-table__action{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast);text-decoration:none}.settings-table__action--edit{background:var(--primary);color:var(--primary-foreground)}.settings-table__action--edit:hover{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.settings-table__action--edit:hover{background:color-mix(in srgb, var(--primary) 85%, var(--foreground))}}.settings-table__action--delete{background:var(--error);color:var(--error-foreground)}.settings-table__action--delete:hover{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.settings-table__action--delete:hover{background:color-mix(in srgb, var(--error) 85%, var(--foreground))}}.settings-danger{border-color:var(--error)}.settings-danger .settings-section__header{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.settings-danger .settings-section__header{background:color-mix(in srgb, var(--error) 8%, var(--card))}}.settings-danger .settings-section__header{border-bottom-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.settings-danger .settings-section__header{border-bottom-color:color-mix(in srgb, var(--error) 30%, var(--card))}}.settings-danger .settings-section__title{color:var(--error)}@media (max-width:768px){.settings-page{padding:var(--space-4);gap:var(--space-4);flex-direction:column}.settings-nav{width:100%;position:static}.settings-nav__list{gap:var(--space-2);flex-flow:wrap}.settings-form__group--horizontal{align-items:stretch;gap:var(--space-2);flex-direction:column}.settings-form__input{max-width:none}.settings-table{font-size:var(--text-xs)}.settings-table th,.settings-table td{padding:var(--space-2)}.settings-actions{flex-direction:column}}.tasks-manager{gap:var(--space-4);flex-direction:column;display:flex}.tasks-list-container{background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-md);min-height:200px;max-height:400px;overflow-y:auto}.tasks-list-container .tasks-list{margin:0;padding:0;list-style:none}.task-item{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--card);border-bottom:1px solid var(--border);cursor:grab;transition:background var(--transition-fast);display:flex}.task-item:hover{background:var(--muted)}.task-item.dragging{opacity:.5;cursor:grabbing}.task-item-drag-handle{color:var(--muted-foreground);cursor:grab;font-size:var(--text-lg)}.task-item-name{color:var(--foreground);font-size:var(--text-base);flex:1}.task-item-actions{gap:var(--space-2);display:flex}.task-item-delete{padding:var(--space-1) var(--space-2);color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none}.task-item-delete:hover{background:var(--error)}@supports (color:color-mix(in lab, red, red)){.task-item-delete:hover{background:color-mix(in srgb, var(--error) 8%, var(--card))}}.task-item-delete:hover{color:var(--error)}.tasks-add-container{gap:var(--space-2);display:flex}.tasks-add-container input{flex:1}@media print{.settings-nav{display:none}.settings-page{gap:var(--space-4);flex-direction:column}.settings-section{break-inside:avoid}}.settings-form--compact{max-width:600px}.form-control--compact{max-width:400px}.form-group--toggle{background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:2rem;padding:1rem 1.25rem;display:flex}.form-group--toggle>div:first-child{flex:1;min-width:0}.form-group--toggle label{color:var(--foreground);margin-bottom:.25rem;font-size:.875rem;font-weight:500;display:block}.form-group--toggle .form-text{color:var(--muted-foreground);margin:0;line-height:1.4}.toggle-switch{cursor:pointer;flex-shrink:0;align-items:center;display:flex;position:relative}.toggle-switch__input{opacity:0;pointer-events:none;position:absolute}.toggle-switch__slider{background:var(--muted);border:2px solid var(--border);border-radius:var(--radius-full);width:48px;height:26px;transition:all var(--transition-base);position:relative}.toggle-switch__slider:before{content:"";background:var(--card);border:1px solid var(--border);border-radius:var(--radius-full);width:18px;height:18px;transition:all var(--transition-base);position:absolute;top:2px;left:2px}.toggle-switch__input:checked+.toggle-switch__slider{background:var(--primary);border-color:var(--primary)}.toggle-switch__input:checked+.toggle-switch__slider:before{background:var(--primary-foreground);border-color:var(--primary-foreground);transform:translate(22px)}.toggle-switch__input:focus+.toggle-switch__slider{outline:2px solid var(--ring);outline-offset:2px}.toggle-switch__input:disabled+.toggle-switch__slider{opacity:.5;cursor:not-allowed}.user-identity{align-items:center;gap:var(--space-2);min-width:0;display:flex}.user-identity-text{min-width:0;line-height:var(--leading-snug);flex-direction:column;display:flex}.user-identity-name{font-weight:var(--font-medium);color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-identity-handle{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted-foreground)}#users-table tr.is-deactivated td{opacity:.6}.settings-field__row{align-items:center;gap:var(--space-2);min-width:0;margin-left:auto;display:flex}.settings-form .form-input-technical{font-family:var(--font-mono);max-width:140px}.settings-field__unit{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted-foreground)}.settings-field__warning:empty{display:none}.settings-field__warning{margin-top:var(--space-1)}.settings-field__meta{align-items:center;gap:var(--space-2);margin-top:var(--space-1);font-size:var(--text-xs);color:var(--muted-foreground);flex-wrap:wrap;display:flex}.settings-field__state,.settings-field__changed{font-family:var(--font-mono)}.settings-field__reset{font-size:var(--text-xs);padding:0}.settings-legacy__row{align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:1px solid var(--border);display:flex}.settings-legacy__row:last-child{border-bottom:none}.settings-legacy__key{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--foreground)}.settings-legacy__value{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}}@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.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}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.gap-3{gap:calc(var(--spacing) * 3)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.p-4{padding:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-muted{color:var(--color-muted)}.text-primary{color:var(--color-primary)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + 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)}.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,)}.invert{--tw-invert:invert(100%);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,)}.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))}}:root,[data-theme=light]{--background:oklch(100% 0 0);--foreground:oklch(0% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(0% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(0% 0 0);--primary:oklch(0% 0 0);--primary-foreground:oklch(100% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(0% 0 0);--accent:oklch(95% 0 0);--accent-foreground:oklch(0% 0 0);--destructive:oklch(55% .22 27);--destructive-foreground:oklch(100% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(48% 0 0);--border:oklch(90% 0 0);--input:oklch(95% 0 0);--ring:oklch(0% 0 0);--success:oklch(52% .13 152);--success-foreground:oklch(100% 0 0);--warning:oklch(56% .12 70);--warning-foreground:oklch(100% 0 0);--error:oklch(55% .22 27);--error-foreground:oklch(100% 0 0);--info:oklch(52% .14 250);--info-foreground:oklch(100% 0 0);--status-approved:var(--success);--status-changes-requested:var(--warning);--status-rejected:var(--error);--status-in-review:var(--info);--status-pending:oklch(55% 0 0);--timeline-background:oklch(95% 0 0);--timeline-played:oklch(0% 0 0);--timeline-buffered:oklch(80% 0 0);--playhead:oklch(0% 0 0);--chart-1:oklch(64.7% .199 231);--chart-2:oklch(54.9% .207 267);--chart-3:oklch(71.6% .182 70);--chart-4:oklch(90.6% .191 77);--chart-5:oklch(73.5% .188 33);--radius:.375rem;--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:"Roboto Mono", "SF Mono", "Monaco", "Cascadia Code", Consolas, "Courier New", monospace;--shadow-color:oklch(9% .005 286);--shadow-opacity:.04;--shadow-blur:20px;--shadow-spread:0px;--shadow-offset-x:0px;--shadow-offset-y:4px;--sidebar:oklch(98% .002 286);--sidebar-foreground:oklch(53.4% .015 286);--sidebar-primary:oklch(9% .005 286);--sidebar-primary-foreground:oklch(98% .002 286);--sidebar-accent:oklch(96% .013 286);--sidebar-accent-foreground:oklch(9% .005 286);--sidebar-border:oklch(89.8% .013 286);--sidebar-ring:oklch(9% .005 286);--polishr-blue-primary:var(--primary);--polishr-cyan:var(--chart-2);--polishr-purple:var(--chart-3);--polishr-green:var(--success);--polishr-amber:var(--warning);--polishr-red:var(--error);--polishr-blue-rgb:0, 0, 0;--polishr-amber-rgb:90, 34, 0;--polishr-red-rgb:168, 1, 3;--text-primary:var(--foreground);--text-secondary:var(--foreground);--text-tertiary:var(--muted-foreground);--text-muted:var(--muted-foreground);--surface-app:var(--background);--surface-primary:var(--background);--surface-secondary:var(--card);--surface-tertiary:var(--muted);--surface-overlay:var(--popover);--surface-elevated:var(--popover);--border-subtle:var(--border);--border-default:var(--border);--border-strong:var(--muted-foreground);--accent-primary:var(--info)}[data-theme=dark]{--background:oklch(17% 0 0);--foreground:oklch(97% 0 0);--card:oklch(22% 0 0);--card-foreground:oklch(97% 0 0);--popover:oklch(26% 0 0);--popover-foreground:oklch(97% 0 0);--primary:oklch(97% 0 0);--primary-foreground:oklch(15% 0 0);--secondary:oklch(28% 0 0);--secondary-foreground:oklch(95% 0 0);--accent:oklch(32% 0 0);--accent-foreground:oklch(97% 0 0);--destructive:var(--error);--destructive-foreground:oklch(100% 0 0);--muted:oklch(27% 0 0);--muted-foreground:oklch(72% 0 0);--border:oklch(34% 0 0);--input:oklch(34% 0 0);--ring:oklch(90% 0 0);--success:oklch(75% .15 152);--success-foreground:oklch(15% 0 0);--warning:oklch(80% .14 80);--warning-foreground:oklch(15% 0 0);--error:oklch(66% .19 25);--error-foreground:oklch(15% 0 0);--info:oklch(85% 0 0);--info-foreground:oklch(15% 0 0);--status-approved:var(--success);--status-changes-requested:var(--warning);--status-rejected:var(--error);--status-in-review:var(--info);--status-pending:oklch(70% 0 0);--timeline-background:oklch(27% 0 0);--timeline-played:oklch(97% 0 0);--timeline-buffered:oklch(38% 0 0);--playhead:oklch(97% 0 0);--chart-1:oklch(74.7% .199 231);--chart-2:oklch(64.9% .207 267);--chart-3:oklch(81.6% .182 70);--chart-4:oklch(90.6% .191 77);--chart-5:oklch(83.5% .188 33);--shadow-color:oklch(0% 0 0);--shadow-opacity:.3;--sidebar:oklch(19% 0 0);--sidebar-foreground:oklch(80% 0 0);--sidebar-primary:oklch(97% 0 0);--sidebar-primary-foreground:oklch(15% 0 0);--sidebar-accent:oklch(25% 0 0);--sidebar-accent-foreground:oklch(97% 0 0);--sidebar-border:oklch(30% 0 0);--sidebar-ring:oklch(90% 0 0);--polishr-blue-primary:var(--primary);--polishr-cyan:var(--chart-2);--polishr-purple:var(--chart-3);--polishr-green:var(--success);--polishr-amber:var(--warning);--polishr-red:var(--error);--polishr-blue-rgb:247, 247, 247;--polishr-amber-rgb:202, 138, 44;--polishr-red-rgb:212, 90, 82;--text-primary:var(--foreground);--text-secondary:var(--foreground);--text-tertiary:var(--muted-foreground);--text-muted:var(--muted-foreground);--surface-app:var(--background);--surface-primary:var(--background);--surface-secondary:var(--card);--surface-tertiary:var(--muted);--surface-overlay:var(--popover);--surface-elevated:var(--popover);--border-subtle:var(--border);--border-default:var(--border);--border-strong:var(--muted-foreground);--accent-primary:var(--info)}:root{--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-dense-1:2px;--space-dense-2:3px;--space-dense-3:6px;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--font-light:300;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-base:.5rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-none:0;--radius-full:9999px;--component-padding-xs:.25rem .5rem;--component-padding-sm:.5rem .75rem;--component-padding-md:.75rem 1rem;--component-padding-lg:1rem 1.5rem;--component-gap-xs:.25rem;--component-gap-sm:.5rem;--component-gap-md:.75rem;--component-gap-lg:1rem;--component-gap-xl:1.5rem;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--z-toast:1080;--transition-snap:80ms ease;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--transition-slower:.5s ease;--shadow-sm:0 1px 2px 0 var(--shadow-color)}@supports (color:color-mix(in lab, red, red)){:root{--shadow-sm:0 1px 2px 0 color-mix(in srgb, var(--shadow-color) 6%, transparent)}}:root{--shadow-base:0 2px 4px 0 var(--shadow-color)}@supports (color:color-mix(in lab, red, red)){:root{--shadow-base:0 2px 4px 0 color-mix(in srgb, var(--shadow-color) 8%, transparent)}}:root{--shadow-md:0 4px 12px 0 var(--shadow-color)}@supports (color:color-mix(in lab, red, red)){:root{--shadow-md:0 4px 12px 0 color-mix(in srgb, var(--shadow-color) 10%, transparent)}}:root{--shadow-lg:0 8px 24px 0 var(--shadow-color)}@supports (color:color-mix(in lab, red, red)){:root{--shadow-lg:0 8px 24px 0 color-mix(in srgb, var(--shadow-color) 12%, transparent)}}:root{--shadow-xl:0 12px 32px 0 var(--shadow-color)}@supports (color:color-mix(in lab, red, red)){:root{--shadow-xl:0 12px 32px 0 color-mix(in srgb, var(--shadow-color) 14%, transparent)}}:root{--shadow-2xl:0 24px 56px 0 var(--shadow-color)}@supports (color:color-mix(in lab, red, red)){:root{--shadow-2xl:0 24px 56px 0 color-mix(in srgb, var(--shadow-color) 16%, transparent)}}:root{--shadow-inner:inset 0 1px 2px 0 var(--shadow-color)}@supports (color:color-mix(in lab, red, red)){:root{--shadow-inner:inset 0 1px 2px 0 color-mix(in srgb, var(--shadow-color) 10%, transparent)}}:root{--focus-ring:0 0 0 3px var(--ring)}@supports (color:color-mix(in lab, red, red)){:root{--focus-ring:0 0 0 3px color-mix(in srgb, var(--ring) 20%, transparent)}}:root{--focus-ring-tight:0 0 0 2px var(--ring)}@supports (color:color-mix(in lab, red, red)){:root{--focus-ring-tight:0 0 0 2px color-mix(in srgb, var(--ring) 30%, transparent)}}:root{--scrim:#0006;--scrim-strong:#0009;--text-inverse:var(--primary-foreground);--text-on-accent:var(--primary-foreground);--border-interactive:var(--muted-foreground);--border-focus:var(--ring);--border-accent:var(--muted-foreground);--polishr-blue-secondary:var(--muted-foreground);--polishr-blue-muted:var(--muted);--polishr-cyan-rgb:79, 70, 229;--polishr-green-rgb:21, 128, 61;--polishr-amber-rgb:161, 98, 7;--polishr-red-rgb:185, 28, 28;--polishr-purple:var(--info);--polishr-purple-rgb:29, 78, 216;--tint-blue:var(--info)}@supports (color:color-mix(in lab, red, red)){:root{--tint-blue:color-mix(in srgb, var(--info) 8%, var(--card))}}:root{--tint-blue-border:var(--info)}@supports (color:color-mix(in lab, red, red)){:root{--tint-blue-border:color-mix(in srgb, var(--info) 25%, var(--border))}}:root{--tint-blue-strong:var(--info)}@supports (color:color-mix(in lab, red, red)){:root{--tint-blue-strong:color-mix(in srgb, var(--info) 15%, var(--card))}}:root{--tint-cyan:var(--chart-2)}@supports (color:color-mix(in lab, red, red)){:root{--tint-cyan:color-mix(in srgb, var(--chart-2) 8%, var(--card))}}:root{--tint-cyan-border:var(--chart-2)}@supports (color:color-mix(in lab, red, red)){:root{--tint-cyan-border:color-mix(in srgb, var(--chart-2) 25%, var(--border))}}:root{--tint-amber:var(--warning)}@supports (color:color-mix(in lab, red, red)){:root{--tint-amber:color-mix(in srgb, var(--warning) 10%, var(--card))}}:root{--tint-amber-border:var(--warning)}@supports (color:color-mix(in lab, red, red)){:root{--tint-amber-border:color-mix(in srgb, var(--warning) 30%, var(--border))}}:root{--tint-red:var(--error)}@supports (color:color-mix(in lab, red, red)){:root{--tint-red:color-mix(in srgb, var(--error) 8%, var(--card))}}:root{--tint-red-border:var(--error)}@supports (color:color-mix(in lab, red, red)){:root{--tint-red-border:color-mix(in srgb, var(--error) 25%, var(--border))}}:root{--tint-green:var(--success)}@supports (color:color-mix(in lab, red, red)){:root{--tint-green:color-mix(in srgb, var(--success) 8%, var(--card))}}:root{--tint-green-border:var(--success)}@supports (color:color-mix(in lab, red, red)){:root{--tint-green-border:color-mix(in srgb, var(--success) 25%, var(--border))}}:root{--tint-purple:var(--info)}@supports (color:color-mix(in lab, red, red)){:root{--tint-purple:color-mix(in srgb, var(--info) 8%, var(--card))}}:root{--tint-purple-border:var(--info)}@supports (color:color-mix(in lab, red, red)){:root{--tint-purple-border:color-mix(in srgb, var(--info) 25%, var(--border))}}:root{--success-surface:var(--success)}@supports (color:color-mix(in lab, red, red)){:root{--success-surface:color-mix(in srgb, var(--success) 8%, var(--card))}}:root{--success-text:var(--success);--success-border:var(--success)}@supports (color:color-mix(in lab, red, red)){:root{--success-border:color-mix(in srgb, var(--success) 30%, var(--border))}}:root{--error-surface:var(--error)}@supports (color:color-mix(in lab, red, red)){:root{--error-surface:color-mix(in srgb, var(--error) 8%, var(--card))}}:root{--error-text:var(--error);--error-border:var(--error)}@supports (color:color-mix(in lab, red, red)){:root{--error-border:color-mix(in srgb, var(--error) 30%, var(--border))}}:root{--warning-surface:var(--warning)}@supports (color:color-mix(in lab, red, red)){:root{--warning-surface:color-mix(in srgb, var(--warning) 10%, var(--card))}}:root{--warning-text:var(--warning);--warning-border:var(--warning)}@supports (color:color-mix(in lab, red, red)){:root{--warning-border:color-mix(in srgb, var(--warning) 30%, var(--border))}}:root{--info-surface:var(--info)}@supports (color:color-mix(in lab, red, red)){:root{--info-surface:color-mix(in srgb, var(--info) 8%, var(--card))}}:root{--info-text:var(--info);--info-border:var(--info)}@supports (color:color-mix(in lab, red, red)){:root{--info-border:color-mix(in srgb, var(--info) 30%, var(--border))}}:root{--task-accent:var(--muted-foreground);--task-accent-rgb:113, 113, 122}[data-theme=dark]{--shadow-sm:0 1px 2px 0 #0006;--shadow-base:0 2px 4px 0 #00000073;--shadow-md:0 4px 12px 0 #00000080;--shadow-lg:0 8px 24px 0 #0000008c;--shadow-xl:0 12px 32px 0 #0009;--shadow-2xl:0 24px 56px 0 #000000a6;--shadow-inner:inset 0 1px 2px 0 #00000073;--scrim:#0000008c;--scrim-strong:#000000bf;--task-accent-rgb:161, 161, 170}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.skip-link{background:var(--primary);color:var(--primary-foreground);border-radius:var(--radius-md);z-index:1000;padding:8px 12px;font-size:.875rem;font-weight:500;text-decoration:none;position:absolute;top:-48px;left:8px}.skip-link:focus{top:8px}@media (prefers-contrast:high){.btn,.form-input{border:2px solid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.required{color:var(--error);font-weight:700}.form-input:user-invalid{border-color:var(--error)}input:user-invalid{border-color:var(--error)}select:user-invalid{border-color:var(--error)}textarea:user-invalid{border-color:var(--error)}.form-error{color:var(--error);margin-top:.25rem;font-size:.875rem}table{border-collapse:collapse}@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-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}@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}@keyframes spin{to{transform:rotate(360deg)}}