/* Immediate actions extend the existing Teeb design without changing its palette or composition. */
.instant-tool { min-width:0; text-align:left; }
.instant-form { margin-top:27px; }
.instant-modes { display:flex; flex-wrap:wrap; gap:5px; width:fit-content; margin:0; padding:4px; border:1px solid var(--border); border-radius:9px; background:var(--surface-soft); }
.instant-modes label { position:relative; display:block; margin:0; cursor:pointer; font-weight:500; }
.instant-modes input { position:absolute; width:1px; height:1px; padding:0; margin:0; opacity:0; }
.instant-modes label>span { display:flex; align-items:center; justify-content:center; gap:7px; min-height:37px; padding:8px 12px; border-radius:6px; font-size:13px; color:var(--text-secondary); }
.instant-modes .icon { width:16px; height:16px; }
.instant-modes input:checked+span { background:#fff; color:var(--ink); box-shadow:0 1px 4px #20242e12; }
.instant-modes input:checked+span .icon { color:var(--action); }
.instant-modes input:focus-visible+span { outline:1px solid var(--focus-ring); outline-offset:2px; }
.instant-modes input:disabled+span { cursor:wait; opacity:.7; }
.instant-form .shorten-form { margin-top:12px; }
.instant-form .form-hint { max-width:none; margin:11px 0 0; }
.instant-error,.qr-error { margin-top:10px; color:#a42f35; font-size:13px; line-height:1.6; }
.qr-error:empty { display:none; }
.instant-form [aria-invalid=true] { outline:none; }
.instant-form .shorten-form:has([aria-invalid=true]) { border-color:#b95559; }
.instant-js-only { display:none; }
.instant-enhanced .instant-js-only { display:inline-flex; }
.instant-enhanced details.instant-js-only { display:block; }
.instant-result { margin-top:20px; padding:21px; border:1px solid #dce3ec; border-radius:11px; background:#fff; box-shadow:0 5px 18px #20242e05; }
.instant-result-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:13px; }
.instant-result h2 { margin:0; color:var(--ink); font-size:18px; font-weight:600; line-height:1.4; letter-spacing:-.015em; }
.instant-result h2:focus { outline:none; }
.instant-success-icon { display:inline-flex; justify-content:center; align-items:center; width:24px; height:24px; color:#26835b; background:#edf7f1; border-radius:50%; }
.instant-success-icon .icon { width:15px; height:15px; }
.instant-address-row { display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; }
.instant-address { min-width:0; color:var(--action); font-size:18px; font-weight:550; line-height:1.5; overflow-wrap:anywhere; }
.instant-address:hover { text-decoration:underline; text-underline-offset:3px; }
.instant-address-row .icon-button { flex-shrink:0; }
.instant-destination { display:flex; align-items:center; gap:7px; min-width:0; margin-top:5px; color:var(--text-secondary); font-size:12px; line-height:1.6; }
.instant-destination .icon { width:13px; height:13px; flex-shrink:0; }
.instant-destination span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.instant-expiry { margin-top:9px; color:var(--text-muted); font-size:12px; line-height:1.6; }
.qr-disclosure { margin-top:16px; padding-top:14px; border-top:1px solid var(--border); text-align:left; }
.qr-disclosure>summary { width:fit-content; color:var(--ink); font-size:13px; font-weight:500; cursor:pointer; }
.qr-content { display:flex; align-items:center; gap:20px; margin-top:14px; }
[data-qr-preview] { width:148px; max-width:100%; flex-shrink:0; background:#fff; line-height:0; }
[data-qr-preview]>svg { display:block; width:100%; height:auto; }
.qr-description { min-width:0; }
.qr-description p { color:var(--text-secondary); font-size:12px; line-height:1.6; }
.qr-downloads { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:12px; }
.qr-downloads .button.small { padding:8px 10px; font-size:12px; }
.instant-save { margin-top:17px; padding-top:15px; border-top:1px solid var(--border); }
.instant-save>p { margin:0; font-size:13px; color:var(--text-secondary); line-height:1.65; }
.instant-save>div { display:flex; flex-wrap:wrap; align-items:center; gap:10px 20px; margin-top:10px; font-size:13px; }
.instant-save .text-link { margin:0; }
.instant-save .quiet-link { font-size:12px; }
.instant-result-actions { display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:10px 15px; margin-top:16px; font-size:12px; }
.instant-result-actions button { padding:0; background:transparent; border:0; font:inherit; cursor:pointer; }
.instant-result-actions .icon { width:14px; height:14px; }
.instant-recent { margin-top:18px; font-size:12px; text-align:left; }
.instant-recent>summary { width:fit-content; color:var(--text-secondary); cursor:pointer; }
.instant-recent ul { margin:9px 0 0; padding:0; list-style:none; }
.instant-recent li { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:10px 0; border-bottom:1px solid var(--border); }
.instant-recent li>div { min-width:0; }
.instant-recent li a { display:block; color:var(--ink); overflow-wrap:anywhere; line-height:1.5; }
.instant-recent li a:hover { color:var(--action); }
.instant-recent li span { display:block; max-width:100%; margin-top:3px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; color:var(--text-muted); line-height:1.5; }
.instant-recent .icon-button { flex-shrink:0; }
.instant-claim { margin-top:13px; }
.claim-choice { display:flex; align-items:flex-start; gap:10px; font-size:13px; line-height:1.6; cursor:pointer; }
.claim-choice input[type=checkbox] { flex-shrink:0; width:16px; height:16px; margin:3px 0 0; padding:0; accent-color:var(--action); }
.claim-choice>span { min-width:0; }
.instant-faq { padding-top:16px; padding-bottom:55px; }
.instant-faq-list { border-top:1px solid var(--border); }
.instant-faq details { border-bottom:1px solid var(--border); }
.instant-faq summary { display:flex; justify-content:space-between; align-items:center; gap:25px; padding:20px 0; color:var(--ink); font-size:15px; font-weight:500; cursor:pointer; list-style:none; }
.instant-faq summary::-webkit-details-marker { display:none; }
.instant-faq summary::after { content:'+'; flex-shrink:0; width:22px; color:var(--text-secondary); font-size:21px; font-weight:400; text-align:center; }
.instant-faq details[open]>summary::after { content:'−'; }
.instant-faq details p { max-width:820px; padding:0 35px 22px 0; color:var(--text-secondary); font-size:14px; line-height:1.8; }
@media(max-width:900px) {
  .instant-modes { margin-inline:auto; }
  .instant-form .form-hint { text-align:center; }
  .instant-result { max-width:560px; margin-inline:auto; }
  .instant-recent { max-width:560px; margin-inline:auto; }
}
@media(max-width:700px) {
  .instant-form { margin-top:23px; }
  .instant-result { padding:18px; }
  .instant-address { font-size:17px; }
  .qr-content { gap:12px; }
  [data-qr-preview] { width:132px; }
  .instant-faq { padding-top:5px; padding-bottom:35px; }
  .instant-faq summary { padding:18px 0; font-size:14px; line-height:1.6; }
}
@media(max-width:440px) {
  .qr-content { align-items:flex-start; flex-direction:column; }
  .qr-description p { max-width:250px; }
  .qr-downloads { margin-top:10px; }
  .instant-modes label>span { padding-inline:10px; font-size:12px; }
}
@media(prefers-reduced-motion:reduce) {
  .instant-tool * { scroll-behavior:auto; transition:none; }
}
