/* The home page's start box (partials/start-box, public/js/start-box.js): "What would you like to do?", then
   one card at a time in the same box (.prompt in app.css), the quick starts under it. Loaded after app.css,
   whose tokens it uses. */

.start{display:flex;flex-direction:column;align-items:center;width:100%}
/* Scrolled to with each card, clear of the sticky header. */
.start-box{gap:12px;scroll-margin:96px 0 24px}
/* The form's file field for a website's screenshots: opened by the card's button, never seen itself. */
.start-files{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);opacity:0}

/* A start that came back with a problem */
.start-problems{width:100%;max-width:880px;margin-top:28px;padding:14px 16px;border:1px solid #E8C4BC;border-radius:14px;background:#FCEDEA;color:#7A1F12;font-size:15px;text-align:left}
.start-problems p{margin:0;font-weight:650}
.start-problems ul{margin:6px 0 0;padding-left:20px}
.start-problems~.start-box{margin-top:16px}

/* What the visitor asked, above the cards */
.start-said{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line-soft);color:var(--muted);font-size:14.5px}
.start-said p{display:-webkit-box;margin:0;min-width:0;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}
.start-said-label{font-weight:600}
.start-said-text{color:var(--ink)}
.start-link{flex:none;padding:4px 2px;border:0;background:none;color:var(--accent-hover);font:600 14px/1.3 var(--body);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;cursor:pointer}
.start-link:hover{text-decoration-color:currentColor}

/* A card */
.start-card{display:flex;flex-direction:column;gap:18px;padding-top:4px;border-radius:12px;animation:start-in .28s ease}
.start-card:focus{outline:none}
.start-card:focus-visible{outline:2px solid var(--accent);outline-offset:6px}
@keyframes start-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.start-q{display:flex;flex-direction:column;gap:12px;min-width:0;margin:0;padding:0;border:0}
.start-q>legend{float:left;width:100%;margin:0 0 12px;padding:0}
.start-q>legend+*{clear:both}
.prompt .start-title{margin:0;color:var(--ink);font:500 clamp(21px,2.6vw,26px)/1.25 var(--display);letter-spacing:-.01em}
.start-optional{color:var(--subtle);font:400 15px/1 var(--body);letter-spacing:0}
.start-text{margin:0;color:var(--muted);font-size:16px;line-height:1.5}
.start-help{margin:0;color:var(--subtle);font-size:13.5px;line-height:1.45}
.start-help:empty{display:none}
.start-label{margin:0;color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.02em}

