.feedback-bubble-root{position:fixed;bottom:calc(1.25rem + var(--safe-bottom));right:calc(1.25rem + var(--safe-right));z-index:var(--z-overlay-menu);pointer-events:none}.feedback-bubble-root--inline{position:fixed;bottom:1.5rem;left:1.5rem;z-index:var(--z-overlay-menu);pointer-events:none}.feedback-panel{pointer-events:auto;width:min(22rem,calc(100vw - 3rem));border-radius:var(--radius);padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;background:var(--card-bg);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 8px 32px #0000002e,0 1.5px 4px #0000001a;animation:feedback-panel-slide-in .22s cubic-bezier(.34,1.15,.64,1) both}@keyframes feedback-panel-slide-in{0%{opacity:0;transform:translate(-1.5rem) translateY(.5rem)}to{opacity:1;transform:translate(0) translateY(0)}}.feedback-panel-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.feedback-bubble-trigger-inline{display:inline-flex;align-items:center;justify-content:center;min-height:var(--btn-min-height);min-width:var(--btn-min-height);padding:var(--btn-padding-y);border:none;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-hover);cursor:pointer;flex-shrink:0}@media (hover: hover) and (pointer: fine){.feedback-bubble-trigger-inline:hover{background:var(--border-subtle, var(--bg-hover));color:var(--text-heading)}}.feedback-bubble-trigger-inline:active{background:var(--border-subtle, var(--bg-hover));color:var(--text-heading)}.feedback-bubble-root .feedback-bubble-shell{pointer-events:auto}.feedback-bubble-root--capturing .feedback-bubble-shell{transition:none}.feedback-bubble-shell{transform-origin:bottom right;width:3rem;max-width:min(26rem,calc(100vw - 2rem));max-height:3rem;border-radius:50%;overflow:hidden;transition:width .42s cubic-bezier(.34,1.18,.64,1),max-height .46s cubic-bezier(.34,1.12,.64,1),border-radius .38s cubic-bezier(.34,1.12,.64,1),box-shadow .3s ease}.feedback-bubble-shell--expanded{width:min(26rem,calc(100vw - 2rem));max-height:min(90vh,36rem);border-radius:12px;overflow-x:hidden;overflow-y:hidden}.feedback-bubble-shell--expanded.feedback-bubble-shell--scrollable{overflow-y:auto}.feedback-bubble-shell-inner{position:relative;width:100%;min-height:3rem}.feedback-bubble-shell:not(.feedback-bubble-shell--expanded) .feedback-bubble-shell-inner{height:3rem}.feedback-bubble-collapsed{display:flex;align-items:center;justify-content:center;width:100%;height:3rem;transition:opacity .22s ease,transform .32s cubic-bezier(.34,1.15,.64,1)}.feedback-bubble-collapsed--hidden{position:absolute;right:0;bottom:0;width:3rem;height:3rem;opacity:0;transform:scale(.55);pointer-events:none}.feedback-bubble-trigger-wrap{position:relative;width:3rem;height:3rem;display:flex;align-items:center;justify-content:center}.feedback-bubble-arc-svg{position:absolute;left:50%;top:50%;width:3.25rem;height:3.25rem;transform:translate(-50%,-50%);pointer-events:none;overflow:visible}.feedback-bubble-arc-path{stroke-dasharray:69.12;stroke-dashoffset:69.12;transition:stroke-dashoffset .28s ease-out}@media (hover: hover) and (pointer: fine){.feedback-bubble-trigger-wrap:hover .feedback-bubble-arc-path{stroke-dashoffset:0}}.feedback-bubble-trigger-wrap:focus-within .feedback-bubble-arc-path{stroke-dashoffset:0}.feedback-bubble-shell--expanded .feedback-bubble-arc-path{stroke-dashoffset:69.12}.feedback-bubble-trigger{width:3rem;height:3rem;border-radius:50%;border:none;background:transparent;box-shadow:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}@media (hover: hover) and (pointer: fine){.feedback-bubble-trigger:hover{filter:brightness(1.02)}}.feedback-bubble-trigger-icon{display:block;color:var(--primary)}.feedback-bubble-expanded{position:relative;width:100%;box-sizing:border-box;padding:0 1rem;max-height:0;overflow:hidden;opacity:0;transform:translateY(.65rem) scale(.98);transform-origin:bottom right;pointer-events:none;visibility:hidden;transition:max-height .48s cubic-bezier(.34,1.08,.64,1),opacity .32s ease,transform .48s cubic-bezier(.34,1.1,.64,1),padding .4s cubic-bezier(.34,1.08,.64,1),visibility 0s linear .32s}.feedback-bubble-expanded--visible{max-height:min(90vh,36rem);overflow:visible;opacity:1;transform:translateY(0) scale(1);pointer-events:auto;visibility:visible;padding:1rem 1.25rem 1.25rem;transition:max-height .5s cubic-bezier(.34,1.08,.64,1),opacity .36s ease .04s,transform .5s cubic-bezier(.34,1.08,.64,1) .02s,padding .42s cubic-bezier(.34,1.08,.64,1),visibility 0s linear 0s}.feedback-bubble-accent{position:absolute;left:0;top:.75rem;bottom:.75rem;width:3px;border-radius:999px;background:linear-gradient(180deg,var(--secondary),var(--primary));opacity:0;transform:scaleY(.6);transform-origin:center top;transition:opacity .35s ease .06s,transform .45s cubic-bezier(.34,1.1,.64,1) .04s}.feedback-bubble-expanded--visible .feedback-bubble-accent{opacity:1;transform:scaleY(1)}.feedback-bubble-body{position:relative;padding-left:.65rem;display:flex;flex-direction:column;gap:.625rem}.feedback-bubble-heading{display:flex;flex-direction:column;gap:.2rem;min-width:0}.feedback-bubble-subtitle{margin:0;font-size:.8125rem;line-height:1.4;letter-spacing:.01em}.feedback-bubble-expanded--visible .feedback-bubble-heading{animation:feedback-bubble-header-in .52s cubic-bezier(.34,1.08,.64,1) both}.feedback-bubble-expanded--visible .feedback-bubble-hint{animation:feedback-bubble-block-in .5s cubic-bezier(.34,1.08,.64,1) .05s both}.feedback-bubble-expanded--visible .feedback-bubble-form{animation:feedback-bubble-block-in .52s cubic-bezier(.34,1.08,.64,1) .1s both}@keyframes feedback-bubble-header-in{0%{opacity:0;transform:translateY(.4rem)}to{opacity:1;transform:translateY(0)}}@keyframes feedback-bubble-block-in{0%{opacity:0;transform:translateY(.35rem)}to{opacity:1;transform:translateY(0)}}.feedback-bubble-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:0}.feedback-bubble-title{margin:0;font-size:1.125rem;font-weight:600;flex:1;min-width:0;letter-spacing:-.02em}.feedback-bubble-close{flex-shrink:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer}@media (hover: hover) and (pointer: fine){.feedback-bubble-close:hover:not(:disabled){background:var(--bg-hover);color:var(--text-heading)}}.feedback-bubble-close:active:not(:disabled){background:var(--bg-hover);color:var(--text-heading)}.feedback-bubble-close:disabled{opacity:.5;cursor:not-allowed}.feedback-bubble-hint{margin:0;font-size:.875rem;line-height:1.45}.feedback-bubble-form{display:flex;flex-direction:column;gap:.5rem}.feedback-bubble-textarea{resize:vertical;min-height:7rem;padding-inline:var(--space-12);padding-block:var(--space-8)}.feedback-bubble-wordcount{margin:0;font-size:.8125rem}.feedback-bubble-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem}.feedback-bubble-thankyou{margin:0;font-size:.875rem;color:var(--primary)}@media (prefers-reduced-motion: reduce){.feedback-bubble-shell,.feedback-bubble-collapsed,.feedback-bubble-expanded,.feedback-bubble-arc-path,.feedback-bubble-accent{transition-duration:.01ms!important;transition-delay:0s!important}.feedback-bubble-expanded--visible .feedback-bubble-heading,.feedback-bubble-expanded--visible .feedback-bubble-hint,.feedback-bubble-expanded--visible .feedback-bubble-form{animation:none!important}}:root{--grey-50: #fafafa;--grey-100: #f5f5f5;--grey-200: #e8e8e8;--grey-300: #d4d4d4;--grey-400: #767676;--grey-500: #737373;--grey-600: #525252;--grey-700: #404040;--grey-800: #262626;--grey-900: #171717;--space-1: 1px;--space-2: 2px;--space-3: 3px;--space-4: 4px;--space-8: 8px;--space-10: 10px;--space-12: 12px;--space-14: 14px;--space-16: 16px;--space-20: 20px;--space-24: 24px;--space-28: 28px;--space-32: 32px;--size-16: 16px;--size-24: 24px;--text-xs: 11px;--text-sm: 13px;--text-base: 14px;--text-md: 15px;--text-lg: 18px;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--surface: linear-gradient(135deg, #e0e5eb 0%, #e8e8e8 50%, #dde2e8 100%);--surface-fallback: #e8e8e8;--card-bg: #ffffff;--primary: #1a1a1a;--primary-hover: #111111;--secondary: #516129;--secondary-hover: #3e4b1f;--secondary-bg: rgba(81, 97, 41, .12);--danger: #c0392b;--danger-hover: #a93226;--color-health-red: #D65D7A;--color-health-amber: #D4A843;--color-health-green: #3EAA7D;--color-info: #3B7DD8;--color-ai: #9B6BC4;--color-delayed: #d23737;--color-success: #166534;--color-success-bg: #dcfce7;--z-sticky: 10;--z-modal: 1000;--z-overlay-menu: 1100;--z-tooltip: 1200;--autofill-step-done: #22c55e;--autofill-mustard: #e4a853;--radius: 12px;--radius-sm: 8px;--radius-xs: 6px;--radius-pill: 20px;--shadow: 0 1px 3px rgba(0, 0, 0, .08);--shadow-sm: 0 2px 6px rgba(0, 0, 0, .2);--shadow-md: 0 3px 10px rgba(0, 0, 0, .25);--shadow-card: 0 4px 16px rgba(0, 0, 0, .08), 0 1px 4px rgba(0, 0, 0, .04);--shadow-auth-card: 0 20px 60px rgba(0, 0, 0, .15), 0 8px 24px rgba(0, 0, 0, .1), 0 0 0 1px rgba(0, 0, 0, .04);--transition-fast: .18s;--transition-page: .25s;--card-hover-border-color: var(--secondary);--card-hover-transition: border-color var(--transition-fast) ease-out;--card-animate-duration: .35s;--card-animate-max: 400px;--glow-pastel-blue: 0 0 0 2px rgba(100, 180, 220, .35), 0 0 24px rgba(100, 180, 220, .2);--pastel-orange: rgba(81, 97, 41, .75);--pastel-orange-transparent: rgba(81, 97, 41, .5);--glass-bg-card: rgba(255, 255, 255, .65);--glass-bg-card-hover: rgba(255, 255, 255, .8);--glass-bg: rgba(255, 255, 255, .25);--glass-bg-strong: rgba(255, 255, 255, .85);--glass-border: 1px solid rgba(255, 255, 255, .35);--glass-border-color: rgba(255, 255, 255, .35);--glass-border-hover-color: rgba(255, 255, 255, .95);--glass-blur: 12px;--glass-blur-overlay: 4px;--glass-shadow: 0 8px 32px rgba(0, 0, 0, .08);--glass-gradient-accent: linear-gradient(135deg, rgba(81, 97, 41, .03) 0%, rgba(26, 26, 26, .03) 100%);--glass-overlay-bg: rgba(0, 0, 0, .35);--glass-bg-comms: rgba(255, 255, 255, .2);--glass-border-comms: 1px solid rgba(255, 255, 255, .4);--border-divider: 1px solid rgba(0, 0, 0, .06);--border-subtle: 1px solid rgba(0, 0, 0, .04);--border-light: 1px solid rgba(255, 255, 255, .85);--border-input: #d4d4d4;--glow-blue: rgba(100, 180, 220, .6);--glow-blue-soft: rgba(100, 180, 220, .35);--glass-blue-light: rgba(184, 212, 240, .25);--card-padding-h: var(--space-20);--card-padding-v: var(--space-16);--card-padding: var(--card-padding-v) var(--card-padding-h);--overlay-dark-light: rgba(0, 0, 0, .025);--overlay-dark-lighter: rgba(0, 0, 0, .02);--overlay-dark-subtle: rgba(0, 0, 0, .05);--overlay-dark-medium: rgba(0, 0, 0, .08);--overlay-dark-strong: rgba(0, 0, 0, .1);--overlay-dark-slider: linear-gradient(to right, rgba(0, 0, 0, .08), rgba(0, 0, 0, .12));--overlay-dark-slider-hover: linear-gradient(to right, rgba(0, 0, 0, .12), rgba(0, 0, 0, .16));--overlay-white-strong: rgba(255, 255, 255, .9);--overlay-white-opaque: rgba(255, 255, 255, .98);--overlay-white-card: rgba(255, 255, 255, .65);--focus-ring-primary: 0 0 0 3px rgba(26, 26, 26, .1);--focus-ring-secondary: 0 0 0 3px rgba(81, 97, 41, .12);--focus-ring-success: 0 0 0 3px rgba(62, 170, 125, .12);--focus-ring-danger: 0 0 0 3px rgba(192, 57, 43, .12);--btn-padding-y: 12px;--btn-padding-x: 20px;--btn-min-height: 44px;--btn-line-height: 1.4;--btn-sm-padding-y: 10px;--btn-sm-padding-x: 16px;--btn-sm-min-height: 38px;--text-primary: #262626;--text-secondary: #525252;--text-muted: #737373;--text-heading: #171717;--text-on-primary: #ffffff;--text-inverse: #ffffff;--bg-hover: #e8e8e8;--bg-active: #f5f5f5;--bg-muted: #fafafa;--bg-disabled: #f5f5f5;--subtab-bg: #d4d4d4;--subtab-hover-bg: #767676;--scrollbar-thumb: #888;--scrollbar-thumb-hover: #555;--scrollbar-thumb-active: #333;--tooltip-bg: #171717;--tooltip-text: #ffffff;--tooltip-border: rgba(255, 255, 255, .12);--tooltip-alert: #f87171;--badge-danger-bg: rgba(214, 93, 122, .18);--badge-warning-bg: rgba(212, 168, 67, .18);--badge-ok-bg: rgba(62, 170, 125, .18);--color-danger-subtle: rgba(192, 57, 43, .18);--color-health-green-glow: rgba(62, 207, 142, .25);--shimmer-highlight: rgba(255, 255, 255, .9);--shimmer-pulse: rgba(255, 255, 255, .5);--tap-min: 44px;--tap-gap: 8px;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--blur-strong: blur(12px);--blur-reduced: blur(4px)}html{-webkit-tap-highlight-color:transparent;touch-action:manipulation}html,body{overscroll-behavior:none}.tap-target{position:relative;min-width:var(--tap-min);min-height:var(--tap-min);display:inline-flex;align-items:center;justify-content:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer}.safe-pad-top{padding-top:var(--safe-top)}.safe-pad-right{padding-right:var(--safe-right)}.safe-pad-bottom{padding-bottom:var(--safe-bottom)}.safe-pad-left{padding-left:var(--safe-left)}@media (hover: none) and (pointer: coarse) and (min-width: 900px){.modal-overlay,.modal-panel,.sidebar,.auth-card,.glass-sidebar,.glass-card,.card-glass,.settingsDrawer{-webkit-backdrop-filter:var(--blur-reduced)!important;backdrop-filter:var(--blur-reduced)!important}button,[role=button],a,label[for],select,input[type=checkbox],input[type=radio]{min-height:var(--tap-min);touch-action:manipulation}input,textarea,select{font-size:max(16px,1em)}}*{box-sizing:border-box}html,body{height:100%;overflow:hidden}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;background:var(--surface);background-color:var(--surface-fallback);color:var(--text-primary);min-height:100%}#root{height:100%}@keyframes shimmer{to{left:200%}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.page-fade-in,.subtab-fade-in{animation:fadeIn var(--transition-page) ease-out}@keyframes skeletonShimmerFrantic{0%{left:-100%}to{left:100%}}.skeleton-line{display:block;position:relative;overflow:hidden;width:100%;min-height:20px;border-radius:var(--radius-sm);background:var(--bg-hover)}.skeleton-line:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,var(--shimmer-pulse),transparent);animation:skeletonShimmerFrantic 1.4s ease-in-out infinite}.stagger-children>*{animation:fadeIn .3s ease-out both}.stagger-children>*:nth-child(1){animation-delay:.05s}.stagger-children>*:nth-child(2){animation-delay:.1s}.stagger-children>*:nth-child(3){animation-delay:.15s}.stagger-children>*:nth-child(4){animation-delay:.2s}.stagger-children>*:nth-child(5){animation-delay:.25s}.stagger-children>*:nth-child(6){animation-delay:.3s}.stagger-children>*:nth-child(7){animation-delay:.35s}.stagger-children>*:nth-child(8){animation-delay:.4s}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.card-glass{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border);border-radius:var(--radius);box-shadow:var(--glass-shadow)}.card-glass--strong{background:var(--glass-bg-strong)}.card-glass--comms{background:var(--glass-bg-comms);border:var(--glass-border-comms)}.card-glass--padded{padding:var(--card-padding)}.card-glass--accent-hover{border-top:4px solid transparent;border-left:4px solid transparent;border-right:var(--glass-border);border-bottom:var(--glass-border);transition:var(--card-hover-transition)}@media (hover: hover) and (pointer: fine){.card-glass--accent-hover:hover{border-top-color:var(--card-hover-border-color);border-left-color:var(--card-hover-border-color)}}.card-glass--accent-hover:active{border-top-color:var(--card-hover-border-color);border-left-color:var(--card-hover-border-color)}.card-glass--compact{padding:var(--space-12) var(--space-16)}.card-glass--no-pad{padding:0;overflow:hidden}.card-divider{border-bottom:var(--border-divider)}.badge{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2) var(--space-10);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--font-bold);white-space:nowrap;flex-shrink:0;letter-spacing:.03em;line-height:1}.badge--secondary{background:var(--secondary);color:var(--text-on-primary)}.badge--success{background:var(--color-success);color:var(--text-on-primary)}.badge--primary{background:var(--primary);color:var(--text-on-primary)}.badge--ai{background:linear-gradient(135deg,var(--color-info),var(--color-ai));color:var(--text-on-primary);box-shadow:var(--shadow-sm)}.badge--nav{min-width:18px;height:18px;padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--secondary);color:var(--text-primary);font-size:var(--text-xs);font-weight:var(--font-bold);display:inline-flex;align-items:center;justify-content:center}.badge--danger{background:var(--badge-danger-bg);color:var(--color-health-red)}.badge--warning{background:var(--badge-warning-bg);color:var(--color-health-amber)}.badge--ok{background:var(--badge-ok-bg);color:var(--color-health-green)}.btn{border:none;border-radius:var(--radius);font-weight:var(--font-semibold);font-family:inherit;cursor:pointer;transition:background var(--transition-fast) ease-out,color var(--transition-fast) ease-out;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}.btn--primary,.btn--secondary,.btn--danger,.btn--status{padding:var(--btn-padding-y) var(--btn-padding-x);min-height:var(--btn-min-height);font-size:var(--text-base);line-height:var(--btn-line-height)}.btn--primary{background:var(--primary);color:var(--text-on-primary)}@media (hover: hover) and (pointer: fine){.btn--primary:hover:not(:disabled){background:var(--primary-hover)}}.btn--primary:active:not(:disabled){background:var(--primary-hover)}.btn--secondary{background:var(--secondary);color:var(--text-on-primary)}@media (hover: hover) and (pointer: fine){.btn--secondary:hover:not(:disabled){background:var(--secondary-hover)}}.btn--secondary:active:not(:disabled){background:var(--secondary-hover)}.btn--danger{background:var(--danger);color:var(--text-on-primary)}@media (hover: hover) and (pointer: fine){.btn--danger:hover:not(:disabled){background:var(--danger-hover)}}.btn--danger:active:not(:disabled){background:var(--danger-hover)}.btn--status{background:var(--bg-hover);color:var(--text-secondary)}@media (hover: hover) and (pointer: fine){.btn--status:hover:not(:disabled){background:var(--subtab-bg)}}.btn--status:active:not(:disabled){background:var(--subtab-bg)}.btn--small{padding:var(--btn-sm-padding-y) var(--btn-sm-padding-x);min-height:var(--btn-sm-min-height);font-size:var(--text-sm);line-height:var(--btn-line-height);background:var(--bg-hover);color:var(--text-primary)}@media (hover: hover) and (pointer: fine){.btn--small:hover:not(:disabled){background:var(--subtab-bg)}}.btn--small:active:not(:disabled){background:var(--subtab-bg)}.btn--dangerSmall{padding:var(--btn-sm-padding-y) var(--btn-sm-padding-x);min-height:var(--btn-sm-min-height);font-size:var(--text-sm);line-height:var(--btn-line-height);background:var(--danger);color:var(--text-on-primary)}@media (hover: hover) and (pointer: fine){.btn--dangerSmall:hover:not(:disabled){background:var(--danger-hover)}}.btn--dangerSmall:active:not(:disabled){background:var(--danger-hover)}.btn:disabled{cursor:not-allowed;opacity:.7}.btn--secondary:disabled{background:var(--subtab-bg);color:var(--text-secondary);opacity:1}.btn--status:disabled{opacity:1;cursor:default}.btn--full{width:100%;padding:var(--btn-padding-y) var(--space-14);min-height:var(--btn-min-height)}.btn--icon{width:var(--space-32);height:var(--space-32);min-height:var(--space-32);padding:0;border-radius:var(--radius-sm);background:var(--bg-hover);color:var(--text-secondary);flex-shrink:0;position:relative}@media (hover: hover) and (pointer: fine){.btn--icon:hover:not(:disabled){background:var(--subtab-bg);color:var(--text-primary)}}.btn--icon:active:not(:disabled){background:var(--subtab-bg);color:var(--text-primary)}.btn--icon-danger{background:var(--color-danger-subtle);color:var(--danger)}@media (hover: hover) and (pointer: fine){.btn--icon.btn--icon-danger:hover:not(:disabled){background:var(--danger);color:var(--text-on-primary)}}.btn--icon.btn--icon-danger:active:not(:disabled){background:var(--danger);color:var(--text-on-primary)}.btn--icon[data-tooltip]{overflow:visible}.btn--icon[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + var(--space-4));left:50%;transform:translate(-50%);background:var(--tooltip-bg);color:var(--text-inverse);font-size:var(--text-xs);font-weight:var(--font-medium);white-space:nowrap;padding:var(--space-4) var(--space-8);border-radius:var(--radius-sm);pointer-events:none;opacity:0;transition:opacity .12s ease;z-index:var(--z-tooltip);box-shadow:var(--shadow-sm)}@media (hover: hover) and (pointer: fine){.btn--icon[data-tooltip]:hover:after{opacity:1}}@media (hover: none){.btn--icon{width:36px;height:36px;min-height:36px}}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:var(--radius-xs);background:var(--overlay-dark-slider);outline:none;padding:0;margin:0;cursor:pointer;min-width:100px;transition:background .2s ease}@media (hover: hover) and (pointer: fine){.slider:hover{background:var(--overlay-dark-slider-hover)}}.slider:active{background:var(--overlay-dark-slider-hover)}.slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:var(--size-16);height:var(--size-16);border-radius:50%;background:var(--secondary);cursor:grab;border:3px solid var(--overlay-white-strong);box-shadow:var(--shadow-sm);transition:transform .1s ease,box-shadow .1s ease}@media (hover: hover) and (pointer: fine){.slider::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:var(--shadow-md)}}.slider::-webkit-slider-thumb:active{cursor:grabbing}.slider::-moz-range-thumb{width:var(--size-16);height:var(--size-16);border-radius:50%;background:var(--secondary);cursor:grab;border:3px solid var(--overlay-white-strong);box-shadow:var(--shadow-sm);transition:transform .1s ease,box-shadow .1s ease}@media (hover: hover) and (pointer: fine){.slider::-moz-range-thumb:hover{transform:scale(1.15);box-shadow:var(--shadow-md)}}.slider::-moz-range-thumb:active{cursor:grabbing}.slider:disabled{opacity:.6;cursor:not-allowed}.slider:disabled::-webkit-slider-thumb{cursor:not-allowed}.slider:disabled::-moz-range-thumb{cursor:not-allowed}.progress-bar{position:relative;height:3px;background:var(--overlay-dark-medium);border-radius:var(--radius-xs);overflow:hidden}.progress-bar-fill{height:100%;background:var(--bar-color);border-radius:var(--radius-xs);transition:width .3s ease}.progress-bar--sm{height:2px}.progress-bar-gap{position:absolute;top:0;height:100%;background:#d65d7a40;border-radius:0 var(--radius-xs) var(--radius-xs) 0}.progress-bar-marker{position:absolute;top:-3px;width:2px;height:9px;background:var(--overlay-white-strong);border-radius:1px;transform:translate(-50%)}.subtab-sample-title{margin:0 0 var(--space-12);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.subtab-sample-body{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.6}.error-boundary-fullpage{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:var(--space-16);color:var(--text-primary)}.error-boundary-fullpage h2{margin:0}.error-boundary-fullpage p{margin:0;color:var(--text-muted)}.error-boundary-page{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:var(--space-12);color:var(--text-secondary);text-align:center}.error-boundary-page p{margin:0}.error-boundary-page p:first-child{font-weight:var(--font-semibold)}.error-boundary-page p:last-of-type{font-size:var(--text-sm);color:var(--text-muted)}.error-boundary-btn{padding:var(--space-6) var(--space-16);border:1px solid var(--border-input);border-radius:var(--radius-sm);background:var(--card-bg);cursor:pointer;font-size:var(--text-sm);font-family:inherit;color:var(--text-secondary);transition:border-color .15s,background .15s}.error-boundary-btn:hover{border-color:var(--grey-400);background:var(--bg-muted)}.file-upload-zone{width:100%;border:2px dashed var(--border-input);border-radius:var(--radius);padding:var(--space-24);text-align:center;cursor:pointer;background:var(--bg-muted);color:var(--text-secondary);transition:border-color .15s,background .15s}.file-upload-zone--dragging{border-color:var(--primary);background:var(--bg-active)}.file-upload-zone--disabled{background:var(--bg-hover);cursor:default;pointer-events:none}.file-upload-zone-error{color:var(--secondary);margin-top:var(--space-8);margin-bottom:0;font-size:var(--text-sm)}.file-upload-zone--active{border-color:var(--glow-blue)!important;box-shadow:var(--glow-pastel-blue)!important}.file-upload-zone:focus-visible{outline:none;border-color:var(--glow-blue)!important;box-shadow:var(--glow-pastel-blue)!important}.progress-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-16);margin-bottom:var(--space-24)}.progress-page-title{margin:0 0 var(--space-4);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.progress-meta{margin:0;font-size:var(--text-sm);color:var(--text-muted);display:flex;gap:var(--space-16);align-items:center}.progress-version{font-weight:var(--font-semibold);color:var(--text-secondary)}.progress-gates-list{display:flex;flex-direction:column;gap:var(--space-20);margin-bottom:var(--space-28)}.progress-gate-card{background:var(--card-bg);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);overflow:hidden}.progress-gate-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-12) var(--space-16);background:var(--bg-active);border-bottom:var(--border-divider)}.progress-gate-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary)}.progress-gate-avg{font-size:var(--text-sm);font-weight:var(--font-semibold);padding:2px var(--space-10);border-radius:var(--radius-pill)}.progress-gate-avg--none{color:var(--text-muted);background:var(--bg-active)}.progress-gate-avg--partial{color:var(--secondary);background:var(--secondary-bg)}.progress-gate-avg--complete{color:var(--color-success);background:var(--color-success-bg)}.progress-activities-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.progress-activities-table th{text-align:left;padding:var(--space-8) var(--space-16);font-weight:var(--font-semibold);color:var(--text-secondary);background:var(--bg-muted);border-bottom:var(--border-divider)}.progress-activities-table td{padding:var(--space-8) var(--space-16);border-bottom:var(--border-subtle);vertical-align:middle;color:var(--text-primary)}.progress-activities-table tr:last-child td{border-bottom:none}.progress-col-num{width:80px;color:var(--text-muted)}.progress-col-name{color:var(--text-primary)}.progress-col-progress{width:160px}.progress-select{width:100%;padding:var(--space-4) var(--space-8);border:1px solid var(--border-input);border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:inherit;background:var(--card-bg);color:var(--text-primary);cursor:pointer}.progress-select:focus{outline:none;border-color:var(--primary)}.progress-select:disabled{cursor:not-allowed;opacity:.7}.progress-row-na{opacity:.55}.progress-na-tag,.progress-na-cell{color:var(--text-muted);font-style:italic}.progress-empty-row{color:var(--text-muted);font-style:italic;text-align:center;padding:var(--space-16)!important}.progress-save-bar{display:flex;align-items:center;gap:var(--space-16);padding-top:var(--space-8)}.progress-success-msg{font-size:var(--text-sm);color:var(--color-success);font-weight:var(--font-medium)}.progress-error-msg{font-size:var(--text-sm);color:var(--danger);margin-bottom:var(--space-16)}.progress-switcher-select{font-size:var(--text-sm);color:var(--text-primary);background:var(--card-bg);border:1px solid var(--border-input);border-radius:var(--radius-sm);padding:var(--space-6) var(--space-10);width:100%;cursor:pointer}.progress-switcher-select:focus{outline:none;border-color:var(--primary)}.progress-switcher-select:disabled{opacity:.6;cursor:not-allowed}.auth-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--surface-fallback);display:flex;align-items:center;justify-content:center}.auth-page-content{position:relative;z-index:1}.auth-card{width:360px;padding:var(--space-32);background:var(--glass-bg-strong);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border);border-radius:var(--radius);box-shadow:var(--shadow-auth-card)}.auth-card--wide{width:420px}.auth-logo-wrap{text-align:center;margin-bottom:var(--space-16)}.auth-logo-img{max-width:120px;height:auto}.auth-title{margin:0 0 var(--space-20);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);text-align:center}.auth-title--tight{margin:0 0 var(--space-8)}.auth-description{margin:0 0 var(--space-16);font-size:var(--text-sm);color:var(--text-secondary);text-align:center}.auth-field{margin-bottom:var(--space-20)}.auth-field--last{margin-bottom:var(--space-24)}.auth-card .input-base{min-height:40px;padding:10px var(--space-16)}.input-wrap{position:relative;width:100%}.input-toggle-btn{position:absolute;right:var(--space-8);top:50%;transform:translateY(-50%);width:var(--size-24);height:var(--size-24);padding:0;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:color var(--transition-fast) ease}@media (hover: hover) and (pointer: fine){.input-toggle-btn:hover{color:var(--text-primary)}}.input-toggle-btn:active{color:var(--text-primary)}@keyframes dg-spin{to{transform:rotate(360deg)}}.data-guard-loading{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-16);color:var(--text-muted);font-size:var(--text-sm)}.data-guard-spinner{width:16px;height:16px;border:2px solid var(--bg-hover);border-top-color:var(--secondary);border-radius:50%;animation:dg-spin .7s linear infinite;flex-shrink:0}.data-guard-error{padding:var(--space-16);color:var(--color-delayed);font-size:var(--text-sm)}.data-guard-empty{padding:var(--space-16);color:var(--text-muted);font-size:var(--text-sm)}.tab-carousel{display:flex;align-items:center;gap:var(--space-8);min-width:0;width:100%}.tab-carousel__track{display:flex;flex-wrap:nowrap;gap:var(--space-8);overflow-x:hidden;flex:1;min-width:0;scroll-behavior:smooth;padding:2px 0}.tab-carousel__arrow{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid var(--border-input);border-radius:var(--radius-sm);background:var(--bg-active);color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s,opacity .15s,border-color .15s;line-height:1}.tab-carousel__arrow:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-focus)}.tab-carousel__arrow:disabled{opacity:.25;cursor:default;pointer-events:none}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.toast-stack{position:fixed;bottom:var(--space-24);right:var(--space-24);z-index:var(--z-modal);display:flex;flex-direction:column;gap:var(--space-8);pointer-events:none}.toast{display:flex;align-items:center;gap:var(--space-12);padding:var(--space-12) var(--space-16);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-medium);box-shadow:var(--shadow-card);animation:toast-in .18s ease-out both;pointer-events:all;max-width:360px}.toast--success{background:var(--color-success-bg);color:var(--color-success);border:1px solid rgba(22,101,52,.25)}.toast--info{background:var(--card-bg);color:var(--secondary);border:1px solid var(--grey-200)}.toast-message{flex:1}.toast-dismiss{background:none;border:none;cursor:pointer;font-size:var(--text-lg);line-height:1;color:inherit;opacity:.6;padding:0 0 0 var(--space-4);flex-shrink:0;transition:opacity var(--transition-fast) ease}@media (hover: hover) and (pointer: fine){.toast-dismiss:hover{opacity:1}}.toast-dismiss:active{opacity:1}@media (prefers-reduced-motion: reduce){.toast{animation:none}}.dropdown-styled{position:fixed;background:var(--card-bg);border:1px solid var(--border-input);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);max-height:220px;overflow-y:auto;margin:0;padding:0;list-style:none;box-sizing:border-box}.dropdown-option-btn{width:100%;padding:var(--space-10) var(--space-12);text-align:left;border:none;background:none;cursor:pointer;font-size:var(--text-base);color:var(--text-primary);font-family:inherit;transition:background var(--transition-fast) ease}@media (hover: hover) and (pointer: fine){.dropdown-option-btn:hover{background:var(--bg-hover)}}.dropdown-option-btn:active{background:var(--bg-hover)}.thinking-card-layout{display:inline-flex;align-items:center;gap:var(--space-10);width:100%}.thinking-card-text{font-size:var(--text-sm);color:var(--text-muted)}.search-status-text{margin-left:var(--space-8);font-size:var(--text-sm);color:var(--text-muted)}.error-alert-text{color:var(--secondary);margin-bottom:var(--space-12);font-size:var(--text-base)}.readonly-notice{margin-bottom:var(--space-12);padding:var(--space-8) var(--space-12);background:var(--bg-active);color:var(--text-secondary);border-radius:var(--radius);font-size:var(--text-base);font-weight:var(--font-medium)}.action-bar-layout{display:flex;align-items:center;gap:var(--space-12);margin-top:var(--space-16);flex-wrap:wrap}.pf-panel{margin-top:var(--space-24);border-top:1px solid var(--grey-200);padding-top:var(--space-16)}.cd-gate-body--table .pf-panel{margin-top:0;border-top:1px solid var(--grey-200);padding:var(--space-20) 20px var(--space-24)}.pf-panel-header{display:flex;align-items:center;gap:var(--space-8);margin-bottom:var(--space-12)}.pf-panel-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--grey-700);text-transform:uppercase;letter-spacing:.04em}.pf-upload-zone-wrap{margin-bottom:var(--space-12)}.pf-upload-inner{display:flex;flex-direction:row;align-items:center;gap:var(--space-8);padding:var(--space-10) var(--space-16)}.pf-upload-icon{color:var(--grey-400)}.pf-upload-text{font-size:var(--text-sm);color:var(--grey-600)}.pf-upload-types{font-size:var(--text-xs);color:var(--grey-400)}.pf-error{font-size:var(--text-sm);color:var(--danger);margin:var(--space-4) 0 var(--space-8)}.pf-list-state{display:flex;align-items:center;justify-content:center;padding:var(--space-20)}.pf-list-empty{font-size:var(--text-sm);color:var(--grey-400)}.pf-list-wrap{overflow-x:auto}.pf-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.pf-table thead th{text-align:left;padding:var(--space-4) var(--space-8);font-weight:var(--font-medium);color:var(--grey-500);border-bottom:1px solid var(--grey-200);white-space:nowrap}.pf-row td{padding:var(--space-8);border-bottom:1px solid var(--grey-100);vertical-align:middle}.pf-row:last-child td{border-bottom:none}.pf-col-icon{width:28px}.pf-col-size{width:70px;white-space:nowrap;color:var(--grey-500)}.pf-col-uploader{width:130px;color:var(--grey-600)}.pf-col-date{width:110px;white-space:nowrap;color:var(--grey-500)}.pf-col-rag{width:110px}.pf-col-actions{width:200px;white-space:nowrap}.pf-col-name{max-width:260px}.pf-file-icon{display:inline-flex;align-items:center;color:var(--grey-400)}.pf-filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;max-width:100%}.pf-version{display:inline-block;margin-left:var(--space-4);font-size:var(--text-xs);color:var(--grey-400);background:var(--grey-100);border-radius:3px;padding:0 var(--space-4)}.pf-col-actions{display:table-cell}.pf-col-actions>*+*{margin-left:var(--space-4)}.pf-badge{display:inline-flex;align-items:center;gap:3px;font-size:var(--text-xs);border-radius:3px;padding:2px 6px;white-space:nowrap}.pf-badge--pending{background:var(--grey-100);color:var(--grey-500)}.pf-badge--ingested{background:#3eaa7d1f;color:#2d8a63}.pf-badge--failed{background:#c0392b1a;color:var(--danger)}.pf-badge--skipped{background:var(--grey-100);color:var(--grey-400)}.modal-panel.ppm-panel{width:94vw;max-width:94vw;height:92vh;max-height:92vh;display:flex;flex-direction:column;padding:var(--space-16);overflow:hidden}.ppm-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);padding-bottom:var(--space-12);border-bottom:1px solid var(--border-light, var(--grey-200));flex-shrink:0}.ppm-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary, var(--grey-800));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ppm-viewer{flex:1;min-height:0;display:flex;flex-direction:column}.ppm-toolbar{display:flex;align-items:center;gap:var(--space-16);padding:8px 4px;flex-shrink:0;flex-wrap:wrap}.ppm-toolbar-group{display:flex;align-items:center;gap:6px}.ppm-toolbar-label{font-size:var(--text-xs);color:var(--text-secondary, var(--grey-500));-webkit-user-select:none;user-select:none}.ppm-page-input{width:52px;padding:4px 6px;border:1px solid var(--border-light, var(--grey-200));border-radius:6px;font-size:var(--text-sm);text-align:center;color:var(--text-primary, var(--grey-800));background:var(--surface-primary, #fff);-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield;min-height:36px}.ppm-page-input::-webkit-outer-spin-button,.ppm-page-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ppm-page-input:focus{outline:2px solid var(--accent, #6366f1);outline-offset:1px}.ppm-zoom-controls{margin-left:auto}.ppm-zoom-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border-light, var(--grey-200));border-radius:8px;background:var(--surface-primary, #fff);color:var(--text-primary, var(--grey-800));font-size:18px;font-weight:500;cursor:pointer;touch-action:manipulation;transition:background .15s,border-color .15s;padding:0}.ppm-zoom-btn:hover:not(:disabled){background:var(--surface-hover, var(--grey-50));border-color:var(--border-medium, var(--grey-300))}.ppm-zoom-btn:active:not(:disabled){background:var(--surface-active, var(--grey-100))}.ppm-zoom-btn:disabled{opacity:.35;cursor:not-allowed}.ppm-zoom-reset{font-size:15px}.ppm-zoom-label{font-size:var(--text-xs);color:var(--text-secondary, var(--grey-500));min-width:38px;text-align:center;-webkit-user-select:none;user-select:none}.ppm-frame-wrap{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.ppm-pages{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 8px}.ppm-canvas{display:block;max-width:100%;box-shadow:0 1px 6px #0000002e;border-radius:2px;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.ppm-progress{font-size:var(--text-xs);color:var(--grey-400);padding:4px 0;align-self:center}.ppm-placeholder{flex:1;display:flex;align-items:center;justify-content:center;color:var(--grey-400);font-size:var(--text-sm);min-height:200px}.ppm-preview-img{max-width:100%;max-height:100%;object-fit:contain;display:block;margin:0 auto;border-radius:4px}@media (pointer: coarse){.ppm-zoom-btn{width:44px;height:44px;font-size:20px}.ppm-page-input{min-height:44px;width:60px;font-size:var(--text-base, 16px)}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--glass-overlay-bg);backdrop-filter:blur(var(--glass-blur-overlay));-webkit-backdrop-filter:blur(var(--glass-blur-overlay));display:flex;align-items:center;justify-content:center;z-index:var(--z-modal)}.modal-panel{background:var(--glass-bg-strong);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border);border-radius:var(--radius);box-shadow:var(--glass-shadow);padding:var(--space-24);max-width:420px;max-height:80vh;overflow:auto;overscroll-behavior:contain}.modal-panel--wide{max-width:480px}.modal-title{margin:0 0 var(--space-12);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-heading)}.modal-body{margin:0 0 var(--space-20);font-size:var(--text-base);color:var(--text-secondary)}.modal-actions{display:flex;gap:var(--space-12);justify-content:flex-end}.modal-error{color:var(--secondary);font-size:var(--text-sm);text-align:center;margin-bottom:var(--space-12)}.tooltip{position:fixed;z-index:var(--z-tooltip);pointer-events:none;background:var(--tooltip-bg);border:1px solid var(--tooltip-border);border-radius:var(--radius-sm);padding:8px 12px;min-width:160px;max-width:240px;box-shadow:0 4px 16px #00000080;line-height:1.5}.tooltip--light{background:var(--card-bg);border:1px solid var(--border-input);box-shadow:var(--shadow-card);color:var(--text-primary)}.tooltip-heading{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--tooltip-text);margin-bottom:4px;word-break:break-word}.tooltip--light .tooltip-heading{color:var(--text-primary)}.tooltip-meta{font-size:var(--text-xs);color:var(--grey-400);margin-bottom:6px}.tooltip--light .tooltip-meta{color:var(--text-muted)}.tooltip-row{display:flex;justify-content:space-between;gap:12px;font-size:var(--text-xs)}.tooltip-row span:first-child{color:var(--grey-400)}.tooltip-row span:last-child{color:var(--tooltip-text);font-weight:var(--font-medium)}.tooltip--light .tooltip-row span:first-child{color:var(--text-secondary)}.tooltip--light .tooltip-row span:last-child{color:var(--text-primary)}.tooltip-alert{margin-top:6px;font-size:var(--text-xs);color:var(--tooltip-alert);font-weight:var(--font-semibold)}.tooltip--light .tooltip-alert{color:var(--color-delayed)}.dropdown{position:relative;width:100%;min-width:0}.dropdown-trigger{width:100%;min-width:0;padding:6px 8px;border:1px solid var(--border-input);border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:inherit;background:var(--card-bg);color:var(--text-primary);cursor:pointer;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.dropdown-trigger:focus{outline:none;border-color:var(--primary);box-shadow:var(--focus-ring-primary)}.dropdown-trigger:disabled{background:var(--bg-muted);color:var(--text-secondary);cursor:not-allowed;opacity:1}.dropdown-panel{position:absolute;top:100%;left:0;right:0;margin:0;padding:0;list-style:none;background:var(--card-bg);border:1px solid var(--border-input);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);z-index:var(--z-overlay-menu);max-height:240px;overflow-y:auto;box-sizing:border-box}.dropdown-option{padding:7px 10px;min-height:var(--tap-min);font-size:var(--text-sm);font-family:inherit;cursor:pointer;touch-action:manipulation;transition:background .12s ease;color:var(--text-primary);border-bottom:var(--border-subtle);display:flex;align-items:center}@media (hover: hover) and (pointer: fine){.dropdown-option:hover{background:var(--bg-active)}}.dropdown-option:active{background:var(--bg-active)}.dropdown-option:last-child{border-bottom:none}.dropdown-option--selected{background:var(--secondary-bg);color:var(--secondary);font-weight:var(--font-semibold)}@media (hover: hover) and (pointer: fine){.dropdown-option--selected:hover{background:var(--secondary-bg)}}.dropdown-option--highlighted{background:var(--bg-active)}.dropdown-option--highlighted.dropdown-option--selected{background:var(--secondary-bg)}.dropdown-option--disabled{color:var(--text-muted);cursor:not-allowed}@media (hover: hover) and (pointer: fine){.dropdown-option--disabled:hover{background:transparent}}.dropdown-empty{padding:8px 10px;font-size:var(--text-sm);color:var(--text-muted);font-style:italic}.dropdown--disabled{display:block;font-size:var(--text-sm);color:var(--text-secondary);line-height:1.4}.flex-center{display:flex;align-items:center;justify-content:center}.flex-start{display:flex;align-items:center;justify-content:flex-start}.flex-col{display:flex;flex-direction:column}.flex-1{flex:1}.min-h-0{min-height:0}.min-w-0{min-width:0}.gap-8{gap:var(--space-8)}.gap-12{gap:var(--space-12)}.gap-16{gap:var(--space-16)}.p-16{padding:var(--space-16)}.p-24{padding:var(--space-24)}.p-8-0{padding:var(--space-8) 0}.mb-8{margin-bottom:var(--space-8)}.mb-12{margin-bottom:var(--space-12)}.mb-16{margin-bottom:var(--space-16)}.mb-24{margin-bottom:var(--space-24)}.mt-16{margin-top:var(--space-16)}.mr-8{margin-right:var(--space-8)}.ml-8{margin-left:var(--space-8)}.mt-12{margin-top:var(--space-12)}.mt-24{margin-top:var(--space-24)}.text-center{text-align:center}.form-actions{display:flex;align-items:center;gap:var(--space-12);flex-wrap:wrap}.feedback-section{margin-top:var(--space-16)}.feedback-section .label-base{margin-bottom:var(--space-8)}.version-label{color:var(--text-secondary);font-size:var(--text-base)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.input-base{width:100%;padding:var(--space-8) var(--space-10);border:1px solid var(--border-input);border-radius:var(--radius);font-size:var(--text-base);font-family:inherit;background:var(--card-bg);color:var(--text-primary);box-sizing:border-box}.input-base:focus{outline:none;border-color:var(--primary)}.input-base-with-icon{padding-right:40px}.label-base{display:block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);margin-bottom:var(--space-4)}.section-title{margin:0 0 var(--space-12);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-heading)}.section-title--spaced{margin:var(--space-24) 0 var(--space-12)}.text-success{margin-top:var(--space-12);color:var(--primary)}.hidden{display:none}.upload-zone{width:100%;border:2px dashed var(--border-input);border-radius:var(--radius);padding:var(--space-32);text-align:center;cursor:pointer;background:var(--bg-muted);color:var(--text-secondary)}.upload-zone--dragging{border-color:var(--primary);background:var(--bg-active)}.photo-frame{width:200px;height:200px;overflow:hidden;border-radius:var(--radius-sm);margin-bottom:var(--space-12);cursor:move;border:2px solid var(--border-input);background:var(--bg-active)}.photo-frame-img{width:200px;height:200px;object-fit:cover;pointer-events:none}.text-error{color:var(--secondary);font-size:var(--text-sm);text-align:center;margin-bottom:var(--space-12)}.rule-banner{width:100%;box-sizing:border-box;margin-top:var(--space-16);background:var(--secondary-bg);border-radius:var(--radius);padding:var(--space-16)}.rule-banner ul{color:var(--text-heading);margin:0;padding-left:var(--space-20);font-size:var(--text-base)}.app-card{background:var(--glass-bg-card);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border);border-radius:var(--radius);box-shadow:var(--glass-shadow);padding:var(--space-16) var(--space-20)}.app-card--narrow{padding:var(--space-12) var(--space-16)}a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast) ease}@media (hover: hover) and (pointer: fine){a:hover{color:var(--primary-hover)}}a:active{color:var(--primary-hover)}button{font-family:inherit;cursor:pointer}.card-hover-accent{border-top:4px solid transparent;border-left:4px solid transparent;transition:border-color var(--transition-fast) ease-out}@media (hover: hover) and (pointer: fine){.card-hover-accent:hover{border-top-color:var(--secondary);border-left-color:var(--secondary)}}.card-hover-accent:active{border-top-color:var(--secondary);border-left-color:var(--secondary)}.logo-card-accent{border-top-width:5px;border-left-width:5px}.text-muted{color:var(--text-secondary)}.feedback-field{box-sizing:border-box;width:100%;resize:vertical;min-height:72px;padding:var(--space-8) var(--space-12);border-radius:var(--radius);border:1px solid var(--border-input);outline-offset:2px;font-family:inherit;font-size:var(--text-base);background:transparent;color:inherit}.feedback-field:focus{outline:2px solid var(--primary);border-color:var(--primary)}.feedback-field-readonly{box-sizing:border-box;width:100%;max-width:560px;padding:var(--space-8) var(--space-12);border-radius:var(--radius);border:1px solid var(--border-input);background:var(--bg-muted);color:var(--text-primary);white-space:pre-wrap;min-height:60px}.location-search-input:focus{outline:none;border-color:var(--primary)}.app-table-row--invalid,.app-table-row--invalid td{background:var(--bg-active);color:var(--text-secondary)}.page-loading-fallback{padding:var(--space-32);color:var(--grey-500)}.layout-shell{height:100vh;overflow:hidden;display:flex;flex-direction:row;background:var(--surface);background-color:var(--surface-fallback)}.layout-main-column{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;padding:var(--space-24)}.layout-main-card{flex:1;min-height:0;display:flex;flex-direction:column;padding:var(--space-20);overflow:auto;background:var(--glass-bg-card);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border);border-radius:var(--radius);box-shadow:var(--glass-shadow)}.layout-outlet{flex:1;min-height:0;display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain}.sidebar{width:280px;min-height:0;padding:var(--space-16);display:flex;flex-direction:column;gap:var(--space-16);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-right:var(--glass-border)}.sidebar-logo-card{padding:var(--space-20);display:flex;align-items:center;justify-content:center;background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-right:var(--glass-border);border-bottom:var(--glass-border);border-radius:var(--radius);box-shadow:var(--glass-shadow)}.sidebar-logo-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;width:100%;text-align:center;user-select:none;-webkit-user-select:none;touch-action:manipulation;-webkit-touch-callout:none}.sidebar-logo-card--pressing{animation:logo-press-charge .6s ease-out forwards}@keyframes logo-press-charge{0%{box-shadow:0 0 0 0 var(--primary),var(--glass-shadow)}to{box-shadow:0 0 0 3px var(--primary),var(--glass-shadow)}}.sidebar-logo-wrap{width:100%;overflow:hidden}.sidebar-logo-slider{display:flex;width:200%;transition:transform .21s ease-out}.sidebar-logo-slide{flex:0 0 50%;width:50%;height:48px;display:flex;align-items:center;justify-content:center}.sidebar-logo-slide>img,.sidebar-logo-slide>svg{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;object-position:center;display:block}.sidebar-logo-shimmer{position:relative;overflow:hidden}.sidebar-logo-shimmer:after{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,var(--shimmer-highlight),transparent);pointer-events:none}@media (hover: hover) and (pointer: fine){.sidebar-logo-shimmer:hover:after{animation:shimmer .7s ease-in-out}}.sidebar-logo-img{max-width:100%;height:auto;display:block;pointer-events:none;position:relative;z-index:1}.sidebar-nav-card{flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column;background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-right:var(--glass-border);border-bottom:var(--glass-border);border-radius:var(--radius);box-shadow:var(--glass-shadow)}.sidebar-panes{width:100%;overflow:hidden;min-height:0;flex:1;display:flex;flex-direction:column}.sidebar-panes-slider{display:flex;flex:1;min-height:0;width:200%;flex-shrink:0;transition:transform .21s ease-out}.sidebar-pane{flex:0 0 50%;min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column}.sidebar-pane-inner{flex:1;min-height:0;overflow:auto;padding:var(--space-16)}.sidebar-logout-row{display:flex;align-items:center;gap:var(--space-8)}.sidebar-logout-card{flex-shrink:0;padding:var(--space-16);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-right:var(--glass-border);border-bottom:var(--glass-border);border-radius:var(--radius);box-shadow:var(--glass-shadow)}.sidebar-logout-btn{flex:1;min-width:0;min-height:var(--btn-min-height);padding:var(--btn-padding-y) var(--btn-padding-x);border:none;border-radius:var(--radius-sm);font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-on-primary);background:var(--primary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}@media (hover: hover) and (pointer: fine){.sidebar-logout-btn:hover{background:var(--primary-hover)}}.sidebar-logout-btn:active{background:var(--primary-hover)}.nav-group{margin-bottom:var(--space-20)}.nav-group:last-child{margin-bottom:0}.nav-group-header{display:flex;align-items:center;gap:var(--space-8);cursor:pointer;padding:var(--space-8) 0 var(--space-10);margin-bottom:var(--space-4);border:none;background:transparent;width:100%;text-align:left;font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--grey-500);border-radius:var(--radius-sm);transition:background var(--transition-fast) ease,color var(--transition-fast) ease}@media (hover: hover) and (pointer: fine){.nav-group-header:hover{background:var(--bg-hover);color:var(--text-secondary)}}.nav-group-header:active{background:var(--bg-hover);color:var(--text-secondary)}.nav-list-wrap{overflow:hidden;max-height:0;opacity:0;transition:max-height .22s ease-out,opacity .2s ease-out}.nav-list-wrap--expanded{max-height:320px;opacity:1}.nav-list{list-style:none;margin:0;padding:0}.nav-link{display:flex;align-items:center;justify-content:space-between;padding:var(--space-8) var(--space-16);margin-left:0;margin-bottom:0;border-radius:var(--radius-sm);font-size:var(--text-base);color:var(--text-secondary);font-weight:400;background:transparent;border-left:3px solid transparent;text-decoration:none;transition:background var(--transition-fast) ease,border-color var(--transition-fast) ease}@media (hover: hover) and (pointer: fine){.nav-link:hover{background:var(--bg-hover)}}.nav-link:active{background:var(--bg-hover)}.nav-link--active{color:var(--primary);font-weight:var(--font-semibold);border-left-color:var(--primary);background:var(--bg-active)}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--secondary);color:var(--text-primary);font-size:var(--text-xs);font-weight:var(--font-bold);line-height:1;flex-shrink:0}.subtab-bar-wrap{display:flex;align-items:center;gap:var(--space-12);flex-wrap:wrap}.subtab-pill{min-height:var(--btn-sm-min-height);padding:var(--btn-sm-padding-y) var(--space-16);border-radius:var(--radius-pill);border:none;font-size:var(--text-sm);font-weight:var(--font-medium);line-height:1.2;color:var(--text-primary);background:var(--subtab-bg);cursor:pointer;transition:background var(--transition-fast) ease,color var(--transition-fast) ease;display:inline-flex;align-items:center;justify-content:center;text-align:center;box-sizing:border-box;white-space:nowrap}@media (hover: hover) and (pointer: fine){.subtab-pill:hover{background:var(--subtab-hover-bg);color:var(--text-heading)}}.subtab-pill:active{background:var(--subtab-hover-bg);color:var(--text-heading)}.subtab-pill--active{background:var(--primary);color:var(--text-on-primary)}@media (hover: hover) and (pointer: fine){.subtab-pill--active:hover{background:var(--primary-hover);color:var(--text-on-primary)}}.subtab-pill--active:active{background:var(--primary-hover);color:var(--text-on-primary)}.comms-card{background:var(--glass-bg-comms);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border-comms);border-radius:var(--radius);box-shadow:var(--glass-shadow);padding:var(--card-padding);margin-bottom:var(--space-16);transition:box-shadow .2s ease,transform .2s ease}.comms-card:hover{box-shadow:var(--shadow-card);transform:translateY(-3px)}.comms-row{display:flex;align-items:center;gap:10px;margin-bottom:var(--space-4)}.comms-avatar-wrap{width:40px;height:40px;flex-shrink:0;display:inline-block}.comms-avatar{width:40px;height:40px;object-fit:cover;border-radius:var(--radius);background:var(--bg-active);flex-shrink:0;display:block}.comms-initials{width:40px;height:40px;border-radius:var(--radius);background:var(--primary);color:var(--text-on-primary);display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:var(--font-bold);flex-shrink:0}.comms-divider{width:1px;height:24px;background:var(--text-muted);flex-shrink:0}.comms-name{margin:0;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);flex:1;min-width:0}.comms-date{margin:0;font-size:var(--text-sm);color:var(--text-secondary)}.comms-weather-card{display:block;width:100%;text-align:left;font:inherit;color:inherit;padding:var(--card-padding);margin-bottom:var(--space-16);border-radius:var(--radius);box-shadow:var(--glass-shadow);background:var(--glass-blue-light);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border-comms);transition:box-shadow .2s ease,transform .2s ease;cursor:pointer}.comms-weather-card:hover{box-shadow:var(--shadow-card);transform:translateY(-3px)}.comms-desc{margin:0;font-size:var(--text-sm);color:var(--text-secondary)}.comms-location{margin:0;font-size:var(--text-xs);color:var(--text-muted)}.comms-date-label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);margin-bottom:var(--space-4)}.comms-temp{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary)}.comms-temp-muted{color:var(--text-secondary)}.comms-expandable{overflow:hidden;transition:max-height .35s ease-out}.comms-weather-day-card{background:var(--card-bg);border-radius:var(--radius);padding:var(--space-12) var(--space-16);margin-bottom:var(--space-12);box-shadow:var(--shadow);border:var(--border-divider)}.comms-weather-day-card:last-child{margin-bottom:0}.comms-weather-day-card--blue{background:var(--glass-blue-light);box-shadow:var(--shadow-card);border:var(--border-divider)}.comms-flip-wrap{margin-bottom:var(--space-16);min-height:140px;position:relative}.comms-flip-inner{background:none;border:none;padding:0;text-align:left;font:inherit;color:inherit;cursor:pointer;position:absolute;top:0;left:0;right:0;bottom:0;transition:transform .2s ease,box-shadow .2s ease}.comms-flip-inner:hover{transform:translateY(-3px);box-shadow:var(--shadow-card)}.comms-flip-face{border-radius:var(--radius);box-shadow:var(--glass-shadow);padding:var(--space-16) var(--space-20);transition:opacity .35s ease,box-shadow .2s ease,transform .2s ease;position:absolute;top:0;left:0;right:0;bottom:0;box-sizing:border-box;overflow:visible;display:flex;flex-direction:column;min-height:0;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border-comms)}.comms-flip-face--front{background:#fdf8e773}.comms-flip-face--back{background:#e8f5e973}.comms-heading{margin:0 0 var(--space-8);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary)}.comms-joke{margin:0;font-size:var(--text-sm);line-height:1.45;color:var(--text-primary);flex:0 1 auto;min-height:0;overflow-wrap:break-word;word-break:break-word}.comms-quote{margin:0;font-size:var(--text-sm);line-height:1.5;color:var(--text-primary);flex:0 1 auto;min-height:0;overflow-wrap:break-word;word-break:break-word}.comms-loading{color:var(--text-muted);font-style:italic}.comms-error{color:var(--text-muted)}.comms-muted{color:var(--text-muted);font-style:italic}.sidebar{transition:width .45s cubic-bezier(.4,0,.2,1),padding .45s cubic-bezier(.4,0,.2,1),opacity .35s cubic-bezier(.4,0,.2,1)}.layout-shell--fullscreen .sidebar,.layout-shell.fullscreen-exiting .sidebar{width:0;padding:0;opacity:0;overflow:hidden;pointer-events:none}.layout-shell.fullscreen-exiting .sidebar{width:280px;padding:var(--space-16);opacity:1;pointer-events:auto}.layout-main-column>.card-glass{transition:max-height .4s cubic-bezier(.4,0,.2,1),padding .4s cubic-bezier(.4,0,.2,1),margin-bottom .4s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1);max-height:100px;overflow:hidden}.layout-shell--fullscreen>.layout-main-column>.card-glass{max-height:0;padding-top:0;padding-bottom:0;margin-bottom:0;opacity:0;pointer-events:none}.layout-main-column>.glass-card{transition:max-height .4s cubic-bezier(.4,0,.2,1),padding .4s cubic-bezier(.4,0,.2,1),margin-bottom .4s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1);max-height:100px;overflow:hidden}.layout-shell--fullscreen>.layout-main-column>.glass-card{max-height:0;padding-top:0;padding-bottom:0;margin-bottom:0;opacity:0;pointer-events:none}.layout-main-card{position:relative;transition:flex .45s cubic-bezier(.4,0,.2,1)}.fullscreen-corner-handle{position:absolute;top:var(--space-8);left:var(--space-8);width:24px;height:24px;padding:0;border:none;background:none;cursor:pointer;z-index:var(--z-sticky);display:block}.fullscreen-corner-handle:before{content:"";position:absolute;width:18px;height:18px;border:2px solid var(--grey-400);border-right:none;border-bottom:none;border-radius:var(--radius-sm) 0 0 0;transition:border-color .2s ease;opacity:.5;top:0;left:0}@media (hover: hover) and (pointer: fine){.fullscreen-corner-handle:hover:before{border-color:var(--text-primary)}}.fullscreen-corner-handle:active:before{border-color:var(--text-primary)}@media (prefers-reduced-motion: reduce){.sidebar,.layout-main-column>.card-glass,.layout-main-column>.glass-card,.layout-main-card{transition:none!important}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-button{display:none}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:5px}@media (hover: hover) and (pointer: fine){::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}}::-webkit-scrollbar-thumb:active{background:var(--scrollbar-thumb-active)}::-webkit-scrollbar-corner{background:transparent}*{scrollbar-color:var(--scrollbar-thumb) transparent;scrollbar-width:thin}.app-table-card{background:var(--glass-bg-card);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-top:4px solid transparent;border-left:4px solid transparent;border-right:var(--glass-border);border-bottom:var(--glass-border);border-radius:var(--radius);box-shadow:var(--glass-shadow);padding:0;width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;transition:border-color var(--transition-fast) ease-out}@media (hover: hover) and (pointer: fine){.app-table-card:hover{border-top-color:var(--secondary);border-left-color:var(--secondary)}}.app-table-card:active{border-top-color:var(--secondary);border-left-color:var(--secondary)}.app-table{width:100%;min-width:0;border-collapse:collapse;table-layout:auto}.app-table thead{background:var(--primary);color:var(--text-on-primary)}.app-table th{text-align:left;padding:var(--space-12) var(--space-14);font-weight:var(--font-semibold);font-size:var(--text-sm);letter-spacing:.01em;white-space:nowrap;overflow:hidden}.app-table td{padding:var(--space-10) var(--space-14);border-bottom:var(--border-divider);font-size:var(--text-base);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-table tbody tr:last-child td{border-bottom:none}.app-table tr.table-row-clickable{cursor:pointer;transition:background var(--transition-fast) ease}@media (hover: hover) and (pointer: fine){.app-table tr.table-row-clickable:hover td{background:var(--overlay-dark-light)}}.app-table tr.table-row-clickable:active td{background:var(--overlay-dark-light)}td.table-actions{width:1%;white-space:nowrap;overflow:visible;text-overflow:clip}.table-actions{display:flex;gap:var(--space-8);align-items:center;flex-wrap:nowrap}.app-table td:has(input,select,textarea,.searchable-select,.file-upload-zone){overflow:visible;white-space:normal;text-overflow:clip;vertical-align:top}@media (max-width: 900px){.app-table th,.app-table td{padding:var(--space-10) var(--space-10);font-size:var(--text-sm)}}@media (max-width: 600px){.app-table th,.app-table td{padding:8px;font-size:12px}}.app-table-col-name{max-width:220px;min-width:100px;width:18%}.app-table-col-currency{max-width:140px;min-width:90px;width:11%}.app-table-col-short{max-width:130px;min-width:80px;width:10%}.app-table-col-wide{max-width:none;min-width:180px;width:40%}.app-table-col-actions{width:1%;white-space:nowrap}.app-table-cell--muted{background:var(--bg-active);color:var(--text-secondary)}@media (max-width: 900px){.app-table-col-name{max-width:160px;min-width:80px}.app-table-col-currency{max-width:110px;min-width:70px}.app-table-col-short{max-width:100px;min-width:60px}.app-table-col-wide{min-width:140px}}.app-table input{width:100%;min-width:0;padding:var(--space-4) var(--space-8);border:1px solid var(--border-input);border-radius:var(--radius-xs);font-size:var(--text-base);font-family:inherit;background:var(--card-bg);color:var(--text-primary)}.app-table input:focus{outline:none;border-color:var(--primary)}.app-table input[type=checkbox]{width:22px;height:22px;min-width:22px;min-height:22px;padding:0;cursor:pointer;accent-color:var(--primary)}.app-table select.app-table-select-multi{width:100%;min-width:0;padding:var(--space-4) var(--space-8);border:1px solid var(--border-input);border-radius:var(--radius-xs);font-size:var(--text-base);font-family:inherit;background:var(--card-bg);color:var(--text-primary)}.app-table select.app-table-select-multi:focus{outline:none;border-color:var(--primary)}.app-table select.app-table-select-multi option:checked{background:var(--secondary-bg);color:var(--secondary);font-weight:600}.app-table-dependency-checkboxes{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4) 0}.app-table-dependency-option{display:flex;align-items:center;gap:var(--space-8);font-size:var(--text-base);cursor:pointer;padding:var(--space-4) var(--space-8);border-radius:var(--radius-xs);transition:background .15s ease;color:var(--text-primary)}@media (hover: hover) and (pointer: fine){.app-table-dependency-option:hover{background:var(--bg-active)}}.app-table-dependency-option:active{background:var(--bg-active)}.app-table-dependency-option input[type=checkbox]{width:18px;height:18px;min-width:18px;min-height:18px;margin:0;accent-color:var(--secondary);cursor:pointer}.app-table-dependency-option--selected{background:var(--secondary-bg);color:var(--secondary);font-weight:600}.app-table select,.app-table input[type=date]{width:100%;min-width:0;padding:var(--space-4) var(--space-8);border:1px solid var(--border-input);border-radius:var(--radius-xs);font-size:var(--text-base);font-family:inherit;background:var(--card-bg);color:var(--text-primary)}.app-table select:focus,.app-table input[type=date]:focus{outline:none;border-color:var(--primary)}.app-table input.app-table-input--disabled,.app-table input:disabled{background:var(--bg-disabled);color:var(--text-secondary);cursor:not-allowed}.app-table-input-with-prefix{display:flex;align-items:center;width:100%;min-width:0;border:1px solid var(--border-input);border-radius:var(--radius-xs);background:var(--card-bg);overflow:hidden}.app-table-input-with-prefix .app-table-input-prefix{flex-shrink:0;padding:var(--space-4) var(--space-8);font-size:var(--text-base);font-family:inherit;color:var(--text-secondary);background:transparent}.app-table-input-with-prefix input{flex:1;min-width:0;border:none;border-radius:0;padding:var(--space-4) var(--space-8);font-size:var(--text-base);font-family:inherit;background:transparent;color:var(--text-primary)}.app-table-input-with-prefix input:focus{outline:none;box-shadow:none}.app-table-input-with-prefix:focus-within{border-color:var(--primary)}.app-table-cell-with-counter{position:relative;width:100%}.app-table-cell-with-counter textarea{width:100%;min-width:0;padding:var(--space-4) var(--space-8) var(--space-8);border:1px solid var(--border-input);border-radius:var(--radius-xs);font-size:var(--text-base);font-family:inherit;background:var(--card-bg);color:var(--text-primary);box-sizing:border-box}.app-table-cell-with-counter textarea:focus{outline:none;border-color:var(--primary)}.app-table-word-counter{position:absolute;bottom:var(--space-8);right:var(--space-8);font-size:max(11px,var(--text-xs));color:var(--text-secondary);pointer-events:none;background:var(--bg-muted);border:1px solid var(--border-input);border-radius:var(--radius-pill);padding:2px var(--space-8);line-height:1.4}.app-table--vertical tbody th{width:1%;white-space:nowrap;padding:12px 14px;font-weight:600;font-size:14px;background:var(--primary);color:var(--text-on-primary);border-bottom:var(--border-divider);text-align:left;vertical-align:middle}.app-table--vertical tbody td{border-bottom:var(--border-divider);vertical-align:middle;overflow:visible;white-space:normal;text-overflow:clip;max-width:none}.app-table--vertical tbody tr:last-child th,.app-table--vertical tbody tr:last-child td{border-bottom:none}.dashboard-message-card{padding:var(--space-24)}.dashboard-message-card p{color:var(--text-secondary);margin:0}.dashboard-reporting-title{font-size:18px;font-weight:600;margin:0 0 var(--space-16) 0;color:var(--text-primary)}
