:root{--usa-blue:#002868;--usa-red:#bf0a30;--usa-navy:#0a1128;--usa-navy-light:#16213e;--gold:#d4af37;--gold-bright:gold;--white:#f8f9fa;--glass-bg:#ffffff08;--glass-border:#ffffff14;--gradient-flag:linear-gradient(90deg, #002868 0%, #fff 50%, #bf0a30 100%);--gradient-usa:linear-gradient(135deg, var(--usa-blue) 0%, var(--usa-navy) 100%);--gradient-red:linear-gradient(135deg, var(--usa-red) 0%, #e63946 100%)}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--usa-navy);color:var(--white);background-image:radial-gradient(circle at 20% 20%,#00286866 0%,#0000 40%),radial-gradient(circle at 80% 80%,#bf0a3033 0%,#0000 40%);min-height:100vh;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.app-container{flex-direction:column;align-items:center;min-height:100vh;padding:2rem;display:flex;position:relative;overflow:hidden}header,main,footer{z-index:1;position:relative}.glass-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:24px;width:100%;margin:0 auto;padding:2.5rem;box-shadow:0 25px 50px -12px #00000080}.glass-card:hover{border-color:#ffffff26}.input-group{margin-bottom:1.5rem}.input-label{color:var(--gold);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.input-field{border:1px solid var(--glass-border);color:#fff;background:#ffffff0d;border-radius:12px;width:100%;padding:1rem;font-size:1.1rem;transition:all .2s}.input-field:focus{border-color:var(--usa-blue);background:#0028681a;outline:none;box-shadow:0 0 0 4px #00286833}.btn-primary{background:var(--gradient-red);color:#fff;text-transform:uppercase;letter-spacing:1px;cursor:pointer;border:none;border-radius:12px;width:100%;padding:1.25rem 2.5rem;font-size:1.1rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #bf0a304d}.btn-primary:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 8px 25px #bf0a3080}.btn-primary:active{transform:translateY(0)}.image-upload-zone{border:2px dashed var(--glass-border);text-align:center;cursor:pointer;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;margin-bottom:2rem;padding:4rem 2rem;transition:all .3s;display:flex;position:relative;overflow:visible}.image-upload-zone:hover{border-color:var(--usa-red);background:#bf0a300d;transform:translateY(-2px)}.image-upload-zone svg{flex-shrink:0;margin-bottom:1.5rem}.image-upload-zone p{color:var(--white);margin:0;font-weight:500}.badge{border-radius:20px;margin:.25rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:inline-block}.badge-olympic{background-color:var(--navy);color:#fff}.badge-paralympic{background-color:var(--purple);color:#fff}.gradient-text{background:linear-gradient(90deg,#002868,#fff,#bf0a30,#fff,#002868) 0 0/200%;-webkit-text-fill-color:transparent;letter-spacing:-1px;text-shadow:0 10px 30px #0000004d;-webkit-background-clip:text;font-weight:900;animation:5s linear infinite shine}.gold-title{color:var(--gold)!important}@keyframes shine{to{background-position:200%}}.chat-container{scrollbar-width:thin;scrollbar-color:var(--gold) transparent;background:#0003;border-radius:16px;flex-direction:column;gap:1rem;max-height:500px;margin-bottom:1.5rem;padding:1.5rem;display:flex;overflow-y:auto}.chat-bubble{white-space:pre-wrap;border-radius:18px;max-width:85%;padding:1rem 1.25rem;font-size:1rem;line-height:1.6;position:relative;box-shadow:0 4px 12px #0000001a}.chat-bubble.user{background:var(--usa-blue);border-bottom-right-radius:4px;align-self:flex-end}.chat-bubble.model{background:var(--usa-navy-light);border-bottom-left-radius:4px;align-self:flex-start}.chat-bubble h1,.chat-bubble h2,.chat-bubble h3,.chat-bubble h4{color:var(--usa-red);margin-top:.5rem;margin-bottom:.5rem}.chat-bubble h1:first-child,.chat-bubble h2:first-child,.chat-bubble h3:first-child,.chat-bubble h4:first-child{margin-top:0}.chat-bubble p{margin:.5rem 0}.chat-bubble p:first-child{margin-top:0}.chat-bubble p:last-child{margin-bottom:0}.chat-bubble ul,.chat-bubble ol{margin:.5rem 0;padding-left:1.5rem}.analytics-dashboard{grid-template-columns:1fr 1fr;gap:2rem;min-height:350px;display:grid}.radar-col{flex-direction:column;align-items:center;height:300px;display:flex}.radar-legend{opacity:.8;gap:1.5rem;margin-top:1rem;font-size:.75rem;display:flex}.legend-item{align-items:center;gap:.5rem;display:flex}.dot{border-radius:50%;width:8px;height:8px}.dot.gold{background:var(--usa-red)}.dot.glass{background:var(--usa-blue)}.insight-col{flex-direction:column;gap:1.5rem;display:flex}.insight-card{border:1px solid var(--glass-border);background:#ffffff0d;border-radius:12px;padding:1.25rem}.insight-card h4{color:var(--usa-red);text-transform:uppercase;letter-spacing:1px;margin:.5rem 0;font-size:.9rem}.insight-card p{opacity:.9;margin:0;font-size:.95rem;line-height:1.5}.mini-stat{grid-template-columns:80px 1fr 40px;align-items:center;gap:1rem;margin-bottom:.75rem;display:grid}.mini-stat .label{text-transform:uppercase;opacity:.7;font-size:.75rem}.mini-stat .bar-bg{background:#ffffff1a;border-radius:2px;height:4px;overflow:hidden}.mini-stat .bar-fill{background:linear-gradient(90deg, var(--usa-blue) 0%, var(--usa-red) 100%);border-radius:2px;height:100%}.mini-stat .value{text-align:right;font-size:.75rem;font-weight:600}@media (width<=600px){.analytics-dashboard{grid-template-columns:1fr}}.agent-thought{color:var(--gold);opacity:.8;align-self:flex-start;align-items:center;gap:.5rem;padding:.5rem 1.25rem;font-size:.9rem;font-style:italic;display:flex}.agent-thought:before{content:"";background:var(--gold);width:8px;height:8px;box-shadow:0 0 8px var(--gold);border-radius:50%;display:inline-block}.matches-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-top:1rem;margin-bottom:2rem;display:grid}.athlete-match-card{border:1px solid var(--glass-border);background:#ffffff08;border-radius:16px;padding:1.25rem;transition:all .3s}.athlete-match-card:hover{border-color:var(--gold);background:#ffffff12;transform:translateY(-4px);box-shadow:0 10px 30px #0006,0 0 20px #d4af371a}.athlete-match-card.prospect{border-color:var(--usa-red);background:#bf0a300d}.athlete-match-card.prospect:hover{border-color:var(--usa-red);box-shadow:0 10px 30px #0006,0 0 20px #bf0a3033}.athlete-match-card.prospect .card-header{color:var(--usa-red)}.athlete-match-card.prospect .card-header svg{color:var(--usa-red);fill:var(--usa-red)}.athlete-match-card .card-header{color:var(--gold);text-transform:uppercase;letter-spacing:1px;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.75rem;display:flex}.athlete-match-card h3{color:var(--white);margin:0 0 .75rem;font-size:1.1rem}.athlete-match-card .card-details{color:#ffffffb3;flex-direction:column;gap:.4rem;margin-bottom:1rem;font-size:.875rem;display:flex}.card-footer-hint{color:var(--gold);opacity:0;border-top:1px solid #d4af371a;justify-content:space-between;align-items:center;padding-top:.75rem;font-size:.7rem;transition:all .3s;display:flex}.athlete-match-card:hover .card-footer-hint{opacity:1}.athlete-match-card.prospect .card-footer-hint{color:var(--usa-red);border-top-color:#bf0a301a}.athlete-match-card .card-details p{align-items:center;gap:.5rem;margin:0;display:flex}.chat-input-area{background:#ffffff05;border-radius:16px;gap:.75rem;padding:.5rem;display:flex}.chat-input{border:1px solid var(--glass-border);color:#fff;background:#ffffff0d;border-radius:12px;flex-grow:1;padding:.875rem 1.25rem;font-size:1rem;transition:all .3s}.chat-input:focus{border-color:var(--usa-blue);background:#0028681a;outline:none}.chat-send-btn{background:var(--gradient-red);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;width:50px;height:50px;transition:all .2s;display:flex;box-shadow:0 4px 12px #bf0a304d}.chat-send-btn:hover:not(:disabled){filter:brightness(1.1);transform:scale(1.05)translateY(-2px);box-shadow:0 8px 15px #bf0a3080}.chat-send-btn:disabled{opacity:.3;cursor:not-allowed}.victory-shot-section{border-top:1px solid var(--glass-border);grid-column:1/-1;margin-top:2rem;padding-top:1.5rem}.victory-shot-title{color:var(--gold);text-transform:uppercase;letter-spacing:1px;align-items:center;margin-bottom:.5rem;font-size:1rem;font-weight:700;display:flex}.victory-shot-subtitle{opacity:.7;margin-bottom:1.25rem;font-size:.85rem}.btn-victory{background:linear-gradient(135deg, var(--usa-blue) 0%, var(--usa-red) 100%);color:#fff;text-transform:uppercase;letter-spacing:1px;cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;width:100%;padding:1rem 2rem;font-size:1.05rem;font-weight:700;transition:all .3s;display:flex;box-shadow:0 6px 20px #00286866}.btn-victory:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-3px);box-shadow:0 10px 30px #bf0a3080}.btn-victory:disabled{opacity:.4;cursor:not-allowed}.victory-shot-card{border:2px solid var(--gold);border-radius:20px;position:relative;overflow:hidden;box-shadow:0 20px 50px #0009,0 0 40px #d4af371a}.victory-shot-badge{color:#000;letter-spacing:1.5px;z-index:10;background:linear-gradient(135deg,#b8860b,gold);border-radius:6px;padding:.3rem .85rem;font-size:.7rem;font-weight:900;position:absolute;top:12px;left:12px;box-shadow:0 4px 12px #00000080}.victory-shot-img{object-fit:cover;width:100%;max-height:420px;display:block}.victory-shot-footer{border-top:1px solid var(--glass-border);background:#0a1128f2;padding:1.25rem 1.5rem}.victory-shot-footer p{opacity:.9;margin-bottom:1rem;font-size:.9rem}.victory-shot-actions{flex-wrap:wrap;gap:.75rem;display:flex}.btn-share{cursor:pointer;border:none;border-radius:10px;align-items:center;padding:.6rem 1.2rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-share.download{background:var(--usa-blue);color:#fff}.btn-share.copy{background:var(--usa-red);color:#fff}.btn-share.regenerate{color:#fff;border:1px solid var(--glass-border);background:#ffffff1a}.btn-share:hover{filter:brightness(1.2);transform:translateY(-2px)}.shot-error{color:#ff6b6b;background:#ff64641a;border:1px solid #ff646433;border-radius:8px;margin-top:.75rem;padding:.75rem;font-size:.85rem}.spin{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.share-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000000bf;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.share-modal{border:1px solid var(--glass-border);background:linear-gradient(135deg,#0a1128fa 0%,#141e46fa 100%);border-radius:24px;width:100%;max-width:520px;max-height:92vh;overflow:hidden auto;box-shadow:0 30px 80px #000000b3,0 0 60px #d4af3714}.share-modal-header{border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.share-modal-header h3{color:var(--gold);margin:0;font-size:1.1rem;font-weight:700}.share-modal-close{border:1px solid var(--glass-border);color:#fff;cursor:pointer;background:#ffffff14;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;transition:background .2s;display:flex}.share-modal-close:hover{background:#ffffff2e}.share-preview-img{object-fit:contain;background:#000;width:100%;max-height:280px;display:block}.share-caption{color:#ffffffa6;border-bottom:1px solid var(--glass-border);margin:0;padding:.85rem 1.5rem;font-size:.8rem;line-height:1.5}.share-platforms{grid-template-columns:1fr 1fr 1fr;gap:.75rem;padding:1.25rem 1.5rem 1.5rem;display:grid}.share-platform{border:1px solid var(--glass-border);cursor:pointer;color:#fff;background:#ffffff0f;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:.45rem;padding:.85rem .5rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.share-platform:hover{filter:brightness(1.25);transform:translateY(-3px)}.platform-icon{align-items:center;font-size:1.4rem;line-height:1;display:flex}.share-platform.twitter{border-color:#1da1f2}.share-platform.twitter:hover{background:#1da1f226}.share-platform.facebook{border-color:#1877f2}.share-platform.facebook:hover{background:#1877f226}.share-platform.linkedin{border-color:#0a66c2}.share-platform.linkedin:hover{background:#0a66c226}.share-platform.instagram{border-color:#e1306c}.share-platform.instagram:hover{background:#e1306c26}.share-platform.native{border-color:var(--gold)}.share-platform.native:hover{background:#d4af3726}.share-platform.download-full{border-color:#ffffff40}.share-platform.download-full:hover{background:#ffffff1a}.btn-share.share-main{background:linear-gradient(135deg, var(--usa-red), var(--usa-blue));color:#fff}.share-how-it-works{color:#ffffffb3;border-bottom:1px solid var(--glass-border);background:#d4af3712;align-items:flex-start;gap:.5rem;padding:.65rem 1.5rem;font-size:.75rem;line-height:1.5;display:flex}.share-how-it-works strong{color:var(--gold)}.share-toast{z-index:9999;border:1px solid var(--gold);color:var(--white);white-space:nowrap;pointer-events:none;text-align:center;background:linear-gradient(135deg,#0a1128f7 0%,#141e46f7 100%);border-radius:14px;max-width:90vw;padding:1rem 1.75rem;font-size:.9rem;font-weight:500;position:fixed;bottom:2rem;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #00000080,0 0 20px #d4af3726}.capture-options{grid-template-columns:1fr auto 1fr;align-items:stretch;gap:0;min-height:260px;display:grid}.capture-option{border:1px solid var(--glass-border);cursor:pointer;text-align:center;color:var(--white);background:#ffffff08;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:2.5rem 1.5rem;font-family:inherit;text-decoration:none;transition:all .3s;display:flex}.capture-option:hover{border-color:#fff3;transform:translateY(-4px)}.capture-option.camera-option:hover{border-color:var(--usa-red);background:#bf0a300f;box-shadow:0 8px 32px #bf0a3026}label.capture-option:hover{border-color:var(--gold);background:#d4af370f;box-shadow:0 8px 32px #d4af371f}.capture-option-icon{border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:.25rem;transition:transform .3s;display:flex}.upload-icon{background:#d4af371f;border:1px solid #d4af3740}.camera-icon{background:#bf0a301f;border:1px solid #bf0a3040}.capture-option:hover .capture-option-icon{transform:scale(1.1)}.capture-option h3{margin:0;font-size:1.15rem;font-weight:700}.capture-option p{opacity:.7;margin:0;font-size:.875rem;line-height:1.4}.capture-option-hint{opacity:.45;letter-spacing:.3px;font-size:.72rem}.capture-divider{flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:0 1.25rem;display:flex}.capture-divider:before,.capture-divider:after{content:"";background:var(--glass-border);flex:1;width:1px}.capture-divider span{opacity:.4;text-transform:uppercase;letter-spacing:1px;font-size:.75rem}@media (width<=600px){.capture-options{min-height:unset;grid-template-rows:auto auto auto;grid-template-columns:1fr}.capture-divider{flex-direction:row;padding:.75rem 0}.capture-divider:before,.capture-divider:after{flex:1;width:auto;height:1px}}.camera-modal-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:2000;background:#000000e0;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.camera-modal{border:1px solid var(--glass-border);background:linear-gradient(135deg,#0a1128fa 0%,#050a19fc 100%);border-radius:24px;width:100%;max-width:680px;overflow:hidden;box-shadow:0 40px 80px #000c,0 0 80px #bf0a3014}.camera-header{border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;padding:1.1rem 1.5rem;display:flex}.camera-title{color:var(--gold);letter-spacing:.5px;font-size:1rem;font-weight:700}.camera-close-btn{border:1px solid var(--glass-border);color:#fff;cursor:pointer;background:#ffffff14;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;transition:background .2s;display:flex}.camera-close-btn:hover{background:#ffffff2e}.camera-viewfinder{aspect-ratio:16/9;background:#000;width:100%;position:relative;overflow:hidden}.camera-video{object-fit:cover;width:100%;height:100%;display:block}.camera-video.mirrored{transform:scaleX(-1)}.camera-flash{pointer-events:none;z-index:10;background:#fff;animation:.3s ease-out forwards cameraFlash;position:absolute;inset:0}@keyframes cameraFlash{0%{opacity:.9}to{opacity:0}}.camera-guide{border-color:var(--gold);opacity:.7;z-index:5;border-style:solid;width:24px;height:24px;position:absolute}.camera-guide.tl{border-width:2px 0 0 2px;border-radius:4px 0 0;top:16px;left:16px}.camera-guide.tr{border-width:2px 2px 0 0;border-radius:0 4px 0 0;top:16px;right:16px}.camera-guide.bl{border-width:0 0 2px 2px;border-radius:0 0 0 4px;bottom:16px;left:16px}.camera-guide.br{border-width:0 2px 2px 0;border-radius:0 0 4px;bottom:16px;right:16px}.camera-error{text-align:center;color:#ffffffb3;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:2rem;display:flex}.camera-controls{background:#0006;justify-content:space-between;align-items:center;padding:1.25rem 2rem 1.5rem;display:flex}.camera-capture-btn{cursor:pointer;background:0 0;border:3px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 0 #fff6}.camera-capture-btn:not(:disabled):hover{transform:scale(1.06);box-shadow:0 0 0 6px #ffffff1f}.camera-capture-btn:not(:disabled):active{transform:scale(.94)}.camera-capture-btn:disabled{opacity:.35;cursor:not-allowed}.camera-capture-inner{background:radial-gradient(circle,#fff 0%,#bf0a30e6 100%);border-radius:50%;width:54px;height:54px;transition:transform .15s;box-shadow:0 0 20px #bf0a3080}.camera-capture-btn:not(:disabled):active .camera-capture-inner{transform:scale(.88)}.camera-flip-btn{border:1px solid var(--glass-border);color:#fff;cursor:pointer;background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:all .2s;display:flex}.camera-flip-btn:hover{background:#fff3;transform:rotate(180deg)}