/* Choices: cards that answer at once */
.start-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;clear:both}
.start-choices.is-many{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.start-choice{display:flex;align-items:flex-start;gap:12px;width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--paper);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease,transform .15s ease}
.start-choice:hover{border-color:#CFC7B8;background:var(--surface);box-shadow:0 8px 20px rgba(26,26,23,.06);transform:translateY(-1px)}
.start-choice:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.start-choice[aria-pressed="true"]{border-color:var(--accent);background:var(--accent-soft)}
.start-choice .mega-icon{width:36px;height:36px;border-radius:10px}
.start-choice-body{display:flex;flex-direction:column;gap:4px;min-width:0}
.start-choice-body b{font-size:16px;font-weight:650;line-height:1.3}
.start-choice-body>span{color:var(--muted);font-size:14px;line-height:1.45}
.start-choice-note{color:var(--ok);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
/* What the visitor also asked for, and a suggested website: first, in the accent */
.start-choice.is-first{border-color:#F2CDB8}
.start-choice.is-first .start-choice-note{color:var(--accent-hover)}
.start-choice.is-soon{border-style:dashed;background:var(--surface);box-shadow:none;transform:none;cursor:default}
.start-choice.is-soon b,.start-choice.is-soon .start-choice-body>span,.start-choice.is-soon .start-choice-note{color:var(--subtle)}

/* Options, then Next */
.start-chips{display:flex;flex-wrap:wrap;gap:8px}
.start-chip{min-height:40px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);font:500 15px/1 var(--body);cursor:pointer;transition:border-color .15s ease,background-color .15s ease}
.start-chip:hover{border-color:#CFC7B8}
.start-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.start-chip[aria-pressed="true"]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-hover);font-weight:650}

/* Typed answers */
.prompt .start-input{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);font:400 18px/1.45 var(--body)}
.prompt .start-input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}
.prompt .start-input[aria-invalid="true"]{border-color:#C0392B}
.prompt .start-textarea{min-height:112px;resize:vertical}
.prompt select.start-input{max-width:420px;font-size:17px}
.start-extra{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.prompt .start-extra .start-input{font-size:16px}
/* A box to tick, such as confirming a site is theirs to move */
.prompt .start-check{display:flex;align-items:flex-start;gap:10px;margin-top:4px;color:var(--ink);font-size:15px;font-weight:400;line-height:1.45;letter-spacing:0;cursor:pointer}
.start-check input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:var(--accent)}
.start-check input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.start-check input[aria-invalid="true"]{outline:2px solid #C0392B;outline-offset:2px}
.start-files-box{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.start-files-add{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:1px dashed #CFC7B8;border-radius:12px;background:transparent;color:var(--ink);font:600 14.5px/1.2 var(--body);cursor:pointer}
.start-files-add:hover{background:var(--paper)}

/* The last card: what will start, and what it costs */
.start-summary{display:grid;margin:0;border-top:1px solid var(--line-soft)}
.start-summary>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:4px 16px;padding:10px 0;border-bottom:1px solid var(--line-soft)}
.start-summary dt{color:var(--subtle);font-size:14px;font-weight:600}
.start-summary dd{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-width:0;margin:0;font-size:15.5px}
.start-summary dd span{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow-wrap:anywhere}
.start-cost{margin:0;color:var(--muted);font-size:14.5px}
.start-line{margin:0;color:var(--muted);font-size:15px;line-height:1.5}
.start-after{margin:0;padding:10px 14px;border-radius:12px;background:var(--accent-soft);color:var(--accent-hover);font-size:14.5px;font-weight:600;line-height:1.45}
.start-limit{margin-top:14px}

/* Back, Skip, Next; an info card's buttons */
.start-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid var(--line-soft)}
.start-nav-end{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-left:auto}
.start-arrow{display:inline-flex}
.start-actions{display:flex;flex-wrap:wrap;gap:10px}

/* While PressUp works out where to start */
.start-thinking{flex-direction:row;align-items:center;gap:14px;padding:22px 0 14px;color:var(--muted);font-size:16px}
.start-thinking p{margin:0}
.start-dots{display:inline-flex;flex:none;gap:6px}
.start-dots i{width:9px;height:9px;border-radius:50%;background:var(--accent);animation:start-dot 1.2s ease-in-out infinite}
.start-dots i:nth-child(2){animation-delay:.15s}
.start-dots i:nth-child(3){animation-delay:.3s}
@keyframes start-dot{0%,80%,100%{opacity:.25;transform:scale(.8)}40%{opacity:1;transform:none}}

/* The quick starts under the box */
.start-quick{width:100%;max-width:880px;margin-top:22px}
.start-quick .examples-label{text-align:center}
.start-chips-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0;padding:0;list-style:none}
.start-quick-chip{font:600 15px/1.2 var(--body);cursor:pointer}
.start-quick-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

@media (max-width:640px){
  .start-choices,.start-choices.is-many{grid-template-columns:1fr}
  .start-summary>div{grid-template-columns:1fr}
  .start-chips-row{gap:8px}
  .start-quick-chip{gap:8px;padding:4px 14px 4px 4px;font-size:14px}
  .start-quick-chip .mega-icon{width:30px;height:30px}
}
@media (prefers-reduced-motion:reduce){
  .start-card{animation:none}
  .start-choice,.start-chip{transition:none}
  .start-choice:hover{transform:none}
  .start-dots i{animation:none;opacity:.7}
}
