:root{color-scheme:dark;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", ui-monospace, monospace;--text-2xs: 11px;--text-xs: 12px;--text-sm: 13px;--text-base: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 22px;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--tracking-tight: -.01em;--tracking-normal: 0;--tracking-wide: .04em;--tracking-widest: .08em;--space-1: 2px;--space-2: 4px;--space-3: 6px;--space-4: 8px;--space-5: 12px;--space-6: 16px;--space-7: 20px;--space-8: 24px;--space-9: 32px;--header-height: 48px;--footer-height: 32px;--sidebar-left: 200px;--sidebar-right: 220px;--sidebar-collapsed: 28px;--row-height: 40px;--row-height-sub: 32px;--mobile-waveform-height: 38vh;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0,0,0,.12);--shadow-md: 0 2px 8px rgba(0,0,0,.15);--shadow-lg: 0 4px 16px rgba(0,0,0,.2);--shadow-card: none;--shadow-glow: 0 0 8px rgba(167,139,250,.2);--transition-fast: .1s ease;--transition-base: .15s ease;--transition-slow: .3s ease;--opacity-muted: .7;--opacity-subtle: .8}:root{--bg: #141416;--bg-sidebar: #0f0f11;--surface: #1c1c20;--surface-hover: #242428;--surface-raised: rgba(255,255,255,.05);--surface-active: rgba(255,255,255,.07);--border: #3a3a40;--border-subtle: rgba(255,255,255,.12);--border-focus: rgba(255,255,255,.18);--border-hover: rgba(255,255,255,.25);--text: #e4e4e8;--text-muted: #9a9aa0;--text-white: #ffffff;--accent: #a78bfa;--accent-dim: #7c5cfa;--accent-pill: rgba(167,139,250,.15);--resolve-bg: rgba(52,211,153,.1);--resolve-text: #34d399;--accent-bg: rgba(167,139,250,.1);--accent-border: rgba(167,139,250,.25);--task: #f59e0b;--task-bg: rgba(245,158,11,.12);--success: #34d399;--danger: #ef4444;--warning: #f59e0b;--waveform-bar: #3a3a40;--waveform-progress: var(--accent);--row-alt: rgba(255,255,255,.02);--input-bg: rgba(255,255,255,.04);--input-border: rgba(255,255,255,.08);--overlay: rgba(0,0,0,.5);--shadow-toast: 0 4px 12px rgba(0,0,0,.4);--on-accent: #141416;--bg-header: #1a1a1e}:root[data-theme=light]{color-scheme:light;--bg: #f4f4f6;--bg-sidebar: #ebebef;--surface: #ffffff;--surface-hover: #f0f0f3;--surface-raised: rgba(0,0,0,.04);--surface-active: rgba(0,0,0,.06);--border: #d8d8de;--border-subtle: rgba(0,0,0,.06);--border-focus: rgba(0,0,0,.15);--border-hover: rgba(0,0,0,.18);--text: #1a1a1a;--text-muted: #636369;--text-white: #1a1a1a;--accent: #7c3aed;--accent-dim: #6d28d9;--accent-pill: rgba(124,58,237,.1);--resolve-bg: rgba(21,128,61,.08);--resolve-text: #15803d;--accent-bg: rgba(124,58,237,.07);--accent-border: rgba(124,58,237,.22);--task: #b45309;--task-bg: rgba(180,83,9,.08);--success: #15803d;--danger: #dc2626;--warning: #b45309;--waveform-bar: #c8c8d0;--waveform-progress: var(--accent);--row-alt: rgba(0,0,0,.02);--input-bg: #ffffff;--input-border: #d0d0d6;--overlay: rgba(0,0,0,.35);--shadow-toast: 0 4px 12px rgba(0,0,0,.1);--on-accent: #ffffff;--bg-header: #ffffff;--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 6px rgba(0,0,0,.06), 0 2px 4px rgba(0,0,0,.03);--shadow-lg: 0 10px 15px rgba(0,0,0,.07), 0 4px 6px rgba(0,0,0,.03);--shadow-card: 0 1px 3px rgba(0,0,0,.06), 0 0 0 1px rgba(0,0,0,.03);--shadow-glow: 0 0 0 3px rgba(124,58,237,.12);--opacity-muted: .65;--opacity-subtle: .75}*,*:before,*:after{box-sizing:border-box}html{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.5;-webkit-font-smoothing:antialiased;transition:background var(--transition-slow),color var(--transition-slow)}button{font-family:var(--font-sans);cursor:pointer;border:none;background:none;padding:0}input,textarea{font-family:var(--font-sans);font-size:var(--text-base);color:var(--text);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-5);outline:none;transition:border-color var(--transition-base);width:100%}input::placeholder{color:var(--text-muted)}input:focus{border-color:var(--accent);box-shadow:var(--shadow-glow)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes slideUpFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:slideUpFade .2s ease-out both}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.btn{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-muted);background:var(--surface-raised);border:1px solid var(--border);transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast);white-space:nowrap}.btn:hover{color:var(--text);border-color:var(--border-hover)}.btn--accent{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}.btn--accent:hover{background:var(--accent-border);color:var(--text-white)}.btn--ghost{background:none;border-color:transparent;color:var(--text-muted)}.btn--ghost:hover{color:var(--text);background:var(--surface-hover)}.badge{display:inline-flex;align-items:center;font-size:var(--text-2xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wide);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);line-height:1;white-space:nowrap}.badge--accent{background:var(--accent-bg);color:var(--accent)}.badge--warning{background:var(--task-bg);color:var(--task)}.badge--muted{background:var(--surface-raised);color:var(--text-muted)}.badge--success{background:var(--accent-bg);color:var(--success)}.icon-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);background:none;border:1px solid transparent;transition:color var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast);cursor:pointer;white-space:nowrap}.icon-btn:hover{color:var(--text);background:var(--surface-hover)}.icon-btn--subtle{background:var(--surface-raised);border-color:var(--border)}.icon-btn--subtle:hover{border-color:var(--border-hover);color:var(--text)}.icon-btn--sm{padding:var(--space-1) var(--space-2);font-size:var(--text-2xs)}.meta-text{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted)}.meta-text__sep{color:var(--text-muted);opacity:var(--opacity-muted)}.app-shell{display:flex;flex-direction:column;height:100vh;overflow:hidden}.app-body{display:flex;flex:1;overflow:hidden}.app-header{display:flex;align-items:center;height:var(--header-height);padding:0 var(--space-6);background:var(--bg-header);border-bottom:1px solid var(--border);flex-shrink:0;gap:var(--space-5)}.app-header__logo{display:flex;align-items:center;gap:var(--space-3);cursor:pointer;flex-shrink:0}.app-header__logo-img{height:28px;width:auto}.app-header__logo-text{font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);color:var(--text-white)}.app-header__logo-phux{color:var(--task)}.app-header__nav{display:flex;gap:var(--space-1)}.app-header__actions{display:flex;gap:var(--space-1);margin-left:auto}.app-footer{display:flex;align-items:center;justify-content:center;gap:var(--space-4);height:var(--footer-height);padding:0 var(--space-6);background:var(--bg-sidebar);border-top:1px solid var(--border-subtle);flex-shrink:0;font-size:var(--text-xs);color:var(--text-muted);opacity:var(--opacity-subtle)}.app-footer__powered-by{display:flex;align-items:center;gap:var(--space-2)}.app-footer__reyneke-link{display:flex;align-items:center}.app-footer__reyneke-logo{height:20px;width:auto}.app-footer__imprint-link{color:var(--text-muted);text-decoration:none}.app-footer__imprint-link:hover{color:var(--text-white)}.imprint-page{flex:1;max-width:600px;margin:0 auto;padding:var(--space-9);color:var(--text-primary)}.imprint-page__back{margin-bottom:var(--space-6)}.imprint-page h1{font-size:var(--text-xl);font-weight:var(--weight-semibold);margin:0 0 var(--space-8)}.imprint-page h2{font-size:var(--text-base);font-weight:var(--weight-semibold);margin:0 0 var(--space-3)}.imprint-page__section{margin-bottom:var(--space-7)}.imprint-page__section p{margin:0;line-height:1.6;color:var(--text-secondary)}.imprint-page__section a{color:var(--accent)}.project-list-sidebar{width:var(--sidebar-left);flex-shrink:0;background:var(--bg-sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow-y:auto}.project-list-sidebar__label{padding:var(--space-4) var(--space-5) var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--text-muted);opacity:var(--opacity-muted)}.project-list-item{display:flex;flex-direction:column;gap:3px;padding:var(--space-4) var(--space-5);border-left:2px solid transparent;text-align:left;width:100%;transition:background var(--transition-fast),border-color var(--transition-fast);cursor:pointer}.project-list-item:hover{background:var(--surface-hover)}.project-list-item--active{background:var(--surface);border-left-color:var(--accent)}.project-list-item__name{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list-item--active .project-list-item__name{color:var(--text-white);font-weight:var(--weight-semibold)}.project-list-item__meta{font-size:var(--text-xs);color:var(--text-muted);opacity:var(--opacity-muted)}.project-list-item__tasks{color:var(--task);opacity:1;margin-left:var(--space-3)}.project-sidebar{width:var(--sidebar-right);flex-shrink:0;background:var(--bg-sidebar);border-left:1px solid var(--border);padding:var(--space-6) var(--space-5);overflow-y:auto;display:flex;flex-direction:column}.project-sidebar--collapsed{width:var(--sidebar-collapsed);padding:var(--space-4) 0;align-items:center}.project-sidebar__toggle{color:var(--text-muted);font-size:var(--text-md);padding:var(--space-1);transition:color var(--transition-fast)}.project-sidebar__toggle:hover{color:var(--text)}.project-sidebar__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6)}.project-sidebar__name{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--text-white);margin-bottom:2px}.project-sidebar__id{font-size:var(--text-xs);color:var(--text-muted);opacity:var(--opacity-muted);font-family:var(--font-mono)}.sidebar-row{display:flex;flex-direction:column;gap:2px;padding:var(--space-4) 0;border-bottom:1px solid var(--border-subtle)}.sidebar-row__label{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--text-muted);opacity:var(--opacity-muted)}.sidebar-row__value{font-size:var(--text-sm);color:var(--text)}.sidebar-tasks{padding:var(--space-4) 0;border-bottom:1px solid var(--border-subtle)}.sidebar-tasks__header{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--text-muted);opacity:var(--opacity-muted);margin-bottom:var(--space-3)}.sidebar-tasks__counts{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--text);margin-bottom:var(--space-3)}.sidebar-tasks__done{color:var(--text-muted)}.sidebar-tasks__bar{height:4px;border-radius:2px;background:var(--border);overflow:hidden}.sidebar-tasks__fill{height:100%;border-radius:2px;background:var(--accent);transition:width var(--transition-slow)}.project-toolbar{display:flex;align-items:center;gap:var(--space-4);height:40px;padding:0 var(--space-6);border-bottom:1px solid var(--border-subtle);flex-shrink:0}.project-toolbar select{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text);background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);cursor:pointer;outline:none;transition:border-color var(--transition-fast)}.project-toolbar select:hover{border-color:var(--border-hover)}.project-toolbar select:focus{border-color:var(--accent)}.project-toolbar__spacer{margin-left:auto}.waveform-area{padding:var(--space-5) var(--space-6) 0;flex-shrink:0}.waveform-container{position:relative;-webkit-user-select:none;user-select:none;cursor:crosshair}.transport{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-6)}.play-btn{width:34px;height:34px;border-radius:var(--radius-full);background:var(--accent);color:var(--on-accent);font-size:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:none;transition:background var(--transition-fast),box-shadow var(--transition-fast)}.play-btn:hover{background:var(--accent-dim);box-shadow:var(--shadow-glow)}.comment-composer{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}.comment-composer__time{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--accent);flex-shrink:0;min-width:3ch;text-align:right}.comment-composer__input{flex:1;min-width:0;height:30px;padding:0 var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text);background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);outline:none;transition:border-color var(--transition-fast)}.comment-composer__input::placeholder{color:var(--text-muted);opacity:var(--opacity-muted)}.comment-composer__input:focus{border-color:var(--accent);box-shadow:var(--shadow-glow)}.panel{flex:1;overflow:hidden;margin:0 var(--space-6) var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column}.panel-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--surface)}.panel-tab{padding:var(--space-4) var(--space-6);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-muted);border-bottom:2px solid transparent;transition:color var(--transition-fast),border-color var(--transition-fast)}.panel-tab:hover{color:var(--text)}.panel-tab--active{color:var(--task);border-bottom-color:var(--task)}.panel-content{flex:1;overflow-y:auto}.task-list__empty{padding:var(--space-6);font-size:var(--text-sm);color:var(--text-muted)}.task-section-label{font-size:10px;font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);padding:var(--space-5) var(--space-6) var(--space-3)}.task-item{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-subtle);cursor:pointer;transition:background var(--transition-fast)}.task-item:hover{background:var(--surface-hover)}.task-item--done{opacity:.45}.task-checkbox{width:18px;height:18px;border-radius:var(--radius-full);flex-shrink:0;border:2px solid var(--task);display:flex;align-items:center;justify-content:center;margin-top:1px;transition:all var(--transition-fast)}.task-checkbox--checked{background:var(--success);border-color:var(--success)}.task-checkbox__icon{display:none;width:10px;height:10px;color:#fff}.task-checkbox--checked .task-checkbox__icon{display:block}.task-item__body{flex:1;min-width:0}.task-item__title{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-item--done .task-item__title{text-decoration:line-through;color:var(--text-muted)}.task-item__meta{font-size:var(--text-2xs);color:var(--text-muted);margin-top:2px;font-family:var(--font-mono)}.comment-list__empty{padding:var(--space-6);font-size:var(--text-sm);color:var(--text-muted)}.comment-card{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-subtle);transition:background var(--transition-fast)}.comment-card:hover{background:var(--surface-hover)}.comment-card--resolved{opacity:.45}.comment-card__top{display:flex;align-items:flex-start;gap:var(--space-4)}.comment-card__avatar{width:28px;height:28px;border-radius:var(--radius-full);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--text-2xs);font-weight:var(--weight-semibold);color:var(--accent);background:var(--accent-pill);letter-spacing:.5px;text-transform:uppercase}.comment-card__main{flex:1;min-width:0}.comment-card__header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-1);flex-wrap:wrap}.comment-card__author{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text)}.comment-card__timecode{font-size:var(--text-2xs);font-family:var(--font-mono);color:var(--accent);background:var(--accent-pill);padding:1px 6px;border-radius:var(--radius-sm);cursor:pointer;font-weight:var(--weight-medium)}.comment-card__version{font-size:10px;color:var(--text-muted);background:var(--surface-raised);padding:1px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:.3px}.comment-card__body{font-size:var(--text-sm);line-height:1.5;color:var(--text);cursor:pointer;margin-bottom:var(--space-3)}.comment-card__actions{display:flex;align-items:center;gap:var(--space-5)}.comment-action{font-size:var(--text-xs);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;gap:4px;background:none;border:none;padding:2px 0;transition:color var(--transition-fast);font-family:var(--font-sans)}.comment-action:hover{color:var(--text)}.comment-action--resolve{margin-left:auto;padding:3px 8px;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.comment-action--resolve:hover{background:var(--resolve-bg);color:var(--resolve-text)}.comment-action--resolved{margin-left:auto;color:var(--resolve-text);background:var(--resolve-bg);padding:3px 8px;border-radius:var(--radius-sm);cursor:default;font-size:var(--text-xs);display:flex;align-items:center;gap:4px;border:none;font-family:var(--font-sans)}.comment-replies-toggle{font-size:var(--text-xs);color:var(--accent);cursor:pointer;padding:var(--space-2) 0 var(--space-1) 38px;opacity:.8;background:none;border:none;font-family:var(--font-sans)}.comment-replies-toggle:hover{opacity:1;text-decoration:underline}.comment-reply{display:flex;gap:var(--space-3);padding:var(--space-3) 0 var(--space-2) 38px;align-items:flex-start}.comment-reply__avatar{width:22px;height:22px;border-radius:var(--radius-full);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:var(--weight-semibold);color:var(--accent);background:var(--accent-pill);text-transform:uppercase}.comment-reply__content{flex:1;min-width:0}.comment-reply__header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:2px}.comment-reply__author{font-size:var(--text-2xs);font-weight:var(--weight-semibold);color:var(--text)}.comment-reply__time{font-size:10px;color:var(--text-muted)}.comment-reply__body{font-size:var(--text-xs);line-height:1.45;color:var(--text-muted)}.comment-reply-input{display:flex;gap:var(--space-3);padding:var(--space-3) 0 var(--space-1) 38px;align-items:center}.comment-reply-input__field{flex:1;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);padding:6px 10px;font-size:var(--text-xs);color:var(--text);outline:none;transition:border-color var(--transition-fast);font-family:var(--font-sans)}.comment-reply-input__field::placeholder{color:var(--text-muted)}.comment-reply-input__field:focus{border-color:var(--accent)}.comment-reply-input__send{width:28px;height:28px;border-radius:var(--radius-md);border:none;background:var(--accent);color:var(--on-accent);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:var(--text-base);transition:opacity var(--transition-fast)}.comment-reply-input__send:disabled{opacity:.4;cursor:default}.comment-overflow{position:relative}.comment-overflow__menu{position:absolute;top:100%;right:0;z-index:10;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-2) 0;min-width:140px}.comment-overflow__item{display:block;width:100%;padding:var(--space-3) var(--space-5);font-size:var(--text-xs);color:var(--text);background:none;border:none;text-align:left;cursor:pointer;font-family:var(--font-sans);transition:background var(--transition-fast)}.comment-overflow__item:hover{background:var(--surface-hover)}.indicator-strip{position:relative;height:24px;background:var(--row-alt);border-top:1px solid var(--border);flex-shrink:0}.indicator-strip__row{position:absolute;left:0;right:0;height:12px}.indicator-strip__row--tasks{top:0}.indicator-strip__row--comments{top:12px}.indicator-strip__task{position:absolute;top:50%;width:7px;height:7px;border-radius:2px;background:var(--task);transform:translate(-50%,-50%);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.indicator-strip__task:hover{transform:translate(-50%,-50%) scale(1.4)}.indicator-strip__task--done{background:var(--text-muted);opacity:.5}.indicator-strip__comment{position:absolute;top:50%;width:6px;height:6px;border-radius:var(--radius-full);background:var(--accent);transform:translate(-50%,-50%);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.indicator-strip__comment:hover{transform:translate(-50%,-50%) scale(1.4)}.indicator-strip__comment--resolved{background:var(--text-muted);opacity:.5}.indicator-strip__tooltip{position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);white-space:nowrap;pointer-events:none;z-index:10}.indicator-strip__tooltip-title{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text)}.indicator-strip__tooltip-time{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-mono);margin-top:2px}.waveform-area-inner{display:flex;flex-direction:column;width:100%}.section-strip{position:relative;height:24px;width:100%;flex-shrink:0;overflow:hidden}.section-strip__segment{position:absolute;top:0;bottom:0;overflow:hidden;white-space:nowrap}.section-strip__label{display:inline-block;font-size:9px;font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);padding:0 var(--space-2);line-height:24px;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;max-width:100%}.auth-page{display:flex;flex-direction:column;height:100vh;background:var(--bg)}.auth-form-wrap{flex:1;display:flex;align-items:center;justify-content:center}.auth-form{width:360px;padding:var(--space-9);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.auth-form__logo{display:flex;align-items:center;justify-content:center;gap:var(--space-4);margin-bottom:var(--space-8)}.auth-form__logo-img{height:48px;width:auto}.auth-form__logo-text{font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);color:var(--text-white)}.auth-form__logo-phux{color:var(--task)}.auth-form__powered-by{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-6);font-size:var(--text-xs);color:var(--text-muted)}.auth-form__powered-by a{display:flex;align-items:center}.auth-form__reyneke-logo{height:20px;width:auto}.auth-form h1{margin:0 0 var(--space-8);font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--text-white);letter-spacing:var(--tracking-tight)}.auth-form__field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-5)}.auth-form__label{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--text-muted)}.auth-form__submit{width:100%;margin-top:var(--space-6);padding:var(--space-4) var(--space-6);background:var(--accent);color:var(--on-accent);font-size:var(--text-base);font-weight:var(--weight-semibold);border-radius:var(--radius-md);border:none;transition:background var(--transition-fast),box-shadow var(--transition-fast)}.auth-form__submit:hover{background:var(--accent-dim);box-shadow:var(--shadow-glow)}.auth-form__error{margin-top:var(--space-4);font-size:var(--text-sm);color:var(--danger)}.projects-page__content{flex:1;max-width:520px;width:100%;margin:0 auto;padding:var(--space-10) var(--space-8)}.projects-page__heading{margin:0 0 var(--space-6);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--text-muted)}.projects-page__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.projects-page__item{display:block;width:100%;padding:var(--space-5) var(--space-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--text);text-align:left;transition:background var(--transition-fast),border-color var(--transition-fast)}.projects-page__item:hover{background:var(--surface-hover);border-color:var(--border-hover)}.projects-page__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.projects-page__new-btn{background:var(--accent);color:#fff;border:none;padding:10px 20px;border-radius:var(--radius, 8px);font-weight:600;font-size:var(--text-sm, 14px);cursor:pointer}.projects-page__new-btn:hover{filter:brightness(1.1)}.projects-page__drop-hint{border:1px dashed var(--accent-muted, rgba(167, 139, 250, .2));border-radius:var(--radius, 8px);padding:14px;text-align:center;color:var(--text-muted);font-size:var(--text-xs, 13px);opacity:.5;margin-top:12px;transition:opacity .15s,border-color .15s}.projects-page__drop-hint--active{opacity:1;border-color:var(--accent);color:var(--accent)}.popover-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center}.popover{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-lg);min-width:280px;animation:slideUpFade .15s ease-out both}.popover h3{margin:0 0 var(--space-6);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-white)}.popover__actions{display:flex;gap:var(--space-3);margin-top:var(--space-6);justify-content:flex-end}.version-selector{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text);background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);cursor:pointer;outline:none;transition:border-color var(--transition-fast)}.version-selector:hover{border-color:var(--border-hover)}.version-selector:focus{border-color:var(--accent)}.version-upload-btn{background:var(--surface);color:var(--accent);border:1px solid var(--border);border-radius:var(--radius, 6px);padding:8px 12px;font-size:18px;cursor:pointer;line-height:1}.version-upload-btn:hover{border-color:var(--accent)}.label{display:block;font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-2)}.input{display:block;width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--text-base);color:var(--text);background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);outline:none;transition:border-color var(--transition-fast)}.input::placeholder{color:var(--text-muted)}.input:focus{border-color:var(--accent)}.collab-panel{width:220px;flex-shrink:0;border-left:1px solid var(--border);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4);overflow-y:auto}.collab-panel__header{display:flex;align-items:center;justify-content:space-between}.collab-panel__title{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.collab-panel__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.collab-panel__row{display:flex;align-items:center;gap:var(--space-3)}.collab-panel__name{flex:1;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collab-panel__role{font-size:var(--text-2xs);font-weight:600;text-transform:uppercase;padding:2px 6px;border-radius:3px}.collab-panel__role--editor{background:var(--accent-bg);color:var(--accent)}.collab-panel__role--commenter{background:var(--task-bg);color:var(--task)}.collab-panel__role--viewer{background:var(--surface-raised);color:var(--text-muted)}.collab-panel__role-select{font-size:var(--text-xs);background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text);padding:2px 4px}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:var(--space-6)}.stat-card__value{font-size:1.5rem;font-weight:700;color:var(--text);line-height:1;margin-bottom:var(--space-2)}.stat-card__label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.health-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:var(--space-6)}.health-card__title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:var(--space-4)}.health-card__row{display:flex;justify-content:space-between;font-size:var(--text-sm);padding:var(--space-2) 0;border-bottom:1px solid var(--border);color:var(--text-muted)}.health-card__row:last-child{border-bottom:none}.mobile-clip{position:relative;width:100%;overflow:hidden;height:var(--mobile-waveform-height, 38vh);touch-action:none;cursor:grab}.mobile-clip:active{cursor:grabbing}.mobile-scroller{position:absolute;left:0;top:0;bottom:0}.mobile-playhead{position:absolute;left:50%;top:0;bottom:0;width:2px;transform:translate(-50%);background:var(--accent);box-shadow:0 0 6px #a78bfa99;pointer-events:none;z-index:10}@media (max-width: 768px){.transport{flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6)}.play-btn{width:44px;height:44px;font-size:16px}.comment-composer{width:100%}.panel-tab{flex:1;justify-content:center;min-height:44px}}.mobile-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:199;background:var(--overlay);opacity:0;pointer-events:none;transition:opacity var(--transition-fast)}.mobile-drawer-backdrop--open{opacity:1;pointer-events:auto}.mobile-drawer{position:fixed;top:0;left:0;height:100vh;width:280px;z-index:200;background:var(--bg-sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;transform:translate(-100%);transition:transform .2s ease;overflow-y:auto}.mobile-drawer--open{transform:translate(0)}.mobile-drawer__header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border);flex-shrink:0}.mobile-drawer__label{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--text-muted);opacity:var(--opacity-muted)}.mobile-drawer__nav{padding:var(--space-5) var(--space-6);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:var(--space-2);margin-top:auto}@media (max-width: 768px){.project-list-sidebar,.project-sidebar,.collab-panel,.app-footer{display:none!important}}.app-header__hamburger{display:none;background:none;border:none;color:var(--text-muted);font-size:20px;line-height:1;padding:var(--space-2);cursor:pointer;margin-left:auto}@media (max-width: 768px){.app-header__hamburger{display:flex;align-items:center;justify-content:center}.app-header__actions{display:none}}.health-card__row span:last-child{color:var(--text)}.toast-container{position:fixed;bottom:var(--space-5);right:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);z-index:9999;pointer-events:none}.toast{padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text);background:var(--surface-raised);border:1px solid var(--border);box-shadow:var(--shadow-toast);animation:toast-in .25s ease-out;pointer-events:auto;max-width:360px}.toast--success{border-color:var(--success);background:var(--surface)}.toast--error{border-color:var(--danger);background:var(--surface)}.toast--info{border-color:var(--accent);background:var(--surface)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}:root[data-theme=light] .app-header{border-bottom-color:transparent;box-shadow:0 1px 3px #0000000f}:root[data-theme=light] .projects-page__item{box-shadow:var(--shadow-card);border-color:transparent}:root[data-theme=light] .projects-page__item:hover{box-shadow:var(--shadow-md);border-color:transparent}:root[data-theme=light] .panel{box-shadow:var(--shadow-card)}:root[data-theme=light] .auth-form{border-color:transparent;box-shadow:var(--shadow-lg)}:root[data-theme=light] .indicator-strip__tooltip{box-shadow:var(--shadow-md)}:root[data-theme=light] .toast{box-shadow:var(--shadow-md)}.upload-modal__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.upload-modal{background:var(--surface);border-radius:var(--radius-lg, 12px);padding:28px 32px;width:400px;max-width:90vw;box-shadow:0 8px 32px #00000080}.upload-modal h3{margin:0 0 20px;color:var(--text-primary);font-size:var(--text-lg, 18px)}.upload-modal__label{display:block;margin-bottom:6px;color:var(--text-muted);font-size:var(--text-xs, 12px);text-transform:uppercase;letter-spacing:.05em}.upload-modal__input{width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius, 6px);color:var(--text-primary);font-size:var(--text-sm, 14px);box-sizing:border-box;margin-bottom:16px}.upload-modal__input:focus{outline:none;border-color:var(--accent)}.upload-modal__dropzone{border:2px dashed var(--accent-muted, rgba(167, 139, 250, .25));border-radius:var(--radius, 8px);padding:24px;text-align:center;margin-bottom:16px;cursor:pointer;transition:border-color .15s,background .15s}.upload-modal__dropzone:hover,.upload-modal__dropzone--dragover{border-color:var(--accent);background:#a78bfa0d}.upload-modal__dropzone-text{color:var(--text-muted);font-size:var(--text-sm, 14px)}.upload-modal__dropzone-hint{color:var(--text-muted);font-size:var(--text-xs, 12px);margin-top:4px;opacity:.6}.upload-modal__file-info{color:var(--accent);font-size:var(--text-sm, 14px)}.upload-modal__file-size{color:var(--text-muted);font-size:var(--text-xs, 12px);margin-top:2px}.upload-modal__row{display:flex;gap:12px;margin-bottom:16px}.upload-modal__row>div{flex:1}.upload-modal__progress{margin-bottom:16px}.upload-modal__progress-bar{background:var(--bg);border-radius:4px;height:8px;overflow:hidden;margin-bottom:6px}.upload-modal__progress-fill{background:linear-gradient(90deg,var(--accent),var(--accent-strong, #7c3aed));height:100%;border-radius:4px;transition:width .3s}.upload-modal__progress-text{color:var(--accent);font-size:var(--text-xs, 13px);text-align:right}.upload-modal__submit{width:100%;padding:12px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius, 8px);font-weight:600;font-size:var(--text-sm, 14px);cursor:pointer}.upload-modal__submit:disabled{opacity:.5;cursor:not-allowed}.upload-modal__error{color:var(--danger);font-size:var(--text-sm, 14px);margin-bottom:12px}.upload-modal__cancel{width:100%;padding:10px;background:transparent;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius, 8px);font-size:var(--text-sm, 14px);cursor:pointer;margin-top:8px}
