/* The simple helper (index.html): five screens, one thing to read and one
   to do on each, as in docs/site/ours-helper-simple.html. */
.simple main.one{display:block;width:100%;max-width:440px;margin:0 auto;padding:6px 16px 10px}
.simple .card{background:var(--surf);border-radius:24px;padding:22px 20px 20px;box-shadow:0 18px 40px rgba(20,30,28,.08);display:flex;flex-direction:column;align-items:center;text-align:center}
.simple .card>div{width:100%;display:flex;flex-direction:column;align-items:center}
.simple .card>div[hidden]{display:none}
.simple h1{font-size:24px;letter-spacing:-.5px;line-height:1.2;margin:2px 0 14px}
.dots{display:flex;align-items:center;gap:6px;list-style:none;margin:0 0 14px;padding:0}
.dots li{width:26px;height:26px;border-radius:13px;background:var(--line);color:var(--soft);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.dots li.bar{width:28px;height:2px;border-radius:1px}
.dots li.on{background:var(--green);color:#fff}.dots li.done{background:var(--chosen);color:var(--green)}
.simple form{width:100%}
.simple input[type=email],.simple input[type=password]{width:100%;min-height:50px;border-radius:14px;border:1.5px solid var(--line);background:var(--bg);padding:12px 14px;font-size:16px;margin-bottom:8px}
.go{width:100%;min-height:52px;border-radius:14px;border:0;background:var(--ink);color:var(--bg);font-weight:800;font-size:16px;margin-top:6px}
.quiet{border:0;background:none;color:var(--green);font-weight:700;font-size:15px;margin-top:10px;padding:8px}
.line{font-size:14.5px;color:var(--soft);margin:12px 0 0;max-width:340px}
.line.small{font-size:13px}
.note{width:100%;background:var(--warn);color:var(--warnink);border-radius:14px;padding:12px 14px;font-weight:600;font-size:15px;margin:0 0 12px;text-align:left}
.found{display:flex;gap:10px;width:100%}
.found div{flex:1;background:var(--chosen);border-radius:16px;padding:12px}
.found b{display:block;font-size:32px;letter-spacing:-.8px;line-height:1.15}
.found span{font-size:13px;font-weight:700;color:var(--soft)}
.kids{list-style:none;margin:12px 0;padding:0;width:100%}
.kids li{display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;font-weight:600;margin:4px 0}
.ring{position:relative;width:160px;height:160px;margin:4px 0}
.ring svg{width:160px;height:160px;transform:rotate(-90deg)}
.ring circle{fill:none;stroke-width:12}.ring .track{stroke:var(--line)}
.ring .fill{stroke:var(--green);stroke-linecap:round;stroke-dasharray:0 314.16;transition:stroke-dasharray .4s ease}
.ring-n{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ring-n b{font-size:36px;letter-spacing:-1px;line-height:1}.ring-n span{font-size:13px;color:var(--soft);font-weight:700}
.file{display:flex;align-items:center;gap:12px;width:100%;background:var(--bg);border-radius:16px;padding:12px;text-align:left}
.file i{width:50px;height:50px;border-radius:12px;background:var(--ink);color:var(--bg);font-style:normal;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;flex:none}
.file b{display:block;font-size:14px;word-break:break-all}.file span{font-size:13px;color:var(--soft)}
.parts{list-style:none;padding:0;margin:10px 0 0;width:100%;display:flex;flex-direction:column;gap:6px}
.parts a{display:block;background:var(--bg);border-radius:12px;padding:10px 12px;font-weight:700;text-decoration:none}
.next3{display:flex;gap:8px;width:100%;margin:12px 0 6px}
.next3 div{flex:1;background:var(--chosen);border-radius:14px;padding:10px;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:13px;font-weight:700}
.play{display:flex;flex-direction:column;align-items:center;gap:6px;margin:6px 0}
.play img{display:block;height:59px;width:auto;margin:-9.5px -9px}
.next3 b{font-size:24px;color:var(--green);line-height:40px}
.who{display:flex;align-items:center;gap:12px;margin:4px 0 8px;font-size:15px;font-weight:600;text-align:left}
.who svg{flex:none}
.spin{width:44px;height:44px;border-radius:50%;border:5px solid var(--line);border-top-color:var(--green);margin:10px 0 16px;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.spin{animation:none}.ring .fill{transition:none}}
.parts .part{width:100%;min-height:46px;border:0;border-radius:12px;background:var(--ink);color:var(--bg);font-weight:800;font-size:15px}
.simple h1:focus{outline:none}

/* 2026-10-15: Chrome's own question and panel, drawn, with what to tap ringed,
   and an arrow to where each appears in the browser's top bar. */
.guide{width:100%;margin:12px 0 4px}
.guide figcaption{margin:8px auto 0}
.cbubble{display:flex;flex-direction:column;gap:6px;text-align:left;background:#fff;color:#1f1f1f;border-radius:12px;box-shadow:0 6px 24px rgba(0,0,0,.18);padding:14px 16px;font-size:13.5px;max-width:320px;margin:0 auto}
.cbubble b{font-size:15px}
.crow{display:flex;align-items:center;gap:8px;color:#444}
.cbtns{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}
.cbtns i{font-style:normal;background:#d3e3fd;color:#041e49;border-radius:16px;padding:7px 16px;font-weight:600}
.cradio{display:flex;align-items:flex-start;gap:8px;color:#444;border-radius:8px;padding:2px}
.cradio .dot{flex:none;width:14px;height:14px;border-radius:50%;border:2px solid #444;margin-top:2px}
.cradio .dot.on{border-color:#0b57d0;box-shadow:inset 0 0 0 3px #fff;background:#0b57d0}
.cicon{color:#444}
.hit{outline:3px solid var(--green);outline-offset:3px;animation:hit 1.6s ease-in-out infinite}
@keyframes hit{50%{outline-color:transparent}}
.arrow{position:fixed;top:4px;z-index:9;display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--green);animation:nudge 1.2s ease-in-out infinite}
.arrow span{background:var(--green);color:var(--surf);border-radius:999px;padding:7px 14px;font-weight:800;font-size:13.5px;white-space:nowrap;box-shadow:0 8px 20px rgba(20,30,28,.14)}
.arrow.left{left:260px}.arrow.right{right:150px}.arrow.far-right{right:24px}
.arrow.centre{left:0;right:0;margin:0 auto;width:max-content}
.safari{font-family:-apple-system,"SF Pro Text","Helvetica Neue",sans-serif;text-align:center;align-items:center}
.sgrey{color:#6e6e73;font-size:12.5px}
.sbtns{justify-content:center}.sbtns i{background:#e8e8ed;color:#1d1d1f;border-radius:7px;padding:5px 18px;font-weight:500}.sbtns i.allow{background:#0a84ff;color:#fff}
.srow{display:flex;gap:10px;width:100%;text-align:left;align-items:center}
.spane{background:#0a84ff;color:#fff;border-radius:6px;padding:3px 10px;font-weight:600}
.sval{flex:1;display:flex;justify-content:space-between;align-items:center;gap:8px;color:#1d1d1f}
.ssel{font-style:normal;background:#fff;border:1px solid #c7c7cc;border-radius:6px;padding:2px 10px}
.frow{display:flex;align-items:center;gap:10px;color:#15141a}.frow>span{display:flex;flex-direction:column;line-height:1.3}.frow b{font-size:13.5px}
.cradio .box{flex:none;width:14px;height:14px;border-radius:3px;border:2px solid #444;margin-top:2px}
@keyframes nudge{50%{transform:translateY(-6px)}}
@media (prefers-reduced-motion:reduce){.hit,.arrow{animation:none}}
.simple .go:disabled{opacity:.45;cursor:not-allowed}

/* 2026-10-15: Send to your phone. The code sits on white so any camera reads
   it; a found phone gets a soft green glow; arrival gets one small hop. */
.go.soft{background:var(--chosen);color:var(--ink)}
.go.link{display:flex;align-items:center;justify-content:center;text-decoration:none}
.send{width:100%;display:flex;flex-direction:column;align-items:center;margin-top:12px;padding:16px 14px 6px;border-radius:18px;background:var(--bg)}
.send .qr{width:184px;min-height:24px;display:flex;justify-content:center;transition:transform .35s ease,filter .35s ease}
.send .qr svg{width:184px;height:auto;border-radius:12px}
.send.ready .qr{animation:qr-in .45s cubic-bezier(.2,.9,.3,1.2)}
.send.found .qr{filter:drop-shadow(0 0 14px color-mix(in srgb,var(--green) 55%,transparent))}
.send.done .qr svg{width:72px;animation:hop .9s cubic-bezier(.3,1.6,.5,1) 1}
.bar-track{width:100%;height:8px;border-radius:4px;background:var(--line);overflow:hidden;margin-top:12px}
.bar-track i{display:block;height:100%;width:0;background:var(--green);border-radius:4px;transition:width .3s ease}
@keyframes qr-in{from{transform:scale(.86);opacity:0}to{transform:none;opacity:1}}
@keyframes hop{0%{transform:translateY(0)}35%{transform:translateY(-14px) rotate(-4deg)}60%{transform:translateY(0)}78%{transform:translateY(-5px)}100%{transform:none}}
.hop{display:flex;justify-content:center;margin-bottom:4px}.hop svg{animation:hop .9s cubic-bezier(.3,1.6,.5,1) .2s 1 both}
.code-in{text-align:center;font-size:22px!important;font-weight:800;letter-spacing:2px;text-transform:uppercase}
.get-ours{width:100%;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:center}
.get-ours .line{margin:0 0 6px}
.sc-open{display:flex;justify-content:center;align-items:center;min-height:44px;color:var(--ink);font-weight:800;font-size:16px;text-decoration:underline;text-underline-offset:3px}
.stores{margin:2px 0 0;font-size:14px;color:var(--soft);text-align:center}
@media (prefers-reduced-motion:reduce){.send .qr,.send.ready .qr,.send.done .qr svg,.hop svg{animation:none;transition:none}}

/* 2026-10-15: A look at Ours (showcase.js). Beside the card on wide screens,
   under it on narrow ones. Never above the card's own guidance. */
.showcase{width:100%;max-width:440px;margin:4px auto 0;padding:0 16px 8px;display:flex;flex-direction:column;align-items:center;position:relative;transition:opacity .4s ease,filter .4s ease}
.showcase.quiet{opacity:.45;filter:saturate(.6)}
.sc-eyebrow{font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--green);margin:0 0 10px}
.sc-stage{position:relative;width:100%;height:478px;animation:sc-float 7s ease-in-out infinite}
.sc-slide{position:absolute;inset:0;margin:0;display:flex;flex-direction:column;align-items:center;opacity:0;transform:translateY(10px) scale(.98);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.8,.3,1)}
.sc-slide.on{opacity:1;transform:none}.sc-slide.out{opacity:0;transform:translateY(-6px) scale(.99)}
.sc-frame{width:224px;max-height:380px;flex:none;border-radius:30px;overflow:hidden;background:var(--surf);box-shadow:0 22px 44px rgba(20,30,28,.16),0 0 0 6px var(--surf)}
.sc-frame img{width:100%;height:auto;display:block}
.sc-slide figcaption{text-align:center;margin-top:auto;max-width:290px;min-height:78px}
.sc-slide figcaption b{display:block;font-size:17px;letter-spacing:-.2px}
.sc-slide figcaption span{display:block;font-size:14px;color:var(--soft);line-height:1.45;margin-top:2px}
.sc-cub{position:absolute;top:44px;right:calc(50% - 150px);transform-origin:50% 100%}
.sc-cub.hop{animation:hop .9s cubic-bezier(.3,1.6,.5,1) 1}
.sc-dots{display:flex;gap:6px;margin:6px 0 14px}
.sc-dots button{width:8px;height:8px;padding:0;border:0;border-radius:4px;background:var(--line);transition:width .3s ease,background .3s ease}
.sc-dots button[aria-current="true"]{width:22px;background:var(--green)}
.sc-get{width:100%;max-width:300px}
@keyframes sc-float{50%{transform:translateY(-6px)}}
.store-badges{display:flex;gap:10px;justify-content:center;margin-top:6px}
.store-badges a{display:inline-block}.store-badges img{display:block}.store-badges img[src$="google-play-badge.png"]{height:59px;width:auto;margin:-9.5px -9px}
/* Wide: a column of its own beside the centred card, below the top bar. */
@media (min-width:1200px){
  .showcase{position:fixed;top:96px;left:calc(50% + 250px);width:320px;margin:0;padding:0}
}
@media (max-width:1199px){.sc-stage{height:478px}}
@media (prefers-reduced-motion:reduce){.sc-stage,.sc-cub.hop.sc-slide{transition:none}}
/* The top bar's label steps aside while an arrow points up there. */
body.guiding .header-label{visibility:hidden}
/* Item 17: the optional spreadsheet step, a quiet text link on its line. */
.textlink{border:0;background:none;padding:6px 0;min-height:44px;color:var(--green);font-weight:700;font-size:inherit;text-decoration:underline;cursor:pointer}
