/* "Want to go" (IdeasBoardScreen.swift, build 136). */
.sv-app { background: linear-gradient(135deg, #F8F9FF 0%, #F4F6FF 50%, #FBFAFF 100%); }
.sv-head { position: absolute; left: 20px; right: 20px; top: 70px; height: 56px; display: flex; align-items: center; gap: 14px; }
.sv-head > svg { width: 44px; padding: 0 8px; }
.sv-head .tt { flex: 1; }
.sv-head .tt b { display: block; font-size: 28px; font-weight: 700; line-height: 33px; color: #11142D; }
.sv-head .tt span { display: block; margin-top: 2px; font-size: 13px; font-weight: 500; color: #687089; }
.sv-head .more { width: 38px; height: 38px; border-radius: 19px; background: #fff; box-shadow: inset 0 0 0 1px #D8CBFF; display: grid; place-items: center; }
.sv-list { position: absolute; left: 16px; right: 16px; top: 140px; display: flex; flex-direction: column; gap: 10px; }
.sv-row { padding: 12px; border-radius: 16px; background: #fff; box-shadow: inset 0 0 0 1px #E5E8F0; transition: box-shadow .4s ease; }
.sv-row .top { display: flex; gap: 12px; align-items: flex-start; }
.sv-row .th { flex: none; width: 60px; height: 60px; border-radius: 12px; background: #eee center / cover no-repeat; }
.sv-row .tx { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.sv-row .tx b { font-size: 16px; font-weight: 600; line-height: 19px; color: #11142D; }
.sv-row .rm { font-size: 13px; line-height: 16px; color: #687089; }
.sv-row .src { font-size: 12px; line-height: 15px; color: #8A91A8; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sv-row .act { display: flex; align-items: center; gap: 12px; margin-top: 10px; height: 34px; }
.sv-row .act i { flex: 1; }
.sv-row .op { font-size: 13px; font-weight: 600; color: #7A5AF8; }
.sv-row .ar { font-size: 13px; font-weight: 500; color: #8A91A8; }
.sv-row .to { padding: 8px 14px; border-radius: 17px; background: #F1ECFF; font-size: 13px; font-weight: 600; color: #7A5AF8; transition: transform .12s ease; }
.sv-row .to.press { transform: scale(.94); }
.sv-new { display: grid; grid-template-rows: 0fr; opacity: 0; margin-bottom: -10px; transition: grid-template-rows .5s cubic-bezier(.3,.8,.3,1), opacity .4s ease, margin .5s ease; }
.sv-new > .sv-row { overflow: hidden; min-height: 0; }
.sv-new.in { grid-template-rows: 1fr; opacity: 1; margin-bottom: 0; }
.sv-new.glow .sv-row { box-shadow: inset 0 0 0 2.5px #7A5AF8, 0 10px 28px rgba(122,90,248,.2); }
.sv-band { display: flex; align-items: center; gap: 12px; padding: 12px; border-radius: 16px; }
.sv-band .ft { flex: none; width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; }
.sv-band .tx { flex: 1; }
.sv-band .tx b { display: block; font-size: 17px; font-weight: 600; color: #11142D; }
.sv-band .tx span { display: block; margin-top: 3px; font-size: 13px; font-weight: 500; }
.sv-band .fan { display: flex; }
.sv-band .fan i { width: 34px; height: 34px; border-radius: 9px; box-shadow: 0 0 0 2px #fff; }
.sv-band .fan i + i { margin-left: -12px; }
.sv-dim { position: absolute; inset: 0; z-index: 6; background: rgba(0,0,0,.2); opacity: 0; transition: opacity .3s ease; }
.sv-app.sheet-up .sv-dim { opacity: 1; }
.sv-sheet { position: absolute; z-index: 7; left: 8px; right: 8px; top: 520px; bottom: 8px; border-radius: 40px 40px 48px 48px; background: #fff; transform: translateY(380px); transition: transform .5s cubic-bezier(.2,.9,.25,1); }
.sv-app.sheet-up .sv-sheet { transform: none; }
.sv-sheet .grab { position: absolute; left: 175px; top: 5px; width: 36px; height: 5px; border-radius: 3px; background: #C5C5C8; }
.sv-sheet .nav { position: relative; height: 56px; margin-top: 12px; display: flex; align-items: center; justify-content: center; }
.sv-sheet .nav span { position: absolute; left: 20px; font-size: 17px; color: #7457F6; }
.sv-sheet .nav b { font-size: 17px; font-weight: 600; color: #000; }
.sv-sheet .trips { margin: 4px 20px 0; }
.sv-sheet .tr { height: 56px; display: flex; align-items: center; gap: 12px; border-bottom: .5px solid rgba(60,60,67,.29); transition: background-color .12s ease; }
.sv-sheet .tr.press { background: #F4F5F9; }
.sv-sheet .tr em { font-style: normal; font-size: 24px; }
.sv-sheet .tr b { flex: 1; font-size: 16px; font-weight: 600; color: #11142D; }

/* The share flow before Want to go (site only; abstract video screen,
   blank system tiles, the share extension's own cards). */
.sv-reel { position: absolute; inset: 0; z-index: 11; overflow: hidden; background: #222; opacity: 0; pointer-events: none; transition: opacity .4s ease; }
.sv-reel .img { position: absolute; inset: 0; background: center / cover no-repeat; transform: scale(1.04); }
.sv-app.sv-flow .sv-reel { opacity: 1; }
.sv-app.sv-flow .sv-reel .img { animation: sv-kb 7s linear both; }
@keyframes sv-kb { from { transform: scale(1.04); } to { transform: scale(1.16); } }
.sv-reel .shade { position: absolute; inset: 0; background: linear-gradient(rgba(0,0,0,.28), rgba(0,0,0,0) 22%, rgba(0,0,0,0) 55%, rgba(0,0,0,.55)); }
.sv-reel .bk { position: absolute; left: 22px; top: 76px; }
.sv-reel .city { position: absolute; left: 0; right: 0; top: 560px; margin: 0; text-align: center; font-family: "Didot", "Bodoni 72", Georgia, serif; font-size: 44px; color: #fff; letter-spacing: .5px; text-shadow: 0 2px 16px rgba(0,0,0,.35); }
.sv-reel .rail { position: absolute; right: 14px; top: 420px; display: flex; flex-direction: column; gap: 20px; align-items: center; }
.sv-reel .ri { display: flex; flex-direction: column; align-items: center; gap: 4px; font-size: 12px; font-weight: 600; color: #fff; filter: drop-shadow(0 1px 4px rgba(0,0,0,.35)); transition: transform .15s ease; }
.sv-reel .ri.press { transform: scale(.88); }
.sv-reel .cap { position: absolute; left: 18px; right: 80px; bottom: 60px; color: #fff; text-shadow: 0 1px 8px rgba(0,0,0,.4); }
.sv-reel .cap b { display: block; font-size: 16px; font-weight: 700; }
.sv-reel .cap span { display: block; margin-top: 4px; font-size: 14px; opacity: .9; }
.sv-app.st-light .rd-status .t { color: #fff; }
.sv-app.st-light .rd-status svg rect, .sv-app.st-light .rd-status svg path, .sv-app.st-light .rd-status svg circle { fill: #fff; stroke: #fff; }
.sv-app.st-light .rd-status svg rect[style*="34C759"] { fill: #34C759; stroke: none; }
.sv-shdim { position: absolute; inset: 0; z-index: 12; background: rgba(0,0,0,.25); opacity: 0; pointer-events: none; transition: opacity .3s ease; }
.sv-share { position: absolute; z-index: 13; left: 10px; right: 10px; bottom: 10px; height: 400px; border-radius: 40px; background: rgba(242,242,247,.94); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); padding: 26px 26px 0; transform: translateY(440px); transition: transform .45s cubic-bezier(.2,.9,.25,1); }
.sv-app.share-up .sv-shdim { opacity: 1; }
.sv-app.share-up .sv-share { transform: none; }
.sv-share .lk { display: flex; align-items: center; gap: 16px; padding-bottom: 20px; border-bottom: .5px solid rgba(60,60,67,.2); }
.sv-share .lt { width: 56px; height: 56px; border-radius: 14px; background: #fff; display: grid; place-items: center; }
.sv-share .lk b { font-size: 17px; font-weight: 500; color: #8A8A8E; }
.sv-share .apps { display: flex; justify-content: space-between; padding: 22px 0 18px; border-bottom: .5px solid rgba(60,60,67,.2); }
.sv-share .ap { width: 70px; display: flex; flex-direction: column; align-items: center; gap: 8px; transition: transform .15s ease; }
.sv-share .ap i { width: 66px; height: 66px; border-radius: 15px; background: #E3E3E8; }
.sv-share .ap .bar { width: 44px; height: 8px; border-radius: 4px; background: #E3E3E8; }
.sv-share .ap.rd img { width: 66px; height: 66px; border-radius: 15px; display: block; }
.sv-share .ap.rd span { font-size: 13px; color: #11142D; }
.sv-share .ap.press { transform: scale(.9); }
.sv-share .acts { display: flex; justify-content: space-between; padding-top: 22px; }
.sv-share .acts i { width: 62px; height: 62px; border-radius: 31px; background: #E3E3E8; }
.sv-ext { position: absolute; z-index: 14; inset: 72px 0 0; border-radius: 38px 38px 0 0; background: #C8C8CA; transform: translateY(820px); transition: transform .45s cubic-bezier(.2,.9,.25,1); }
.sv-app.ext-up .sv-ext { transform: none; }
.sv-card { position: absolute; left: 16px; right: 16px; top: 240px; border-radius: 22px; background: #fff; padding: 24px 20px 20px; opacity: 0; transform: scale(.96); transition: opacity .25s ease, transform .3s cubic-bezier(.3,1.3,.5,1); pointer-events: none; }
.sv-app.ask-on .sv-ask, .sv-app.done-on .sv-done { opacity: 1; transform: none; }
.sv-card h4 { margin: 0 0 20px; text-align: center; font-size: 18px; font-weight: 600; color: #000; }
.sv-ask .ch { display: flex; align-items: center; gap: 14px; padding: 14px 16px; margin-bottom: 12px; border-radius: 16px; box-shadow: inset 0 0 0 1px rgba(60,60,67,.29); }
.sv-ask .ch.on { background: rgba(122,90,248,.1); box-shadow: inset 0 0 0 1.5px rgba(122,90,248,.55); }
.sv-ask .ch div { flex: 1; min-width: 0; }
.sv-ask .ch b { display: block; font-size: 16px; font-weight: 600; color: #000; }
.sv-ask .ch span { display: block; margin-top: 3px; font-size: 13px; line-height: 16px; color: #8A8A8E; }
.sv-card .bt { height: 54px; border-radius: 18px; background: #7A5AF8; color: #fff; display: grid; place-items: center; font-size: 17px; font-weight: 600; margin-top: 8px; transition: transform .12s ease; }
.sv-card .bt.press { transform: scale(.97); }
.sv-done { text-align: center; top: 250px; }
.sv-done .ok { display: inline-grid; place-items: center; width: 36px; height: 36px; border-radius: 18px; background: #34C759; margin-bottom: 14px; }
.sv-done .fld { position: relative; height: 42px; border-radius: 10px; box-shadow: inset 0 0 0 1px rgba(60,60,67,.2); display: flex; align-items: center; padding: 0 12px; font-size: 15px; color: #000; text-align: left; }
.sv-done .fld .ph { position: absolute; left: 12px; color: #B4B4B8; }
.sv-app.typing .sv-done .fld .ph { display: none; }
.sv-done .caret { width: 2px; height: 20px; margin-left: 1px; background: #7457F6; animation: sv-blink 1s steps(1) infinite; }
@keyframes sv-blink { 50% { opacity: 0; } }
.sv-done .bt { height: 46px; border-radius: 12px; font-size: 16px; margin-top: 14px; }
