/* DNA 8 Ball: entry screen, consent modal, profile. Original art and layout. */
.entry{position:fixed;inset:0;z-index:50;display:flex;flex-direction:column;padding:calc(env(safe-area-inset-top) + 14px) 22px calc(env(safe-area-inset-bottom) + 18px);
 background:radial-gradient(120% 60% at 50% -5%,rgba(232,196,106,.20),rgba(232,196,106,0) 60%),linear-gradient(180deg,rgba(9,11,13,.72),rgba(6,7,9,.97) 62%);
 -webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);overflow-y:auto;touch-action:pan-y}
.entry[hidden],.consent[hidden],.eb[hidden],.eb .soon[hidden],.ef[hidden]{display:none}
body.entering .topbar,body.entering .nav,body.entering .scr,body.entering .sheet{visibility:hidden}
.en-top{display:flex;align-items:center;gap:8px;min-height:40px}
.en-top .sp{flex:1}
.en-top .brand{letter-spacing:.24em;font-size:11px;font-weight:800;color:rgba(243,245,247,.6)}
.en-top .langb{min-width:46px;height:36px;padding:0 12px;border-radius:999px;font-weight:800;background:rgba(255,255,255,.07)}
.en-hero{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:0}
.en-art{width:min(330px,84vw);height:auto;filter:drop-shadow(0 18px 30px rgba(0,0,0,.55));animation:enIn .7s cubic-bezier(.2,.8,.3,1) both}
.en-logo{margin:6px 0 8px!important;font-size:48px!important}
.en-tag{margin:0 auto;max-width:300px;color:#c9d0d8;font-size:15px;line-height:1.45}
.en-acts{width:100%;max-width:400px;margin:0 auto;display:flex;flex-direction:column;gap:10px;padding-top:16px;animation:enUp .55s .12s cubic-bezier(.2,.8,.3,1) both}
.eb{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;border-radius:16px;font-size:17px;font-weight:800;letter-spacing:.01em;padding:0 18px;border:1px solid transparent;transition:transform .12s,filter .12s}
.eb:active{transform:scale(.98);filter:brightness(.95)}
.eb:focus-visible,.consent a:focus-visible,.en-note a:focus-visible{outline:3px solid #fff;outline-offset:3px}
.eb svg{width:24px;height:24px;flex:none}
.eb-guest{min-height:62px;font-size:19px;background:linear-gradient(180deg,#f3d58e,#c99c45);color:#21160a;border-color:#f3d58e;box-shadow:0 10px 26px rgba(201,156,69,.35),inset 0 1px 0 rgba(255,255,255,.5)}
.eb-fb{background:#1877f2;color:#fff;border-color:#1877f2;box-shadow:0 8px 22px rgba(24,119,242,.28)}
.eb-apple{background:#000;color:#fff;border-color:rgba(255,255,255,.28)}
.eb.off{opacity:.92}
.eb .soon{position:absolute;top:-9px;inset-inline-end:14px;font-style:normal;font-size:10.5px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;background:linear-gradient(180deg,#f3d58e,#c99c45);color:#21160a;border-radius:999px;padding:3px 9px;box-shadow:0 3px 8px rgba(0,0,0,.4)}
.en-or{display:flex;align-items:center;gap:10px;color:rgba(243,245,247,.45);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;margin:2px 0}
.en-or::before,.en-or::after{content:"";flex:1;height:1px;background:rgba(255,255,255,.12)}
.en-note{margin:8px 0 0;text-align:center;font-size:12.5px;line-height:1.6;color:rgba(243,245,247,.6)}
.en-note a,.consent a,.acct .legal a{color:#e8c46a;text-decoration:underline;text-underline-offset:2px}
.en-toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom) + 24px);transform:translate(-50%,12px);width:max-content;max-width:min(92vw,380px);background:rgba(18,20,24,.96);border:1px solid rgba(232,196,106,.5);color:#f3f5f7;padding:11px 16px;border-radius:14px;font-size:14px;font-weight:600;line-height:1.4;text-align:center;opacity:0;transition:.25s;pointer-events:none;z-index:60;white-space:normal}
.en-toast.show{opacity:1;transform:translate(-50%,0)}
.consent{position:fixed;inset:0;z-index:55;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.62)}
.cbox{width:min(360px,100%);background:linear-gradient(180deg,#232830,#14171b);border:1px solid rgba(232,196,106,.32);border-radius:24px;padding:24px 22px 20px;text-align:center;box-shadow:0 30px 70px rgba(0,0,0,.6);animation:enPop .28s cubic-bezier(.2,.8,.3,1.2) both}
.cicon svg{width:52px;height:52px;margin:0 auto 6px;display:block;filter:drop-shadow(0 6px 12px rgba(0,0,0,.5))}
.cbox h2{margin:4px 0 10px;font-size:22px;font-weight:900;color:#fff}
.cbody{margin:0 0 8px;font-size:15.5px;line-height:1.55;color:#e3e7ec}
.cnote{margin:0 0 18px;font-size:13px;line-height:1.5;color:rgba(243,245,247,.6)}
.eb-accept{background:linear-gradient(180deg,#4fd37a,#24a24f);color:#062611;border-color:#5be087;box-shadow:0 10px 24px rgba(36,162,79,.35),inset 0 1px 0 rgba(255,255,255,.45);font-size:18px}
.prow{display:flex;align-items:center;gap:12px;margin:10px 0 4px}
.pav{width:56px;height:56px;border-radius:50%;flex:none;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 35% 30%,#3a414b,#1a1d22);border:2px solid rgba(232,196,106,.6);font-size:24px;font-weight:900;color:#fff}
.pav.facebook{border-color:#1877f2}.pav.apple{border-color:#fff}
.pav.sm{width:40px;height:40px;font-size:18px}
.pav img{width:100%;height:100%;object-fit:cover}
.pinfo{display:flex;flex-direction:column;min-width:0}
.pinfo b{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pinfo small{color:rgba(243,245,247,.6);font-size:12.5px;line-height:1.4}
.prof .btn{margin-top:8px}
.btn.fbmini{background:rgba(24,119,242,.18);border-color:rgba(24,119,242,.6)}
.btn.sm{padding:9px 14px}
.acct .langrow{margin-top:8px}
.acct .legal{margin:10px 0 0;font-size:13px;line-height:1.7;color:rgba(243,245,247,.55)}
@keyframes enIn{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}
@keyframes enUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes enPop{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.en-art,.en-acts,.cbox{animation:none}}
@media (max-height:680px) and (orientation:portrait){.en-art{width:min(230px,62vw)}.en-logo{font-size:40px!important}.eb{min-height:50px}.eb-guest{min-height:54px}}
@media (orientation:landscape) and (max-height:540px){
 .entry{display:grid;grid-template-columns:1fr minmax(300px,380px);grid-template-rows:auto 1fr;column-gap:28px;padding:calc(env(safe-area-inset-top) + 10px) calc(env(safe-area-inset-right) + 28px) calc(env(safe-area-inset-bottom) + 10px) calc(env(safe-area-inset-left) + 28px)}
 .en-top{grid-column:1/3}
 .en-hero{grid-row:2}
 .en-art{width:min(250px,36vw)}
 .en-logo{font-size:38px!important;margin:2px 0 4px!important}
 .en-tag{font-size:13.5px}
 .en-acts{grid-row:2;align-self:center;padding-top:0;gap:8px}
 .eb{min-height:48px;font-size:16px}.eb-guest{min-height:52px;font-size:17px}
 .cbox{padding:16px 20px 14px}.cicon svg{width:38px;height:38px}.cbox h2{font-size:19px;margin:2px 0 6px}.cnote{margin-bottom:12px}
}
.acct .langrow{flex-direction:column;align-items:stretch}.acct .langrow button{width:100%}
.soonsm{font-style:normal;font-size:11px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;margin-inline-start:8px;padding:2px 8px;border-radius:999px;background:rgba(232,196,106,.22);color:#f3d58e}

/* one clean typeface everywhere */
html,body,button,input,select,textarea{font-family:"Rubik",system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
.logo{font-weight:800;letter-spacing:-.015em}
/* Google: white button, 4-colour G, dark grey text (Google sign-in branding) */
.eb-google{background:#fff;color:#1f1f1f;border-color:#747775;font-weight:600}
.eb-google svg{width:22px;height:22px}
.eb-google .soon{background:linear-gradient(180deg,#f3d58e,#c99c45);color:#21160a}
.eb-fb{font-weight:600}
.eb-email{background:rgba(255,255,255,.06);color:#f3f5f7;border-color:rgba(255,255,255,.28);font-weight:600}
.en-acts .eb:not(.eb-guest){min-height:52px;font-size:16px}
.ebox{text-align:start}
.ebox h2,.ebox>.cnote{text-align:center}
.ef{display:flex;flex-direction:column;gap:6px;margin:0 0 12px;font-size:13px;font-weight:600;color:rgba(243,245,247,.75)}
.ef input{font-size:17px;padding:13px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.22);background:#0e1013;color:#fff;outline:none;user-select:text;-webkit-user-select:text;touch-action:auto}
.ef input:focus{border-color:#e8c46a;box-shadow:0 0 0 3px rgba(232,196,106,.25)}
.emsg{min-height:20px;margin:0 0 6px;font-size:13.5px;line-height:1.45;color:#f3d58e;text-align:center}
.ebox .eb-guest{min-height:54px;font-size:17px}
.ebox .btn{margin-top:8px}
@media (orientation:landscape) and (max-height:540px){
 .en-acts .eb:not(.eb-guest){min-height:44px;font-size:15px}
 .en-acts{gap:7px}.en-or{margin:0}.en-note{margin-top:2px}
 .ebox .cnote{display:none}.ef{margin-bottom:8px}.ef input{padding:10px 12px}
}

.pav{position:relative}.pav img.hpic{position:absolute;inset:0;transform:scale(1.9);transform-origin:50% 44%}
