/* Phone page: light body, dark ALTYCA header. Single look on purpose. */
:root{
  color-scheme:light;
  --bg:#F2F3F5;--card:#fff;--ink:#232930;--ink-2:#495159;--line:#CBD0D6;
  --green:#00CC99;--green-d:#009C76;--mint-soft:#DCFCE7;--pink:#F84AA7;
  --display:"Manrope",Arial,ui-sans-serif,system-ui,sans-serif;
  --body:"Figtree",Arial,ui-sans-serif,system-ui,sans-serif;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0}
body{background:var(--bg);color:var(--ink);font:16px/1.5 var(--body);min-height:100vh;padding-bottom:env(safe-area-inset-bottom,0px)}
.hd{position:relative;background:var(--ink);color:#fff;padding:calc(env(safe-area-inset-top,0px) + 16px) 20px 16px;overflow:hidden}
.rauten{position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='20'%3E%3Cpath d='M16 0L32 10 16 20 0 10Z' fill='%2300CC99' fill-opacity='.18'/%3E%3C/svg%3E");background-size:32px 20px;-webkit-mask-image:linear-gradient(90deg,transparent,#000);mask-image:linear-gradient(90deg,transparent,#000)}
.brand{position:relative;font:800 18px var(--display);display:flex;align-items:center;gap:10px}
.brand i{width:12px;height:12px;background:var(--green);transform:rotate(45deg);border-radius:2px}
.brand span{font-weight:600;font-size:14px;color:#A9F7C0}
main{max-width:440px;margin:0 auto;padding:22px 20px 40px}
.step{display:flex;flex-direction:column;gap:14px}
h1,h2,h3{font-family:var(--display);margin:0;text-wrap:balance}
h1{font-size:30px;line-height:1.1;font-weight:800}
h2{font-size:24px;line-height:1.15;font-weight:800}
h3{font-size:16px;margin-top:6px}
p{margin:0}
.muted{color:var(--ink-2)}
.small{font-size:13px}
.center{text-align:center}
.sr{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.cta{font:700 17px var(--display);background:var(--green);color:var(--ink);border:0;border-radius:14px;padding:15px;cursor:pointer;width:100%;margin-top:4px}
.cta:disabled{opacity:.45;cursor:default}
.cta:focus-visible,.link:focus-visible{outline:3px solid var(--pink);outline-offset:2px}
.link{background:none;border:0;color:var(--ink-2);font:600 15px var(--body);padding:6px;cursor:pointer;text-decoration:underline}
.err{background:#FEE0F0;color:#9B1460;border-radius:10px;padding:10px 12px;font-size:14px}
.ok{color:var(--green-d);font-weight:700}
.sample{width:58%;max-width:220px;margin:4px auto}
.sample svg,.result svg{width:100%;height:auto;display:block;filter:drop-shadow(0 16px 24px rgba(35,41,48,.3))}

.viewfinder{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:3/4;max-width:100%;border-radius:20px;background:#2C333B;overflow:hidden;cursor:pointer}
.viewfinder img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.oval{width:58%;aspect-ratio:3/4;border:3px dashed #A9F7C0;border-radius:50%;position:relative}
.oval svg{position:absolute;left:10%;top:8%;width:80%}
.vf-hint{position:absolute;left:0;right:0;bottom:14px;text-align:center;color:#fff;font-weight:600;text-shadow:0 1px 4px rgba(0,0,0,.6)}

.field label{display:block;font-size:13px;font-weight:600;color:var(--ink-2);margin-bottom:4px}
.field input{width:100%;font:500 17px var(--body);color:var(--ink);background:var(--card);border:1.5px solid var(--line);border-radius:12px;padding:12px}
.field input:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px var(--mint-soft)}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--ink-2)}
.consent input{width:22px;height:22px;accent-color:var(--green);flex:none;margin:1px 0 0}

.levels{display:flex;flex-direction:column;gap:8px}
.levels label{display:flex;gap:12px;align-items:center;background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:11px 14px;font-weight:500;cursor:pointer}
.levels label b{font-family:var(--display);color:var(--green-d);width:26px;flex:none}
.levels input,.chips input{position:absolute;opacity:0;pointer-events:none}
.levels label:has(input:checked){border-color:var(--green);background:var(--mint-soft)}
.levels label:has(input:focus-visible),.chips label:has(input:focus-visible){outline:3px solid var(--pink)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{border:1.5px solid var(--line);background:var(--card);border-radius:999px;padding:7px 14px;font-size:14px;font-weight:600;cursor:pointer;position:relative}
.chips label:has(input:checked){background:var(--ink);color:#fff;border-color:var(--ink)}

.working{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;padding:60px 0}
.spin{display:flex;gap:10px}
.spin i{width:18px;height:18px;background:var(--green);transform:rotate(45deg);border-radius:3px;animation:hop 1s ease-in-out infinite}
.spin i:nth-child(2){animation-delay:.15s;background:#A9F7C0}.spin i:nth-child(3){animation-delay:.3s;background:var(--pink)}
@keyframes hop{0%,100%{transform:rotate(45deg) translateY(0)}50%{transform:rotate(45deg) translate(-8px,-8px)}}
.result{width:72%;max-width:260px;margin:0 auto}
.offer{background:var(--ink);color:#fff;border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.offer small{font:700 11px var(--display);letter-spacing:.12em;text-transform:uppercase;color:#A9F7C0}
.offer b{font:800 18px var(--display)}
.offer span{font-size:14px;color:#CBD0D6}
.offer em{font-style:normal;font:700 15px var(--display);color:#A9F7C0;margin-top:4px}
@media (prefers-reduced-motion:reduce){.spin i{animation:none}}

.opt{font-weight:400;color:var(--ink-2)}
.field textarea{width:100%;font:500 16px var(--body);color:var(--ink);background:var(--card);border:1.5px solid var(--line);border-radius:12px;padding:10px 12px;resize:vertical}
.field textarea:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px var(--mint-soft)}
.cta.dark{background:var(--ink);color:#fff}
.style-row{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap}
.seg{display:inline-flex;border:1.5px solid var(--line);border-radius:999px;overflow:hidden;background:var(--card)}
.seg label{position:relative;padding:8px 14px;font-size:14px;font-weight:600;cursor:pointer}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg label:has(input:checked){background:var(--ink);color:#fff}
.seg label:has(input:focus-visible){outline:3px solid var(--pink)}
.ghost{font:700 14px var(--display);background:var(--card);color:var(--ink);border:1.5px solid var(--ink);border-radius:999px;padding:8px 16px;cursor:pointer}
.ghost:disabled{opacity:.4;cursor:default}
.ghost:focus-visible{outline:3px solid var(--pink);outline-offset:2px}

.brezel-box{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;margin-top:18px;padding-top:18px;border-top:1.5px dashed var(--line)}
.brezel-btn{width:116px;height:116px;border-radius:50%;border:0;background:#FFF1D6;box-shadow:0 10px 24px -10px rgba(154,91,38,.6);cursor:pointer;padding:16px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .08s}
.brezel-btn:active{transform:scale(.9) rotate(-8deg)}
.brezel-btn:focus-visible{outline:3px solid var(--pink);outline-offset:3px}
.brezel-btn svg{width:100%;height:100%;display:block}
