/* Phase 3 visual refinements layered on the approved navy/teal design. */
.brand-icon{position:relative;isolation:isolate;overflow:hidden;border:1px solid rgba(255,255,255,.36);background:linear-gradient(135deg,#7df7d0,#37acfb 51%,#bd72ff);box-shadow:0 8px 20px rgba(32,193,194,.2),inset 0 1px 0 #ffffff85;transform:perspective(120px) rotateX(9deg) rotateY(-12deg);animation:float-brand 5s ease-in-out infinite;transition:transform .3s}
.brand-icon::after{content:"";position:absolute;inset:-90%;background:linear-gradient(110deg,transparent 42%,#ffffff88 49%,transparent 57%);transform:translateX(-60%);animation:brand-shimmer 6s ease-in-out infinite;pointer-events:none}.brand-icon svg{filter:drop-shadow(1px 2px 1px #03254c88);z-index:1;color:#0a2434}
.site-header .brand{letter-spacing:-.8px;font-size:24px}.site-header .brand>span:nth-child(2){background:linear-gradient(90deg,#f9ffff 15%,#8cf7d4 57%,#83c4ff 99%);background-clip:text;-webkit-text-fill-color:transparent}.site-header nav{display:flex;align-items:center;justify-content:center;white-space:nowrap;flex-wrap:nowrap;gap:clamp(12px,2.1vw,28px);margin-left:auto;margin-right:auto}.site-header nav a{font-weight:700;color:#e4f4f3}.site-header nav a:hover{text-shadow:0 0 12px #5ef7bd99}.theme-switch{width:33px;height:33px;min-width:33px;min-height:33px}.theme-switch svg{width:17px;height:17px}.hero{padding-top:44px;padding-bottom:58px}.hero h1{font-size:clamp(38px,4.8vw,60px)}.hero p{max-width:770px}.hero-chips{gap:10px}.hero-chips span{padding:7px 11px;border:1px solid #3b6274;border-radius:20px;background:#112f44aa;font-size:11px}.top-wrap:after{animation:move-dots 18s linear infinite}
.mode{min-height:66px;transition:transform .18s,box-shadow .18s,border-color .18s}.mode:hover{transform:translateY(-3px);box-shadow:0 8px 15px #19384d0d}.mode.active{box-shadow:0 0 0 1px #4ad6b788}.mode-tabs{margin-top:20px;margin-bottom:19px}.design-extras{padding:13px;margin-top:14px}.design-subheading{margin-bottom:11px}.design-columns{gap:12px}.design-option{min-height:60px;gap:4px}.design-icon{width:23px;height:23px}.preset-line{margin-top:10px;padding-top:10px}.settings-grid{gap:11px;margin-top:15px;grid-template-columns:repeat(3,minmax(0,1fr))}.gradient-check{margin:18px 0 0!important}.logo-field{margin:12px 0;padding:10px 0}.frame-fields{margin:10px 0}.section-divider{margin:19px -31px}.settings-heading h2{margin-top:4px}
.file-choice{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 14px}.file-choice label{display:flex!important;align-items:center!important;gap:7px;background:var(--subtle,#f2f7f9);border:1px solid var(--stroke,#d8e3e6);border-radius:9px;padding:12px;min-height:47px;font-size:12px!important;margin:0!important;cursor:pointer}.file-choice input{accent-color:#0ea685}.file-choice label:has(input:checked){border-color:#13a589;background:rgba(50,211,167,.1)}.upload-box{border:1px dashed var(--stroke,#d7e5e8);border-radius:11px;padding:16px;background:var(--subtle,#f8fbfc)}.upload-box>label{display:block;font-weight:700;font-size:12px;margin-bottom:9px}.upload-box input[type=file]{width:100%;font-size:12px;color:var(--muted2,#567)}.turnstile-box{margin:15px 0 11px;min-height:0}.upload-box .primary-action{display:inline-flex}.form-status{display:block;font-size:12px;color:var(--muted2,#6b8497);margin-top:8px;line-height:1.6}.uploaded-detail{color:#06785e;border:1px solid #9be2ce;background:#eafcf6;padding:10px;border-radius:8px;font-size:12px;margin-top:10px;overflow-wrap:anywhere}.file-choice+.upload-box .field-hint{margin:9px 0}
.csv-upload{display:flex;align-items:center;gap:16px;flex-wrap:wrap;border:1px dashed var(--stroke,#cedde2);border-radius:11px;padding:12px 14px;margin-top:12px}.csv-upload label{font-size:12px;font-weight:700}.csv-upload input{width:min(230px,100%);font-size:12px}.csv-upload a{font-size:11px;color:var(--accent,#078971);font-weight:750;text-decoration:underline}
.placeholder-first{display:flex;flex-direction:column;gap:10px;align-items:center}.empty-qr-icon{font-size:88px;opacity:.16;line-height:1}.placeholder-first strong{font-size:16px;color:var(--ink,#163147)}.placeholder-first>span:last-child{font-size:12px;max-width:210px}.qr-holder{min-height:290px}.info-card{border-radius:12px}.preview-panel{top:10px}.preview-subnote{font-size:11px}
.contact-area{display:grid;grid-template-columns:minmax(0,.87fr) minmax(0,1.12fr);gap:32px;overflow:hidden;position:relative;padding:29px 30px}.contact-area::after{content:"";position:absolute;inset:auto auto -85px -85px;border-radius:50%;width:280px;height:280px;background:radial-gradient(circle,#53edc029,transparent 67%);pointer-events:none}.contact-intro h2{font-size:clamp(22px,2.6vw,29px);line-height:1.18;letter-spacing:-1px;margin:12px 0 14px}.contact-intro p{font-size:13px;line-height:1.75;color:var(--muted2)}.contact-visual{display:flex;gap:28px;margin-top:23px;align-items:center;font-size:35px;color:#36ceb9}.contact-visual span{display:inline-block;animation:bob-visual 4s ease-in-out infinite}.contact-visual span:nth-child(2){color:#5c9ffb;animation-delay:-1s}.contact-visual span:nth-child(3){color:#b98cf7;animation-delay:-2s}
.contact-form{position:relative;background:var(--subtle,#f6f9fa);border:1px solid var(--stroke,#dae7ec);border-radius:12px;padding:19px}.contact-form label{display:block;font-weight:750;font-size:12px;margin:0 0 7px;color:var(--ink,#142e3c)}.contact-form input,.contact-form textarea{width:100%;background:var(--paper,#fff);color:var(--ink,#142e3c);border:1px solid var(--stroke,#d2dfe3);border-radius:9px;padding:12px;font-size:13px}.contact-form textarea{resize:vertical}.contact-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.contact-actions .form-status{flex:1;margin:0;min-width:150px}
.privacy-strip{border-radius:15px;box-shadow:inset 0 1px 0 #ffffff20;background:linear-gradient(105deg,#09263a,#0a4b54 66%,#163e66);position:relative;overflow:hidden}.privacy-strip::after{content:"";position:absolute;right:8%;top:-90px;width:170px;height:200px;border-radius:50%;background:#20cc9955;filter:blur(45px);animation:glow-footer 6s ease-in-out infinite}.privacy-strip .lock{color:#8afcdb}.lock-text{font-weight:800;letter-spacing:2px}
.footer{padding-top:32px;padding-bottom:38px;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-brand{font-size:18px!important;color:var(--ink)}.footer-qr{display:inline-block;padding-right:5px;color:#18a3a5;animation:bob-visual 6s ease-in-out infinite}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer-links a{text-decoration:none;font-size:12px;color:var(--muted2);font-weight:650}.footer-links a:hover{color:#0ca98a}
@keyframes float-brand{0%,100%{transform:perspective(120px) rotateX(9deg) rotateY(-12deg) translateY(0)}50%{transform:perspective(120px) rotateX(-3deg) rotateY(8deg) translateY(-3px)}}@keyframes brand-shimmer{0%,45%,100%{transform:translateX(-60%)}65%{transform:translateX(60%)}}@keyframes move-dots{50%{transform:translate(-30px,15px) rotate(15deg)}}@keyframes glow-footer{50%{transform:translate(-70px,20px);opacity:.6}}@keyframes bob-visual{50%{transform:translateY(-9px) rotate(8deg)}}
@media(max-width:1050px){.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.site-header{flex-wrap:wrap;height:auto;min-height:112px;padding-top:10px;padding-bottom:10px;column-gap:10px;row-gap:6px}.site-header nav{display:flex!important;order:3;flex-basis:100%;width:100%;justify-content:space-around;gap:6px;margin:0;white-space:nowrap}.site-header nav a{font-size:11px}.site-header .brand{font-size:21px}.site-header .theme-switch{margin-left:auto}.hero{padding-top:22px;padding-bottom:47px}.hero h1{letter-spacing:-2px}.mode-tabs{grid-template-columns:repeat(4,1fr)}.contact-area{grid-template-columns:1fr;gap:15px}.contact-visual{display:none}.footer{flex-direction:column;align-items:flex-start}.section-divider{margin:18px -19px}}
@media(max-width:440px){.file-choice{grid-template-columns:1fr}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-form .two-fields{grid-template-columns:1fr}.csv-upload{align-items:flex-start;flex-direction:column;gap:10px}.site-header nav a{font-size:10px}}
@media(prefers-reduced-motion:reduce){.brand-icon,.brand-icon::after,.top-wrap::after,.contact-visual span,.footer-qr,.privacy-strip::after{animation:none!important}.mode:hover,.theme-switch:hover{transform:none!important}}
/* Prevent broad legacy form-input rule from enlarging the file-source radios. */
.mode-panel .file-choice input[type="radio"]{width:16px!important;height:16px!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;flex:0 0 16px;accent-color:#0a9b80;box-shadow:none!important}

.select-prompt{min-height:120px;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;border-radius:12px;border:1px dashed var(--stroke,#d4e2e8);background:var(--subtle,#f4f8fa);font-size:13px;line-height:1.7;color:var(--muted2,#64808c)}
