:root{--navy:#020b22;--blue:#06388a;--yellow:#ffbd00;--yellow-dark:#e49c00;--white:#fff;--muted:#aebcd8;--panel:#08193de6;--line:#ffffff1f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--navy);color:var(--white);margin:0;font-family:Poppins,sans-serif}button,input{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}.container{width:min(1120px,100% - 40px);margin-inline:auto}.frame-app{background:radial-gradient(circle at 50% -10%,#1353c185,#0000 42%),linear-gradient(#061b4b 0,#020b22 42%,#010617 100%);min-height:100vh;padding:34px 0 72px;position:relative;overflow:hidden}.frame-app:before{content:"";pointer-events:none;opacity:.18;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:46px 46px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 70%);mask-image:linear-gradient(#000,#0000 70%)}.page-glow{filter:blur(90px);opacity:.18;pointer-events:none;border-radius:50%;width:420px;height:420px;position:absolute}.page-glow--one{background:#087bff;top:300px;left:-250px}.page-glow--two{background:#ffb800;bottom:200px;right:-250px}.hero{z-index:1;text-align:center;position:relative}.eyebrow{color:var(--yellow);letter-spacing:.18em;margin:0 0 7px;font-size:13px;font-weight:800}.hero h1{text-transform:uppercase;letter-spacing:.012em;text-shadow:0 6px 30px #00000059;margin:0;font-family:Anton,sans-serif;font-size:clamp(48px,7vw,84px);line-height:.98}.hero__intro{color:#d8e3fa;max-width:650px;margin:18px auto 0;font-size:clamp(16px,2vw,20px)}.creator{z-index:1;margin-top:36px;position:relative}.creator__steps{color:#d9e4f8;text-transform:uppercase;letter-spacing:.04em;justify-content:center;align-items:center;gap:12px;margin-bottom:22px;font-size:13px;font-weight:700;display:flex}.creator__steps span{align-items:center;gap:7px;display:flex}.creator__steps b,.section-number{background:var(--yellow);color:#061439;border-radius:50%;flex:none;place-items:center;width:31px;height:31px;font-weight:900;display:grid}.creator__steps i{background:#ffffff40;width:42px;height:1px}.frame-picker,.editor-layout{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#051230c2;border-radius:28px;box-shadow:0 28px 80px #00000047}.frame-picker{padding:26px}.section-heading,.controls-panel__heading{align-items:center;gap:13px;display:flex}.section-heading h2,.controls-panel__heading h2{margin:0;font-size:22px;line-height:1.15}.section-heading p,.controls-panel__heading p{color:var(--muted);margin:4px 0 0;font-size:14px}.frame-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px;display:grid}.frame-card{min-width:0;color:var(--white);text-align:left;background:#ffffff0e;border:2px solid #ffffff1f;border-radius:18px;grid-template-columns:96px 1fr;align-items:center;gap:16px;padding:11px;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s;display:grid}.frame-card:hover{border-color:#ffbd008c;transform:translateY(-2px)}.frame-card.is-active{border-color:var(--yellow);background:#ffbd001a;box-shadow:0 0 0 3px #ffbd001f}.frame-card__image{aspect-ratio:4/5;background:#071331;border-radius:11px;position:relative;overflow:hidden}.frame-card__image img{object-fit:cover;width:100%;height:100%}.frame-card__check{background:var(--yellow);color:#061439;border-radius:50%;place-items:center;width:25px;height:25px;font-size:15px;font-weight:900;transition:transform .2s;display:grid;position:absolute;top:6px;right:6px;transform:scale(0)}.frame-card.is-active .frame-card__check{transform:scale(1)}.frame-card__copy{flex-direction:column;min-width:0;display:flex}.frame-card__copy strong{font-size:18px}.frame-card__copy small{color:var(--muted);margin-top:3px}.editor-layout{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:30px;margin-top:22px;padding:30px;display:grid}.section-heading--preview{margin-bottom:18px}.canvas-shell{aspect-ratio:4/5;touch-action:none;-webkit-user-select:none;user-select:none;background:#071331;border:1px solid #ffffff29;border-radius:20px;width:min(100%,580px);margin-inline:auto;position:relative;overflow:hidden;box-shadow:0 20px 54px #00000061}.canvas-shell.is-dragging{cursor:grabbing}#photoCanvas{width:100%;height:100%;display:block}.empty-state{z-index:2;color:#07265a;background:#ffffffa3;border:3px dashed #05265b7a;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:0;transition:transform .2s,background .2s,opacity .2s;display:flex;position:absolute}.empty-state:hover{background:#ffffffc7;transform:scale(.98)}.empty-state.is-hidden{opacity:0;pointer-events:none}.empty-state__icon{background:var(--yellow);color:#071331;border-radius:50%;place-items:center;width:55px;height:55px;margin-bottom:5px;font-size:32px;font-weight:500;display:grid;box-shadow:0 8px 22px #0000002e}.empty-state strong{font-size:clamp(15px,2vw,21px);font-weight:900}.empty-state small{opacity:.72;font-size:12px;font-weight:700}.drag-tip{color:#c9d5ec;text-align:center;justify-content:center;align-items:center;gap:8px;margin:14px 0 0;font-size:13px;display:flex}.drag-tip span{color:var(--yellow);font-size:20px;font-weight:900}.controls-panel{align-self:start;padding-top:4px;position:sticky;top:22px}.controls-panel__heading{margin-bottom:24px}.upload-button,.download-button,.share-button,.center-button{letter-spacing:.025em;border:0;border-radius:13px;width:100%;font-weight:900}.upload-button{background:var(--yellow);color:#061439;min-height:57px;box-shadow:0 8px 0 var(--yellow-dark), 0 17px 30px #0000003d;justify-content:center;align-items:center;gap:9px;display:flex}.upload-button:hover{filter:brightness(1.06);transform:translateY(-1px)}.upload-button:active{box-shadow:0 3px 0 var(--yellow-dark);transform:translateY(5px)}.upload-button>span:first-child{font-size:24px;line-height:1}.control-card{border:1px solid var(--line);background:#ffffff0b;border-radius:17px;margin-top:24px;padding:20px}.control-label{justify-content:space-between;gap:12px;margin-bottom:16px;font-size:14px;font-weight:700;display:flex}.control-label output{color:var(--yellow)}.zoom-control{grid-template-columns:42px 1fr 42px;align-items:center;gap:10px;display:grid}.zoom-control button{color:#fff;background:#102959;border:1px solid #ffffff26;border-radius:11px;width:42px;height:42px;font-size:22px;font-weight:700}.zoom-control input{width:100%;accent-color:var(--yellow)}.center-button{color:#f4f7ff;background:#ffffff1a;min-height:44px;margin-top:17px;font-size:12px}.action-buttons{gap:11px;margin-top:20px;display:grid}.download-button,.share-button{min-height:54px}.download-button{background:var(--yellow);color:#061439;box-shadow:0 6px 0 var(--yellow-dark)}.share-button{color:var(--yellow);background:0 0;border:2px solid #ffbd008c}.download-button:disabled,.share-button:disabled{cursor:not-allowed;opacity:.42;filter:grayscale(.3);box-shadow:none}.privacy-note{color:var(--muted);align-items:flex-start;gap:8px;margin:20px 0 0;font-size:12px;line-height:1.5;display:flex}.privacy-note span{color:var(--yellow);font-weight:900}.footer{background:#01040e;border-top:1px solid #ffffff17;position:relative}.footer__inner{grid-template-columns:160px 1fr auto;align-items:center;gap:28px;min-height:138px;padding-block:26px;display:grid}.footer__inner>img{object-fit:contain;width:140px;max-height:62px}.electoral-disclosure{color:#8f9ab2;flex-direction:column;gap:5px;font-size:11px;display:flex}.electoral-disclosure strong{color:#f1f4fb;letter-spacing:.08em;font-size:12px}.footer__inner>a{color:var(--yellow);font-size:11px;font-weight:800;text-decoration:none}.toast{z-index:20;color:#071331;opacity:0;pointer-events:none;background:#fff;border-radius:12px;max-width:min(90vw,480px);padding:13px 18px;font-size:13px;font-weight:700;transition:opacity .2s,transform .2s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,18px);box-shadow:0 16px 40px #00000059}.toast.is-visible{opacity:1;transform:translate(-50%)}@media (width<=780px){.frame-app{padding-top:24px}.hero h1{font-size:clamp(45px,14vw,67px)}.hero__intro{max-width:430px;font-size:16px}.frame-picker{padding:20px}.editor-layout{grid-template-columns:1fr;padding:20px}.controls-panel{position:static}.footer__inner{text-align:center;grid-template-columns:1fr;justify-items:center;gap:16px}.electoral-disclosure{align-items:center}}@media (width<=520px){.container{width:min(100% - 24px,1120px)}.frame-app{padding-bottom:46px}.eyebrow{font-size:11px}.hero__intro{margin-top:13px}.creator{margin-top:26px}.creator__steps{gap:6px;font-size:10px}.creator__steps b{width:25px;height:25px}.creator__steps i{width:14px}.frame-picker,.editor-layout{border-radius:20px}.section-heading h2,.controls-panel__heading h2{font-size:19px}.section-heading p,.controls-panel__heading p{font-size:12px}.section-number{width:29px;height:29px}.frame-options{gap:10px}.frame-card{grid-template-columns:1fr;gap:9px;padding:8px}.frame-card__image{width:100%}.frame-card__copy{padding:0 3px 4px}.frame-card__copy strong{font-size:14px}.frame-card__copy small{font-size:11px}.editor-layout{gap:24px;margin-top:14px;padding:14px}.section-heading--preview{padding:5px 4px 0}.canvas-shell{border-radius:14px}.empty-state__icon{width:42px;height:42px;font-size:25px}.empty-state small{display:none}.drag-tip{padding-inline:8px;font-size:11px}.controls-panel{padding:4px 3px 5px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
