:root{--color-navy:#111827;--color-gold:#b45309;--color-crimson:#dc143c;--color-charcoal:#4b5563;--color-off-white:#fafafa;--color-highlight:#fde047;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6;--score-low:#ef4444;--score-medium:#f59e0b;--score-high:#10b981;--score-excellent:#d4af37;--font-display:"Montserrat","Impact",sans-serif;--font-script:"Playfair Display","Georgia",serif;--font-body:"Inter","Segoe UI",sans-serif;--font-logo:"Canela Deck","Canela",Georgia,serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:3.75rem;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-none:0;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--shadow-2xl:0 25px 50px -12px #00000040;--shadow-inner:inset 0 2px 4px 0 #0000000f;--transition-fast:.15s cubic-bezier(.4,0,.2,1);--transition-base:.25s cubic-bezier(.4,0,.2,1);--transition-slow:.35s cubic-bezier(.4,0,.2,1);--transition-slowest:.5s cubic-bezier(.4,0,.2,1);--z-base:1;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:400;--z-modal:500;--z-popover:600;--z-tooltip:700;--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:1280px;--container-2xl:1400px;--opacity-disabled:.5;--opacity-hover:.8;--opacity-subtle:.6;--border-thin:1px;--border-medium:2px;--border-thick:4px}[data-theme=dark]{--color-navy:#f7fafc;--color-off-white:#0a1628;--color-charcoal:#e2e8f0;--shadow-sm:0 1px 2px 0 #ffffff0d;--shadow-md:0 4px 6px -1px #ffffff1a,0 2px 4px -1px #ffffff0f;--shadow-lg:0 10px 15px -3px #ffffff1a,0 4px 6px -2px #ffffff0d;--shadow-xl:0 20px 25px -5px #ffffff1a,0 10px 10px -5px #ffffff0a}@media print{:root{--color-navy:#000;--color-off-white:#fff}}
.script-card{background:var(--color-off-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all var(--transition-base);cursor:pointer;position:relative;overflow:hidden}.script-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.script-card__cover{aspect-ratio:2/3;-o-object-fit:cover;object-fit:cover;background:linear-gradient(135deg,var(--color-navy),var(--color-charcoal));width:100%}.script-card__rank{top:var(--space-2);left:var(--space-2);background:var(--color-gold);color:var(--color-navy);font-family:var(--font-display);font-weight:var(--weight-bold);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);font-size:var(--text-lg);box-shadow:var(--shadow-md);z-index:var(--z-base);line-height:1;position:absolute}.script-card__rank--top-1{font-size:var(--text-xl);padding:var(--space-3)var(--space-4);background:linear-gradient(135deg,gold,orange)}.script-card__rank--top-2{background:linear-gradient(135deg,silver,#a0a0a0)}.script-card__rank--top-3{background:linear-gradient(135deg,#cd7f32,#b8753c)}.script-card__content{padding:var(--space-4)}.script-card__title{font-family:var(--font-script);font-size:var(--text-lg);font-weight:var(--weight-bold);margin-bottom:var(--space-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box;overflow:hidden}.script-card__logline{font-size:var(--text-sm);color:var(--color-charcoal);margin-bottom:var(--space-3);-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.5;display:-webkit-box;overflow:hidden}.script-card__meta{gap:var(--space-4);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid #0000001a;align-items:center;display:flex}.score-badge{font-family:var(--font-display);font-weight:var(--weight-bold);padding:var(--space-2)var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-xl);min-width:60px;box-shadow:var(--shadow-sm);white-space:nowrap;justify-content:center;align-items:center;display:inline-flex}.score-badge--small{font-size:var(--text-sm);padding:var(--space-1)var(--space-2);min-width:40px}.score-badge--large{font-size:var(--text-4xl);padding:var(--space-4)var(--space-6);min-width:100px}.score-badge--low{background:linear-gradient(135deg,var(--score-low),#dc2626);color:#fff}.score-badge--medium{background:linear-gradient(135deg,var(--score-medium),#d97706);color:#fff}.score-badge--high{background:linear-gradient(135deg,var(--score-high),#059669);color:#fff}.score-badge--excellent{background:linear-gradient(135deg,var(--score-excellent),#b8941c);color:var(--color-navy)}.btn{font-family:var(--font-body);font-weight:var(--weight-semibold);padding:var(--space-3)var(--space-6);border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer;font-size:var(--text-base);justify-content:center;align-items:center;gap:var(--space-2);border:none;line-height:1;text-decoration:none;display:inline-flex}.btn:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.btn--sm{padding:var(--space-2)var(--space-4);font-size:var(--text-sm)}.btn--lg{padding:var(--space-4)var(--space-8);font-size:var(--text-lg)}.btn--primary{background:var(--color-gold);color:var(--color-navy)}.btn--primary:hover:not(:disabled){box-shadow:var(--shadow-lg);background:#c4a137;transform:translateY(-2px)}.btn--secondary{color:var(--color-navy);border:var(--border-medium)solid var(--color-navy);background:0 0}.btn--secondary:hover:not(:disabled){background:var(--color-navy);color:var(--color-off-white)}.btn--ghost{color:var(--color-navy);padding:var(--space-2)var(--space-4);background:0 0}.btn--ghost:hover:not(:disabled){background:#0a16281a}.btn--danger{background:var(--color-error);color:#fff}.btn--danger:hover:not(:disabled){box-shadow:var(--shadow-lg);background:#dc2626;transform:translateY(-2px)}.leaderboard-grid{gap:var(--space-6);padding:var(--space-8);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}@media (max-width:768px){.leaderboard-grid{padding:var(--space-4);gap:var(--space-4);grid-template-columns:1fr}}.leaderboard-list{gap:var(--space-4);padding:var(--space-6);flex-direction:column;display:flex}.leaderboard-list__item{gap:var(--space-4);background:var(--color-off-white);padding:var(--space-4);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-fast);grid-template-columns:80px 120px 1fr auto;align-items:center;display:grid}.leaderboard-list__item:hover{box-shadow:var(--shadow-md);transform:translate(4px)}.ai-breakdown{background:var(--color-off-white);border-left:var(--border-thick)solid var(--color-gold);padding:var(--space-6);margin:var(--space-8)0;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.ai-breakdown__verdict{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-extrabold);margin-bottom:var(--space-4);text-transform:uppercase;letter-spacing:.05em}.ai-breakdown__verdict--invest{color:var(--score-high)}.ai-breakdown__verdict--maybe{color:var(--score-medium)}.ai-breakdown__verdict--pass{color:var(--score-low)}.ai-breakdown__scores{gap:var(--space-4);margin:var(--space-6)0;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.ai-breakdown__score-item{gap:var(--space-2);flex-direction:column;display:flex}.ai-breakdown__score-label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-charcoal);text-transform:uppercase;letter-spacing:.05em}.ai-breakdown__score-bar{border-radius:var(--radius-full);background:#0000001a;width:100%;height:8px;overflow:hidden}.ai-breakdown__score-fill{background:linear-gradient(90deg,var(--color-gold),var(--color-crimson));height:100%;transition:width var(--transition-slow);border-radius:var(--radius-full)}.upload-progress{border-radius:var(--radius-lg);background:#0000001a;width:100%;height:8px;position:relative;overflow:hidden}.upload-progress__bar{background:linear-gradient(90deg,var(--color-gold),var(--color-crimson));height:100%;transition:width var(--transition-slow);border-radius:var(--radius-lg);position:relative}.upload-progress__bar:after{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);animation:2s infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.genre-tag{padding:var(--space-2)var(--space-3);background:var(--color-navy);color:var(--color-off-white);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--weight-semibold);margin-right:var(--space-2);margin-bottom:var(--space-2);line-height:1;display:inline-block}.genre-tag--horror{color:#fef2f2;background:#7c2d12}.genre-tag--thriller{color:#eff6ff;background:#1e3a8a}.genre-tag--drama{color:#faf5ff;background:#4c1d95}.genre-tag--comedy{color:#ecfdf5;background:#065f46}.genre-tag--action{color:#fef2f2;background:#991b1b}.genre-tag--scifi{color:#eff6ff;background:#1e40af}.featured-badge{align-items:center;gap:var(--space-1);padding:var(--space-2)var(--space-3);background:linear-gradient(135deg,var(--color-gold),gold);color:var(--color-navy);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em;box-shadow:var(--shadow-md);display:inline-flex}.gated-content{position:relative}.gated-content__blur{filter:blur(8px);pointer-events:none;-webkit-user-select:none;user-select:none}.gated-content__overlay{z-index:var(--z-dropdown);text-align:center;padding:var(--space-8);background:linear-gradient(#0000,#0a1628f2);flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.gated-content__message{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--color-off-white);margin-bottom:var(--space-4)}.certificate-badge{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-4);border:var(--border-thin)solid var(--color-success);border-radius:var(--radius-md);color:var(--color-success);font-size:var(--text-sm);font-weight:var(--weight-medium);background:#10b9811a;display:inline-flex}.filters-bar{gap:var(--space-4);padding:var(--space-4);background:var(--color-off-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;display:flex}.filter-select{padding:var(--space-2)var(--space-4);border:var(--border-thin)solid #0003;border-radius:var(--radius-md);font-size:var(--text-sm);font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast);background:#fff}.filter-select:hover{border-color:var(--color-navy)}.filter-select:focus{border-color:var(--color-gold);outline:none;box-shadow:0 0 0 3px #d4af3733}.view-toggle{border:var(--border-thin)solid #0003;border-radius:var(--radius-md);display:flex;overflow:hidden}.view-toggle__button{padding:var(--space-2)var(--space-4);cursor:pointer;transition:all var(--transition-fast);font-size:var(--text-sm);color:var(--color-charcoal);background:0 0;border:none}.view-toggle__button--active{background:var(--color-navy);color:var(--color-off-white)}.view-toggle__button:hover:not(.view-toggle__button--active){background:#0000000d}
.container{max-width:var(--container-xl);padding-left:var(--space-6);padding-right:var(--space-6);margin-left:auto;margin-right:auto}.container--sm{max-width:var(--container-sm)}.container--md{max-width:var(--container-md)}.container--lg{max-width:var(--container-lg)}.container--2xl{max-width:var(--container-2xl)}.section{padding-top:var(--space-16);padding-bottom:var(--space-16)}.section--sm{padding-top:var(--space-8);padding-bottom:var(--space-8)}.section--lg{padding-top:var(--space-24);padding-bottom:var(--space-24)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-to-content{background:var(--color-navy);color:var(--color-off-white);padding:var(--space-2)var(--space-4);z-index:var(--z-modal);font-weight:var(--weight-bold);text-decoration:none;position:absolute;top:-40px;left:0}.skip-to-content:focus{top:0}.text-navy{color:var(--color-navy)}.text-gold{color:var(--color-gold)}.text-crimson{color:var(--color-crimson)}.text-charcoal{color:var(--color-charcoal)}.text-off-white{color:var(--color-off-white)}.bg-navy{background-color:var(--color-navy)}.bg-gold{background-color:var(--color-gold)}.bg-crimson{background-color:var(--color-crimson)}.bg-charcoal{background-color:var(--color-charcoal)}.bg-off-white{background-color:var(--color-off-white)}.gradient-navy-gold{background:linear-gradient(135deg,var(--color-navy),var(--color-gold))}.gradient-crimson-gold{background:linear-gradient(90deg,var(--color-crimson),var(--color-gold))}.gradient-score-low{background:linear-gradient(135deg,var(--score-low),#dc2626)}.gradient-score-medium{background:linear-gradient(135deg,var(--score-medium),#d97706)}.gradient-score-high{background:linear-gradient(135deg,var(--score-high),#059669)}.gradient-score-excellent{background:linear-gradient(135deg,var(--score-excellent),#b8941c)}.flex-center{justify-content:center;align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-start{justify-content:flex-start;align-items:flex-start;display:flex}.flex-col-center{flex-direction:column;justify-content:center;align-items:center;display:flex}.grid-2{gap:var(--space-6);grid-template-columns:repeat(2,1fr);display:grid}.grid-3{gap:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}.grid-4{gap:var(--space-6);grid-template-columns:repeat(4,1fr);display:grid}.grid-auto-fill{gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.aspect-poster{aspect-ratio:2/3}.aspect-video{aspect-ratio:16/9}.aspect-square{aspect-ratio:1}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:var(--shadow-2xl)}.shadow-none{box-shadow:none}.hover-lift{transition:transform var(--transition-fast)}.hover-lift:hover{transform:translateY(-4px)}.hover-scale{transition:transform var(--transition-fast)}.hover-scale:hover{transform:scale(1.05)}.fade-in{animation:.5s ease-out fadeIn}.slide-up{animation:.5s ease-out slideUp}.slide-down{animation:.3s ease-out slideDown}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@media (max-width:768px){.hide-mobile{display:none!important}.container{padding-left:var(--space-4);padding-right:var(--space-4)}.section{padding-top:var(--space-8);padding-bottom:var(--space-8)}}@media (min-width:769px){.hide-desktop{display:none!important}}.disabled{opacity:var(--opacity-disabled);cursor:not-allowed;pointer-events:none}.loading{opacity:var(--opacity-subtle);cursor:wait;pointer-events:none}.focus-ring{transition:box-shadow var(--transition-fast);outline:none}.focus-ring:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px;box-shadow:0 0 0 3px #d4af374d}@media print{.no-print{display:none!important}.page-break{page-break-after:always}.page-break-before{page-break-before:always}.keep-together{page-break-inside:avoid}}
