/* Losowanie prezentów w rodzinie (/losowanie-prezentow/). Jasny papier, akcenty wosku i złota. */
#v-los{display:grid;gap:22px;padding-top:18px;max-width:820px;margin:0 auto}
.ls-head{text-align:center;display:grid;gap:10px;justify-items:center;padding-top:6px}
.ls-head h1{font-size:clamp(32px,6.4vw,54px);line-height:1.05;color:#1d1a44}
.ls-lead{max-width:600px;color:#47426e;font-size:17px}
.ls-lead b{color:var(--accent)}

.ls-card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:clamp(18px,4.5vw,34px);box-shadow:0 1px 0 #fff inset,0 30px 60px -36px #7a5a1f66;display:grid;gap:16px;min-width:0}
.ls-card h2{font-size:clamp(24px,4.6vw,32px);line-height:1.1;color:#1d1a44}
.ls-card h3{font-family:var(--f-body);font-weight:900;font-size:16px;color:#1d1a44}
.ls-step{display:flex;align-items:center;gap:12px;margin-top:6px}
.ls-step b{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,#ef5663,var(--wax) 60%,#8c1420);color:#fff;font-weight:900;box-shadow:0 6px 14px -6px #b01f2c}
.ls-step h2{font-size:clamp(22px,4.2vw,28px)}

.ls-regions{display:flex;flex-wrap:wrap;gap:8px}
.ls-reg{border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;min-height:44px;font-weight:800;font-size:15px;color:#3a365f;cursor:pointer;transition:background .15s,border-color .15s}
.ls-reg:hover{border-color:var(--gold-2)}
.ls-reg[aria-checked=true]{background:#1d1a44;border-color:#1d1a44;color:#fff;box-shadow:0 8px 18px -10px #1d1a44}
.ls-tip{background:#fff7e3;border:1px dashed #e0c48a;border-radius:16px;padding:12px 14px;color:#47426e;font-size:15px}
.ls-tip b{color:#1d1a44}

.ls-row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:560px){.ls-row2{grid-template-columns:1fr}}
.ls-f{display:grid;gap:6px;min-width:0}
.ls-f>span:first-child{font-weight:800;font-size:14px;color:#3a365f}
.ls-f small{font-weight:600;color:#7a7598}
#v-los input[type=text],#v-los input[type=date],#v-los select,#v-los textarea{width:100%;min-width:0;font:inherit;font-size:16px;color:#1d1a44;background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:11px 13px;min-height:50px}
#v-los select{appearance:none;-webkit-appearance:none;padding-right:38px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%23b01f2c' stroke-width='2' fill='none'/%3E%3C/svg%3E") right 14px center no-repeat}
#v-los textarea{resize:vertical;min-height:84px;line-height:1.45}
#v-los input:focus,#v-los select:focus,#v-los textarea:focus{outline:0;border-color:var(--gold-2);box-shadow:0 0 0 4px #f1c96b44}
.ls-zl{position:relative;display:block}
.ls-zl i{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-style:normal;font-weight:800;color:#7a7598}
.ls-check{display:flex;gap:10px;align-items:center;font-weight:700;color:#3a365f;cursor:pointer;min-height:44px}
.ls-check input{width:22px;height:22px;accent-color:var(--wax)}

.ls-modes{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:560px){.ls-modes{grid-template-columns:1fr}}
.ls-mode{text-align:left;display:grid;gap:4px;border:1.5px solid var(--line);background:#fff;border-radius:18px;padding:14px 16px;cursor:pointer;color:#3a365f}
.ls-mode b{color:#1d1a44;font-size:16px}
.ls-mode small{font-size:13.5px;line-height:1.4;color:#6a6590}
.ls-mode[aria-selected=true]{border-color:var(--wax);background:#fff6f4;box-shadow:0 0 0 3px #b01f2c22}
.ls-panel{display:grid;gap:14px}
.ls-panel .btn,.ls-actions .btn,.ls-mine .btn{width:100%}
.ls-small{font-size:13.5px;color:#7a7598;text-align:center}
.ls-err{color:var(--wax);font-weight:800;text-align:center;min-height:0}
.ls-err:empty{display:none}
.btn.busy{opacity:.6;pointer-events:none}
.btn[disabled]{opacity:.55;cursor:default;box-shadow:none}
.jasny #v-los .btn-ghost{background:#fff;border:1.5px solid var(--line);color:#1d1a44}

.ls-add{display:flex;gap:8px;min-width:0}
.ls-add input{flex:1}
.ls-add .btn{flex:none;min-height:50px;padding:10px 18px}
.ls-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ls-chips:empty{display:none}
.ls-chips li{display:flex;align-items:center;gap:4px;background:#1d1a44;color:#fff;border-radius:999px;padding:4px 4px 4px 14px;font-weight:800}
.ls-x{border:0;background:transparent;cursor:pointer;width:36px;height:36px;border-radius:50%;font-size:22px;line-height:1;color:inherit;opacity:.7;flex:none}
.ls-x:hover{opacity:1;background:#ffffff22}

.ls-ex,.ls-more{border:1.5px solid var(--line);border-radius:16px;background:#fffdf8;padding:0 14px}
.ls-ex summary,.ls-more summary{cursor:pointer;font-weight:800;color:#1d1a44;padding:13px 0 13px 24px;list-style:none;position:relative}
.ls-ex summary::-webkit-details-marker,.ls-more summary::-webkit-details-marker{display:none}
.ls-ex summary::before,.ls-more summary::before{content:"+";color:var(--wax);font-size:20px;line-height:1;position:absolute;left:0;top:14px}
.ls-ex[open] summary::before,.ls-more[open] summary::before{content:"−"}
.ls-ex summary small{display:block;font-weight:600;color:#7a7598}
.ls-exbox,.ls-more>*:not(summary){margin-bottom:14px}
.ls-more{display:grid}
.ls-more>:not(summary){margin-bottom:12px}
.ls-pairs{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:6px}
.ls-pairs li{display:flex;justify-content:space-between;align-items:center;background:#f6eedc;border-radius:12px;padding:2px 2px 2px 12px;font-weight:700;color:#1d1a44}
.ls-pairs .ls-x:hover{background:#0000000d}
.ls-pairadd{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}
.ls-pairadd span{color:var(--wax);font-weight:900}
.ls-pairadd .btn{grid-column:1/-1;min-height:46px}

.ls-top{display:grid;gap:6px;text-align:center;justify-items:center}
.ls-meta{color:#6a6590;font-weight:700;font-size:14.5px}
.ls-meta:empty{display:none}
.ls-share{background:#1d1a44;color:#e9e8ff;border-radius:18px;padding:16px;display:grid;gap:10px}
.ls-share b{color:#fff}
.ls-linkbox{display:flex;gap:8px;min-width:0}
.ls-linkbox input{flex:1;font-size:14px!important;min-height:48px!important}
.ls-linkbox .btn{flex:none;min-height:48px;padding:10px 18px}
@media (max-width:420px){.ls-linkbox{flex-direction:column}.ls-linkbox .btn{width:100%}}
.ls-people{display:grid;gap:10px}
.ls-ph{display:flex;justify-content:space-between;align-items:baseline}
.ls-plist{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.ls-plist li{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:4px 4px 4px 14px;min-height:46px}
.ls-plist li b{flex:1;color:#1d1a44;min-width:0;overflow-wrap:anywhere}
.ls-plist .ls-x{color:#7a7598}
.ls-plist .ls-x:hover{background:#0000000d}
.ls-plist .ls-link{padding:8px 10px}
.ls-empty{justify-content:center;color:#7a7598;font-weight:700;padding:12px!important}
.ls-st{font-style:normal;font-size:12.5px;font-weight:800;color:#7a7598;white-space:nowrap}
.ls-st.ok{color:#2f7a45}
.ls-link{border:0;background:none;color:var(--wax);font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:6px;justify-self:center}
.ls-danger{color:#8c1420}
.ls-newlink{background:#fff7e3;border:1px solid #e0c48a;border-radius:16px;padding:14px;display:grid;gap:10px;color:#3a365f;font-size:15px}
.ls-actions{display:grid;gap:8px}
.ls-ok{background:#eaf6ec;border:1px solid #b9dfc2;color:#24592f;border-radius:14px;padding:12px 14px;font-weight:800;text-align:center}
.ls-back{background:#fff7e3;border-radius:14px;padding:10px 14px;text-align:center;font-weight:700;color:#3a365f}

.ls-hi{font-size:20px;color:#1d1a44;text-align:center}
#ls-wait{display:grid;gap:12px;text-align:center;color:#47426e}
#ls-wait .btn{justify-self:center}
#ls-gift{display:grid;justify-items:center}
.ls-box{border:0;background:none;cursor:pointer;display:grid;justify-items:center;gap:8px;padding:10px;color:#1d1a44;font-weight:900}
.ls-box svg{width:150px;height:150px;filter:drop-shadow(0 18px 20px #7a5a1f55);animation:ls-wob 2.4s ease-in-out infinite}
.ls-box .ls-lid{transition:transform .6s cubic-bezier(.3,1.6,.5,1);transform-origin:60px 40px}
.ls-box.opening .ls-lid{transform:translateY(-34px) rotate(-14deg)}
.ls-box.opening svg{animation:none}
@keyframes ls-wob{0%,100%{transform:rotate(0)}8%{transform:rotate(-5deg)}16%{transform:rotate(5deg)}24%{transform:rotate(0)}}
@media (prefers-reduced-motion:reduce){.ls-box svg{animation:none}}
.ls-result{text-align:center;display:grid;gap:10px;justify-items:center;width:100%;animation:ls-in .5s ease both}
@keyframes ls-in{from{opacity:0;transform:translateY(10px) scale(.98)}}
.ls-role{font-weight:800;color:#47426e;font-size:17px;max-width:30ch}
.ls-who{font-size:clamp(54px,14vw,84px);line-height:1.05;color:var(--wax);overflow-wrap:anywhere;padding:0 6px}
.ls-wish{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;text-align:left;width:100%;color:#3a365f;display:grid;gap:4px}
.ls-wish b{color:#1d1a44}
.ls-hush{font-size:13.5px;color:#7a7598}
#ls-mywish-f{display:grid;gap:10px}
.ls-tradition{border-top:1px dashed #e0c48a;padding-top:14px;display:grid;gap:6px;text-align:center;color:#47426e}

.ls-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:10px}
.ls-nm{border:1.5px solid var(--line);background:#fff;border-radius:18px;min-height:64px;padding:10px;font-weight:900;font-size:17px;color:#1d1a44;cursor:pointer;display:grid;place-items:center;gap:2px;overflow-wrap:anywhere;box-shadow:0 10px 20px -16px #7a5a1f}
.ls-nm:hover:not(:disabled){border-color:var(--wax)}
.ls-nm.done{background:#f3ecdc;color:#9b95b5;box-shadow:none}
.ls-nm small{font-size:12px;font-weight:800;color:#2f7a45}
.ls-peek{display:grid;gap:14px;justify-items:center;text-align:center;padding:10px 0}
.ls-q{font-size:22px;color:#1d1a44}
.ls-q small{font-size:14px;color:#7a7598}
.ls-q:empty{display:none}
.ls-peek .btn{min-width:240px}
.ls-done{text-align:center;font-family:var(--f-display);font-size:24px;color:#2f7a45}

.ls-kids{display:grid;grid-template-columns:minmax(0,300px) 1fr;gap:20px;align-items:center;background:radial-gradient(120% 90% at 50% 0,#2a2f78,#0d1440 70%);color:#e9e8ff;border-radius:24px;padding:18px;box-shadow:0 30px 60px -36px #0b1236}
.ls-kids img{width:100%;height:auto;border-radius:16px;aspect-ratio:16/9;object-fit:cover}
.ls-kids>div{display:grid;gap:8px}
.ls-kids h3{font-size:clamp(22px,4vw,28px);line-height:1.12;color:#fff}
.ls-kids p{color:#c9d0f5;font-size:15px}
.jasny .ls-kids .eyebrow{color:var(--gold)}
.ls-kbtn{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.ls-kbtn .btn{flex:1 1 200px;min-height:48px;padding:12px 16px;font-size:15px}
.jasny .ls-kids .btn-ghost{background:#ffffff14;border:1px solid #ffffff33;color:#fff}
@media (max-width:640px){.ls-kids{grid-template-columns:1fr}}

.ls-trads{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.ls-tr{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:18px;display:grid;gap:8px;align-content:start;box-shadow:0 20px 40px -32px #7a5a1f88;transition:box-shadow .2s,border-color .2s}
.ls-tr.on{border-color:var(--wax);box-shadow:0 0 0 3px #b01f2c22,0 20px 40px -32px #7a5a1f88}
.ls-tr h3{font-size:20px;line-height:1.15;color:#1d1a44}
.ls-g{font-size:14.5px;color:#47426e}
.ls-g b{color:var(--wax)}
.ls-tr ul{margin:0;padding-left:18px;display:grid;gap:6px;color:#3a365f;font-size:14.5px}

/* Szybkie wysyłanie linku */
.ls-quick{display:flex;flex-wrap:wrap;gap:8px}
.ls-qb{flex:1 1 90px;display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:999px;border:1px solid #ffffff33;background:#ffffff12;color:#fff!important;font:inherit;font-weight:800;font-size:14px;text-decoration:none;cursor:pointer;padding:8px 12px}
.ls-qb:hover{background:#ffffff22}

/* Licznik dni, kalendarz */
.ls-count{display:inline-block;background:#1d1a44;color:#f1c96b;border-radius:999px;padding:6px 14px;font-weight:900;font-size:14px;margin-top:2px}
.ls-ics{width:100%;min-height:48px;font-size:15px}

/* Anonimowe pytania */
.ls-ask,.ls-inbox,.ls-ideas{width:100%;text-align:left;display:grid;gap:10px;background:#fffdf8;border:1.5px solid var(--line);border-radius:18px;padding:16px}
.ls-inbox{background:#fff7e3;border-color:#e0c48a}
.ls-ask .ls-small{text-align:left}
.ls-qa,#ls-inbox-l{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ls-qa:empty{display:none}
.ls-qa li,#ls-inbox-l li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 12px;display:grid;gap:6px}
.ls-qa .q,#ls-inbox-l .q{font-weight:800;color:#1d1a44;overflow-wrap:anywhere}
.ls-qa .a,#ls-inbox-l .a{color:#47426e;font-size:14.5px;overflow-wrap:anywhere}
.ls-askf{display:grid;gap:8px}
.ls-askf .btn{width:100%;min-height:46px}
.ls-ideas ul{margin:0;padding-left:20px;display:grid;gap:4px;color:#3a365f}
