*{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#101012;--color-bg-elevated:#161619;--color-surface:#1c1c20;--color-surface-hover:#232328;--color-border:#2e2e34;--color-border-light:#26262b;--color-text-primary:#e8e8ec;--color-text-secondary:#9d9da6;--color-text-tertiary:#6b6b75;--color-accent:#3b82f6;--color-accent-hover:#60a5fa;--color-accent-muted:#3b82f626;--color-approved:#22c55e;--color-approved-bg:#22c55e1a;--color-approved-border:#22c55e4d;--color-pending:#f59e0b;--color-pending-bg:#f59e0b1a;--color-pending-border:#f59e0b4d;--color-revision:#f97316;--color-revision-bg:#f973161a;--color-revision-border:#f973164d;--color-rejected:#ef4444;--color-rejected-bg:#ef44441a;--color-rejected-border:#ef44444d;--color-not-uploaded:#71717a;--color-not-uploaded-bg:#71717a1a;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"SF Mono","Monaco","Inconsolata","Roboto Mono",monospace;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 24px #00000080;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--sidebar-width:280px;--sidebar-collapsed-width:0px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#101012;background:var(--color-bg);color:#e8e8ec;color:var(--color-text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-sans);line-height:1.5}code{background:#26262b;background:var(--color-border-light);border-radius:4px;border-radius:var(--radius-sm);color:#9d9da6;color:var(--color-text-secondary);font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-family:var(--font-mono);font-size:.875em;padding:2px 6px}a{color:#3b82f6;color:var(--color-accent);text-decoration:none;transition:color .15s ease}a:hover{color:#60a5fa;color:var(--color-accent-hover)}button{background:none;border:none;cursor:pointer;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-sans)}button:disabled{cursor:not-allowed;opacity:.5}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#101012;background:var(--color-bg)}::-webkit-scrollbar-thumb{background:#2e2e34;background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#6b6b75;background:var(--color-text-tertiary)}.recording-portal{background:var(--color-bg);display:flex;min-height:100vh}.portal-content{display:flex;flex:1 1;flex-direction:column;min-height:100vh;transition:margin-left .3s ease}.sidebar-visible .portal-content{margin-left:var(--sidebar-width)}.portal-main{flex:1 1;padding:var(--spacing-xl) var(--spacing-2xl)}.deliverables-container{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%}@media (max-width:768px){.portal-main{padding:var(--spacing-lg)}}.sidebar{background:var(--color-surface);display:flex;flex-direction:column;height:100vh;left:0;overflow-y:auto;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s ease;width:var(--sidebar-width);z-index:100}.sidebar-open{transform:translateX(0)}.sidebar-overlay{display:none}.sidebar-header{align-items:center;background:var(--color-bg-elevated);display:flex;justify-content:space-between;padding:var(--spacing-lg)}.sidebar-branding{display:flex;flex-direction:column;gap:2px}.sidebar-logo{color:var(--color-text-primary);font-size:.875rem;font-weight:700;letter-spacing:.15em}.sidebar-label{font-size:.75rem}.sidebar-close,.sidebar-label{color:var(--color-text-tertiary)}.sidebar-close{border-radius:var(--radius-sm);display:none;padding:var(--spacing-xs);transition:all .15s ease}.sidebar-close:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.sidebar-project{background:var(--color-surface);padding:var(--spacing-lg)}.sidebar-project-label{color:var(--color-text-tertiary);font-size:.6875rem;font-weight:500;letter-spacing:.08em;margin-bottom:var(--spacing-sm);text-transform:uppercase}.sidebar-project-name{color:var(--color-text-primary);font-size:1.125rem;font-weight:600;letter-spacing:-.01em;margin-bottom:var(--spacing-xs)}.sidebar-musician{color:var(--color-text-secondary);font-size:.875rem}.sidebar-stats{background:var(--color-bg-elevated);display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-lg)}.sidebar-stat{align-items:baseline;display:flex;gap:6px}.sidebar-stat-number{color:var(--color-text-primary);font-size:1.25rem;font-weight:600}.sidebar-stat-approved{color:var(--color-approved)}.sidebar-stat-attention{color:var(--color-revision)}.sidebar-stat-label{color:var(--color-text-tertiary);font-size:.8125rem}.sidebar-progress{background:var(--color-bg-elevated);padding:0 var(--spacing-lg) var(--spacing-lg)}.sidebar-progress-bar{background:var(--color-border);border-radius:3px;height:6px;overflow:hidden;position:relative}.sidebar-progress-approved{background:var(--color-approved);height:100%;left:0;position:absolute;top:0;transition:width .3s ease}.sidebar-progress-pending{background:var(--color-pending);height:100%;position:absolute;top:0;transition:width .3s ease,left .3s ease}.sidebar-tip{background:var(--color-accent-muted);border-left:3px solid var(--color-accent);display:flex;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg)}.sidebar-tip-icon{color:var(--color-accent);flex-shrink:0;margin-top:1px}.sidebar-tip-content{display:flex;flex-direction:column;gap:2px}.sidebar-tip-label{color:var(--color-accent);font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.sidebar-tip-value{color:var(--color-text-primary);font-size:.8125rem;font-weight:500}.sidebar-nav{background:var(--color-surface);flex:1 1;padding:var(--spacing-lg)}.sidebar-nav-title{color:var(--color-text-tertiary);font-size:.6875rem;font-weight:600;letter-spacing:.1em;margin-bottom:var(--spacing-md);text-transform:uppercase}.sidebar-nav-list{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none}.sidebar-nav-item{align-items:center;border-radius:var(--radius-md);color:var(--color-text-secondary);display:flex;font-size:.875rem;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);text-align:left;transition:all .15s ease;width:100%}.sidebar-nav-item:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.sidebar-nav-item.active{background:var(--color-accent-muted);color:var(--color-accent)}.sidebar-nav-item.complete .nav-item-icon{color:var(--color-approved)}.sidebar-nav-item.has-issues .nav-item-icon{color:var(--color-revision)}.nav-item-icon{color:var(--color-text-tertiary);flex-shrink:0}.nav-item-text{flex:1 1}.nav-item-count{font-feature-settings:"tnum";color:var(--color-text-tertiary);font-size:.75rem;font-variant-numeric:tabular-nums}.sidebar-footer{background:var(--color-bg-elevated);padding:var(--spacing-lg)}.sidebar-download-btn{align-items:center;background:var(--color-surface);border-radius:var(--radius-md);color:var(--color-text-secondary);display:flex;font-size:.8125rem;gap:var(--spacing-sm);padding:var(--spacing-md);transition:all .15s ease;width:100%}.sidebar-download-btn:not(:disabled):hover{background:var(--color-surface-hover);color:var(--color-accent)}.coming-soon-tag{background:var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-tertiary);font-size:.625rem;letter-spacing:.05em;margin-left:auto;padding:3px 8px;text-transform:uppercase}.mobile-header{align-items:center;background:var(--color-surface);display:none;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);position:-webkit-sticky;position:sticky;top:0;z-index:50}.menu-toggle{border-radius:var(--radius-sm);color:var(--color-text-secondary);padding:var(--spacing-xs);transition:all .15s ease}.menu-toggle:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.menu-toggle svg{height:20px;width:20px}.mobile-header-info{align-items:center;display:flex;flex:1 1;gap:var(--spacing-xs);min-width:0}.mobile-logo{font-weight:700;letter-spacing:.1em}.mobile-divider,.mobile-logo{color:var(--color-text-tertiary);font-size:.625rem}.mobile-project{color:var(--color-text-primary);font-size:.75rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-stats{align-items:baseline;display:flex}.mobile-stat-approved{color:var(--color-approved);font-size:.8125rem;font-weight:600}.mobile-stat-total{color:var(--color-text-tertiary);font-size:.6875rem}.project-introduction{width:100%}.introduction-title{color:var(--color-text-primary);font-size:1.25rem;font-weight:600;letter-spacing:-.01em;margin-bottom:var(--spacing-lg)}.introduction-content{display:flex;flex-direction:column;gap:var(--spacing-md);max-width:800px}.introduction-content p{color:var(--color-text-secondary);font-size:.875rem;line-height:1.7}@media (max-width:768px){.introduction-title{font-size:1.125rem}.introduction-content p{font-size:.8125rem}}.stats-bar{display:flex;flex-direction:column;gap:var(--spacing-sm)}.stats-bar-text{color:var(--color-text-secondary);font-size:.8125rem}.stats-bar-progress{background:var(--color-border);border-radius:2px;height:3px;overflow:hidden;position:relative}.stats-bar-progress-approved{background:var(--color-approved);height:100%;left:0;position:absolute;top:0;transition:width .3s ease}.stats-bar-progress-pending{background:var(--color-pending)}.stats-bar-progress-attention,.stats-bar-progress-pending{height:100%;position:absolute;top:0;transition:width .3s ease,left .3s ease}.stats-bar-progress-attention{background:var(--color-revision)}.stats-bar-small{padding:var(--spacing-sm) var(--spacing-md)}.stats-bar-small .stats-bar-text{font-size:.75rem}.stats-bar-small .stats-bar-progress{height:2px}.deliverable-group{width:100%}.group-header{background:var(--color-bg);border-bottom:1px solid var(--color-border-light);display:flex;flex-direction:column;gap:var(--spacing-sm);margin:0 calc(var(--spacing-2xl)*-1) var(--spacing-lg) calc(var(--spacing-2xl)*-1);padding:var(--spacing-md) var(--spacing-2xl);position:-webkit-sticky;position:sticky;top:0;z-index:10}.group-name{color:var(--color-text-primary);font-size:1.25rem;font-weight:600;margin:0}.deliverable-group.group-complete .group-name{color:var(--color-approved)}.group-intro{margin-bottom:var(--spacing-xl);max-width:800px}.group-intro p{color:var(--color-text-secondary);font-size:.875rem;line-height:1.7;margin-bottom:var(--spacing-sm)}.group-intro p:last-child{margin-bottom:0}.articulations-list{display:flex;flex-direction:column;gap:var(--spacing-2xl)}.articulation-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.articulation-card.is-complete .articulation-title{color:var(--color-approved)}.articulation-title{color:var(--color-text-primary);font-size:1rem;font-weight:600;margin-bottom:var(--spacing-md)}.articulation-body-text{color:var(--color-text-secondary);font-size:.875rem;line-height:1.6;margin-bottom:var(--spacing-md)}.dynamics-list{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}@media (max-width:400px){.dynamics-list{grid-template-columns:1fr}}.dynamic-card{background:var(--color-bg-elevated);border-radius:var(--radius-md);overflow:hidden;transition:background .15s ease}.dynamic-card.needs-attention{background:var(--color-revision-bg)}.dynamic-card.is-approved{background:var(--color-approved-bg)}.dynamic-header{align-items:center;display:flex;justify-content:space-between;padding:var(--spacing-md);padding-bottom:var(--spacing-sm)}.dynamic-header-left{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.dynamic-name{color:var(--color-text-primary);font-size:.875rem;font-weight:600}.dynamic-content{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md)}.score-button{align-items:center;background:var(--color-surface);border-radius:var(--radius-sm);color:var(--color-text-primary);display:inline-flex;font-size:.8125rem;font-weight:500;gap:6px;padding:var(--spacing-sm) var(--spacing-md);text-decoration:none;transition:background .15s ease,color .15s ease;width:-webkit-fit-content;width:fit-content}.score-button:hover{background:var(--color-surface-hover);color:var(--color-accent)}.score-button svg{flex-shrink:0;height:14px;width:14px}.dynamic-instructions{color:var(--color-text-secondary);font-size:.8125rem;font-style:italic;line-height:1.5}.status-box{align-items:center;border-radius:var(--radius-md);display:flex;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-xl);transition:all .15s ease}.status-box-icon{flex-shrink:0;height:24px;transition:color .15s ease;width:24px}.status-box-text{font-size:.8125rem}.status-box-upload{background:#ffffff0a;cursor:pointer}.status-box-upload:hover{background:#ffffff14}.status-box-upload .status-box-icon{color:var(--color-text-tertiary)}.status-box-upload:hover .status-box-icon{color:var(--color-accent)}.status-box-upload .status-box-text{color:var(--color-text-secondary)}.status-box-reupload{background:#f9731614}.status-box-reupload:hover{background:#f9731626}.status-box-reupload .status-box-icon,.status-box-reupload .status-box-text{color:var(--color-revision)}.status-box-pending{background:#f59e0b14}.status-box-pending .status-box-icon,.status-box-pending .status-box-text{color:var(--color-pending)}.status-box-approved{background:#22c55e14}.status-box-approved .status-box-icon,.status-box-approved .status-box-text{color:var(--color-approved)}.deliverable-card{background:var(--color-bg);border-radius:var(--radius-md);overflow:hidden;transition:box-shadow .15s ease}.deliverable-card:hover{box-shadow:var(--shadow-md)}.deliverable-card.needs-attention{background:var(--color-revision-bg)}.deliverable-card.is-approved{background:var(--color-approved-bg)}.deliverable-header{align-items:center;background:#ffffff05;cursor:pointer;display:flex;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);-webkit-user-select:none;user-select:none}.deliverable-header-left{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.deliverable-name{color:var(--color-text-primary);font-size:.9375rem;font-weight:500}.expand-btn{border-radius:var(--radius-sm);color:var(--color-text-tertiary);padding:var(--spacing-xs);transition:all .15s ease}.expand-btn:hover{background:#ffffff0d;color:var(--color-text-primary)}.deliverable-content{padding:var(--spacing-lg);padding-top:0}.deliverable-details{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-top:var(--spacing-md)}.detail-row{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(3,1fr)}.detail-section{display:flex;flex-direction:column;gap:var(--spacing-xs)}.detail-label{color:var(--color-text-tertiary);font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.detail-value{color:var(--color-text-primary);font-size:.875rem;line-height:1.5}.detail-value.instructions{color:var(--color-text-secondary);font-style:italic}.detail-value.filename code{font-size:.8125rem}.score-link{align-items:center;background:var(--color-accent-muted);border-radius:var(--radius-sm);color:var(--color-accent);display:inline-flex;font-size:.875rem;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);transition:all .15s ease;width:-webkit-fit-content;width:fit-content}.score-link:hover{background:var(--color-accent);color:#fff}.score-link svg{flex-shrink:0}.status-badge{align-items:center;border-radius:100px;display:inline-flex;font-size:.6875rem;font-weight:500;gap:5px;padding:3px 10px}.status-icon{font-size:.75rem;line-height:1}.status-not-uploaded{background:var(--color-not-uploaded-bg);color:var(--color-not-uploaded)}.status-pending{background:var(--color-pending-bg);color:var(--color-pending)}.status-approved{background:var(--color-approved-bg);color:var(--color-approved)}.status-revision{background:var(--color-revision-bg);color:var(--color-revision)}.status-rejected{background:var(--color-rejected-bg);color:var(--color-rejected)}.review-notes{border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm);margin-top:var(--spacing-xs);padding:var(--spacing-md)}.review-notes-revision{background:#f973161f}.review-notes-rejected{background:#ef44441f}.review-notes-header{align-items:center;display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.review-notes-icon{font-size:.875rem}.review-notes-revision .review-notes-icon,.review-notes-revision .review-notes-title{color:var(--color-revision)}.review-notes-rejected .review-notes-icon,.review-notes-rejected .review-notes-title{color:var(--color-rejected)}.review-notes-title{font-size:.75rem;font-weight:600}.review-notes-content{color:var(--color-text-primary);font-size:.8125rem;line-height:1.55}.upload-zone{align-items:center;background:#ffffff0a;border-radius:var(--radius-md);cursor:pointer;display:flex;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-xl);transition:all .15s ease}.upload-zone:hover{background:#ffffff14}.upload-zone:hover .upload-icon{color:var(--color-accent)}.upload-zone.dragging{background:var(--color-accent-muted)}.upload-zone.dragging .upload-icon{color:var(--color-accent)}.upload-icon{color:var(--color-text-tertiary);flex-shrink:0;height:24px;transition:color .15s ease;width:24px}.upload-text{color:var(--color-text-secondary);font-size:.8125rem}.approved-notice,.pending-notice{align-items:flex-start;border-radius:var(--radius-sm);display:flex;font-size:.8125rem;gap:var(--spacing-sm);line-height:1.45;margin-top:var(--spacing-sm);padding:var(--spacing-md)}.pending-notice{background:var(--color-pending-bg);color:var(--color-pending)}.approved-notice svg,.pending-notice svg{flex-shrink:0;height:14px;margin-top:2px;width:14px}.approved-notice{background:var(--color-approved-bg);color:var(--color-approved)}.portal-footer{border-top:1px solid var(--color-border-light);margin-top:var(--spacing-xl);padding:var(--spacing-lg) var(--spacing-xl);text-align:center}.portal-footer p{color:var(--color-text-tertiary);font-size:.8125rem;margin-bottom:var(--spacing-xs)}.portal-footer .footer-copyright{font-size:.6875rem;margin-bottom:0}@media (max-width:1024px){.sidebar-visible .portal-content{margin-left:0}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:block;left:0;position:fixed;right:0;top:0;z-index:99}.mobile-header,.sidebar-close{display:flex}.group-content{grid-template-columns:1fr}}@media (max-width:768px){.portal-main{padding:var(--spacing-md)}.detail-row{gap:var(--spacing-md);grid-template-columns:1fr}.deliverable-content,.deliverable-header{padding:var(--spacing-md)}.deliverable-content{padding-top:0}.group-header{padding:var(--spacing-md) var(--spacing-lg)}.group-content{padding:var(--spacing-md)}.upload-zone{padding:var(--spacing-xl)}}@media (max-width:480px){.deliverable-header-left{align-items:flex-start;flex-direction:column;gap:var(--spacing-sm)}.mobile-header-info{align-items:flex-start;flex-direction:column;gap:0}.mobile-divider{display:none}.group-header-left{align-items:flex-start;flex-direction:column;gap:var(--spacing-xs)}}
/*# sourceMappingURL=main.8b7f5ed0.css.map*/