:root{--asa-primary:#0f766e;--asa-primary2:#0ea5a3;--asa-dark:#0f172a;--asa-muted:#64748b;--asa-card:#ffffff;--asa-soft:#ecfeff;--asa-border:#dbe7e8;--asa-success:#16a34a;--asa-warm:#fff7ed}
*{box-sizing:border-box} body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--asa-dark)}
.guest-modern-bg{min-height:100vh;background:radial-gradient(circle at 8% 4%,rgba(14,165,163,.16),transparent 32%),radial-gradient(circle at 96% 16%,rgba(186,230,253,.35),transparent 34%),linear-gradient(135deg,#fbfdfd 0%,#eefafa 52%,#f8fafc 100%)}
.guest-shell{min-height:100vh;display:flex;align-items:center}.guest-language-bar{display:flex;justify-content:flex-end;gap:8px;margin-bottom:18px}.guest-language-bar a{padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.84);border:1px solid rgba(209,230,232,.9);text-decoration:none;color:#334155;font-weight:800;font-size:13px;box-shadow:0 10px 30px rgba(15,23,42,.045)}.guest-language-bar a.active{background:#0f766e;color:#fff;border-color:#0f766e}
.guest-hero-card{position:sticky;top:32px;padding:36px;border-radius:34px;color:#0f172a;background:linear-gradient(145deg,#ffffff,#f0fdfa 58%,#e0f2fe);box-shadow:0 24px 80px rgba(15,23,42,.12);overflow:hidden;border:1px solid rgba(209,230,232,.9)}.guest-hero-card:after{content:"";position:absolute;right:-80px;bottom:-80px;width:220px;height:220px;border-radius:50%;background:rgba(14,165,163,.09)}.guest-hero-badge{display:inline-flex;padding:8px 14px;border:1px solid rgba(15,118,110,.2);border-radius:999px;background:#ecfeff;color:#0f766e;font-weight:900;margin-bottom:24px}.guest-hero-card h1{font-size:clamp(32px,4vw,52px);line-height:1.02;font-weight:900;letter-spacing:-.045em;margin-bottom:18px}.guest-hero-card p{font-size:17px;line-height:1.65;color:#475569;max-width:520px}.guest-rest-mini{display:flex;align-items:center;gap:14px;margin-top:28px;padding:16px;border-radius:24px;background:rgba(255,255,255,.8);border:1px solid rgba(209,230,232,.95);position:relative;z-index:1}.guest-logo-wrap{width:76px;height:76px;border-radius:24px;background:#fff;display:flex;align-items:center;justify-content:center;flex:0 0 auto;box-shadow:0 16px 40px rgba(15,23,42,.1);border:1px solid #e5f3f3}.guest-logo-wrap.mini{width:54px;height:54px;border-radius:18px}.guest-logo-wrap img{max-width:76%;max-height:76%;object-fit:contain}.guest-logo-wrap span{font-weight:900;color:#0f766e}.guest-form-card{backdrop-filter:blur(16px);background:rgba(255,255,255,.96);border:1px solid rgba(209,230,232,.8)}.guest-form-header{background:linear-gradient(135deg,#f0fdfa,#e0f2fe)!important;color:#0f172a!important;border-bottom:1px solid #dbe7e8}.guest-form-header .text-white,.guest-form-header .opacity-75,.guest-form-header .opacity-90{color:#0f172a!important;opacity:1!important}
.form-label{font-weight:800;color:#334155}.form-control,.form-select{border-radius:18px;border-color:#dbe7e8;background:#fff}.form-control-lg,.form-select-lg{min-height:54px}.form-control:focus,.form-select:focus{box-shadow:0 0 0 .25rem rgba(15,118,110,.13);border-color:#0f766e}.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.category-chip{position:relative;display:block;cursor:pointer;margin:0}.category-chip input{position:absolute;opacity:0;pointer-events:none}.category-chip span{display:flex;align-items:center;gap:10px;min-height:54px;padding:12px 14px;border:1px solid var(--asa-border);border-radius:18px;background:linear-gradient(180deg,#fff,#f8fafc);font-weight:800;color:#334155;transition:.18s;box-shadow:0 8px 22px rgba(15,23,42,.035)}.category-chip span i{width:24px;height:24px;border-radius:9px;border:2px solid #cbd5e1;background:#fff;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.category-chip span i:after{content:"";width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg);opacity:0;margin-top:-2px}.category-chip:hover span{border-color:#67e8f9;transform:translateY(-1px)}.category-chip input:checked+span{background:linear-gradient(135deg,#ecfeff,#f0fdfa);border-color:#0f766e;color:#0f766e;box-shadow:0 12px 30px rgba(15,118,110,.13)}.category-chip input:checked+span i{background:#0f766e;border-color:#0f766e}.category-chip input:checked+span i:after{opacity:1}.guest-consent{display:flex;align-items:flex-start;gap:12px;padding:17px;border-radius:20px;background:#f8fafc;border:1px solid var(--asa-border);font-weight:650}.guest-consent .form-check-input{width:22px;height:22px;margin-top:1px;border-radius:8px}.guest-consent .form-check-input:checked{background-color:#0f766e;border-color:#0f766e}.guest-file-control{padding:13px}.guest-submit{border-radius:20px;padding:15px 22px;font-weight:900;background:linear-gradient(135deg,#0f766e,#0ea5a3);border:0;box-shadow:0 14px 32px rgba(15,118,110,.21)}.btn-primary{background:#0f766e;border-color:#0f766e}.btn-primary:hover,.btn-primary:focus{background:#115e59;border-color:#115e59}.guest-code-icon{width:76px;height:76px;margin:0 auto 18px;border-radius:24px;background:linear-gradient(135deg,#ecfeff,#f0fdfa);display:flex;align-items:center;justify-content:center;font-size:42px;color:#0f766e}.success-icon{width:82px;height:82px;line-height:82px;border-radius:50%;background:#dcfce7;color:#16a34a;font-size:44px;margin:auto}.request-code{display:inline-flex;padding:10px 16px;border-radius:999px;background:#f1f5f9;color:#334155;font-weight:900}.card{border-radius:26px}.btn{border-radius:15px;font-weight:800}.guest-code-form .input-group .form-control{border-top-right-radius:0;border-bottom-right-radius:0}.guest-code-form .btn{border-top-left-radius:0;border-bottom-left-radius:0}
@media (max-width:991.98px){.guest-shell{align-items:flex-start}.guest-hero-card{position:relative;top:auto}.category-grid{grid-template-columns:1fr}.guest-language-bar{justify-content:center}}
@media (max-width:575.98px){.container{padding-left:14px;padding-right:14px}.guest-hero-card,.card-body{padding:24px!important}.guest-logo-wrap{width:60px;height:60px;border-radius:18px}.guest-form-header{padding:24px!important}.input-group-lg>.btn{font-size:15px;padding-left:14px!important;padding-right:14px!important}}
