:root{--brand-purple-base:#6b4c9a;--brand-purple-light:#7856a1;--brand-purple-lighter:#8b6db5;--brand-purple-dark:#5a3f82;--brand-green-base:#6c3;--brand-green-light:#7fd947;--brand-green-dark:#5bb82e;--brand-yellow:#ffbf00;--brand-charcoal:#4a4a4a;--brand-grey-bg:#e5e5e5;--brand-grey-light:#f5f5f5;--color-primary-600:var(--brand-purple-base);--color-primary-700:var(--brand-purple-dark);--color-primary-500:var(--brand-purple-light);--color-success-600:var(--brand-green-base);--color-success-700:var(--brand-green-dark);--color-warning-600:var(--brand-yellow);--color-text:var(--brand-charcoal);--color-primary-50:#f5f3ff;--color-primary-100:#ede9fe;--color-primary-200:#ddd6fe;--color-primary-300:#c4b5fd;--color-primary-400:#a78bfa;--color-primary-500:#8b5cf6;--color-primary-600:#6b46c1;--color-primary-700:#5e38b0;--color-primary-800:#4e2d93;--color-primary-900:#3d2375;--color-accent-50:#fff7ed;--color-accent-100:#ffedd5;--color-accent-200:#fed7aa;--color-accent-300:#fdba74;--color-accent-400:#fb923c;--color-accent-500:#f97316;--color-accent-600:#ea580c;--color-accent-700:#c2410c;--color-accent-800:#9a3412;--color-accent-900:#7c2d12;--color-success-50:#ecfdf5;--color-success-100:#d1fae5;--color-success-200:#a7f3d0;--color-success-300:#6ee7b7;--color-success-400:#34d399;--color-success-500:#10b981;--color-success-600:#059669;--color-success-700:#047857;--color-success-800:#065f46;--color-success-900:#064e3b;--color-warning-50:#fffbeb;--color-warning-100:#fef3c7;--color-warning-200:#fde68a;--color-warning-300:#fcd34d;--color-warning-400:#fbbf24;--color-warning-500:#f59e0b;--color-warning-600:#d97706;--color-warning-700:#b45309;--color-warning-800:#92400e;--color-warning-900:#78350f;--color-error-50:#fef2f2;--color-error-100:#fee2e2;--color-error-200:#fecaca;--color-error-300:#fca5a5;--color-error-400:#f87171;--color-error-500:#ef4444;--color-error-600:#dc2626;--color-error-700:#b91c1c;--color-error-800:#991b1b;--color-error-900:#7f1d1d;--color-info-50:#eff6ff;--color-info-100:#dbeafe;--color-info-200:#bfdbfe;--color-info-300:#93c5fd;--color-info-400:#60a5fa;--color-info-500:#3b82f6;--color-info-600:#2563eb;--color-info-700:#1d4ed8;--color-info-800:#1e40af;--color-info-900:#1e3a8a;--color-gray-50:#fafafa;--color-gray-100:#f4f4f5;--color-gray-200:#e4e4e7;--color-gray-300:#d4d4d8;--color-gray-400:#a1a1aa;--color-gray-500:#71717a;--color-gray-600:#52525b;--color-gray-700:#3f3f46;--color-gray-800:#27272a;--color-gray-900:#18181b;--color-black:#000;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-8:48px;--space-10:64px;--space-12:80px;--space-16:128px;--space-20:160px;--font-display:"Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",Oxygen,Ubuntu,Cantarell,sans-serif;--font-body:"Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",Oxygen,Ubuntu,Cantarell,sans-serif;--font-mono:"JetBrains Mono","SF Mono",Monaco,Consolas,"Courier New",monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--leading-none:1;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2;--tracking-tighter:-0.05em;--tracking-tight:-0.025em;--tracking-normal:0;--tracking-wide:0.025em;--tracking-wider:0.05em;--tracking-widest:0.1em;--border-width-thin:1px;--border-width-default:2px;--border-width-thick:4px;--radius-none:0;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-full:9999px;--shadow-xs:0 1px 2px rgba(0,0,0,.05);--shadow-sm:0 1px 3px rgba(0,0,0,.05),0 1px 2px rgba(0,0,0,.1);--shadow-md:0 4px 6px rgba(0,0,0,.07),0 2px 4px rgba(0,0,0,.05);--shadow-lg:0 10px 15px rgba(0,0,0,.1),0 4px 6px rgba(0,0,0,.05);--shadow-xl:0 20px 25px rgba(0,0,0,.15),0 10px 10px rgba(0,0,0,.04);--shadow-2xl:0 25px 50px rgba(0,0,0,.25);--shadow-inner:inset 0 2px 4px rgba(0,0,0,.06);--z-0:0;--z-10:10;--z-20:20;--z-30:30;--z-40:40;--z-50:50;--z-modal:1000;--z-toast:2000;--z-tooltip:3000;--ease-linear:linear;--ease-in:cubic-bezier(0.4,0,1,1);--ease-out:cubic-bezier(0,0,0.2,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--ease-bounce:cubic-bezier(0.68,-0.55,0.265,1.55);--duration-fast:150ms;--duration-base:200ms;--duration-slow:300ms;--duration-slower:500ms;--transition-fast:all var(--duration-fast) var(--ease-out);--transition-base:all var(--duration-base) var(--ease-out);--transition-slow:all var(--duration-slow) var(--ease-out);--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--container-sm:640px;--container-md:768px;--container-lg:1024px;--container-xl:1200px;--container-2xl:1400px;--max-content-width:1200px;--max-text-width:65ch;--color-primary:#6b4c9a;--color-primary-light:#7856a1;--color-secondary:#6c3;--color-secondary-light:#7fd947;--color-warning:#ffbf00;--color-danger:#ef4444;--color-danger-light:#f87171;--color-text:#4a4a4a;--color-text-light:#6b7280;--color-background:#f8f9fa;--color-background-secondary:#e9ecef;--color-white:#fff;--color-border:#bbbdbf;--color-border-light:hsla(210,3%,74%,.2);--spacing-xs:2px;--spacing-sm:4px;--spacing-md:6px;--spacing-lg:10px;--spacing-xl:10px;--spacing-2xl:12px;--spacing-3xl:32px;--font-family:"Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",Oxygen,Ubuntu,Cantarell,sans-serif;--font-size-xs:10px;--font-size-sm:12px;--font-size-base:14px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:22px;--font-size-3xl:26px;--shadow-sm:0 1px 3px rgba(0,0,0,.1);--shadow-md:0 2px 8px rgba(107,70,193,.06);--shadow-lg:0 6px 24px rgba(107,70,193,.1);--shadow-xl:0 4px 12px rgba(107,70,193,.25);--border-radius-sm:4px;--border-radius-md:6px;--border-radius-lg:8px;--border-radius-xl:10px;--border-radius-full:50%;--transition-fast:0.15s ease;--transition-base:0.3s ease;--transition-slow:0.5s ease;--z-dropdown:1000;--z-modal:1050;--z-overlay:1100}*,:after,:before{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family);background:linear-gradient(135deg,var(--color-background) 0,var(--color-background-secondary) 100%);min-height:100vh;color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:focus{outline:2px solid var(--color-primary);outline-offset:2px}button:focus,input:focus,textarea:focus{outline:none;box-shadow:0 0 0 3px rgba(107,70,193,.3)}.header{background:linear-gradient(135deg,#f9fafb,#fefefe);padding:1.5rem 0;border-bottom:3px solid #6b4c9a;margin-bottom:var(--spacing-2xl);position:relative}.header-content{max-width:1200px;margin:0 auto;padding:0 var(--spacing-xl);justify-content:center;text-align:center}.header-content,.logo{display:flex;align-items:center}.logo{gap:var(--spacing-xl)}.logo-image{height:100px;width:auto}.logo-icon,.logo-image{filter:drop-shadow(0 2px 6px rgba(0,0,0,.1))}.logo-icon{width:135px;height:135px;background:url(https://boxedgorilla.com/wp-content/uploads/2023/04/cropped-BG-Logo.png) 50%/contain no-repeat;border-radius:var(--border-radius-xl)}.logo-text h1{color:#4a4a4a;font-size:var(--font-size-3xl);font-weight:800;letter-spacing:-.025em;line-height:1.25;margin:0}.logo-text p{color:#6b4c9a;font-size:var(--font-size-base);font-weight:600;margin-top:var(--spacing-xs)}.container{max-width:900px;margin:0 auto;padding:0 var(--spacing-xl)}.search-section{background:var(--color-white);border-radius:var(--border-radius-md);padding:var(--spacing-2xl);margin-bottom:var(--spacing-2xl);box-shadow:var(--shadow-md);border:1px solid var(--color-border-light);text-align:center}.search-section h2{color:var(--color-primary);font-size:var(--font-size-xl);font-weight:700;letter-spacing:-.025em;line-height:1.25;margin-bottom:var(--spacing-sm)}.search-section p{color:var(--color-text);font-size:var(--font-size-base);line-height:1.5;margin-bottom:var(--spacing-xl)}.search-form{display:flex;gap:var(--spacing-md);max-width:450px;margin:0 auto;align-items:flex-start}.search-form input{flex:1 1;padding:var(--spacing-lg) var(--spacing-xl);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);font-size:var(--font-size-lg);font-family:var(--font-family);background:var(--color-white);transition:all var(--transition-base)}.search-form input:focus{border-color:var(--color-primary)}.search-btn{padding:var(--spacing-lg) var(--spacing-2xl);background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-light) 100%);color:#fff!important;border:none;border-radius:var(--border-radius-lg);font-weight:600;font-size:var(--font-size-lg);font-family:var(--font-family);letter-spacing:.01em;cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-xl);position:relative;overflow:hidden}.search-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px rgba(107,70,193,.4)}.search-btn:active{transform:translateY(0)}.search-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.error-message{background:linear-gradient(135deg,#fef2f2,#fef8f8);color:var(--color-danger);padding:var(--spacing-lg);border-radius:var(--border-radius-lg);margin:var(--spacing-lg) 0;text-align:center;border:1px solid rgba(239,68,68,.2);box-shadow:0 3px 8px rgba(239,68,68,.1);animation:slideIn var(--transition-base)}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.project-status{background:var(--color-white);border-radius:var(--border-radius-xl);padding:var(--spacing-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--color-border-light);animation:fadeIn var(--transition-slow)}.project-status.active{display:block}.project-header{border-bottom:2px solid #f0f0f0;padding-bottom:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.project-title{font-size:var(--font-size-2xl);color:var(--color-text);font-weight:700;letter-spacing:-.025em;line-height:1.25;margin-bottom:var(--spacing-md);word-wrap:break-word}.status-badge{display:inline-block;padding:var(--spacing-sm) var(--spacing-lg);border-radius:20px;font-weight:600;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.025em;box-shadow:var(--shadow-sm);white-space:nowrap}.status-approved-in-progress,.status-awaiting-printing,.status-done,.status-in-progress,.status-outboarding{background:#6c3;color:var(--color-white);border:1px solid #5bb82e}.status-bidding,.status-need-invoice,.status-planning{background:#6b4c9a;color:var(--color-white);border:1px solid #5a3f82}.status-awaiting-payment,.status-hold,.status-hold-approval,.status-in-progress-rush,.status-needs-revision{background:#ffbf00;color:#4a4a4a;border:2px solid #6b4c9a}.status-dead,.status-not-started{background:#4a4a4a;color:var(--color-white)}.info-section{margin-bottom:var(--spacing-xl)}.info-section h3{color:var(--color-primary);font-size:var(--font-size-lg);display:flex;align-items:center;gap:var(--spacing-sm);font-weight:600;line-height:1.25;margin-bottom:var(--spacing-md)}.email-preferences-section,.file-upload-section,.other-projects-section{margin-bottom:24px}.email-preferences-section h3,.file-upload-section h3,.other-projects-section h3{margin-bottom:10px;font-size:17px;font-weight:600;line-height:1.25}.email-preferences-section{background:#fff;border:1px solid #bbbdbf;border-radius:8px;padding:16px;box-shadow:var(--shadow-sm);transition:var(--transition-base)}.email-preferences-section:hover{box-shadow:var(--shadow-md)}.upload-subtitle{font-size:12px;color:#6b7280;margin-bottom:8px;line-height:1.4}.upload-link{color:#6b46c1;text-decoration:none;font-weight:600;transition:color .2s ease}.upload-link:hover{color:#553c9a;text-decoration:underline}.upload-button{background:none;border:none;padding:0;cursor:pointer;font-size:inherit;font-family:inherit}.other-projects-subtitle{font-size:13px;color:#6b7280;margin-bottom:12px;line-height:1.4}.file-input-wrapper{margin-bottom:8px}.email-checkbox-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:12px 14px;margin-bottom:0;transition:all .2s ease}.email-checkbox-section:hover{background:#f3f4f6;border-color:#d1d5db}.email-checkbox-section label{display:flex;align-items:center;gap:10px;cursor:pointer;margin:0;font-size:14px;color:#4a4a4a;font-weight:500}.email-checkbox-section input[type=checkbox]{cursor:pointer;width:18px;height:18px;margin:0}.email-input-section{margin-top:12px;margin-bottom:12px}.email-input-section label{display:block;font-size:13px;color:#6b7280;margin-bottom:6px;font-weight:500}.email-input-section textarea{width:100%;min-height:60px!important;max-height:80px;font-size:14px;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-family:inherit;resize:vertical}.email-input-section textarea:focus{outline:none;border-color:#6b46c1;box-shadow:0 0 0 3px rgba(107,70,193,.1)}.save-preferences-btn{width:100%}.other-projects-section .empty-state-subtle{min-height:50px;padding:12px 16px}.upload-empty-state .empty-state-subtle{min-height:40px;padding:10px 12px}.upload-empty-state .empty-state-icon{font-size:18px;margin-bottom:4px}.upload-empty-state .empty-state-title{font-size:12px;margin-bottom:2px}.upload-empty-state .empty-state-subtitle{font-size:11px}.rich-text-content{background:var(--color-white);padding:var(--spacing-lg);border-radius:var(--border-radius-md);border-left:4px solid var(--color-primary);box-shadow:0 1px 3px rgba(107,70,193,.04);color:var(--color-text);line-height:1.6;word-wrap:break-word}.client-activity-content .text-bold,.rich-text-content .text-bold{font-weight:700;display:inline;margin:0;color:var(--color-text)}.client-activity-content .text-italic,.rich-text-content .text-italic{font-style:italic}.client-activity-content .text-underline,.rich-text-content .text-underline{text-decoration:underline}.client-activity-content .text-strikethrough,.rich-text-content .text-strikethrough{text-decoration:line-through}.client-activity-content .text-code,.rich-text-content .text-code{font-family:Monaco,Menlo,Ubuntu Mono,monospace;background:#f1f5f9;padding:var(--spacing-xs) var(--spacing-xs);border-radius:var(--border-radius-sm);font-size:90%}.client-activity-content a,.rich-text-content a{color:var(--color-primary);text-decoration:none;border-bottom:1px solid var(--color-primary);transition:all var(--transition-fast)}.client-activity-content a:hover,.rich-text-content a:hover{background:rgba(107,70,193,.1);color:var(--color-text)}.bg-content b,.bg-content b.text-bold,.bg-content strong,.bg-content strong.text-bold,.client-activity-content b,.client-activity-content b.text-bold,.client-activity-content strong,.client-activity-content strong.text-bold,.rich-text-content b,.rich-text-content b.text-bold,.rich-text-content strong,.rich-text-content strong.text-bold{font-weight:700!important;font-family:inherit!important}.bg-content b,.bg-content strong,.client-activity-content b,.client-activity-content strong,.rich-text-content b,.rich-text-content strong{font-weight:700!important}.bg-response-section{margin:var(--spacing-md) 0;padding:var(--spacing-md);background:linear-gradient(135deg,#f3f0ff,#faf9ff);border-left:4px solid var(--color-primary);border-radius:var(--border-radius-md);box-shadow:0 1px 3px rgba(107,70,193,.08)}.bg-response-badge{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-light) 100%);color:#fff!important;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-xl);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 1px 2px rgba(107,70,193,.15)}.bg-response-content{line-height:1.3;color:var(--color-text);margin-top:var(--spacing-md)}.bg-content{margin-bottom:var(--spacing-xl)}.client-activity-section{margin:var(--spacing-md) 0;padding:var(--spacing-md);border-radius:var(--border-radius-md);box-shadow:0 1px 3px rgba(0,0,0,.08)}.client-feedback-section{background:#f8fafc;border-left:4px solid #3b82f6}.client-approval-section{background:linear-gradient(135deg,#f0fdf4,#f7fef8);border-left:4px solid var(--color-secondary)}.change-request-section{background:linear-gradient(135deg,#fff7ed,#fffbf5);border-left:4px solid var(--color-accent-500)}.client-activity-badge{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-xl);display:inline-block;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-md);box-shadow:var(--shadow-sm);min-height:20px;line-height:1.2}.client-feedback-badge{background:linear-gradient(135deg,#3b82f6,#60a5fa);color:#fff!important}.feedback-badge{background:linear-gradient(135deg,var(--color-danger) 0,var(--color-danger-light) 100%);color:#fff!important}.approval-badge{background:linear-gradient(135deg,#6b4c9a,#5a3f82);color:#fff!important}.change-request-badge{background:linear-gradient(135deg,var(--color-accent-500) 0,var(--color-accent-400) 100%);color:#fff!important}.pdf-comments-badge{background:linear-gradient(135deg,#4a4a4a,#58595b);color:#fff!important}.gallery-comments-badge{background:linear-gradient(135deg,#6c3,#5bb82e);color:#fff!important}.client-activity-content{line-height:1.4!important;color:var(--color-text);margin-top:0}.client-activity-content br{line-height:1.2!important;margin:0!important;padding:0!important}.bg-content ul,.client-activity-content ul,.rich-text-content ul{margin:8px 0;padding-left:24px;list-style-type:disc}.bg-content li,.client-activity-content li,.rich-text-content li{margin:4px 0;line-height:1.5}.bg-content ol,.client-activity-content ol,.rich-text-content ol{margin:8px 0;padding-left:24px;list-style-type:decimal}.links-container{background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:var(--spacing-lg);border-radius:var(--border-radius-lg);border:1px solid var(--color-border-light)}.file-link{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);margin-bottom:var(--spacing-md);background:var(--color-white);border:1px solid hsla(210,3%,74%,.3);border-radius:var(--border-radius-md);text-decoration:none;color:var(--color-text);transition:all var(--transition-base);box-shadow:0 1px 4px rgba(0,0,0,.05)}.file-link:last-child{margin-bottom:0}.file-link:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(107,70,193,.15);border-color:var(--color-primary)}.file-info{gap:var(--spacing-md)}.file-icon,.file-info{display:flex;align-items:center}.file-icon{font-size:var(--font-size-xl);width:40px;height:40px;justify-content:center;background:#6c3;border-radius:var(--border-radius-md)}.file-name{font-weight:600;font-size:var(--font-size-base);color:var(--color-text);margin-bottom:var(--spacing-xs)}.file-type{font-size:var(--font-size-xs);color:var(--color-text-light);text-transform:uppercase;letter-spacing:.5px}.download-icon{font-size:var(--font-size-lg);color:var(--color-primary);opacity:.7;transition:all var(--transition-fast)}.file-link:hover .download-icon{opacity:1;transform:translateY(-1px)}.project-button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-lg);margin-bottom:var(--spacing-md);background:var(--color-white);border:1px solid var(--color-border-light);border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-base);text-align:left;font-family:var(--font-family);box-shadow:0 1px 3px rgba(0,0,0,.05)}.project-button:last-child{margin-bottom:0}.project-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(107,70,193,.15);border-color:var(--color-primary)}.project-button:focus{outline:none;box-shadow:0 0 0 3px rgba(107,70,193,.3)}.project-status-dot{width:12px;height:12px;border-radius:var(--border-radius-full);margin-right:var(--spacing-md);flex-shrink:0}.project-info{flex:1 1}.project-name{font-weight:600;font-size:var(--font-size-base);color:var(--color-text);margin-bottom:var(--spacing-xs);line-height:1.4}.project-status-text{font-size:var(--font-size-sm);color:var(--color-text-light);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.project-arrow{font-size:var(--font-size-lg);color:var(--color-primary);opacity:.7;transition:all var(--transition-fast);margin-left:var(--spacing-md)}.project-button:hover .project-arrow{opacity:1;transform:translateX(2px)}.approval-section{background:linear-gradient(135deg,#fafafa,#f4f4f5);border:1px solid var(--color-border-light);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);margin:var(--spacing-xl) 0}.approval-section h3{color:var(--color-primary);font-size:var(--font-size-lg);font-weight:600;line-height:1.25;margin-bottom:var(--spacing-lg)}.feedback-section{margin-bottom:var(--spacing-xl)}.feedback-section label{display:block;font-weight:600;color:var(--color-text);margin-bottom:var(--spacing-sm);font-size:var(--font-size-base)}.feedback-section textarea{width:100%;min-height:100px;padding:var(--spacing-lg);border:2px solid var(--color-border);border-radius:var(--border-radius-md);font-family:var(--font-family);font-size:var(--font-size-base);resize:vertical;transition:all var(--transition-base)}.feedback-section textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(107,70,193,.1)}.action-buttons{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.action-buttons button,.feedback-buttons button{flex:1 1;padding:var(--spacing-lg) var(--spacing-xl);border:none;border-radius:var(--border-radius-md);font-weight:600;font-size:var(--font-size-base);font-family:var(--font-family);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm)}#approveBtn{background:linear-gradient(135deg,var(--color-secondary) 0,var(--color-secondary-light) 100%);color:#fff!important}#approveBtn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px rgba(102,204,51,.3)}#changesBtn{background:linear-gradient(135deg,var(--color-accent-500) 0,var(--color-accent-400) 100%);color:#fff!important}#changesBtn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px rgba(249,115,22,.3)}#submitFeedbackBtn{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-light) 100%);color:#fff!important}#submitFeedbackBtn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px rgba(107,70,193,.3)}.action-buttons button:disabled,.feedback-buttons button:disabled{opacity:.6;cursor:not-allowed;transform:none}.message{font-size:var(--font-size-sm);text-align:center;padding:var(--spacing-sm);border-radius:var(--border-radius-sm);font-weight:500}.fab-container{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:var(--z-50);display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-3);animation:fab-slide-in .3s var(--ease-out)}@keyframes fab-slide-in{0%{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.fab-toggle{width:60px;height:60px;border-radius:var(--radius-full);border:none;background:linear-gradient(135deg,var(--color-primary-600) 0,var(--color-primary-700) 100%);color:var(--color-white);font-size:24px;cursor:pointer;box-shadow:var(--shadow-lg);transition:var(--transition-base);display:flex;align-items:center;justify-content:center;position:relative}.fab-toggle:hover{transform:translateY(-2px) scale(1.05);box-shadow:var(--shadow-xl)}.fab-toggle:active{transform:translateY(0) scale(.98)}.fab-toggle-icon{font-size:24px;line-height:1;transition:transform var(--duration-base) var(--ease-out)}.fab-expanded .fab-toggle-icon{transform:rotate(90deg)}.fab-actions{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-2);animation:fab-actions-slide-in .3s var(--ease-out)}@keyframes fab-actions-slide-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fab-action-button{min-width:140px;padding:var(--space-3) var(--space-4);border:none;border-radius:var(--radius-lg);font-weight:var(--font-semibold);font-size:var(--text-sm);font-family:var(--font-body);cursor:pointer;transition:var(--transition-base);box-shadow:var(--shadow-md);white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:var(--space-1)}.fab-action-button:hover:not(:disabled){transform:translateX(-4px);box-shadow:var(--shadow-lg)}.fab-action-button:active:not(:disabled){transform:translateX(-2px)}.fab-action-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.fab-approve{background:linear-gradient(135deg,#6c3,#5cb82e);color:var(--color-white)}.fab-approve:hover:not(:disabled){box-shadow:0 4px 12px rgba(102,204,51,.4)}.fab-changes{background:linear-gradient(135deg,var(--color-accent-500) 0,var(--color-accent-400) 100%);color:var(--color-white)}.fab-changes:hover:not(:disabled){box-shadow:0 4px 12px rgba(249,115,22,.4)}@media (max-width:768px){.fab-container{bottom:var(--space-4);left:50%;right:auto;margin-left:-30px;align-items:center}.fab-toggle{width:56px;height:56px;font-size:22px}.fab-action-button{min-width:130px;padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}}@media (max-width:480px){.fab-container{bottom:var(--space-3);margin-left:-26px}.fab-toggle{width:52px;height:52px}.fab-action-button{min-width:120px}}.timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:var(--spacing-lg);gap:var(--spacing-lg);background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:var(--spacing-xl);border-radius:var(--border-radius-lg);border:1px solid var(--color-border-light);margin:var(--spacing-xl) 0}.timeline-item{text-align:center}.timeline-label{font-size:var(--font-size-sm);color:var(--color-text-light);font-weight:500;text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-xs)}.timeline-value{font-size:var(--font-size-base);color:var(--color-text);font-weight:600}.contact-section{gap:var(--spacing-lg);background:linear-gradient(135deg,#6b4c9a,#6b4c9a 10px,#7856a1 0,#7856a1 20px,#6b4c9a 0,#6b4c9a 30px,#7856a1 0,#7856a1 40px);background-size:28.28px 28.28px;color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--border-radius-lg);margin-top:var(--spacing-xl)}.contact-logo{width:60px;height:60px;background:url(https://boxedgorilla.com/wp-content/uploads/2023/04/cropped-BG-Logo.png) 50%/contain no-repeat;border-radius:var(--border-radius-md);flex-shrink:0}.contact-info h4{font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--spacing-xs);color:var(--color-white)}.contact-info p{font-size:var(--font-size-base);color:hsla(0,0%,100%,.9);margin:0}.contact-info a{color:var(--color-white);text-decoration:none;border-bottom:1px solid hsla(0,0%,100%,.3);transition:all var(--transition-fast)}.contact-info a:hover{border-bottom-color:var(--color-white)}html{scroll-behavior:smooth}body,html{overflow-x:hidden}body{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}*{max-width:100%}.pdf-viewer-modal *,.pdf-viewer-modal canvas,.pdf-viewer-modal img{max-width:none!important}@media (max-width:768px){html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body,html{font-size:14px}.container,body{overflow-x:hidden}.container{width:100%;max-width:100vw}.container,.header-content{padding:0 var(--spacing-md)}.logo{flex-direction:column;gap:var(--spacing-md);text-align:center;padding-top:5px}.logo-icon{width:135px;height:135px}.logo-text h1{font-size:var(--font-size-2xl)!important}.logo-text p{font-size:var(--font-size-base)!important}.header{padding:var(--spacing-md) 0}.search-form{flex-direction:column;max-width:100%;width:100%}.search-form input{box-sizing:border-box}.search-btn,.search-form input{width:100%;font-size:16px}.project-status{padding:var(--spacing-lg);width:100%;max-width:100vw;overflow-x:hidden;box-sizing:border-box}.approval-section,.links-container,.project-title,.rich-text-content{width:100%;max-width:100%;box-sizing:border-box;word-wrap:break-word;overflow-wrap:break-word}.timeline{grid-template-columns:1fr;gap:var(--spacing-md)}.action-buttons,.contact-section{flex-direction:column}.contact-section{text-align:center}.file-link,.project-button{padding:var(--spacing-md)}}@media (max-width:480px){.search-section{padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.search-section h2{font-size:var(--font-size-lg)}.search-section p{font-size:var(--font-size-sm)}.project-title{font-size:var(--font-size-lg)}.logo-text h1{font-size:var(--font-size-lg)!important}.logo-text p{font-size:var(--font-size-xs)!important}.rich-text-content{padding:var(--spacing-md)}.container,.header-content{padding:0 var(--spacing-sm)}}.project-status.loading{opacity:.7}.project-status.loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;border-top:3px solid var(--color-border-light);border:3px solid var(--color-border-light);border-top-color:var(--color-primary);border-radius:var(--border-radius-full);animation:spin 1s linear infinite}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}.heading-1{font-size:26px}.heading-1,.heading-2{font-weight:700;letter-spacing:-.025em;line-height:1.25}.heading-2{font-size:18px}.heading-3{font-size:16px;font-weight:600;letter-spacing:0;line-height:1.25}.body-text{font-weight:400}.body-emphasis,.body-text{font-size:14px;line-height:1.5}.body-emphasis{font-weight:500}.small-text{font-size:12px;font-weight:400;line-height:1.4}.caption-text{font-size:10px;font-weight:400;line-height:1.3}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:var(--spacing-lg)}.mb-5{margin-bottom:var(--spacing-xl)}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-xs)}.mt-2{margin-top:var(--spacing-sm)}.mt-3{margin-top:var(--spacing-md)}.mt-4{margin-top:var(--spacing-lg)}.mt-5{margin-top:var(--spacing-xl)}.hidden{display:none!important}.visible{display:block!important}.bg-content .text-bold,.bg-content b,.bg-content strong,.client-activity-content .text-bold,.client-activity-content b,.client-activity-content strong,.rich-text-content .text-bold,.rich-text-content b,.rich-text-content strong{font-family:Arial,Helvetica,Segoe UI,Tahoma,Geneva,Verdana,sans-serif!important;font-size:1.07em!important;letter-spacing:.01em;background:none!important;display:inline!important;margin:0!important;padding:0!important;border:0!important}.bg-content,.client-activity-content,.rich-text-content{font-weight:400}.bg-content .text-bold,.bg-content b,.bg-content strong,.client-activity-content .text-bold,.client-activity-content b,.client-activity-content strong,.rich-text-content .text-bold,.rich-text-content b,.rich-text-content strong{font-family:Arial,Helvetica,Segoe UI,sans-serif!important;font-weight:900!important;color:#181818!important}.contact-section{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px;margin-top:30px;border-top:1px solid #e5e7eb;background-color:#f9fafb;border-radius:8px}.skeleton{background:linear-gradient(90deg,#e5e7eb,#f3f0ff 20%,#e9e4ff 40%,#f3f0ff 60%,#e5e7eb);background-size:1000px 100%;animation:shimmer 2s linear infinite;display:block;opacity:.7}.mb-4{margin-bottom:4px}.mb-6{margin-bottom:6px}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.mb-16{margin-bottom:16px}.skeleton-project-container{padding:20px;animation:fadeIn .3s ease-in}.skeleton-project-header{margin-bottom:24px}.skeleton-meta{display:flex;gap:12px;margin-top:12px}.skeleton-divider{height:1px;background:linear-gradient(90deg,transparent,#e5e7eb 20%,#e5e7eb 80%,transparent);margin:24px 0;opacity:.5}.skeleton-section{margin-bottom:24px}.skeleton-milestones{display:flex;flex-direction:column;gap:12px;margin-top:16px}.skeleton-milestone{display:flex;align-items:center;gap:12px;padding:8px}.skeleton-text-lines{display:flex;flex-direction:column;gap:8px}.skeleton-timeline{display:flex;flex-direction:column;gap:20px}.skeleton-timeline-entry{padding:16px;background:linear-gradient(135deg,#f9fafb,#fafafa);border-radius:8px;border:1px solid #e5e7eb}.skeleton-timeline-badge{margin-bottom:12px}.skeleton-files{display:flex;flex-direction:column;gap:12px}.skeleton-file{display:flex;align-items:center;gap:12px;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.skeleton-file-info{flex:1 1;display:flex;flex-direction:column;gap:6px}.project-status.loading{pointer-events:none;opacity:.6}@media (max-width:768px){.skeleton-project-container{padding:16px}.skeleton-meta{flex-direction:column;gap:8px}.skeleton-file{padding:8px}}@media (max-width:480px){.skeleton-project-container{padding:12px}.skeleton-section{margin-bottom:16px}.skeleton-timeline-entry{padding:12px}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 24px;margin:12px 0;background:linear-gradient(135deg,#f9fafb,#fefefe);border:1px solid #e5e7eb;border-radius:8px;animation:fadeIn .3s ease-out;min-height:120px}.empty-state-icon{font-size:32px;margin-bottom:12px;line-height:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.05))}.empty-state-title{font-size:16px;font-weight:600;color:#4a4a4a;margin-bottom:6px;line-height:1.4}.empty-state-subtitle{font-size:14px;font-weight:400;color:#6b7280;max-width:400px;line-height:1.5}.empty-state-purple{background:linear-gradient(135deg,#f8f5ff,#fefefe);border-left:4px solid;border-color:#e9e4ff}.empty-state-purple .empty-state-title{color:#6b46c1}.empty-state-subtle{background:transparent;border:1px dashed #e5e7eb;padding:16px;min-height:60px}.empty-state-subtle .empty-state-icon{opacity:.6;font-size:22px;margin-bottom:6px}.empty-state-subtle .empty-state-title{font-size:14px;color:#6b7280;font-weight:500;margin-bottom:4px}.empty-state-subtle .empty-state-subtitle{font-size:12px;color:#9ca3af}@media (max-width:768px){.empty-state{padding:32px 16px;min-height:100px}.empty-state-icon{font-size:28px;margin-bottom:10px}.empty-state-title{font-size:15px}.empty-state-subtitle{font-size:13px}}@media (max-width:480px){.empty-state{padding:24px 12px;min-height:90px}.empty-state-icon{font-size:24px}.empty-state-title{font-size:14px}.empty-state-subtitle{font-size:12px}.empty-state-subtle{padding:20px 12px}}.gallery-header{margin:20px 0;padding:8px;background:linear-gradient(135deg,#f8f5ff,#faf9ff);border-radius:8px;border:1px solid #e5e7eb}.selection-counter{display:flex;flex-direction:column;gap:8px}.selection-count{font-size:16px;font-weight:600;color:#4a4a4a}.selection-count.at-limit{color:#6c3}.selection-count.over-limit{color:#ef4444}.over-badge{display:inline-block;background:#ef4444;color:#fff;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:700;margin-left:6px}.over-limit-note{font-size:12px;color:#dc2626;font-style:italic;margin-top:4px}.selection-progress-bar{position:relative;height:8px;background:#e5e7eb;border-radius:4px;overflow:visible;margin-top:8px}.selection-progress-fill{height:100%;background:linear-gradient(90deg,#6c3,#5bb82e);border-radius:4px;transition:width .3s ease}.selection-progress-fill.over-limit{background:linear-gradient(90deg,#6c3,#ef4444)}.selection-progress-overflow{position:absolute;top:0;height:100%;background:linear-gradient(90deg,#ef4444,#dc2626);border-radius:4px;transition:width .3s ease,left .3s ease}.image-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:5px;gap:5px;margin-top:5px}.image-thumbnail{position:relative;aspect-ratio:1/1;border-radius:8px;overflow:hidden;cursor:pointer;background:#1a1a1a;transition:all .3s ease;box-shadow:0 2px 8px rgba(0,0,0,.1)}.image-thumbnail.selected{border:3px solid #6c3;box-shadow:0 4px 16px rgba(102,204,51,.4)}.image-thumbnail:hover{transform:translateY(-6px);box-shadow:0 12px 24px rgba(107,70,193,.25)}.image-thumbnail.selected:hover{box-shadow:0 12px 24px rgba(102,204,51,.4)}.image-number-badge{position:absolute;top:10px;left:10px;background:rgba(0,0,0,.75);color:#fff;padding:4px 10px;border-radius:12px;font-size:13px;font-weight:700;z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.selection-checkbox{position:absolute;top:10px;right:10px;z-index:3;cursor:pointer;transition:all .2s ease;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.selection-checkbox:hover{transform:scale(1.1)}.selection-checkbox.checked{animation:checkboxPop .3s ease}@keyframes checkboxPop{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.not-viewed-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(107,70,193,.15);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;pointer-events:none}.image-thumbnail:hover .not-viewed-overlay{opacity:1}.not-viewed-badge{background:#6b46c1;color:#fff;padding:8px 16px;border-radius:20px;font-size:13px;font-weight:600;box-shadow:0 4px 12px rgba(107,70,193,.4)}.viewed-badge{background:rgba(139,92,246,.9)}.image-thumbnail{background:#fff}.image-thumbnail img{width:100%;height:100%;object-fit:contain;display:block}.image-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(0deg,rgba(0,0,0,.85),rgba(0,0,0,.4) 50%,transparent);padding:16px 12px 12px;color:#fff;opacity:0;transition:opacity .3s ease}.image-thumbnail:hover .image-overlay{opacity:1}.image-name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:6px}.image-meta{display:flex;gap:8px;flex-wrap:wrap}.meta-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 8px;border-radius:10px;background:hsla(0,0%,100%,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.comment-badge{background:rgba(107,70,193,.9)}.approved-badge{background:rgba(102,204,51,.9)}.gallery-toggle{text-align:center;margin:24px 0}.gallery-toggle-btn{background:#fff;border:2px solid #6b4c9a;color:#6b4c9a;padding:12px 32px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s ease}.gallery-toggle-btn:hover{background:#6b4c9a;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px rgba(107,76,154,.3)}.gallery-submit-section{text-align:center;margin:32px 0;padding:24px;background:linear-gradient(135deg,#f9fafb,#fefefe);border-radius:8px;border:2px solid #6b4c9a}.gallery-submit-btn{background:linear-gradient(135deg,#6b4c9a,#5a3f82);color:#fff;border:none;padding:16px 48px;border-radius:8px;font-weight:700;font-size:16px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px rgba(107,76,154,.3)}.gallery-submit-btn:hover{background:linear-gradient(135deg,#7856a1,#6b4c9a);transform:translateY(-2px);box-shadow:0 6px 20px rgba(107,76,154,.4)}.image-viewer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.96);z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .25s ease}.image-viewer-container{width:95vw;height:95vh;max-width:1800px;background:#fff;border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.5)}.viewer-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:2px solid #e5e7eb;background:linear-gradient(135deg,#f9fafb,#fefefe);min-height:70px}.viewer-header-left{display:flex;align-items:center;gap:16px;flex:1 1;min-width:0}.viewer-title{font-size:18px;font-weight:700;color:#181818;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewer-counter{font-size:14px;color:#6b7280;font-weight:500;padding:4px 12px;background:#f3f4f6;border-radius:12px;white-space:nowrap}.viewer-actions{display:flex;gap:10px;flex-shrink:0}.viewer-btn{padding:10px 18px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;white-space:nowrap}.annotate-btn{background:#e5e7eb;color:#374151}.annotate-btn:hover{background:#d1d5db}.annotate-btn.active{background:#6b46c1;color:#fff}.annotate-btn.active:hover{background:#5b3aa1}.submit-annotations-btn{background:#6c3;color:#fff}.submit-annotations-btn:hover:not(:disabled){background:#5ab82e;transform:translateY(-1px)}.submit-annotations-btn:disabled{opacity:.6;cursor:not-allowed}.comment-btn{background:#6b46c1;color:#fff}.comment-btn:hover{background:#5b3aa1;transform:translateY(-1px);box-shadow:0 4px 12px rgba(107,70,193,.3)}.approve-btn{background:#6c3;color:#fff}.approve-btn:hover:not(:disabled){background:#5b2;transform:translateY(-1px);box-shadow:0 4px 12px rgba(102,204,51,.3)}.approve-btn.approved{background:#4ade80;cursor:default;opacity:.7}.select-btn{background:#fff;color:#6c3;border:2px solid #6c3}.select-btn:hover{background:#6c3;color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px rgba(102,204,51,.3)}.select-btn.selected{background:#6c3;color:#fff;border-color:#6c3}.comment-toggle-btn{background:#6b46c1;color:#fff}.comment-toggle-btn:hover{background:#5b3aa1;transform:translateY(-1px);box-shadow:0 4px 12px rgba(107,70,193,.3)}.reject-btn{background:#ef4444;color:#fff}.reject-btn:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px rgba(239,68,68,.3)}.close-btn{background:#e5e7eb;color:#4a4a4a}.close-btn:hover{background:#d1d5db}.viewer-body{flex:1 1;display:flex;overflow:hidden;background:#f9fafb}.viewer-image-container{flex:1 1;display:flex;align-items:center;justify-content:center;overflow:auto;background:#e5e7eb}.viewer-sidebar{width:320px;background:#fff;border-left:2px solid #e5e7eb;display:flex;flex-direction:column;overflow:hidden}.sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.sidebar-header h4{margin:0;font-size:16px;font-weight:700;color:#181818}.comment-count{background:#6b46c1;color:#fff;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600}.sidebar-content{flex:1 1;overflow-y:auto;padding:16px}.sidebar-empty{text-align:center;padding:40px 20px;color:#6b7280}.sidebar-empty p:first-child{font-size:16px;font-weight:600;margin-bottom:8px;color:#4a4a4a}.sidebar-hint{font-size:13px;line-height:1.5}.image-comment-textarea{width:100%;min-height:100px;padding:12px;border:2px solid #e5e7eb;border-radius:8px;font-family:inherit;font-size:14px;line-height:1.5;resize:vertical;transition:border-color .2s ease}.image-comment-textarea:focus{outline:none;border-color:#6b46c1;box-shadow:0 0 0 3px rgba(107,70,193,.1)}.comment-hint{font-size:12px;color:#6b7280;font-style:italic;margin-top:8px;line-height:1.4}.annotation-list{display:flex;flex-direction:column;gap:12px}.annotation-item{background:#f9fafb;border:1px solid #e5e7eb;border-left:3px solid #6b46c1;border-radius:8px;padding:12px}.annotation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.annotation-number{background:#6b46c1;color:#fff;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:700}.annotation-author{font-size:12px;font-weight:600;color:#6b7280}.annotation-text{font-size:14px;font-weight:700;color:#4a4a4a;line-height:1.5;margin:0 0 8px}.annotation-date{font-size:11px;color:#9ca3af}.viewer-footer{display:flex;justify-content:space-between;gap:16px;padding:16px 24px;border-top:2px solid #e5e7eb;background:linear-gradient(135deg,#f9fafb,#fefefe)}.nav-btn{flex:1 1;padding:12px 24px;background:#6b46c1;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.nav-btn:hover:not(:disabled){background:#5b3aa1;transform:translateY(-1px);box-shadow:0 4px 12px rgba(107,70,193,.3)}.nav-btn:disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.image-annotator{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.image-container{position:relative;max-width:100%;max-height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none}.image-container.editable{cursor:crosshair}.image-container img{max-width:100%;max-height:calc(95vh - 200px);display:block;border-radius:4px}.annotation-pin{position:absolute;transform:translate(-50%,-50%);z-index:100;cursor:pointer}.pin-marker{width:36px;height:36px;background:#6b46c1;color:#fff;border:3px solid #fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;box-shadow:0 3px 12px rgba(107,70,193,.5);transition:all .2s ease}.annotation-pin:hover .pin-marker{transform:scale(1.15);box-shadow:0 5px 20px rgba(107,70,193,.6)}.annotation-pin.new-pin .pin-marker{background:#6c3;border-color:#fff}.pin-marker.pulse{animation:pinPulse 1.5s infinite}@keyframes pinPulse{0%,to{transform:scale(1);box-shadow:0 3px 12px rgba(102,204,51,.5)}50%{transform:scale(1.15);box-shadow:0 5px 24px rgba(102,204,51,.7)}}.pin-tooltip{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translateX(-50%);background:rgba(0,0,0,.9);color:#fff;padding:8px 12px;border-radius:6px;font-size:13px;line-height:1.4;white-space:nowrap;max-width:250px;opacity:0;pointer-events:none;transition:opacity .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.annotation-pin:hover .pin-tooltip{opacity:1}.pin-tooltip strong{display:block;font-size:11px;color:#a78bfa;margin-bottom:4px}.pin-tooltip p{margin:0;white-space:normal}.annotation-rect{position:absolute;border:3px solid #6b46c1;background:rgba(107,70,193,.15);border-radius:4px;cursor:pointer;transition:all .2s ease}.annotation-rect:hover{border-color:#553c9a;background:rgba(107,70,193,.25)}.annotation-rect.drawing-rect{border:2px dashed #6b46c1;background:rgba(107,70,193,.1);pointer-events:none}.annotation-rect.new-rect{border-color:#6c3;background:rgba(102,204,51,.15)}.rect-number{position:absolute;top:-12px;left:-12px;width:24px;height:24px;background:#6b46c1;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;border:2px solid #fff;box-shadow:0 2px 8px rgba(107,70,193,.4)}.annotation-rect.new-rect .rect-number{background:#6c3}.rect-number.pulse{animation:pinPulse 1.5s infinite}.rect-tooltip{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translateX(-50%);background:rgba(0,0,0,.9);color:#fff;padding:8px 12px;border-radius:6px;font-size:13px;line-height:1.4;white-space:nowrap;max-width:250px;opacity:0;pointer-events:none;transition:opacity .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10}.annotation-rect:hover .rect-tooltip{opacity:1}.rect-tooltip strong{display:block;font-size:11px;color:#a78bfa;margin-bottom:4px}.rect-tooltip p{margin:0;white-space:normal}.image-container.drawing{cursor:crosshair}.annotator-hint{position:absolute;top:20px;left:50%;transform:translateX(-50%);background:rgba(107,70,193,.95);color:#fff;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;pointer-events:none;box-shadow:0 4px 16px rgba(107,70,193,.4);animation:fadeIn .3s ease}.annotation-input-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:10001;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.annotation-input-modal{background:#fff;border-radius:12px;padding:24px;width:90%;max-width:500px;box-shadow:0 12px 48px rgba(0,0,0,.3)}.input-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.input-header h4{margin:0;font-size:18px;font-weight:700;color:#181818}.input-hint{font-size:12px;color:#6b7280;font-weight:500}.comment-textarea{width:100%;padding:14px;border:2px solid #e5e7eb;border-radius:8px;font-size:15px;line-height:1.5;resize:vertical;font-family:inherit;transition:border-color .2s ease}.comment-textarea:focus{outline:none;border-color:#6b46c1;box-shadow:0 0 0 3px rgba(107,70,193,.1)}.input-actions{display:flex;gap:12px;margin-top:16px;justify-content:flex-end}.btn-cancel,.btn-save{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.btn-cancel{background:#e5e7eb;color:#4a4a4a}.btn-cancel:hover{background:#d1d5db}.btn-save{background:#6b4c9a;color:#fff}.btn-save:hover:not(:disabled){background:#5a3f82;transform:translateY(-1px);box-shadow:0 4px 12px rgba(107,76,154,.3)}.btn-save:disabled{background:#d1d5db;color:#9ca3af;cursor:not-allowed}.btn-primary,.viewer-btn{background:linear-gradient(135deg,#6b4c9a,#5a3f82);color:#fff;border:none;border-radius:6px;padding:.75rem 1.5rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary:hover,.viewer-btn:hover{background:linear-gradient(135deg,#7856a1,#6b4c9a);transform:translateY(-1px);box-shadow:0 4px 12px rgba(107,76,154,.3)}.btn-secondary{background:#fff;color:#6b4c9a;border:2px solid #6b4c9a;border-radius:6px;padding:.75rem 1.5rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:#f9fafb;border-color:#7856a1}.btn-success{background:linear-gradient(135deg,#7de820,#69ca16);color:#fff;border:none;border-radius:6px;padding:.75rem 1.5rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-success:hover{background:linear-gradient(135deg,#91f23e,#7de820);transform:translateY(-1px);box-shadow:0 4px 12px rgba(125,232,32,.3)}@media (max-width:768px){.image-gallery-grid{grid-template-columns:repeat(2,1fr);gap:12px}.image-viewer-container{width:100vw;height:100vh;border-radius:0}.viewer-header{flex-direction:column;gap:12px;padding:12px 16px;min-height:auto}.viewer-header-left{width:100%;flex-direction:column;align-items:flex-start;gap:8px}.viewer-actions{width:100%;overflow-x:auto}.viewer-btn{padding:8px 14px;font-size:13px}.viewer-sidebar{position:absolute;bottom:0;left:0;right:0;width:100%;height:40vh;border-left:none;border-top:2px solid #e5e7eb;transform:translateY(calc(100% - 50px));transition:transform .3s ease}.viewer-sidebar.open{transform:translateY(0)}.viewer-footer{padding:12px 16px}.nav-btn{padding:10px 16px;font-size:14px}.annotation-input-modal{width:95%;padding:20px}}@media (max-width:480px){.image-gallery-grid{grid-template-columns:1fr;gap:16px}.image-thumbnail{aspect-ratio:1/1}.viewer-title{font-size:16px}.pin-marker{width:32px;height:32px;font-size:13px;border-width:2px}}.toast-container{position:fixed;top:20px;right:20px;z-index:var(--z-overlay);display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:12px;min-width:300px;max-width:500px;padding:16px 20px;background:var(--color-white);border-radius:var(--border-radius-lg);box-shadow:0 8px 24px rgba(0,0,0,.15);animation:toast-slide-in .3s ease-out;transition:all .3s ease}.toast:hover{transform:translateX(-4px);box-shadow:0 12px 32px rgba(0,0,0,.2)}.toast-exit{animation:toast-slide-out .3s ease-out forwards}.toast-icon{font-size:20px;flex-shrink:0}.toast-message{flex:1 1;font-size:var(--font-size-base);color:var(--color-text);font-weight:500}.toast-close{background:none;border:none;color:var(--color-text-light);font-size:18px;cursor:pointer;padding:4px 8px;border-radius:var(--border-radius-sm);transition:all .2s ease;line-height:1}.toast-close:hover{background:rgba(0,0,0,.05);color:var(--color-text)}.toast-success{border-left:4px solid var(--color-secondary)}.toast-error{border-left:4px solid var(--color-danger)}.toast-info{border-left:4px solid var(--color-primary)}.toast-warning{border-left:4px solid var(--color-accent-500)}@keyframes toast-slide-in{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes toast-slide-out{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@media (max-width:480px){.toast-container{top:10px;right:10px;left:10px}.toast{min-width:auto;width:100%}}.copy-btn{background:none;border:none;font-size:18px;cursor:pointer;padding:4px 6px;border-radius:var(--border-radius-sm);transition:all .2s ease;opacity:.7;line-height:1}.copy-btn:hover{opacity:1;background:rgba(107,70,193,.1);transform:scale(1.1)}.copy-btn:active{transform:scale(.95)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.fade-in{animation:fadeIn .4s ease-out}.fade-in-scale{animation:fadeInScale .3s ease-out}.fade-in-delay-1{animation:fadeIn .4s ease-out .1s backwards}.fade-in-delay-2{animation:fadeIn .4s ease-out .2s backwards}.fade-in-delay-3{animation:fadeIn .4s ease-out .3s backwards}.fade-in-delay-4{animation:fadeIn .4s ease-out .4s backwards}.contact-section,.email-preferences-section,.file-upload-section,.progress-section,.project-section,.timeline{animation:fadeIn .4s ease-out}button{transition:all .2s ease}button:hover:not(:disabled){transform:translateY(-1px)}button:active:not(:disabled){transform:translateY(0)}.branded-loader{display:flex;align-items:center;justify-content:center;min-height:400px;padding:40px 20px}.branded-loader-content{text-align:center;max-width:600px}.loader-logo-container{margin-bottom:32px}.loader-logo{width:120px;height:120px;animation:heartbeat 2s ease-in-out infinite;filter:drop-shadow(0 4px 12px rgba(107,70,193,.3))}@keyframes heartbeat{0%,to{transform:scale(1)}25%{transform:scale(1.1)}50%{transform:scale(1)}75%{transform:scale(1.05)}}.loader-quote{font-size:18px;font-weight:500;color:#374151;line-height:1.6;margin-bottom:16px;padding:0 20px;background:linear-gradient(90deg,#6b46c1,#8b5cf6 25%,#a78bfa 50%,#8b5cf6 75%,#6b46c1);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite;min-height:60px;display:flex;align-items:center;justify-content:center}@keyframes shimmer{0%{background-position:0}to{background-position:200%}}.loader-message{font-size:14px;color:#6b7280;margin-top:8px;font-style:italic}.loader-quote{animation:shimmer 3s linear infinite,fadeIn .5s ease-out}.rich-text-editor-container{border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-white);overflow:hidden}.rich-text-toolbar{display:flex;gap:4px;padding:8px;background:#f9fafb;border-bottom:1px solid var(--color-border)}.toolbar-btn{padding:6px 10px;background:#fff;border:1px solid var(--color-border);border-radius:4px;cursor:pointer;font-size:14px;color:#374151;transition:all .15s ease;min-width:32px;display:flex;align-items:center;justify-content:center}.toolbar-btn:hover{background:#f3f4f6;border-color:var(--color-primary)}.toolbar-btn:active{background:#e5e7eb;transform:translateY(1px)}.toolbar-divider{width:1px;background:var(--color-border);margin:0 4px}.rich-text-editor{min-height:120px;max-height:400px;overflow-y:auto;padding:12px 16px;font-size:14px;line-height:1.6;color:var(--color-text);outline:none;white-space:pre-wrap;word-wrap:break-word}.rich-text-editor:focus{outline:none}.rich-text-editor:empty:before{content:attr(data-placeholder);color:#9ca3af;pointer-events:none}.rich-text-editor b,.rich-text-editor strong{font-weight:700}.rich-text-editor u{text-decoration:underline}.rich-text-editor s,.rich-text-editor strike{text-decoration:line-through}.rich-text-editor ul{margin:8px 0;padding-left:24px;list-style-type:disc}.rich-text-editor li,.rich-text-editor p{margin:4px 0}.rich-text-editor br{content:"";display:block;margin:4px 0}.annotations-header{font-weight:700;font-size:1rem;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid #8bc53f;color:#444}.resolve-btn{background-color:#8bc53f!important;color:#fff}.resolve-btn.resolved{background-color:#444!important;opacity:.7}.image-compare-viewer{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.95);z-index:10000;display:flex;flex-direction:column}.compare-header{padding:1rem;background:linear-gradient(135deg,#f9fafb,#fefefe);color:#a393c1;display:flex;justify-content:space-between;align-items:center}.compare-controls button{margin-left:.5rem;padding:.5rem 1rem;background:#8bc53f;color:#fff;border:none;border-radius:4px;cursor:pointer}.compare-content{flex:1 1;overflow:hidden;position:relative}.side-by-side{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;height:100%;padding:1rem}.compare-image-container{position:relative;overflow:hidden;background:#f9f9f9;display:flex;align-items:center;justify-content:center}.compare-image-container img{max-width:100%;max-height:100%;object-fit:contain;transition:transform .1s ease-out}.compare-image-wrapper{position:relative;overflow:auto;background:#f9f9f9;display:flex;align-items:flex-start;justify-content:flex-start;height:100%;width:100%}.compare-image-wrapper::-webkit-scrollbar{width:12px;height:12px}.compare-image-wrapper::-webkit-scrollbar-track{background:#f1f1f1}.compare-image-wrapper::-webkit-scrollbar-thumb{background:#888;border-radius:6px}.compare-image-wrapper::-webkit-scrollbar-thumb:hover{background:#555}.compare-image-scaled{transform-origin:top left;display:inline-block;min-width:100%;min-height:100%}.compare-image-scaled img{display:block;width:100%;height:auto;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.image-label{position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.7);color:#fff;padding:.5rem 1rem;border-radius:4px;font-size:.9rem}.overlay-container,.overlay-mode{height:100%;display:flex;align-items:center;justify-content:center}.overlay-container{position:relative;width:100%;cursor:pointer}.overlay-indicator{position:absolute;top:1rem;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.7);color:#fff;padding:.5rem 1rem;border-radius:4px;font-size:.9rem}.compare-zoom-controls{padding:1rem;background:#444;display:flex;justify-content:center;align-items:center;gap:1rem}.compare-zoom-controls button{padding:.5rem 1rem;background:#8bc53f;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1.2rem}.compare-zoom-controls span{color:#fff;font-weight:600;min-width:60px;text-align:center}.compare-selection-bar{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%);background:#444;color:#fff;padding:1rem 2rem;border-radius:8px;display:flex;gap:1rem;align-items:center;z-index:1000;box-shadow:0 4px 12px rgba(0,0,0,.3)}.compare-selection-bar button{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-weight:600}.compare-btn{background:#8bc53f;color:#fff}.cancel-btn{background:#f5f5f5;color:#444}.compare-checkbox{position:absolute;top:45px;right:10px;z-index:3;cursor:pointer;transition:transform .2s ease}.compare-checkbox:hover{transform:scale(1.1)}.compare-checkbox.checked{transform:scale(1.05)}.image-thumbnail.compare-selected{border:3px solid #8bc53f;box-shadow:0 0 0 2px rgba(139,197,63,.3)}.image-thumbnail.compare-selected:after{content:"⚖️";position:absolute;top:8px;left:8px;font-size:24px;z-index:2;background:rgba(102,204,51,.9);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center}@media (max-width:768px){.side-by-side{grid-template-columns:1fr;grid-template-rows:1fr 1fr}}h1.section-header,h2.section-header,h3.section-header{color:#4a4a4a;font-weight:700;border-bottom:3px solid #6b4c9a;padding-bottom:.75rem;margin-bottom:1.5rem}h1.section-header{font-size:2.5rem;font-weight:800}h2.section-header{font-size:2rem}h3.section-header{font-size:1.5rem}.brand-emphasis{color:#6c3;font-weight:600}