/* base.css */
:root{--pink:#ed4c86;--pink-dark:#d53671;--pale:#fff0f5;--ink:#302730;--muted:#a0949c;--line:#f0eaee;--white:#fff;--background:#fdfbfc}*{box-sizing:border-box}body{margin:0;background:#fff6f9;color:var(--ink);font:14px/1.5 'PingFang SC','Microsoft YaHei',system-ui,sans-serif;display:flex;align-items:center;justify-content:center;min-height:100vh;gap:clamp(35px,6vw,105px);padding:36px 30px}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;background:none;color:inherit;padding:0}button:focus-visible,a:focus-visible{outline:3px solid #ffa2c4;outline-offset:4px}input:focus,textarea:focus{outline:2px solid #f6abc7}a{text-decoration:none;color:inherit}.phone{width:390px;height:844px;flex:none;position:relative;background:var(--white);border:1px solid #eadbe2;border-radius:38px;box-shadow:0 28px 80px #743a5111;overflow:hidden;display:flex;flex-direction:column}.statusbar{height:43px;flex:none;display:flex;justify-content:space-between;align-items:center;padding:0 28px;font-size:12px;position:relative;letter-spacing:.2px}.status-island{background:#29252a;position:absolute;top:8px;left:50%;transform:translateX(-50%);width:84px;height:23px;border-radius:24px}.statusbar>span:last-child{font-size:10px;letter-spacing:1px}#app{flex:1;min-height:0;display:flex;flex-direction:column;position:relative;overflow:hidden;background:#fff}.bottom-nav{height:65px;flex:none;border-top:1px solid var(--line);display:flex;justify-content:space-around;align-items:center;background:#fffeff;padding:5px 9px 0;z-index:5}.bottom-nav button{width:20%;display:flex;align-items:center;flex-direction:column;gap:4px;color:#998e97;font-size:10px;position:relative}.bottom-nav button.active{color:var(--pink);font-weight:600}.bottom-nav .icon{width:23px;height:23px}.bottom-nav button.active .icon{fill:var(--pink);stroke:var(--pink)}.nav-dot{position:absolute;top:-2px;right:22px;width:6px;height:6px;background:var(--pink);border:1px solid white;border-radius:50%}.home-indicator{height:16px;background:white;flex:none;position:relative}.home-indicator:after{content:'';display:block;width:112px;height:4px;background:#2d2730;border-radius:5px;position:absolute;left:50%;top:6px;transform:translateX(-50%)}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;flex:none}.brand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:700}.brand-mark{background:var(--pink);color:white;border-radius:14px;width:41px;height:41px;display:grid;place-items:center;font-size:22px}.edition{font-weight:400;font-size:10px;letter-spacing:2px;color:#a78f9b;align-self:end;padding-bottom:4px}.desktop-intro{width:260px;align-self:stretch;display:flex;flex-direction:column;padding:22px 0;max-height:844px;position:relative}.intro-main{margin-top:115px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.6px;color:#b8879c}.intro-main h1{font-size:43px;line-height:1.4;letter-spacing:-2px;margin:20px 0 20px;font-weight:600}.intro-main p{font-size:14px;color:#99848e;line-height:1.9}.desktop-links{display:flex;gap:9px;margin-top:30px}.desktop-links button{width:28px;height:4px;background:#eadce2;border-radius:5px;font-size:0}.desktop-links .active{width:45px;background:var(--pink)}.preview-note{margin-top:auto;font-size:12px;color:#947a87;line-height:1.8}.small-dot{display:inline-block;width:6px;height:6px;background:#dd799d;border-radius:50%;margin-right:7px}.preview-note small{display:block;font-size:10px;color:#af9aa5;margin:9px 0 14px}.preview-note a{color:#c14c79;font-size:12px}.desktop-detail{width:230px;position:relative;padding-top:30px}.detail-number{font-size:76px;font-weight:200;color:#eed6df;line-height:1;margin-bottom:40px}.desktop-detail h2{font-size:22px;line-height:1.7;font-weight:500;margin:14px 0}.desktop-detail>p{font-size:12px;line-height:1.9;color:#aa929f}.rule{margin-top:35px;font-size:9px;color:#b49eaa}.rule i{display:block;margin:12px 0;height:1px;background:#eddee5}.mini-flow{font-size:13px;color:#a8788e;display:flex;gap:18px}.mini-flow span{color:#d8bcc9}.desktop-detail .local-note{font-size:10px;margin-top:60px;color:#b9a6b0}.text-button{color:var(--pink);font-size:12px}.reset-demo{font-size:10px}.app-header{height:68px;flex:none;padding:13px 21px 8px;display:flex;justify-content:space-between;align-items:center}.app-title{font-size:24px;font-weight:700;line-height:1.2;letter-spacing:-.5px;margin:0}.app-subtitle{font-size:10px;letter-spacing:.7px;color:#ab9da5;margin-top:5px}.header-actions{display:flex;align-items:center;gap:10px}.round-small{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff}.round-small .icon{width:17px;height:17px}.ai-label{font-size:9px;letter-spacing:.3px;padding:3px 7px;background:#f8f0f4;color:#aa7b90;border-radius:5px;font-weight:400;white-space:nowrap}.scroll-body{overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0;scrollbar-width:none}.scroll-body::-webkit-scrollbar{display:none}.recommend-body{padding:7px 20px 0;display:flex;flex-direction:column;flex:1;min-height:0}.rec-intro{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--muted);margin-bottom:14px}.rec-intro b{font-weight:400;color:#d4799b}.rec-card-wrap{position:relative;flex:1;min-height:0;margin-bottom:10px}.card-behind{position:absolute;inset:12px 9px -7px;background:#f9e4ec;border-radius:24px;transform:rotate(2deg)}.rec-card{position:absolute;inset:0;border-radius:23px;background:#f5edf0;overflow:hidden;touch-action:pan-y;user-select:none;cursor:grab;box-shadow:0 6px 20px #5534430c}.rec-card:active{cursor:grabbing}.rec-card>img{width:100%;height:100%;object-fit:cover;pointer-events:none}.photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,#00000013,transparent 38%,#1c101856 70%,#27121ba8)}.rec-badge{position:absolute;top:17px;left:16px;background:#fff9;color:#47313d;backdrop-filter:blur(6px);padding:5px 10px;border-radius:20px;font-size:10px;display:flex;gap:5px;align-items:center}.rec-badge .icon{width:12px;height:12px;fill:currentColor}.rec-card .photo-ai{position:absolute;top:18px;right:15px;color:white;font-size:9px;letter-spacing:.4px;background:#3b283355;padding:3px 7px;border-radius:10px}.rec-person{position:absolute;left:20px;right:20px;bottom:23px;color:#fff}.rec-person h2{font-size:30px;line-height:1.2;letter-spacing:.5px;margin:0 0 8px;font-weight:600}.rec-person p{font-size:12px;line-height:1.75;color:#fffef0;margin:0 0 13px;max-width:270px}.tags{display:flex;gap:6px;flex-wrap:wrap}.tag{font-size:10px;padding:4px 9px;border-radius:20px;background:#f8f3f6;color:#8e7784}.rec-person .tag{color:#fff;background:#ffffff30;backdrop-filter:blur(4px);border:1px solid #ffffff20}.card-stamp{position:absolute;top:75px;padding:6px 14px;border:3px solid currentColor;border-radius:8px;font-size:28px;letter-spacing:3px;font-weight:700;opacity:0}.stamp-yes{left:28px;transform:rotate(-14deg);color:#ff98ba}.stamp-no{right:28px;transform:rotate(14deg);color:#fff}.rec-footer{flex:none;padding:10px 0 12px}.swipe-hint{font-size:10px;color:#b4a5ae;display:flex;justify-content:center;gap:11px;margin:3px 0 13px}.swipe-hint span{color:#ef79a3}.swipe-actions{display:flex;align-items:center;justify-content:center;gap:23px}.action-circle{width:51px;height:51px;background:white;box-shadow:0 4px 14px #70405b0c;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:#a99cad}.action-circle .icon{width:23px;height:23px}.action-circle.main{width:64px;height:64px;background:var(--pink);color:white;border:0;box-shadow:0 6px 16px #ec4c863b}.action-circle.main .icon{fill:currentColor;width:29px;height:29px}.action-circle.chat{color:#e797b4}.action-circle.undo{width:37px;height:37px;color:#c1a89d}.card-detail-link{display:block;margin:10px auto 0;color:#b393a4;font-size:10px}.segments{display:flex;gap:25px;padding:12px 22px 0;border-bottom:1px solid var(--line);flex:none}.segments button{font-size:13px;padding-bottom:12px;color:#a3969f;position:relative}.segments button.active{color:#332932;font-weight:650}.segments button.active:after{position:absolute;content:'';width:19px;height:3px;border-radius:2px;background:var(--pink);bottom:-1px;left:calc(50% - 9px)}.segments small{font-size:9px;color:#c6a4b3;margin-left:4px}.page-note{font-size:10px;color:#b7a2ae;display:flex;align-items:center;gap:6px;margin:17px 22px 16px}.page-note .icon{width:12px;height:12px}.like-grid{padding:0 20px 20px;display:grid;grid-template-columns:1fr 1fr;gap:13px}.like-card{border:1px solid #f0e7ec;border-radius:16px;overflow:hidden;position:relative;background:white}.like-photo{display:block;width:100%;height:184px;position:relative}.like-photo img{width:100%;height:100%;object-fit:cover;display:block}.like-photo .mini-ai{position:absolute;top:9px;left:9px;background:#fff9;padding:2px 5px;border-radius:5px;font-size:8px;color:#6e5362}.liked-check{position:absolute;right:8px;bottom:8px;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:white;color:var(--pink);box-shadow:0 3px 5px #48233811}.liked-check .icon{width:14px;height:14px;fill:currentColor}.like-info{padding:10px 11px}.like-info>div{display:flex;justify-content:space-between;align-items:center}.like-info strong{font-size:14px}.like-info small{font-size:9px;color:#b3a1ab}.say-hi{color:var(--pink);font-size:10px;border:1px solid #f9d5e3;border-radius:20px;padding:3px 8px;margin-top:8px}.empty-box{padding:65px 35px;text-align:center;color:#b59ca9;font-size:12px;line-height:1.9}.empty-box .icon{display:block;margin:0 auto 18px;width:40px;height:40px;color:#efb6cb}.primary{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:13px;background:var(--pink);color:white;padding:12px 23px;font-size:13px;font-weight:500}.primary .icon{width:17px;height:17px}.secondary{border:1px solid #eedfe5;border-radius:13px;padding:11px 21px;color:#977283;font-size:12px;background:white}.pending-row{display:flex;align-items:center;gap:13px;margin:0 22px;padding:18px 0;border-bottom:1px solid var(--line);width:calc(100% - 44px);text-align:left}.avatar{width:45px;height:45px;border-radius:50%;object-fit:cover;background:#f7e9ef;flex:none}.pending-content{flex:1;min-width:0}.pending-content strong{font-size:14px}.pending-content p{font-size:11px;color:#ac9ca5;margin:5px 0 0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.pending-status{color:#bb9cae;font-size:9px;display:flex;gap:3px}.pending-status .icon{width:11px;height:11px}.feed-tabs{display:flex;gap:25px;padding:8px 22px 15px;font-size:13px}.feed-tabs .active{color:var(--pink);font-weight:600}.feed-tabs button{color:#9a8a94}.topic-row{display:flex;gap:7px;padding:0 22px 17px;white-space:nowrap;overflow:auto}.topic-row button{font-size:10px;border-radius:18px;padding:5px 11px;background:#f7f2f5;color:#a68898}.topic-row button.active{background:#fce6ef;color:#d95184}.post{padding:20px 22px 18px;border-top:6px solid #fcf8fa}.post:first-child{border-top:1px solid var(--line)}.post-head{display:flex;align-items:center;gap:10px}.post-head .avatar{width:37px;height:37px}.post-head strong{font-size:13px;display:block}.post-head small{font-size:9px;color:#b6a5ae}.post-head .ai-label{font-size:8px;padding:2px 5px;margin-left:5px}.post-author{text-align:left;flex:1}.follow-btn{font-size:10px;color:#dc779e;background:#fff2f7;padding:4px 10px;border-radius:20px}.post-text{font-size:12px;line-height:1.9;margin:11px 0 12px}.post-image{border-radius:12px;overflow:hidden;width:100%;height:184px;display:block;background:#f8f2f5}.post-image img{height:100%;width:100%;object-fit:cover;object-position:center 38%}.post-tags{font-size:10px;color:#d587a6;margin:10px 0}.post-bottom{display:flex;align-items:center;gap:20px;color:#b09ca8;font-size:10px}.post-bottom span{flex:1;color:#baacb4;font-size:9px}.post-bottom button{display:flex;align-items:center;gap:5px}.post-bottom .icon{width:17px;height:17px}.post-bottom .is-liked{color:var(--pink)}.post-bottom .is-liked .icon{fill:currentColor}.feed-fab{position:absolute;bottom:19px;right:21px;width:45px;height:45px;background:var(--pink);color:white;border-radius:50%;box-shadow:0 5px 15px #e96a9950;z-index:3}.conversation-top{padding:18px 22px 14px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:11px;color:#a78e9d}.section-heading span{font-size:9px;color:#bea8b4}.match-row{display:flex;gap:17px}.match-avatar-wrap{display:flex;flex-direction:column;align-items:center;font-size:10px;gap:6px;position:relative}.match-avatar-wrap .avatar{width:52px;height:52px;border:3px solid white;outline:1.5px solid #f5aac5}.match-heart{position:absolute;right:-2px;top:35px;width:18px;height:18px;display:grid;place-items:center;background:var(--pink);color:white;border:2px solid white;border-radius:50%;font-size:9px}.match-info{padding-top:8px;color:#b6a2ad;font-size:10px;line-height:1.8}.conv-list{padding:0 22px}.conv{display:flex;align-items:center;gap:12px;width:100%;padding:17px 0;text-align:left;border-bottom:1px solid var(--line)}.conv .avatar{width:49px;height:49px}.conv-main{flex:1;min-width:0}.conv-name{font-weight:600;font-size:13px;display:flex;align-items:center;gap:6px}.conv-main p{font-size:11px;color:#ae9ca6;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin:5px 0 0}.conv-time{font-size:9px;color:#b6a5af;align-self:flex-start;padding-top:3px}.conv-preview-note{font-size:10px;color:#c9b1bd;text-align:center;line-height:1.9;padding:28px 20px}.notification{display:flex;gap:11px;padding:17px 22px;border-bottom:1px solid var(--line);align-items:flex-start}.notification-icon{width:38px;height:38px;background:#fff0f6;display:grid;place-items:center;border-radius:12px;color:var(--pink)}.notification-icon .icon{width:18px;height:18px}.notification strong{font-size:12px;font-weight:500}.notification p{font-size:10px;color:#b39aa8;margin:5px 0 0}.notification button{color:var(--pink);font-size:10px;margin-top:8px}.profile-hero{padding:13px 22px 23px;position:relative;background:radial-gradient(ellipse at 90% 0%,#fae6ef,transparent 75%)}.profile-hero-top{display:flex;align-items:center;gap:14px}.profile-avatar{width:74px;height:74px;border:4px solid white;box-shadow:0 5px 14px #b0748f16;border-radius:50%;object-fit:cover}.profile-title{flex:1}.profile-title h2{font-size:23px;margin:0 0 4px;font-weight:600}.profile-title small{font-size:10px;color:#ae8297}.profile-edit{font-size:10px;border:1px solid #e9d1dc;border-radius:20px;padding:5px 9px;color:#ae7c93;background:#fffcfe}.profile-bio{font-size:12px;line-height:1.8;margin:16px 0 10px;color:#a17f91}.profile-hero .tag{background:#fff9;color:#b38298;border:1px solid #f5e3ec}.profile-stats{display:flex;margin:20px 0 0}.profile-stats button{display:flex;flex:1;flex-direction:column;gap:3px;border-right:1px solid #efdfe7}.profile-stats button:last-child{border-right:0}.profile-stats b{font-size:18px;font-weight:600}.profile-stats span{font-size:9px;color:#b295a5}.share-card{margin:16px 22px;display:flex;align-items:center;gap:12px;padding:13px;border:1px solid #f3dfe7;border-radius:15px;background:#fffafb;width:calc(100% - 44px);text-align:left}.share-card>.icon{width:29px;height:29px;color:#db9db6}.share-card div{flex:1}.share-card strong{font-size:12px;font-weight:500}.share-card small{font-size:9px;color:#b69aa8;display:block;margin-top:3px}.share-card>.arrow-icon{width:16px;height:16px;color:#c5a3b3}.my-post-heading{display:flex;justify-content:space-between;align-items:center;padding:7px 22px 13px;border-bottom:1px solid var(--line)}.my-post-heading h3{font-size:14px;margin:0}.my-post-heading button{font-size:11px;color:var(--pink)}.my-timeline{display:flex;gap:14px;margin:16px 22px;padding-bottom:17px;border-bottom:1px solid var(--line)}.timeline-date{font-size:10px;color:#bba0af;min-width:35px}.timeline-date b{font-size:21px;color:#aa7d93;display:block;line-height:1.3}.timeline-content{flex:1;font-size:11px;line-height:1.8;color:#8b7381}.timeline-content p{margin:0 0 9px}.timeline-photo{width:82px;height:82px;border-radius:10px;object-fit:cover}.profile-bottom{font-size:9px;color:#c7b6bf;padding:4px 22px 20px;text-align:center}.toast{position:absolute;z-index:30;left:50%;bottom:100px;transform:translate(-50%,10px);background:#49303eea;color:white;box-shadow:0 4px 15px #39202b20;padding:10px 15px;font-size:11px;border-radius:12px;max-width:315px;width:max-content;text-align:center;opacity:0;pointer-events:none;transition:.2s}.toast.visible{opacity:1;transform:translate(-50%,0)}#overlay:empty{display:none}.overlay-backdrop{position:absolute;inset:0;z-index:20;background:#33232e5e;display:flex;align-items:flex-end;backdrop-filter:blur(4px)}.sheet{width:100%;background:white;border-radius:27px 27px 0 0;padding:17px 22px 27px;max-height:92%;overflow:auto;box-shadow:0 -5px 30px #42253910}.sheet-handle{display:block;width:30px;height:4px;background:#eddee5;border-radius:3px;margin:0 auto 18px}.sheet-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.sheet-header h2{font-size:18px;margin:0;font-weight:600}.sheet .close{color:#ab929f;width:29px;height:29px;display:grid;place-items:center}.sheet .close .icon{width:18px;height:18px}.sheet p{color:#a88d9c;font-size:12px;line-height:1.9}.sheet label{display:block;color:#a28093;font-size:11px;margin:12px 0 7px}.sheet input,.sheet textarea{width:100%;background:#fdf8fa;border:1px solid #eee1e8;border-radius:12px;padding:12px;color:#705362;resize:vertical}.sheet textarea{min-height:115px;line-height:1.8}.sheet small{font-size:10px;color:#b7a0ad}.sheet-actions{display:flex;gap:10px;margin-top:20px}.sheet-actions>*{flex:1}.detail-portrait{width:100%;height:255px;object-fit:cover;object-position:center 30%;border-radius:18px}.detail-person{display:flex;align-items:center;gap:10px;margin-top:16px}.detail-person h3{font-size:22px;margin:0}.match-sheet{text-align:center;padding-top:30px;padding-bottom:33px;background:radial-gradient(ellipse at 50% 0,#ffe5ef,#fff 72%)}.match-sheet>.eyebrow{font-size:9px;color:#d49aaf}.match-sheet h2{font-size:29px;color:#df5b88;font-weight:500;letter-spacing:2px;margin:12px 0 7px}.match-pictures{display:flex;justify-content:center;margin:26px 0 23px}.match-pictures img{width:102px;height:131px;object-fit:cover;border:5px solid white;border-radius:16px;box-shadow:0 5px 20px #b5779522;transform:rotate(-11deg)}.match-pictures img:last-child{transform:rotate(11deg);margin-left:4px}.match-sheet .primary{width:100%}.match-sheet .text-button{margin-top:15px;color:#b392a2}.sheet-footer{font-size:9px;color:#bea9b5;line-height:1.8;margin-top:14px;text-align:center}.chat-view{position:absolute;inset:0;z-index:7;background:#fcf8fa;display:flex;flex-direction:column}.chat-header{background:#fff;padding:13px 20px;display:flex;align-items:center;gap:12px;flex:none}.chat-header .icon{width:20px;height:20px}.chat-header .avatar{width:34px;height:34px}.chat-header strong{font-size:14px}.chat-header small{display:block;font-size:9px;color:#b99bab}.chat-person{flex:1}.chat-scroller{flex:1;min-height:0;overflow:auto;padding:14px 18px;scrollbar-width:none}.chat-start{font-size:9px;text-align:center;color:#bda8b4;margin:0 0 21px}.bubble-row{display:flex;align-items:flex-start;gap:8px;margin-bottom:15px}.bubble-row .avatar{width:29px;height:29px}.bubble-row.mine{flex-direction:row-reverse}.bubble{font-size:12px;max-width:245px;line-height:1.8;border-radius:0 13px 13px 13px;padding:9px 12px;background:white;color:#725e69;overflow-wrap:anywhere;white-space:pre-wrap}.mine .bubble{background:#fbd5e3;color:#915a71;border-radius:13px 0 13px 13px}.chat-input{padding:12px 15px;background:#fff;display:flex;gap:8px;border-top:1px solid var(--line);flex:none}.chat-input input{min-width:0;flex:1;border:1px solid #f1e3e9;border-radius:20px;padding:9px 14px;font-size:12px;background:#fffafc}.chat-input button{width:37px;height:37px;border-radius:50%;background:var(--pink);color:white}.chat-input .icon{width:17px;height:17px}.chat-notice{font-size:9px;line-height:1.8;color:#ba9daa;padding:6px 20px 10px;background:white;text-align:center}.comment{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.comment .avatar{width:29px;height:29px}.comment strong{font-size:11px}.comment p{margin:4px 0 0;font-size:11px}.inline-form{display:flex;gap:8px;margin-top:17px}.inline-form input{min-width:0}.inline-form .primary{padding:10px 16px;flex:none}.profile-card-sheet{text-align:center;background:linear-gradient(#fff0f6,white)}.profile-card-sheet .profile-avatar{width:95px;height:95px;margin-top:15px}.profile-card-sheet h3{font-size:24px;margin:12px 0 5px}.profile-card-sheet .tags{justify-content:center}.card-line{margin:25px 0 12px;height:1px;background:#f1dce6}.profile-card-sheet .card-word{letter-spacing:3px;font-size:11px;color:#bd94a7}.filter-options{display:flex;flex-wrap:wrap;gap:10px;margin:17px 0 23px}.filter-options button{padding:9px 14px;border:1px solid #eedee5;border-radius:20px;color:#a87c93;font-size:12px}.filter-options button.active{color:var(--pink);background:#fff0f6;border-color:#f2afc8}.image-upload{display:flex;align-items:center;gap:8px;color:#c77999;font-size:11px;margin-top:12px}.image-upload .icon{width:18px;height:18px}.upload-preview{height:75px;width:75px;border-radius:9px;object-fit:cover;margin-top:12px}.full-width{width:100%}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.photo-view{position:absolute;inset:0;z-index:25;background:#2f242be8;display:flex;align-items:center;justify-content:center}.photo-view img{width:100%;max-height:85%;object-fit:contain}.photo-view button{position:absolute;right:22px;top:28px;color:white}.typing{color:#b99ba9;font-size:10px;padding-left:38px;margin-bottom:14px}.board-mode{padding:0;background:white;display:block;min-height:0}.board-mode .desktop-intro,.board-mode .desktop-detail{display:none}.board-mode .phone{border:0;border-radius:0;width:100%;height:100vh;box-shadow:none}.board-mode .statusbar{padding-top:2px}.board-mode .status-island{width:76px;height:21px;top:9px}@media(max-width:1150px){body{gap:40px}.desktop-intro{width:225px}.desktop-detail{width:190px}.intro-main h1{font-size:36px}}@media(max-width:950px){.desktop-detail{display:none}.desktop-intro{width:235px}}@media(max-width:700px){body{padding:0;display:block;background:white;min-height:100dvh}.desktop-intro,.desktop-detail{display:none}.phone{border:0;border-radius:0;box-shadow:none;width:100%;max-width:480px;margin:auto;height:100dvh}.statusbar{height:37px}.status-island{display:none}.home-indicator{height:max(13px,env(safe-area-inset-bottom))}.app-header{height:67px}.rec-person h2{font-size:29px}.rec-footer{padding-bottom:8px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.match-sheet .sheet-header h2{font-size:12px;letter-spacing:1px;margin:0;color:#bc91a5}
@media(min-width:701px){body{padding:24px 30px}.phone{height:min(844px,calc(100dvh - 48px))}.desktop-intro{max-height:calc(100dvh - 48px)}.intro-main{margin-top:clamp(24px,8vh,115px)}}

/* app.css */
:root{--pink:#f34b91;--pale:#fff0f6;--ink:#302b34}body{background:#fff7fa}.phone{width:402px}.desktop-intro{width:255px}.intro-main{margin-top:65px}.intro-main h1{font-size:36px;line-height:1.45}.intro-main p{font-size:12px}.flow-nav{display:flex;flex-direction:column;gap:7px;margin-top:26px}.flow-nav button{text-align:left;font-size:12px;color:#ad8b9d;padding:10px 11px;display:flex;gap:10px;align-items:center;border-radius:10px}.flow-nav button b{font-size:9px;font-weight:400;color:#c5a5b4}.flow-nav button span{margin-left:auto;font-size:9px;letter-spacing:.6px;color:#c2aab5}.flow-nav button.active{background:#fbe6ef;color:#d64a83}.desktop-detail{padding-top:0}.desktop-detail h2{margin-top:20px}.complete-stats{display:flex;justify-content:space-between;margin:28px 0}.complete-stats strong{font-size:25px;display:flex;flex-direction:column;font-weight:500}.complete-stats span{font-size:9px;color:#ad8c9d;font-weight:400;margin-top:3px}.catalog-launch{font-size:11px;border:1px solid #ecd6e0;background:#fff8fb;border-radius:12px;padding:13px 14px;width:100%;text-align:left;color:#ae6a8a;display:flex;justify-content:space-between}.region-legend{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.region-legend>span{font-size:10px;color:#b796a7}.region-legend b{margin-left:8px;font-weight:400;color:#9c7185}.desktop-detail .local-note{margin-top:30px}.desktop-detail>.text-button{font-size:10px}.bottom-nav[hidden]{display:none!important}#browser-strip:empty{display:none}#browser-strip{font-size:10px;text-align:center;padding:5px;background:#fcf6f9;border-bottom:1px solid #f4e9ef;color:#b18c9e;flex:none;letter-spacing:.4px}#app{background:radial-gradient(ellipse at 14% 0,#fff4f9,transparent 35%),white}.app-header{height:61px;padding:12px 16px 9px}.app-title{font-size:23px}.app-header .round-small{border:0;box-shadow:0 2px 8px #ae8c9c0b;width:35px;height:35px}.round-small .icon{width:20px;height:20px}.app-subtitle{font-size:9px;margin-top:4px}.round-small{flex:none}.icon{stroke-width:1.6}.micro-context{padding:0 17px 10px;color:#b79aa9;font-size:9px;display:flex;justify-content:space-between}.micro-context button{font-size:9px;color:#e578a3}.recommend-stage{position:relative;flex:1;min-height:0;padding:0 12px 10px;display:flex;flex-direction:column}.video-deck{flex:1;min-height:0;position:relative}.video-deck:before{content:'';position:absolute;inset:12px 7px 0;border-radius:20px;background:#efdde7;transform:rotate(2deg)}.video-card{position:absolute;inset:0;border-radius:19px;overflow:auto;background:white;box-shadow:0 3px 17px #8e55761a;touch-action:pan-y;scrollbar-width:none;border:1px solid #f5eaf0;transform-origin:50% 85%;will-change:transform}.video-card::-webkit-scrollbar{display:none}.cosmic-cover{height:160px;position:relative;background:radial-gradient(ellipse at 15% 45%,#251d47,transparent 55%),radial-gradient(ellipse at 90% 90%,#4f315d,transparent 60%),#070912;overflow:hidden}.cosmic-cover:before{content:'';position:absolute;right:-45px;top:32px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle at 29% 30%,#ffca74,#e57e57 37%,#8d3756 66%,#3b213b 85%);box-shadow:-10px -5px 32px #a9486133}.cosmic-cover:after{content:'';position:absolute;inset:0;background-image:radial-gradient(#fff8 1px,transparent 1px),radial-gradient(#e7d6ff99 1px,transparent 1px);background-size:39px 37px,71px 53px;background-position:8px 15px,19px 22px}.cover-caption{position:absolute;top:20px;left:19px;z-index:1;font-size:8px;letter-spacing:3px;color:#c7bedb}.cover-menu{position:absolute;right:14px;top:12px;color:white;z-index:2;font-size:20px;letter-spacing:2px}.identity-line{position:relative;display:flex;align-items:center;gap:13px;margin:-51px 16px 0;z-index:2;min-height:100px;background:linear-gradient(transparent,white 86%);padding-top:7px}.identity-line:before{content:'';position:absolute;left:-17px;right:-17px;bottom:0;height:64px;background:linear-gradient(transparent,#fff);z-index:-1}.identity-line .person-avatar{width:86px;height:86px;border-radius:50%;border:3px solid #fff;object-fit:cover;background:#eee;flex:none}.identity-copy{padding-top:10px;min-width:0}.identity-copy h2{font-size:21px;margin:0;color:white;text-shadow:0 1px 6px #29193744;display:flex;gap:7px;align-items:center}.identity-copy .ai-label{font-size:8px;background:#ffffffc7;color:#8e6f80;text-shadow:none;padding:2px 5px}.identity-copy p{font-size:11px;color:#8f7d89;margin:6px 0 0}.reason-line{font-size:10px;color:#b8a9b2;margin:14px 19px 8px}.reason-line b{color:#ec79a2;font-weight:500;margin:0 3px}.profile-tags{display:flex;gap:6px;flex-wrap:wrap;margin:0 18px 17px;padding-right:10px}.profile-tags button{font-size:12px;background:#f4f1f6;color:#655665;padding:5px 11px;border-radius:19px}.profile-tags button:first-child{background:linear-gradient(120deg,#fb75ad,#f35791);color:white}.profile-tags button:first-child:before{content:'♡';margin-right:4px}.profile-bio-video{font-size:13px;line-height:1.9;margin:18px 19px 22px;padding-right:24px;color:#51444f;min-height:45px}.lifestyle-image{width:100%;display:block;height:auto;min-height:260px;max-height:580px;object-fit:cover;object-position:center 30%;user-select:none}.profile-meta-note{font-size:9px;color:#b9a2af;line-height:1.8;padding:14px 17px 22px;background:#fff}.floating-stack{position:absolute;right:5px;bottom:49px;z-index:3;display:flex;flex-direction:column;gap:12px}.floating-stack button{width:46px;height:46px;display:grid;place-items:center;background:#fffffff5;border-radius:50%;box-shadow:0 3px 13px #59334812;color:#bcb1ca}.floating-stack button .icon{width:27px;height:27px}.floating-stack button.like{color:#f65995}.floating-stack button.like .icon{fill:currentColor}.floating-stack button.greet{color:#e790ad;width:39px;height:39px;margin-left:4px}.floating-stack button.greet .icon{width:20px;height:20px}.swipe-footer{flex:none;display:flex;align-items:center;justify-content:center;gap:12px;height:28px;color:#bca9b5;font-size:9px}.swipe-footer button{font-size:9px;color:#c18ca5}.stamp{position:absolute;top:30px;padding:8px 15px;border:3px solid currentColor;border-radius:18px;font-size:21px;font-weight:600;z-index:8;opacity:0;pointer-events:none}.stamp.yes{left:20px;color:#fa76a5;transform:rotate(-13deg)}.stamp.no{right:20px;color:#68bfd6;transform:rotate(13deg)}.compact-tabs{display:flex;gap:21px;align-items:center;padding:10px 18px 13px;flex:none}.compact-tabs button{font-size:14px;color:#ad9aa7;position:relative;white-space:nowrap}.compact-tabs button.active{color:#413240;font-weight:600}.compact-tabs button.active:after{content:'';position:absolute;width:19px;height:3px;border-radius:3px;background:var(--pink);bottom:-6px;left:calc(50% - 10px)}.compact-tabs .publish-pill{margin-left:auto;background:var(--pink);color:white;padding:7px 12px;border-radius:20px;font-size:11px}.compact-tabs .publish-pill:after{display:none}.topic-heading{display:flex;align-items:center;justify-content:space-between;font-size:12px;margin:10px 18px}.topic-heading b{color:#e56e9c;font-weight:500}.topic-heading button{font-size:10px;color:#b4a0ad}.topic-strip{display:flex;gap:9px;padding:0 18px 16px;overflow-x:auto;flex:none;scrollbar-width:none}.topic-tile{width:58px;flex:none;position:relative}.topic-tile img{width:58px;height:58px;border-radius:15px;object-fit:cover;border:3px solid white;outline:1px solid #efd8e3;display:block}.topic-tile span{display:block;text-align:center;font-size:9px;color:#a7899a;margin-top:5px}.moment{padding:18px 17px 22px;display:flex;gap:11px;background:#fff;border-bottom:1px solid #f6f0f4}.moment .avatar{width:38px;height:38px}.moment-content{flex:1;min-width:0}.moment-head{display:flex;justify-content:space-between;align-items:center;min-height:36px}.moment-head strong{font-size:13px;font-weight:500}.moment-head small{display:block;color:#b4a0ad;font-size:9px;margin-top:2px}.moment-head .ai-label{font-size:8px;margin-left:5px}.moment-head button{font-size:10px;border:1px solid #efb3cc;border-radius:18px;padding:3px 9px;color:#dd76a2}.moment-text{font-size:13px;line-height:1.85;margin:9px 0 12px;white-space:pre-line}.moment-photo{width:100%;max-width:246px;border-radius:8px;overflow:hidden;display:block}.moment-photo img{width:100%;height:230px;object-fit:cover;display:block}.moment-bottom{display:flex;align-items:center;gap:19px;color:#b8a8b3;font-size:10px;margin-top:16px}.moment-bottom .moment-time{flex:1;font-size:9px;color:#beaab7}.moment-bottom button{display:flex;align-items:center;gap:4px}.moment-bottom button .icon{width:18px;height:18px}.moment-bottom .is-liked{color:var(--pink)}.moment-bottom .is-liked .icon{fill:currentColor}.feed-pager{padding:18px;text-align:center;background:#fff;color:#b493a5;font-size:10px}.feed-pager button{font-size:11px;padding:9px 20px;color:#cc6b93;background:#fff1f6;border-radius:20px}.interest-wall{padding:15px 20px;display:flex;gap:10px;flex-wrap:wrap}.interest-wall button{padding:9px 13px;border-radius:20px;background:#fff0f6;color:#bc7b98;font-size:12px}.interest-wall button.selected{background:#f55194;color:white}.empty-state{padding:62px 29px;text-align:center;color:#b194a4;font-size:12px;line-height:1.9}.empty-state .icon{width:39px;height:39px;margin-bottom:15px;color:#e8b8cc;display:block;margin-left:auto;margin-right:auto}.empty-state h3{font-size:17px;font-weight:500;color:#8e657c}.empty-state .primary{margin-top:20px}.list-hint{font-size:10px;color:#b79bab;margin:14px 20px}.list-pager{display:flex;justify-content:center;align-items:center;gap:17px;margin:17px;font-size:11px;color:#ae889c}.list-pager button{background:#fff0f6;padding:7px 12px;border-radius:12px}.list-pager button:disabled{opacity:.3}.like-photo{height:174px}.like-info .meta{font-size:9px;color:#b19aa8;margin-top:3px}.user-initial{display:grid;place-items:center;background:linear-gradient(135deg,#f7bad3,#dcaac5);color:white;font-size:23px;width:45px;height:45px;border-radius:50%;flex:none}.user-initial.profile-avatar{width:78px;height:78px;border:4px solid white;font-size:31px}.user-initial.mini{width:29px;height:29px;font-size:14px}.profile-hero .profile-bio{margin:16px 0 12px}.profile-stats{margin-top:20px}.personal-summary{display:flex;gap:8px;flex-wrap:wrap;font-size:10px;margin:15px 0 0;color:#ad7b94}.personal-summary span{border-right:1px solid #edd7e2;padding-right:9px}.menu-list{padding:0 20px}.menu-row{padding:15px 0;display:flex;align-items:center;gap:10px;border-bottom:1px solid #f3eaf0;width:100%;text-align:left;font-size:12px;color:#886b7e}.menu-row>.icon{width:18px;height:18px;color:#bd8ea6}.menu-row span{flex:1}.menu-row small{font-size:10px;color:#c0a7b4}.personal-data{display:grid;grid-template-columns:80px 1fr;gap:12px;font-size:12px;margin:18px 0}.personal-data dt{color:#af91a1}.personal-data dd{margin:0;color:#785e6f;overflow-wrap:anywhere}.preference-row{margin:18px 0 25px}.preference-row label{font-size:12px;color:#8e6b7e;display:block;margin-bottom:9px}.preference-row input[type=range]{width:100%;accent-color:var(--pink);padding:0;background:none;border:0}.preference-row select{width:100%;border:1px solid #ebd7e2;border-radius:11px;color:#906a80;padding:10px;background:#fffafd;font-size:12px}.preference-row .range-values{display:flex;justify-content:space-between;font-size:11px;color:#d7759d;margin-top:6px}.preference-options{display:flex;gap:8px;flex-wrap:wrap}.preference-options label{font-size:11px;background:#fff3f8;padding:7px 10px;border-radius:18px;display:flex;gap:5px;align-items:center}.preference-options input{accent-color:var(--pink);width:auto;padding:0;margin:0}.sheet .select-field{width:100%;padding:10px;border:1px solid #eee0e7;border-radius:10px;color:#9a7489;background:#fff9fb}.sheet .profile-tags{margin:15px 0}.modal-note{font-size:10px;color:#b294a6;line-height:1.8;margin-top:14px}.chat-header{height:67px}.chat-scroller .bubble{font-size:13px}.chat-input input{font-size:13px}.photo-sheet img{width:100%;max-height:65vh;object-fit:contain}.screen-return{height:48px;display:flex;align-items:center;gap:10px;padding:10px 18px;flex:none;background:white;border-bottom:1px solid #f1e5ec}.screen-return button{display:flex;align-items:center;gap:5px;font-size:12px;color:#a77f95}.screen-return .icon{width:17px;height:17px}.catalog-host{height:100%;min-height:0}.ideal-panel{padding:25px 22px;background:radial-gradient(ellipse at 20% 20%,#542a59,transparent),#1b152c;color:white;min-height:100%;text-align:center}.ideal-panel h2{font-size:24px;line-height:1.6;margin:20px 0 9px;font-weight:500}.ideal-panel p{font-size:11px;color:#a89bbb}.ideal-bubbles{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;margin-top:30px}.ideal-bubbles button{width:83px;height:83px;border-radius:50%;background:radial-gradient(circle at 30% 20%,#6c3c80,#2b223c);box-shadow:0 0 18px #8754a433,inset 0 0 7px #ad77c152;border:1px solid #9160ac5c;font-size:11px;color:#c8a8e6}.ideal-bubbles button:nth-child(3n){width:95px;height:95px;background:radial-gradient(circle at 30% 20%,#3c6780,#20233c);color:#a4d9e7}.ideal-bubbles button:nth-child(3n + 1){background:radial-gradient(circle at 30% 20%,#803c6f,#3c2038);color:#e9b3d8}.ideal-bubbles button.active{outline:2px solid #f3bde0;outline-offset:4px}.ideal-panel .primary{margin-top:30px;width:100%}.catalog-heading{font-size:18px}.inline-error{font-size:11px;color:#d14a78;min-height:16px}.toast{max-width:320px}.profile-drawer .cosmic-cover{height:105px;border-radius:14px 14px 0 0}.profile-drawer .identity-line{margin-top:-35px}.profile-drawer .identity-line h2{color:#5d3c51;text-shadow:none}.profile-drawer .lifestyle-image{border-radius:10px;height:280px;min-height:0}.profile-drawer .profile-bio-video{padding-right:0;margin:16px 0}.profile-drawer .profile-tags{margin:14px 0}.profile-drawer .identity-line .person-avatar{width:70px;height:70px}.sheet-actions button:disabled{opacity:.5}.overview-banner{margin:15px 20px;background:#fff0f6;border:1px solid #f7dce8;border-radius:14px;padding:13px;color:#bb7294;font-size:11px;line-height:1.8}.about-list{font-size:12px;line-height:2;color:#a17c91;padding-left:18px}.stage-screen{height:100%;min-height:0}.onboarding-container{height:100%;min-height:0}.board-mode .phone{width:100%;height:100vh}.board-mode #browser-strip{font-size:9px}@media(min-width:701px){body{padding:22px 28px;gap:clamp(22px,5vw,85px)}.phone{height:min(890px,calc(100dvh - 44px))}.desktop-intro{max-height:calc(100dvh - 44px)}.intro-main{margin-top:clamp(16px,5vh,65px)}}@media(max-width:1100px){.desktop-intro{width:215px}.intro-main h1{font-size:31px}.desktop-detail{width:180px}.complete-stats strong{font-size:22px}}@media(max-width:950px){.desktop-detail{display:none}.desktop-intro{width:230px}}@media(max-width:700px){body{padding:0}.phone{width:100%;max-width:480px;height:100dvh}.app-header{height:59px}.statusbar{height:31px}.profile-bio-video{font-size:14px}.cosmic-cover{height:154px}.identity-line{margin-top:-47px}.video-card{border:0}.flow-nav{display:none}.desktop-intro{display:none}.home-indicator{height:max(13px,env(safe-area-inset-bottom))}.recommend-stage{padding-left:10px;padding-right:10px}.moment-text{font-size:14px}}@media(max-height:700px) and (min-width:701px){.intro-main h1{font-size:30px;margin:13px 0}.intro-main p{display:none}.flow-nav{margin-top:14px}.flow-nav button{padding:6px 10px}.preview-note small{font-size:9px}.cosmic-cover{height:133px}.identity-line{margin-top:-43px}.identity-line .person-avatar{width:76px;height:76px}.profile-bio-video{margin:12px 17px 16px}.profile-tags{margin-bottom:9px}.app-header{height:56px}.micro-context{padding-bottom:7px}}

/* Keep profile names clear across the cover fade. */
.identity-copy h2{color:#463242;text-shadow:none}.identity-line{margin-top:-65px}.profile-drawer .identity-line{margin-top:-35px}@media(max-width:700px){.identity-line{margin-top:-61px}.profile-drawer .identity-line{margin-top:-35px}}

/* Comfortable touch targets without enlarging the icon artwork. */
.bottom-nav button{min-height:48px;justify-content:center}
.chat-header>button{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;flex:none}
.chat-header{padding-left:9px;padding-right:9px;gap:9px}
.chat-input button{width:44px;height:44px;flex:none;display:grid;place-items:center}
.chat-input input{font-size:16px;min-height:44px}
.chat-notice{color:#98798b;font-size:10px}
.sheet input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),.sheet textarea,.sheet select{font-size:16px}
.sheet .close{min-width:44px;min-height:44px;display:grid;place-items:center}
.sheet .primary,.sheet .secondary{min-height:44px}
.moment-bottom{gap:5px;margin-top:8px;min-height:44px}
.moment-bottom button{min-width:44px;min-height:44px;justify-content:center;border-radius:50%;touch-action:manipulation}
.moment-bottom button:hover{background:#fff1f7}
.moment-bottom .moment-time{color:#9c8291;font-size:10px}
.moment-head small{color:#947c89;font-size:10px}
.moment-text{font-size:14px;color:#51424e}
.floating-stack button.greet{width:44px;height:44px;margin-left:1px}
.swipe-footer{height:44px;gap:10px;font-size:10px;color:#9f8294}
.swipe-footer button{min-width:44px;min-height:44px;padding:0 7px;font-size:11px;color:#be5a88;border-radius:10px}
.swipe-footer button:hover{background:#fff0f6}
.empty-state>button[data-action=undo]{display:block;margin:14px auto 0;min-height:44px}
.identity-copy p{color:#806774;font-size:12px}
.reason-line{font-size:11px;color:#9d8291}.reason-line b{color:#d9578b}
.profile-bio-video{font-size:14px;line-height:1.85}
@media(max-width:420px){.swipe-footer>span:first-child,.swipe-footer>span:nth-child(3){display:none}}

/* Text-first moments: a quiet, readable timeline with stable refresh. */
.feed-topic-chips{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;padding:3px 17px 13px;flex:none}
.feed-topic-chips button{flex:none;padding:7px 11px;border-radius:16px;background:#fff1f6;color:#bd6c91;font-size:11px;white-space:nowrap}
.feed-topic-chips .clear-topic{background:#f4eff5;color:#88748a}
.moment{align-items:flex-start;padding-top:19px;padding-bottom:14px;gap:12px}
.moment-avatar{align-self:flex-start;flex:none;width:40px;height:40px;border-radius:11px;overflow:hidden;display:block;margin-top:1px}
.moment-avatar .avatar{display:block;width:40px;height:40px;border-radius:11px;object-fit:cover}
.moment-head{min-height:26px}
.moment-head strong{font-size:14px;color:#685071;font-weight:600}
.moment-head>button{border:0;background:#fff3f8;color:#d55a8c;padding:5px 11px;font-size:11px}
.moment-text{margin:7px 0 5px;font-size:14px;line-height:1.9;color:#493e47;overflow-wrap:anywhere}
.moment-bottom{margin-top:5px}
.moment-bottom .moment-time{font-size:10px;color:#ac94a3}
.feed-update{margin:0 17px 8px;padding:10px;border-radius:12px;background:#fff0f7;color:#d3558b;font-size:12px;flex:none}
.feed-update[hidden]{display:none}
.chat-disclosure{font-size:14px;line-height:1.9;color:#7d6175;margin:17px 0 24px}

/* Independent profile artwork and face-centered avatar viewports. */
.cosmic-cover{background:#30243f}
.cosmic-cover::before,.cosmic-cover::after{display:none}
.profile-cover-art{display:block;width:100%;height:100%;pointer-events:none}
.profile-cover-frame{height:100%;width:100%;position:relative;overflow:hidden;background:#241b22;pointer-events:none}
.profile-cover-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 45%;pointer-events:none}
.profile-cover-frame::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#100b0e0a 40%,#100b0e25 72%,#1e151b77);pointer-events:none}
.cover-menu{width:44px;height:38px;top:6px;right:7px;text-shadow:0 1px 5px #15112880}
.avatar-frame{position:relative;display:inline-block;width:45px;height:45px;overflow:hidden;isolation:isolate;border-radius:50%;vertical-align:middle;flex:none;background:#f1e5ed}
.avatar-frame>img{position:absolute!important;display:block!important;left:var(--avatar-left)!important;top:var(--avatar-top)!important;width:var(--avatar-width)!important;height:auto!important;min-width:0!important;max-width:none!important;max-height:none!important;object-fit:fill!important;object-position:initial!important;border:0!important;border-radius:0!important;margin:0!important;transform:none!important;box-shadow:none!important}
.match-pictures>.avatar-frame{width:112px;height:112px;border:5px solid #fff;border-radius:50%;box-shadow:0 5px 20px #b5779522;transform:rotate(-8deg)}
.match-pictures>.avatar-frame:last-child{transform:rotate(8deg);margin-left:4px}
.identity-line .person-avatar.avatar-frame{display:block}

/* Large, explicit recommendation choices: like on the left, skip on the right. */
.swipe-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;flex:none;margin-top:13px}
.swipe-choice{display:flex;align-items:center;justify-content:center;gap:9px;min-height:50px;border-radius:15px;font-size:16px;font-weight:600;transition:transform .16s,background .16s}
.swipe-choice .icon{width:23px;height:23px}
.swipe-choice-like{background:#f34d8a;color:#fff;box-shadow:0 5px 13px #ef4b8526}
.swipe-choice-like .icon{fill:currentColor}
.swipe-choice-pass{background:#f2eef5;color:#89768f;border:1px solid #e9e0ed}
.swipe-choice-like:hover{background:#e83879}
.swipe-choice-pass:hover{background:#eae2f0}
.swipe-choice:active{transform:scale(.97)}
.swipe-choice:focus-visible{outline:3px solid #8b5274;outline-offset:3px}
.swipe-footer>span.swipe-help{display:inline}
.recommend-stage .floating-stack{bottom:18px}
@media(prefers-reduced-motion:reduce){.swipe-choice{transition:none}}

.comments-sheet{display:flex;flex-direction:column;overflow:hidden}
.comments-sheet .sheet-header,.comment-source,.comment-compose{flex:none}
.comments-sheet .comment-source{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;line-height:1.7;margin:8px 0 14px}
.comment-list{overflow-y:auto;overscroll-behavior:contain;min-height:0;max-height:49vh;flex:1;scrollbar-width:thin}
.comments-sheet .comment{align-items:flex-start;gap:10px;padding:14px 0}
.comments-sheet .comment .avatar{width:34px;height:34px;flex:none}
.comment-main{min-width:0;flex:1}
.comment-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:24px}
.comment-meta strong{font-size:12px;overflow-wrap:anywhere}
.comments-sheet .comment-main p{font-size:13px;line-height:1.75;margin:4px 0 0;overflow-wrap:anywhere;white-space:pre-wrap}
.comment-recipient{color:#bd6b91}
.comment-reply{color:#bf7094;font-size:11px;min-width:44px;min-height:36px;flex:none}
.comment-compose{padding-top:13px;border-top:1px solid #f1e6ed;background:#fff}
.comment-compose .inline-form{margin:0;gap:9px}
.comment-compose input{min-width:0;font-size:16px;flex:1}
.comment-compose .primary{min-height:48px;white-space:nowrap}
.comment-reply-target{display:flex;align-items:center;justify-content:space-between;color:#b57796;font-size:12px;margin-bottom:7px}
.comment-reply-target[hidden]{display:none}
.comment-reply-target button{min-width:44px;min-height:32px;font-size:20px}
.comment-empty{font-size:13px;padding:15px 0;color:#b394a5}
.chat-retry{padding:12px 18px;text-align:center;font-size:12px;color:#a1798e}
.chat-retry button{min-width:48px;min-height:36px;margin-left:7px;color:#d34b82;text-decoration:underline}

/* journey.css */
.journey-root{--journey-pink:#ed4c86;--journey-ink:#40303a;--journey-muted:#a48897;box-sizing:border-box;width:100%;height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;background:#fff;color:var(--journey-ink);font:14px/1.6 "PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;text-align:left;scrollbar-width:thin;scrollbar-color:#edc5d7 transparent;isolation:isolate}
.journey-root *,.journey-root *::before,.journey-root *::after{box-sizing:border-box}
.journey-root button,.journey-root textarea{font:inherit}
.journey-root button{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.journey-root button:disabled{opacity:.55;cursor:wait}
.journey-root button:focus-visible,.journey-root textarea:focus-visible{outline:3px solid #f5aac9;outline-offset:4px}
.journey-root [hidden]{display:none!important}
.journey-icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.journey-gate-inner{max-width:510px;min-height:100%;margin:auto;padding:23px 25px 20px;background:radial-gradient(ellipse at 50% 35%,#fff0f6,transparent 54%);display:flex;flex-direction:column}
.journey-header{display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:35px;flex:none}
.journey-brand{display:flex;align-items:center;gap:8px;white-space:nowrap}
.journey-brand strong{font-size:22px;line-height:1;font-weight:700;letter-spacing:1px}
.journey-brand small{font-size:9px;color:#b39aa7;letter-spacing:1px;margin-left:2px;margin-top:3px}
.journey-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--journey-pink);color:white;box-shadow:0 3px 10px #ed4c8617;transform:rotate(-4deg)}
.journey-mark .journey-icon{width:21px;height:21px;fill:#fff;stroke:#fff}
.journey-adult{font-size:10px;color:#b697a7;border:1px solid #efdce5;padding:3px 8px;border-radius:15px}
.journey-hero{position:relative;height:300px;min-height:250px;flex:none;margin:25px -7px 12px;isolation:isolate}
.journey-hero::before{position:absolute;content:"";width:265px;height:265px;left:50%;top:17px;transform:translateX(-50%);border:1px solid #f2dce6;border-radius:50%;z-index:-1}
.journey-photo{position:absolute;width:43%;height:75%;border:5px solid white;border-radius:22px;overflow:hidden;background:#f2e3ea;box-shadow:0 10px 32px #976c8520;margin:0}
.journey-photo img{width:100%;height:100%;object-fit:cover;display:block}
.journey-photo-0{left:0;top:26px;transform:rotate(-13deg)}
.journey-photo-1{left:28%;top:7px;transform:rotate(4deg);z-index:2;height:85%;width:48%}
.journey-photo-2{right:-2px;top:57px;transform:rotate(13deg);width:36%;height:67%;z-index:3}
.journey-photo figcaption{position:absolute;right:7px;bottom:7px;color:#fff;font-size:7px;background:#46333b66;border-radius:10px;padding:2px 5px}
.journey-float{position:absolute;display:flex;align-items:center;gap:5px;padding:8px 12px;border:1px solid #f7dee9;border-radius:30px;background:#fffffff5;box-shadow:0 4px 16px #8c5b7611;color:#bd7c99;font-size:10px;z-index:5;white-space:nowrap}
.journey-float .journey-icon{width:13px;height:13px;color:#ec7ca5}
.journey-float-one{left:3px;bottom:19px;transform:rotate(-7deg)}
.journey-float-two{right:-2px;top:24px;transform:rotate(7deg)}
.journey-gate-copy{text-align:center}
.journey-eyebrow{display:block;font-size:9px;font-weight:600;letter-spacing:3px;color:#c28ba3}
.journey-gate-copy h1{font-size:29px;font-weight:650;line-height:1.45;letter-spacing:.3px;margin:12px 0 12px;color:#49313e}
.journey-gate-copy>p{font-size:12px;line-height:1.9;color:#aa8b9b;margin:0}
.journey-values{display:flex;justify-content:center;align-items:center;gap:12px;margin:17px 0 23px;font-size:10px;color:#bd97a9}
.journey-values i{width:3px;height:3px;background:#e8b3c9;border-radius:50%}
.journey-gate-actions{margin-top:auto;text-align:center}
.journey-primary{display:flex;justify-content:center;align-items:center;gap:13px;border:0;border-radius:15px;min-height:51px;padding:13px 18px;width:100%;background:var(--journey-pink);color:#fff;font-size:14px;box-shadow:0 5px 18px #ed4c8622;font-weight:550}
.journey-primary:hover:not(:disabled){background:#d93671}
.journey-primary .journey-icon{width:18px;height:18px}
.journey-resume{border:0;background:transparent;color:#bc7d99;font-size:11px;margin-top:12px;padding:5px}
.journey-action-hint{text-align:center;color:#baa1ae;font-size:9px;margin:12px 0 0;line-height:1.8}
.journey-disclosure{color:#bda7b2;font-size:8px;line-height:1.85;margin:15px 0 0}
.journey-status{font-size:11px;line-height:1.8;color:#b34c77;margin:12px 0 0;text-align:center;overflow-wrap:anywhere}
.journey-status:empty{display:none}
.journey-guide-inner{max-width:510px;margin:auto;min-height:100%;padding:21px 25px 22px;background:radial-gradient(ellipse at 100% 7%,#fff1f7,transparent 44%)}
.journey-guide .journey-header{justify-content:flex-start}
.journey-guide .journey-brand strong{font-size:19px}
.journey-guide .journey-mark{width:29px;height:29px;border-radius:9px}
.journey-guide .journey-mark .journey-icon{width:18px;height:18px}
.journey-back{display:grid;place-items:center;width:30px;height:33px;background:transparent;border:0;color:#a88a9b;margin-left:-8px;padding:5px}
.journey-menu-demo{position:relative;height:119px;margin:13px 0 4px;pointer-events:none}
.journey-illustration-label{position:absolute;right:49px;top:5px;color:#c2a1b2;font-size:9px}
.journey-demo-dots{position:absolute;right:0;top:-2px;border:1px dashed #eab6ce;border-radius:10px;background:#fff6fa;display:grid;place-items:center;width:40px;height:31px;font-size:24px;letter-spacing:2px;line-height:1;color:#cd7299;padding-bottom:12px}
.journey-guide-arrow{position:absolute;right:14px;top:23px;width:210px;height:87px;overflow:visible}
.journey-guide-arrow path{fill:none;stroke:#e386ac;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.journey-arrow-caption{position:absolute;right:162px;top:84px;font-size:10px;color:#c58ba5;transform:rotate(-9deg);background:#fff8fb;padding:0 5px}
.journey-guide-copy h1{font-size:28px;line-height:1.45;font-weight:650;letter-spacing:.4px;margin:10px 0 11px}
.journey-guide-copy>p{font-size:12px;line-height:1.85;color:#ac8c9e;margin:0}
.journey-safari-card{margin-top:24px;padding:19px 17px 17px;border:1px solid #f0dce6;border-radius:20px;background:linear-gradient(135deg,#fffbfd,#fff);box-shadow:0 5px 20px #b8789710}
.journey-safari-heading{display:flex;align-items:center;gap:11px;padding-bottom:17px;border-bottom:1px solid #f5e9ef}
.journey-safari-symbol{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#ffe8f1;color:#da6997;flex:none}
.journey-safari-symbol .journey-icon{width:28px;height:28px;stroke-width:1.35}
.journey-safari-heading h2{font-size:15px;line-height:1.5;font-weight:600;margin:0;color:#7b586c}
.journey-safari-heading p{font-size:10px;color:#b69aaa;margin:2px 0 0}
.journey-steps{list-style:none;padding:0;margin:17px 0 0;display:grid;gap:16px}
.journey-steps>li{display:flex;align-items:flex-start;gap:10px}
.journey-step-dot{width:23px;height:23px;background:#fff0f6;border:1px solid #f4d8e5;border-radius:50%;display:grid;place-items:center;flex:none;color:#d37b9f;font-size:10px;margin-top:1px}
.journey-steps strong{font-size:12px;color:#896578;font-weight:550}
.journey-steps p{font-size:10px;color:#b196a5;line-height:1.8;margin:3px 0 0}
.journey-copy{display:flex;align-items:center;justify-content:center;gap:7px;margin:15px auto 0;border:0;background:transparent;color:#cf779d;font-size:11px;padding:9px 13px}
.journey-copy .journey-icon{width:15px;height:15px}
.journey-local-note{font-size:9px;line-height:1.8;color:#b197a5;background:#fff7fa;border-radius:10px;padding:10px 12px;margin:5px 0 20px}
.journey-guide-actions{margin-top:18px}
.journey-manual-copy{margin:9px 0 12px}
.journey-manual-copy label{display:block;font-size:10px;color:#b58a9e;line-height:1.8}
.journey-link-field{display:block;width:100%;height:76px;border:1px solid #eacbd9;background:#fffafd;color:#956579;border-radius:10px;padding:9px;margin-top:5px;resize:vertical;font-size:10px;line-height:1.6;overflow-wrap:anywhere}
@media(min-width:540px){.journey-gate-inner,.journey-guide-inner{padding-left:34px;padding-right:34px}.journey-hero{height:330px}.journey-gate-copy h1{font-size:32px}.journey-guide-copy h1{font-size:31px}}
@media(max-width:359px){.journey-gate-inner,.journey-guide-inner{padding-left:19px;padding-right:19px}.journey-hero{height:267px;min-height:240px}.journey-gate-copy h1,.journey-guide-copy h1{font-size:25px}.journey-values{gap:9px}.journey-photo{border-width:4px}.journey-float{padding:6px 8px;font-size:9px}}
@media(max-height:760px){.journey-gate-inner{padding-top:18px}.journey-hero{height:250px;min-height:235px;margin-top:20px;margin-bottom:5px}.journey-gate-copy h1{font-size:26px;margin-top:8px}.journey-values{margin-top:12px;margin-bottom:18px}.journey-guide-inner{padding-top:17px}.journey-menu-demo{height:102px;margin-top:8px}.journey-safari-card{margin-top:19px}}
@media(prefers-reduced-motion:reduce){.journey-root *{scroll-behavior:auto!important;transition:none!important}}
/* Rotated photo edges stay inside the gate instead of creating a sideways scroll. */
.journey-root{overflow-x:hidden}
.journey-gate-inner,.journey-guide-inner{max-width:100%;min-width:0}
.journey-back{width:44px;height:44px}
.journey-copy,.journey-resume{min-height:44px}
@media(max-height:610px){.journey-gate-inner{padding:14px 22px 16px}.journey-hero{height:180px;min-height:180px;margin-top:15px}.journey-hero::before{width:185px;height:185px;top:0}.journey-photo-2{top:31px}.journey-photo-0{top:16px}.journey-float{font-size:9px;padding:6px 9px}.journey-float-one{bottom:8px}.journey-float-two{top:8px}.journey-gate-copy h1{font-size:24px;line-height:1.4;margin:8px 0}.journey-eyebrow{font-size:8px}.journey-values{margin:10px 0 14px}.journey-gate-copy>p{font-size:11px}}

/* Lightweight, looping browser guide. All artwork is local HTML/SVG. */
.journey-guide{overflow:hidden}
.journey-guide .journey-guide-inner{height:100%;min-height:0;padding:10px 20px 0;display:flex;flex-direction:column;background:linear-gradient(150deg,#fff9fc,#fff 46%)}
.journey-guide .journey-header{min-height:44px}
.journey-guide-label{margin-left:auto;color:#a17c90;font-size:10px}
.journey-guide-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#edc5d7 transparent;padding:8px 1px 12px}
.journey-guide .journey-guide-copy{padding:4px 0 17px}
.journey-guide .journey-eyebrow{font-size:8px;letter-spacing:2px;color:#bf7f9b}
.journey-guide .journey-guide-copy h1{font-size:23px;line-height:1.4;letter-spacing:0;margin:7px 0 6px}
.journey-guide .journey-guide-copy>p{font-size:11px;line-height:1.7;color:#927d89}
.journey-guide .journey-guide-actions{flex:none;margin:0;padding:10px 0 max(10px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid #f6e9ef;box-shadow:0 -8px 15px #ffffffd9;z-index:2}
.journey-guide .journey-guide-actions .journey-primary{min-height:46px;border-radius:14px;padding:11px}
.journey-guide .journey-action-hint{margin-top:6px;font-size:9px;color:#a78c9a}
.guide-animation{--guide-blue:#347bff;--guide-dark:#191e2b;border:1px solid #e9e9f5;border-radius:21px;overflow:hidden;background:#fff;box-shadow:0 7px 25px #40478c08}
.guide-art{position:relative;height:305px;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 90% 15%,#fff 0,transparent 35%),linear-gradient(135deg,#eef2ff,#f6f2ff);color:var(--guide-dark)}
.guide-art::after{content:"";position:absolute;bottom:0;left:0;right:0;height:7px;background:linear-gradient(transparent,#eff0fc);z-index:6;pointer-events:none}
.guide-art-label{position:absolute;top:9px;right:11px;font-size:8px;color:#9298b6;letter-spacing:1px}
.guide-device{position:absolute;top:22px;left:18px;width:224px;height:320px;border:5px solid #262933;border-radius:31px 31px 0 0;background:#fff;box-shadow:0 0 0 2px #9da4b4,4px 5px 14px #535e8a26;overflow:hidden}
.guide-device-status{height:29px;display:flex;align-items:center;justify-content:space-between;padding:4px 14px 0;font-size:10px;line-height:1;position:relative}
.guide-device-status i{height:15px;width:72px;background:#1d2028;position:absolute;top:0;left:50%;transform:translateX(-50%);border-radius:0 0 11px 11px}
.guide-device-status>span{font-size:8px}
.guide-appbar{height:43px;border-bottom:1px solid #ececf3;display:flex;align-items:center;justify-content:space-between;padding:0 12px;position:relative;z-index:4;background:#f8f9fc}
.guide-appbar>span:first-child{font-size:24px;font-weight:300;line-height:1}
.guide-appbar>div{text-align:center;line-height:1.3}
.guide-appbar b{display:block;font-size:11px;font-weight:650}
.guide-appbar small{font-size:7px;color:#9da2ae}
.guide-more{position:relative;width:31px;height:31px;border-radius:50%;display:grid;place-items:center;letter-spacing:1px;font-size:15px;background:#fff;box-shadow:0 0 0 4px var(--guide-blue),0 4px 13px #347bff40;transition:box-shadow .4s}
.guide-more::after{content:"";position:absolute;inset:-8px;border:2px solid #347bff77;border-radius:50%;animation:guide-tap 1.6s ease-out infinite}
.guide-mini-page{text-align:center;padding:23px 15px;background:linear-gradient(#fff5fa,#fff);height:250px}
.guide-mini-logo{width:28px;height:28px;display:grid;place-items:center;background:#ed4c86;color:white;border-radius:9px;font-size:17px;font-weight:bold;margin:0 auto 8px;transform:rotate(-5deg)}
.guide-mini-page>b{display:block;font-size:17px;line-height:1.5;font-weight:650;color:#543448}
.guide-mini-hearts{color:#e895ba;font-size:24px;letter-spacing:9px;margin:7px 0 3px}
.guide-mini-hearts>span{color:#ed4c86;font-size:34px}
.guide-mini-page>i{display:block;width:75%;height:4px;background:#f1e8ee;margin:6px auto;border-radius:4px}
.guide-mini-page>i+i{width:55%}
.guide-mini-button{display:block;color:#fff;background:#ed4c86;border-radius:8px;text-align:center;padding:7px;font-size:9px;margin:15px 4px 0}
.guide-dim{position:absolute;inset:29px 0 0;background:#252a394a;opacity:0;transition:opacity .5s;z-index:2}
.guide-menu{position:absolute;top:82px;left:0;right:0;padding:9px 11px 16px;background:#f9fafc;border-radius:20px 20px 0 0;z-index:5;transform:translateY(110%);opacity:0;transition:transform .65s cubic-bezier(.22,.8,.27,1),opacity .3s}
.guide-menu-title{text-align:center;font-size:14px;font-weight:700;position:relative;margin:0 0 10px}
.guide-menu-title>span{position:absolute;right:3px;top:-3px;font-size:21px;font-weight:400}
.guide-menu-row{display:flex;align-items:center;gap:10px;height:27px;background:#fff;padding:0 10px;font-size:10px;border-bottom:1px solid #f1f2f6;position:relative}
.guide-menu-row:nth-child(2){border-radius:10px 10px 0 0}
.guide-menu-row .journey-icon{width:16px;height:16px;stroke-width:1.7}
.guide-open-row{border-radius:0 0 10px 10px;height:40px;border:2px solid #347bff;color:#2465df;background:#edf3ff;box-shadow:0 0 0 3px #347bff12;font-weight:650}
.guide-open-row small{display:block;font-size:7px;line-height:1.3;font-weight:400;color:#7291c4}
.guide-row-tap{position:absolute;right:12px;top:12px;width:13px;height:13px;border-radius:50%;background:#347bff55;box-shadow:0 0 0 5px #347bff15;animation:guide-row-tap 1.6s .5s ease-out infinite}
.guide-blue-arrow{position:absolute;right:5px;top:52px;width:73px;height:220px;z-index:7;overflow:visible;transition:opacity .35s,transform .6s}
.guide-arrow-line{fill:none;stroke:var(--guide-blue);stroke-width:5;stroke-linecap:round;stroke-dasharray:8 12;animation:guide-dashes 2s linear infinite}
.guide-arrow-head{fill:var(--guide-blue)}
.guide-point-note{position:absolute;right:12px;bottom:26px;color:#3975e2;font-size:11px;letter-spacing:1px;transform:rotate(-8deg);transition:opacity .3s}
.guide-safari{position:absolute;inset:29px 0 0;background:#fff;z-index:8;opacity:0;transform:translateX(105%);transition:transform .65s cubic-bezier(.22,.8,.27,1),opacity .35s}
.guide-safari-toolbar{height:31px;display:flex;align-items:center;justify-content:space-around;background:#f4f5f9;color:#6d7486;font-size:9px;border-bottom:1px solid #e8eaf0}
.guide-safari-toolbar>span{background:#e9ebf1;border-radius:6px;padding:4px 12px;font-size:8px}
.guide-safari-body{padding:15px 16px;text-align:center}
.guide-safari-icon{display:grid;place-items:center;width:42px;height:42px;margin:auto;background:linear-gradient(145deg,#36b8fc,#3474ed);border-radius:13px;color:#fff;box-shadow:0 3px 10px #347bff20}
.guide-safari-icon .journey-icon{width:30px;height:30px;stroke-width:1.2}
.guide-success{display:flex;align-items:center;justify-content:center;gap:3px;font-size:8px;color:#3b9a7c;margin:7px 0 9px}
.guide-success .journey-icon{width:12px;height:12px}
.guide-safari-body>b{font-size:17px;color:#44343e;display:block}
.guide-safari-body>p{font-size:8px;color:#aa93a1;margin:2px 0 12px}
.guide-safari-body>div{padding:6px 8px;font-size:8px;border:1px solid #f1e6ec;border-radius:6px;text-align:left;margin-top:6px;color:#7e6272}
.guide-safari-body>div>i{font-style:normal;float:right;color:#bba8b2;font-size:8px}
.guide-caption{display:flex;gap:10px;align-items:flex-start;padding:14px 14px 0;min-height:76px}
.guide-caption-number{font-size:23px;font-weight:700;line-height:1.4;letter-spacing:-1px;color:#347bff}
.guide-caption h2{font-size:13px;line-height:1.6;color:#3a4055;margin:0;font-weight:650}
.guide-caption p{font-size:10px;line-height:1.6;color:#9395a7;margin:3px 0 0}
.guide-animation-controls{display:flex;align-items:center;padding:0 10px 5px;gap:2px;min-height:44px}
.guide-step-buttons{display:flex;align-items:center;margin-right:auto}
.guide-step-buttons>button,.guide-play,.guide-replay{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:#8790a8;font-size:10px;padding:4px 8px}
.guide-step-buttons>button>span{width:22px;height:22px;border-radius:50%;background:#f1f3fa;font-size:10px;display:grid;place-items:center;transition:background .3s,color .3s}
.guide-step-buttons>button[aria-pressed="true"]>span{background:#347bff;color:#fff;box-shadow:0 2px 6px #347bff25}
.guide-play{color:#347bff}
.guide-replay{gap:4px}
.guide-replay .journey-icon{width:12px;height:12px}
.guide-version-note{font-size:9px;line-height:1.7;color:#a69aa7;text-align:center;margin:10px 0 0}
.journey-guide .journey-copy{font-size:10px;margin:4px auto 0;min-height:44px;color:#b26b8c}
.journey-guide .journey-local-note{font-size:9px;line-height:1.7;margin:0;padding:9px 11px}
.guide-animation[data-guide-step="1"] .guide-menu{opacity:1;transform:translateY(0)}
.guide-animation[data-guide-step="1"] .guide-dim{opacity:1}
.guide-animation[data-guide-step="1"] .guide-more::after,.guide-animation[data-guide-step="2"] .guide-more::after{animation:none;opacity:0}
.guide-animation[data-guide-step="1"] .guide-blue-arrow{opacity:.75}
.guide-animation[data-guide-step="1"] .guide-point-note,.guide-animation[data-guide-step="2"] .guide-point-note{opacity:0}
.guide-animation[data-guide-step="2"] .guide-safari{opacity:1;transform:translateX(0)}
.guide-animation[data-guide-step="2"] .guide-blue-arrow{opacity:0}
.guide-animation.is-paused *{animation-play-state:paused!important}
@keyframes guide-tap{0%{transform:scale(.82);opacity:.7}80%,100%{transform:scale(1.26);opacity:0}}
@keyframes guide-row-tap{0%,100%{transform:scale(.8);opacity:.5}40%{transform:scale(1.15);opacity:1}}
@keyframes guide-dashes{to{stroke-dashoffset:-40}}
@media(max-width:359px){.journey-guide .journey-guide-inner{padding-left:15px;padding-right:15px}.journey-guide .journey-guide-copy h1{font-size:21px}.guide-device{left:11px;width:213px}.guide-blue-arrow{right:-8px;width:64px}.guide-point-note{right:6px;font-size:9px}}
@media(max-height:610px){.journey-guide .journey-guide-inner{padding-top:5px}.journey-guide .journey-guide-actions{padding-top:7px;padding-bottom:7px}.journey-guide .journey-action-hint{display:none}}
@media(max-height:610px){.guide-art{height:208px}.guide-device{top:15px;left:24px;transform:scale(.65);transform-origin:top left}.guide-blue-arrow{top:35px;right:30px;width:50px;height:160px}.guide-point-note{right:32px;bottom:20px;font-size:9px}.journey-guide .journey-guide-copy{padding:0 0 10px}.journey-guide .journey-guide-copy h1{font-size:20px;margin:4px 0}.journey-guide .journey-guide-copy>p{font-size:10px}.guide-caption{min-height:68px}}
@media(prefers-reduced-motion:reduce){.guide-animation *{animation:none!important;transition:none!important}}

/* Gate: local, silent video background with readable foreground. */
.journey-gate{position:relative;overflow:hidden;background:#201922 url('assets/video/gate-qianshou-poster.jpg') center center/cover no-repeat;color:#fff}
.gate-background-video,.gate-video-shade{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.gate-background-video{object-fit:cover;object-position:center;z-index:0}
.gate-video-shade{z-index:1;background:linear-gradient(180deg,rgba(24,17,29,.68) 0%,rgba(24,17,29,.16) 22%,rgba(28,18,31,.18) 36%,rgba(28,18,31,.64) 48%,rgba(28,18,31,.91) 72%,#211621 100%)}
.journey-gate .journey-gate-inner{position:relative;z-index:2;min-height:100%;height:100%;padding:24px;background:none;max-width:none}
.journey-gate .journey-brand strong{color:#fff}.journey-gate .journey-brand small{color:#f2e1eb}.journey-gate .journey-adult{color:#fff;border-color:#ffffff6b;background:#281b3033}
.gate-video-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:16px}
.gate-video-caption{font-size:11px;color:#fff;text-shadow:0 1px 8px #000}
.gate-video-toggle{display:flex;align-items:center;gap:6px;min-height:40px;border-radius:24px;border:1px solid #ffffff66;background:#241b315c;color:#fff;font-size:11px!important;padding:8px 13px;backdrop-filter:blur(10px)}
.gate-video-toggle .journey-icon{width:14px;height:14px;stroke-width:2}.gate-video-toggle:hover{background:#241b3188}
.journey-gate-bottom{margin-top:auto;padding-top:100px}
.journey-gate .journey-gate-copy{text-align:left}.journey-gate .journey-eyebrow{color:#f4b6d0;letter-spacing:2.5px;font-size:9px}
.journey-gate .journey-gate-copy h1{color:#fff;font-size:32px;line-height:1.32;letter-spacing:1px;margin:12px 0;font-weight:650;text-shadow:0 2px 20px #21162150}
.journey-gate .journey-gate-copy>p{color:#eee1e9;font-size:13px;line-height:1.9}
.journey-gate .journey-gate-actions{margin-top:22px}.journey-gate .journey-primary{background:#ed4c86;border-radius:16px;min-height:54px;font-size:16px;box-shadow:0 6px 24px #f74d8e30}
.journey-gate .journey-resume,.journey-gate .journey-action-hint{color:#e3ccd9;font-size:11px}.journey-gate .journey-status{color:#ffd5e6}
.gate-video-unavailable .gate-background-video{visibility:hidden}.gate-video-unavailable .gate-video-toggle:disabled{cursor:default;opacity:1}
@media(max-height:590px){.journey-gate .journey-gate-inner{padding:17px 22px}.gate-video-toolbar{margin-top:9px}.journey-gate-bottom{padding-top:44px}.journey-gate .journey-gate-copy h1{font-size:27px;margin:8px 0}.journey-gate .journey-gate-actions{margin-top:16px}.journey-gate .journey-gate-copy>p{font-size:12px}}
@media(max-height:450px){.journey-gate{overflow-y:auto}.journey-gate .journey-gate-inner{height:auto;min-height:100%}.journey-gate-bottom{padding-top:30px}.gate-video-toolbar{margin-top:5px}}

/* Six editorial night scenes share the same readable, warm Gate foreground. */
.journey-gate.journey-scene{background:#101014;--gate-accent:#ede2d8;--gate-button-ink:#18171b}
.gate-background-image,.gate-scene-shade{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.gate-background-image{object-fit:cover;object-position:center 30%;z-index:0}
.gate-scene-shade{z-index:1;background:linear-gradient(180deg,#100c1255 0%,#100c1200 19%,#100c1200 43%,#100c1255 63%,#100c12bb 100%)}
.journey-scene .journey-mark{background:var(--gate-accent);box-shadow:none;transform:none;border-radius:10px}
.journey-scene .journey-mark .journey-icon{fill:var(--gate-button-ink);stroke:var(--gate-button-ink)}
.journey-scene .journey-brand small{color:#e7dbcc}
.journey-scene .journey-adult{border-color:#f0e2ce55;background:#20180f30;color:#f3e8d9}
.journey-scene .journey-eyebrow{color:var(--gate-accent);font-size:9px;letter-spacing:3.2px}
.journey-scene .journey-gate-copy h1{color:#fffaf2;font-weight:500;letter-spacing:1px;text-shadow:0 2px 22px #0008}
.journey-scene .journey-gate-copy>p{color:#e4d9cc}
.journey-scene .journey-primary{background:var(--gate-accent);color:var(--gate-button-ink);border:1px solid #fff2d51a;border-radius:13px;box-shadow:0 8px 30px #0003;font-weight:650}
.journey-scene .journey-primary:hover:not(:disabled){background:var(--gate-accent);filter:brightness(1.08)}
.journey-scene .journey-primary:active:not(:disabled){filter:brightness(.94)}
.journey-scene .journey-resume,.journey-scene .journey-action-hint{color:#d4c4b2}
.journey-scene .journey-status{color:#efdbc0}
.journey-scene button:focus-visible{outline-color:var(--gate-accent)}
.phone:has(.journey-scene){border-color:#493c48;background:#101014}
.phone:has(.journey-scene) .statusbar{color:#f2eaf0;background:#101014}
.phone:has(.journey-scene) .status-island{background:#090807}
.phone:has(.journey-scene) .home-indicator{background:#101014}
.phone:has(.journey-scene) .home-indicator::after{background:#e6d7c5}

/* gate-carousel.css */
.gate-cover-host{position:absolute;inset:0;overflow:hidden;pointer-events:none;background:#100b0e}
.gate-cover-layer{position:absolute;top:0;left:0;width:100%;height:88%;object-fit:cover;opacity:0;transition:opacity .8s ease;filter:brightness(.84) saturate(.78);mask-image:linear-gradient(#000 0%,#000 80%,transparent 100%)}
.gate-cover-layer.is-visible{opacity:1}
.gate-cover-layer.is-preparing{transition:none}
.journey-carousel .gate-scene-shade{background:linear-gradient(180deg,#180b1466 0%,#180b1400 18%,#180b1400 36%,#140a117a 50%,#100b0ee8 68%,#100b0e 90%),linear-gradient(105deg,#af10266b 0%,#69172a0a 45%,#09060c4d 100%)}
.gate-cover-controls{display:flex;align-items:center;gap:0;margin:0 0 8px -10px;width:fit-content;color:#f0e7e2}
.gate-cover-controls button{position:relative;display:grid;place-items:center;flex-shrink:0;min-height:40px;min-width:30px;padding:0;border:0;background:transparent;color:inherit;border-radius:20px;cursor:pointer}
.gate-cover-controls button:hover{background:#ffffff15}
.gate-cover-controls button:focus-visible{outline:1px solid #e9d7c9;outline-offset:1px}
.gate-cover-controls svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.gate-cover-dots{display:flex;gap:0;align-items:center}
.gate-cover-dots button{min-width:23px}
.gate-cover-dots span{width:4px;height:4px;border-radius:4px;background:#fffa;transition:width .25s,background .25s}
.gate-cover-dots [aria-pressed=true] span{width:16px;background:#f5e8de}
.gate-cover-controls .gate-cover-toggle{margin-left:7px;border:1px solid #ffffff38;min-width:32px;min-height:32px}
.journey-carousel .journey-gate-copy h1{font-size:30px;margin-top:6px}
@media(max-height:590px){.journey-carousel .journey-gate-copy h1{font-size:25px}.gate-cover-controls{margin-bottom:1px}.journey-carousel .journey-gate-bottom{padding-top:15px}}
@media(prefers-reduced-motion:reduce){.gate-cover-layer,.gate-cover-dots span{transition:none}}

/* catalog.css */
.cat-root {
  --cat-ink: #25232b;
  --cat-muted: #8a8392;
  --cat-pink: #ef347f;
  --cat-pale: #fff0f6;
  box-sizing: border-box;
  container: cat-library / inline-size;
  min-height: 100%;
  color: var(--cat-ink);
  background: #fffafb;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;
  line-height: 1.5;
  text-align: left;
  -webkit-tap-highlight-color: transparent;
}
.cat-root *, .cat-root *::before, .cat-root *::after { box-sizing: border-box; }
.cat-root [hidden] { display: none !important; }
.cat-root button, .cat-root input, .cat-root select { font: inherit; }
.cat-root button, .cat-root select { cursor: pointer; }
.cat-root button { -webkit-appearance: none; appearance: none; }
.cat-root button:disabled, .cat-root select:disabled { cursor: default; }
.cat-root button:focus-visible, .cat-root input:focus-visible, .cat-root select:focus-visible {
  outline: 3px solid #fa8bb9;
  outline-offset: 3px;
}
.cat-header {
  position: sticky;
  top: 0;
  z-index: 8;
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 78px;
  padding: 13px 16px;
  border-bottom: 1px solid #f3e8ee;
  background: rgba(255, 252, 254, .97);
}
.cat-back {
  display: grid;
  place-items: center;
  flex: 0 0 42px;
  width: 42px;
  height: 44px;
  padding: 0;
  border: 1px solid #f3e3eb;
  border-radius: 15px;
  color: var(--cat-ink);
  background: #fff;
  font-size: 24px !important;
}
.cat-title-group { min-width: 0; }
.cat-title-line { display: flex; align-items: center; gap: 9px; }
.cat-title { margin: 0; font-size: 21px; font-weight: 750; letter-spacing: -.5px; }
.cat-total { padding: 1px 9px; border-radius: 20px; color: #cc256a; background: #ffe6f0; font-size: 13px; font-weight: 750; }
.cat-subtitle { margin: 2px 0 0; color: var(--cat-muted); font-size: 11px; }
.cat-content { max-width: 1024px; margin: 0 auto; padding: 16px 16px calc(26px + env(safe-area-inset-bottom, 0px)); }
.cat-controls { display: grid; gap: 13px; }
.cat-search-label { position: relative; display: block; }
.cat-search-icon { position: absolute; left: 14px; top: 8px; color: #ad99a3; font-size: 24px; line-height: 30px; pointer-events: none; }
.cat-search {
  display: block;
  width: 100%;
  height: 48px;
  padding: 10px 14px 10px 41px;
  border: 1px solid #f0e3e9;
  border-radius: 15px;
  color: var(--cat-ink);
  background: #fff;
  font-size: 15px !important;
}
.cat-search::placeholder { color: #b0a4ac; }
.cat-filter-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.cat-filter-label { display: grid; min-width: 0; gap: 5px; }
.cat-field-name { color: #8a7984; font-size: 11px; }
.cat-select {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 8px 8px;
  border: 1px solid #f0e3e9;
  border-radius: 12px;
  color: #50434b;
  background: #fff;
  font-size: 12px !important;
}
.cat-gender-line { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.cat-gender-group { display: flex; gap: 6px; }
.cat-gender {
  min-width: 56px;
  min-height: 40px;
  padding: 7px 13px;
  border: 1px solid transparent;
  border-radius: 22px;
  color: #80717b;
  background: #f4eef1;
  font-size: 13px !important;
  font-weight: 650 !important;
}
.cat-gender[aria-pressed="true"] { border-color: #ffbdd7; color: #d6236d; background: #ffe4ef; }
.cat-reset { min-height: 40px; padding: 7px 0 7px 8px; border: 0; color: #bc3870; background: transparent; font-size: 12px !important; white-space: nowrap; }
.cat-reset:disabled { color: #c6b9c0; }
.cat-notice { margin: 13px 0 0; color: #93828d; font-size: 10px; line-height: 1.75; }
.cat-result-line { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin: 19px 0 11px; scroll-margin-top: 88px; }
.cat-result-count { margin: 0; color: #51414b; font-size: 13px; font-weight: 700; }
.cat-page-hint { color: #a08c98; font-size: 11px; font-variant-numeric: tabular-nums; }
.cat-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.cat-card {
  display: block;
  min-width: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #f3e3eb;
  border-radius: 17px;
  color: var(--cat-ink);
  background: #fff;
  text-align: left;
  box-shadow: 0 3px 9px #61404f04;
  transition: border-color .16s ease, box-shadow .16s ease;
}
.cat-card:hover { border-color: #f4b0cc; box-shadow: 0 4px 17px #cd518312; }
.cat-photo { position: relative; display: block; aspect-ratio: 3 / 4; overflow: hidden; background: #f4edf1; }
.cat-image { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.cat-photo-fallback { display: grid; width: 100%; height: 100%; place-items: center; padding: 14px; color: #a78d9a; background: linear-gradient(135deg, #fff2f7, #f1e9ef); text-align: center; font-size: 12px; }
.cat-badge { position: absolute; top: 9px; left: 8px; padding: 2px 7px; border: 1px solid #ffffff60; border-radius: 10px; color: #fff; background: #3b273b85; font-size: 9px; line-height: 1.8; }
.cat-review { position: absolute; bottom: 7px; left: 7px; padding: 3px 7px; border-radius: 8px; color: #784c18; background: #fff5daef; font-size: 9px; }
.cat-card-info { display: block; padding: 10px 10px 12px; }
.cat-card-name { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; font-weight: 750; line-height: 1.5; }
.cat-card-meta { display: block; margin-top: 3px; color: #9c8794; font-size: 10px; line-height: 1.6; }
.cat-tags { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 8px; min-height: 21px; }
.cat-tag { max-width: 100%; overflow: hidden; padding: 2px 6px; border-radius: 8px; color: #cc4e82; background: #fff0f6; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.cat-pagination { display: grid; grid-template-columns: 1fr auto 1fr; gap: 7px; margin-top: 22px; align-items: center; }
.cat-page-button { min-height: 44px; padding: 8px 10px; border: 1px solid #f1d3e0; border-radius: 12px; color: #bf316e; background: #fff; font-size: 12px !important; white-space: nowrap; }
.cat-page-button:disabled { border-color: #eee7eb; color: #c9bac2; background: #f9f5f7; }
.cat-page-picker { display: block; }
.cat-page-select { max-width: 122px; min-height: 44px; padding: 7px 4px; border: 0; border-radius: 10px; color: #8d687b; background: transparent; font-size: 11px !important; text-align: center; }
.cat-footer { margin: 13px 0 0; color: #ab96a2; text-align: center; font-size: 10px; }
.cat-empty { padding: 42px 16px 30px; border: 1px dashed #efd7e3; border-radius: 20px; background: #fff; text-align: center; }
.cat-empty-mark { color: #ef86b1; font-size: 42px; }
.cat-empty-title { margin: 9px 0 6px; color: #745362; font-size: 16px; }
.cat-empty-copy { margin: 0; color: #a08a95; font-size: 12px; }
.cat-empty-reset { min-height: 44px; margin-top: 20px; padding: 9px 23px; border: 0; border-radius: 13px; color: #fff; background: var(--cat-pink); font-size: 13px !important; }
.cat-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@container cat-library (min-width: 640px) {
  .cat-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
  .cat-content { padding-inline: 24px; }
  .cat-header { padding-inline: 24px; }
  .cat-card-info { padding: 12px 13px 14px; }
  .cat-card-name { font-size: 15px; }
  .cat-card-meta { font-size: 11px; }
  .cat-tag { font-size: 10px; }
}
@container cat-library (min-width: 920px) {
  .cat-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (prefers-reduced-motion: reduce) { .cat-card { transition: none; } }

/* night-entrance.css */
/* Shared entrance palette. Safari's OS menu keeps its familiar system appearance. */
.phone:has(.journey-root,.ob-root){--night-bg:#151015;--night-panel:#241c24;--night-line:#4b3b46;--night-cream:#eee1d3;border-color:#493c48;background:var(--night-bg)}
.phone:has(.journey-root,.ob-root) .statusbar,.phone:has(.journey-root,.ob-root) .home-indicator{background:#151015;color:#f0e6df}
.phone:has(.journey-root,.ob-root) .status-island{background:#090709}
.phone:has(.journey-root,.ob-root) .home-indicator::after{background:#e7d9cb}
.phone:has(.journey-root,.ob-root) #app{background:#151015}
.journey-single .gate-background-image{height:80%;object-position:51% 25%;filter:brightness(.84) saturate(.78);mask-image:linear-gradient(#000 0%,#000 80%,transparent 100%)}
.journey-single .gate-scene-shade{background:linear-gradient(180deg,#180b1466 0%,#180b1400 18%,#180b1400 36%,#140a117a 50%,#100b0ee8 68%,#100b0e 90%),linear-gradient(105deg,#af10266b 0%,#69172a0a 45%,#09060c4d 100%)}
.journey-single .journey-gate-copy h1{font-size:30px;font-weight:500}
.journey-guide{--journey-ink:#f0e6df;--journey-muted:#b9aab3;--journey-pink:#eee1d3;background:#151015;color:var(--journey-ink)}
.journey-guide .journey-guide-inner{background:radial-gradient(ellipse at 100% 0,#44233380,transparent 48%),#151015}
.journey-guide .journey-brand small,.journey-guide-label,.journey-guide .journey-guide-copy>p{color:#bbaab4}
.journey-guide .journey-back{color:#ddcfc4}
.journey-guide .journey-mark{background:#eee1d3;color:#20161d;box-shadow:none;transform:none}
.journey-guide .journey-mark .journey-icon{fill:#20161d;stroke:#20161d}
.journey-guide .journey-eyebrow{color:#cbb5a4;letter-spacing:2.5px}
.journey-guide .journey-guide-copy h1{font-weight:500;color:#f4e9df}
.journey-guide .journey-guide-actions{background:#151015;border-color:#44313d;box-shadow:0 -10px 20px #151015d9;padding-top:14px}
.journey-guide .journey-primary{background:#eee1d3;color:#21191f;box-shadow:0 6px 20px #0002;border-radius:13px;font-weight:600}
.journey-guide .journey-primary:hover:not(:disabled){background:#fff0e3}
.journey-guide .journey-action-hint,.guide-version-note{color:#b7a5b0}
.journey-guide-scroll{scrollbar-color:#6b4d60 transparent}
.journey-guide .journey-copy{color:#dec9b7}
.journey-guide .journey-local-note{display:none}
.journey-guide .journey-link-field{background:#251c24;color:#ede0d4;border-color:#6d5361}
.journey-guide .journey-status{color:#e5c2ad}
.journey-guide button:focus-visible{outline-color:#e4cbb5}
.guide-animation{border-color:#59434f;background:#211a21;box-shadow:0 14px 35px #0003}
.guide-art{background:radial-gradient(ellipse at 30% 20%,#6d334653,transparent 70%),linear-gradient(140deg,#32232f,#201a23);height:278px}
.guide-art::after{background:linear-gradient(transparent,#211a21)}
.guide-art-label{color:#bcabb9}
.guide-device{border-color:#151115;box-shadow:0 0 0 1px #8a7581,4px 5px 20px #0005;transform:scale(.82);transform-origin:top left;top:18px;left:24px}
.guide-blue-arrow{height:195px;top:43px}
.guide-mini-page{position:relative;background:linear-gradient(180deg,#1b10140a,#171017d9 80%),url('assets/optimized/people/SA067.jpg') center 22%/cover;text-align:left;padding:14px 13px;color:#f7e8dc}
.guide-mini-logo{background:#eee1d3;color:#251b23;margin:0 0 60px;transform:none;width:23px;height:23px;font-size:14px;border-radius:7px}
.guide-mini-page>b{color:#fff4e7;font-size:15px;font-weight:500;text-shadow:0 2px 10px #000}
.guide-mini-hearts,.guide-mini-page>i{display:none}
.guide-mini-page .guide-mini-button{background:#eee1d3;color:#21171e;margin:12px 0 0}
.guide-caption-number{color:#d9c2af}
.guide-caption h2{color:#f2e8e0}
.guide-caption p{color:#b4a4b0}
.guide-step-buttons>button>span{background:#3b2b37;color:#cbb9c6}
.guide-step-buttons>button[aria-pressed=true]>span{background:#e9d7c6;color:#241c23;box-shadow:none}
.guide-play,.guide-replay{color:#e4cdb9}
.guide-safari{background:#191218}
.guide-safari-body>b{color:#f0e3d8}.guide-safari-body>p{color:#b9a1b0}
.guide-safari-body>div{border-color:#4d3747;background:#291e29;color:#d7bfcd}
.guide-safari-body>div>i{color:#ab91a2}
.guide-safari-body .guide-mini-button{background:#eee1d3;color:#22191f}
.guide-success{color:#a4d1ba}
.ob-root{--ob-pink:#e8d6c4;--ob-pink-dark:#fff0e2;--ob-ink:#f1e7df;--ob-muted:#bbaab4;--ob-line:#4a3543;--ob-blush:#3b2835;color-scheme:dark;background:radial-gradient(ellipse at 100% 0,#4b293c5c,transparent 42%),#191219;color:var(--ob-ink)}
.ob-back{color:#ddc7b5}.ob-step-number{color:#d5bbab}
.ob-progress{gap:8px}.ob-progress>span{height:2px;background:#4c3442}.ob-progress>span.ob-progress-done{background:#ddc1a9}
.ob-scroll{scrollbar-color:#6c4b60 transparent}
.ob-heading{padding-bottom:18px;border-bottom:1px solid #43303d;margin-bottom:22px}
.ob-heading h2{font-weight:500;letter-spacing:.3px;color:#f4e7dd}
.ob-field>label,.ob-fieldset>legend{color:#e0ced9;font-weight:500}
.ob-optional,.ob-optional-divider,.ob-optional-divider>span,.ob-field-meta,.ob-hint{color:#b59dac}
.ob-input{background:#281d29;border-color:#503a49;color:#f5e7ed;border-radius:12px;box-shadow:inset 0 1px 0 #ffffff04}
.ob-input::placeholder{color:#a5899d}
.ob-input[aria-invalid=true]{border-color:#e69a94;background:#3a222d}
.ob-date{color-scheme:dark}
.ob-option-face{border-color:#4a3543;color:#cdb4c5;background:#241a24}
.ob-option>input:checked+.ob-option-face{background:#402c38;border-color:#d8bba7;color:#f1dfd1}
.ob-option-dot{border-color:#87697c}
.ob-option>input:checked+.ob-option-face .ob-option-dot{border-color:#ddc4b2;background:#ddc4b2}
.ob-option>input:checked+.ob-option-face .ob-option-dot::after{background:#32222d}
.ob-root button:focus-visible,.ob-root input:focus-visible,.ob-root textarea:focus-visible,.ob-root select:focus-visible,.ob-option>input:focus-visible+.ob-option-face{outline-color:#d6b9a3}
.ob-actions{background:#191219;border-color:#493342;box-shadow:0 -10px 24px #191219bb;padding-top:14px}
.ob-primary{background:#eee1d3;color:#241a21;box-shadow:0 5px 20px #0002;font-weight:600;border-radius:13px}
.ob-primary:hover:not(:disabled){background:#fff2e5}
.ob-error,.ob-status{color:#edaaa8}
.ob-avatar,.ob-preview-avatar{border-color:#755369;background:#392637;box-shadow:none}
.ob-avatar-placeholder{background:linear-gradient(135deg,#694359,#32232f);color:#efd6cc}
.ob-upload-button{border-color:#79556c;color:#ead7cc;background:#362432}
.ob-link{color:#dec2ac}.ob-link:hover{color:#fff0df}
.ob-interest{border-color:#4e3547;background:#261b26;color:#c7abba}
.ob-interest.ob-selected{background:#493041;border-color:#d4b49e;color:#f4ddc9}
.ob-preview-card{border-color:#795768;background:radial-gradient(ellipse at 95% 0,#7a415b80,transparent 68%),linear-gradient(140deg,#372431,#211822);box-shadow:0 14px 30px #0002}
.ob-preview-name{color:#f3e6dc}.ob-preview-meta,.ob-preview-signature,.ob-preview-details{color:#d0b7c6}
.ob-local-badge{color:#e5cbb7;border-color:#805e70;background:#25182488}
.ob-preview-tags>span{border-color:#6c495e;background:#462c3d;color:#e3c5d3}
.ob-preview-footer{border-color:#624456;color:#cdb0c0}
.ob-review-date,.ob-review-date strong{color:#b99dad}
.ob-soft-note{background:#2a1b27;color:#c3a5b8}
@media(max-height:610px){.guide-art{height:208px}.guide-device{transform:scale(.65);top:10px}.guide-blue-arrow{height:160px;top:30px}.journey-single .journey-gate-copy h1{font-size:26px}}

/* night-app.css */
/* The Safari app shares the Gate's charcoal and burgundy palette. */
body{background:radial-gradient(ellipse at 12% 15%,#35192480,transparent 55%),#100b0e;color:#eee3dc}
body.board-mode{background:#100b0e}
.phone{--ink:#eee3dc;--muted:#bcaab3;--line:#3e2d37;--pink:#e6c8b2;--pink-dark:#f4dfcd;--pale:#36232d;--white:#171016;--background:#100b0e;color-scheme:dark;background:#100b0e;color:var(--ink);border-color:#4d3844;box-shadow:0 28px 80px #0004}
.phone #app{background:radial-gradient(ellipse at 0 0,#48233455,transparent 42%),#100b0e}
.phone .statusbar,.phone .home-indicator,.phone .bottom-nav{background:#100b0e;color:#eee3dc}
.phone .status-island{background:#080607}.phone .home-indicator::after{background:#e7d6c8}
.phone #browser-strip{background:#1b1219;color:#bca6b2;border-color:var(--line)}
.phone .bottom-nav{border-color:#4b313e}.phone .bottom-nav button{color:#b8a2b0}.phone .bottom-nav button.active{color:#eed6c2}
.phone .bottom-nav button.active .icon{fill:#eed6c2;stroke:#eed6c2}.phone .nav-dot{border-color:#100b0e;background:#dd92a5}
.phone .app-title{color:#f3e8e0}.phone .app-subtitle,.phone .micro-context{color:#bda5b4}
.phone .round-small{background:#271b24;color:#e4cfd9;border-color:#4b3441;box-shadow:none}
.phone .video-deck::before{background:#3e2935}.phone .video-card{background:#1e151b;border-color:#49303f;box-shadow:0 8px 25px #0003}
.phone .identity-line{background:linear-gradient(transparent,#1e151b 86%)}
.phone .identity-line::before{background:linear-gradient(transparent,#1e151b)}
.phone .identity-line .person-avatar{border-color:#ddc8b9;background:#30232c}
.phone .identity-copy h2,.phone .profile-drawer .identity-line h2{color:#f2e2d7}
.phone .identity-copy p{color:#c2aab8}.phone .reason-line{color:#bba2b1}.phone .reason-line b{color:#e5b7bc}
.phone .profile-tags button{background:#342530;color:#dfcbd6;border:1px solid #4e3745}
.phone .profile-tags button:first-child{background:#603547;border-color:#805166;color:#f8e1e5}
.phone .profile-bio-video{color:#e1ced8}.phone .profile-meta-note{background:#1e151b;color:#bda3b4}
.phone .floating-stack button{background:#251b24f5;color:#c8b1c4;box-shadow:0 4px 16px #0004;border:1px solid #765564}
.phone .floating-stack button.like{color:#ed9eb5}.phone .floating-stack button.greet{color:#e0b8cc}
.phone .swipe-choice-like{background:#733d52;color:#ffe7ec;box-shadow:0 5px 15px #0003;border:1px solid #a0687b}
.phone .swipe-choice-like:hover{background:#87485f}.phone .swipe-choice-pass{background:#2c202b;color:#d6bfcf;border-color:#594153}
.phone .swipe-choice-pass:hover{background:#3a2937}.phone .swipe-footer{color:#b89aaa}.phone .swipe-footer button{color:#dfc0aa}.phone .swipe-footer button:hover{background:#35232e}
.phone .compact-tabs button{color:#bca5b3}.phone .compact-tabs button.active{color:#f1ded0}.phone .compact-tabs button.active::after{background:#d9b69b}
.phone .segments button{color:#bca5b3}.phone .segments button.active{color:#f1ded0}.phone .segments button.active::after{background:#d9b69b}.phone .segments small{color:#cfadbf}
.phone .compact-tabs .publish-pill,.phone .primary{background:#ead6c4;color:#271b22;font-weight:600}
.phone .primary:hover:not(:disabled){background:#f7e6d7}.phone .secondary{background:#30212c;color:#dec4d2;border-color:#674659}
.phone button:focus-visible,.phone a:focus-visible{outline-color:#e1bea3}.phone input:focus,.phone textarea:focus{outline-color:#d5aa99}
.phone .topic-heading b,.phone .topic-heading button,.phone .topic-tile span{color:#c6a9b9}.phone .topic-tile img{border-color:#30202a;outline-color:#705163}
.phone .topic-row button,.phone .feed-topic-chips button{background:#382430;color:#dfb4c7}.phone .feed-topic-chips .clear-topic{background:#2d2330;color:#cbb2c8}
.phone .topic-row button.active{background:#654054;color:#f6dce8}.phone .feed-update{background:#4b2a3c;color:#efd1de}
.phone .moment,.phone .feed-pager{background:#160f15;border-color:#392732}
.phone .moment-head strong{color:#e0bfd4}.phone .moment-head small{color:#b69baa}
.phone .moment-head>button{background:#3b2432;color:#ecc0d1}.phone .moment-text{color:#e5d3de}
.phone .moment-bottom,.phone .moment-bottom .moment-time{color:#b99dab}.phone .moment-bottom button:hover{background:#392531}
.phone .moment-bottom .is-liked{color:#ed9eb5}.phone .feed-pager{color:#bda2b2}.phone .feed-pager button{background:#3b2633;color:#e7c2d2}
.phone .interest-wall button{background:#35232d;color:#d8b3c7}.phone .interest-wall button.selected{background:#735066;color:#fff0e9}
.phone .empty-state,.phone .empty-box,.phone .list-hint,.phone .list-pager{color:#bca1b1}.phone .empty-state h3{color:#e4cad7}.phone .empty-state .icon{color:#c99aad}
.phone .list-pager button{background:#36242f;color:#dfc4d4}.phone .like-card{background:#231820;border-color:#513647}
.phone .like-info small,.phone .like-info .meta,.phone .pending-content p,.phone .pending-status{color:#bba3b2}
.phone .user-initial{background:linear-gradient(135deg,#77506a,#432939);color:#f3ded6}.phone .user-initial.profile-avatar{border-color:#8a6278}
.phone .section-heading,.phone .section-heading span,.phone .match-info{color:#baa1b1}.phone .match-avatar-wrap .avatar,.phone .match-pictures>.avatar-frame{border-color:#3b2935;outline-color:#b1839a}
.phone .match-heart{border-color:#2a1c25;background:#a76e85;color:#fff0e6}
.phone .conv-main p,.phone .conv-time,.phone .conv-preview-note{color:#bda4b3}
.phone .notification-icon{background:#402837;color:#e1b4c6}.phone .notification p{color:#c6adbc}
.phone .profile-hero{background:radial-gradient(ellipse at 90% 0,#6a354c55,transparent 75%),#1b1219}
.phone .profile-avatar{border-color:#765269;box-shadow:0 5px 18px #0003}.phone .profile-title small,.phone .profile-bio{color:#c9acbd}
.phone .profile-edit{background:#392430;border-color:#785165;color:#e9c8d7}.phone .profile-hero .tag,.phone .tag{background:#3d2935;color:#e0bbce;border-color:#674457}
.phone .profile-stats button,.phone .personal-summary span{border-color:#4c3442}.phone .profile-stats span,.phone .personal-summary{color:#c4a4b8}
.phone .share-card{background:#2d1d28;border-color:#624052;color:#edd7e2}.phone .share-card small,.phone .share-card>.icon{color:#c19aad}
.phone .menu-row{border-color:#3d2935;color:#dcc3d2}.phone .menu-row>.icon,.phone .menu-row small{color:#b991a7}
.phone .my-timeline{border-color:#3e2936}.phone .timeline-date,.phone .timeline-content{color:#c3a7b8}.phone .timeline-date b{color:#dab9cb}
.phone .profile-bottom,.phone .sheet-footer,.phone .modal-note{color:#bca1b1}.phone .personal-data dt{color:#bca0b1}.phone .personal-data dd{color:#e0c9d7}
.phone .overlay-backdrop{background:#080509a8}.phone .sheet{background:#21161f;color:#f0dfe9;box-shadow:0 -10px 35px #0005;border-top:1px solid #765264}
.phone .sheet-handle{background:#755565}.phone .sheet .close{color:#e2c5d6}.phone .sheet p,.phone .sheet label{color:#cbb0c1}.phone .sheet small{color:#b99dae}
.phone .sheet input,.phone .sheet textarea,.phone .sheet select,.phone .preference-row select,.phone .sheet .select-field{background:#32212e;color:#f1dce9;border-color:#67465b}
.phone .sheet input::placeholder,.phone .sheet textarea::placeholder{color:#b090a6}
.phone .preference-row label,.phone .preference-row .range-values{color:#d3adc3}.phone .preference-options label{background:#3c2735;color:#dec1d3}
.phone .filter-options button{background:#2c1c29;border-color:#674359;color:#d8b5ca}.phone .filter-options button.active{background:#684356;border-color:#d1a38f;color:#f8dfd1}
.phone .match-sheet,.phone .profile-card-sheet{background:radial-gradient(ellipse at 50% 0,#6b3a5488,transparent 75%),#21161f}
.phone .match-sheet h2{color:#efc6d7}.phone .match-sheet .sheet-header h2,.phone .match-sheet>.eyebrow,.phone .profile-card-sheet .card-word{color:#ceb0c0}
.phone .card-line{background:#634154}.phone .chat-disclosure,.phone .about-list{color:#ceb1c3}.phone .overview-banner{background:#3d2836;border-color:#754d64;color:#ddbdce}
.phone .comment-compose{background:#21161f;border-color:#5a3b4e}.phone .comment-recipient,.phone .comment-reply,.phone .comment-reply-target{color:#d5a9c2}.phone .comment-empty{color:#bca0b1}
.phone .chat-view{background:#120c11}.phone .chat-header,.phone .chat-input,.phone .chat-notice{background:#21151e;border-color:#4a2e3e}
.phone .chat-header small,.phone .chat-start,.phone .chat-notice,.phone .typing,.phone .chat-retry{color:#c1a1b5}.phone .chat-retry button{color:#e4b7cd}
.phone .bubble{background:#352332;color:#efdce8}.phone .mine .bubble{background:#654052;color:#ffebf2}
.phone .chat-input input{background:#33212e;color:#f0dce7;border-color:#67465a}.phone .chat-input input::placeholder{color:#b693a9}.phone .chat-input button{background:#e6c8b2;color:#271822}
.phone .screen-return{background:#21151e;border-color:#4f3243}.phone .screen-return button{color:#d6b0c7}.phone .toast{background:#4b3040ed;color:#fff0e7;box-shadow:0 4px 20px #0005}
.phone .inline-error{color:#efb0b3}.phone .post{background:#160f15;border-color:#2c1c27}.phone .post-text{color:#e2cbd9}
.phone .avatar-frame{background:#36232f}.phone .profile-drawer .identity-line,.phone .profile-drawer .profile-meta-note{background:#21161f}.phone .profile-drawer .identity-line::before{background:linear-gradient(transparent,#21161f)}
.desktop-intro .brand-mark{background:#e6c8b2;color:#291b22}.desktop-intro .edition,.desktop-intro .intro-main p,.desktop-detail>p{color:#bba2b0}
.flow-nav button{color:#c7acbd}.flow-nav button b,.flow-nav button span{color:#b18e9f}.flow-nav button.active{background:#3c2632;color:#ecd4c2}
.desktop-detail .eyebrow,.complete-stats span,.region-legend>span,.region-legend b{color:#bda1b2}
.phone .profile-drawer .identity-line{background:linear-gradient(transparent,#21161f 86%)}

/* direct-preview.css */
/* The app fills the browser, with no simulated device or presentation controls. */
html{height:100%;background:#100b0e}
.entry-load-error{margin:auto;max-width:360px;padding:24px;text-align:center}
.entry-load-error h1{font-size:19px;margin-bottom:24px}
.safari-copy-actions{display:flex;align-items:center;flex-direction:column;gap:0}
.safari-copy-button{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:138px;padding:5px 16px 8px;border:0;background:transparent;color:#eee1d3;border-radius:18px}
.safari-copy-button img{display:block;width:72px;height:72px;border-radius:17px;box-shadow:0 5px 22px #0004;transition:transform .16s}
.safari-copy-button:hover img{transform:translateY(-2px)}
.safari-copy-button:active img{transform:scale(.95)}
.safari-copy-button strong{font-size:14px;letter-spacing:.2px;font-weight:500}
.safari-copy-button .safari-copy-label{font-size:11px;color:#cbb8a8}
.safari-copy-actions .journey-action-hint{margin-top:3px;font-size:10px}
.safari-copy-actions .journey-status{font-size:11px;margin:5px 0;max-width:330px}
@media(max-height:700px){.safari-copy-button img{width:56px;height:56px}.safari-copy-button{gap:3px}.safari-copy-actions .journey-action-hint{font-size:9px}}
@media(prefers-reduced-motion:reduce){.safari-copy-button img{transition:none}}
body.direct-preview,body.direct-preview.board-mode{display:block;width:100%;height:100dvh;min-height:0;margin:0;padding:0;overflow:hidden;background:#100b0e}
.direct-preview .phone,.direct-preview.board-mode .phone{width:100%;max-width:none;height:100dvh;min-height:0;margin:0;border:0;border-radius:0;box-shadow:none;background:#100b0e;overflow:hidden}
.direct-preview .phone #app{width:100%;margin:0;min-height:0}
.direct-preview .phone .bottom-nav{height:calc(65px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px)}
.direct-preview .phone .journey-gate .journey-gate-inner{padding:calc(24px + env(safe-area-inset-top,0px)) max(24px,env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(24px,env(safe-area-inset-left,0px))}
.direct-preview .phone .journey-guide .journey-guide-inner{max-width:560px;margin:auto;padding-top:calc(20px + env(safe-area-inset-top,0px))}
.direct-preview .phone .journey-guide{background:radial-gradient(ellipse at 85% 0,#44233366,transparent 55%),#151015}
.direct-preview .phone .journey-guide .journey-guide-inner{background:transparent}
.direct-preview .phone .journey-guide .journey-guide-actions{padding-bottom:max(18px,env(safe-area-inset-bottom,0px))}
.direct-preview .phone .journey-single .gate-background-image{height:88%}
.direct-preview .phone .app-header{padding-top:calc(12px + env(safe-area-inset-top,0px));height:calc(61px + env(safe-area-inset-top,0px))}
.direct-preview .phone .sheet{padding-bottom:max(27px,env(safe-area-inset-bottom,0px))}
@media(min-width:760px){
  .direct-preview .phone .journey-gate .journey-gate-inner{padding:40px clamp(40px,7vw,112px) 40px}
  .direct-preview .phone .journey-gate-bottom{width:min(44%,480px);margin-top:auto;margin-bottom:clamp(10px,4vh,48px);padding-top:85px}
  .direct-preview .phone .journey-gate-copy h1{font-size:clamp(38px,4.2vw,64px);line-height:1.25;letter-spacing:1px;margin:20px 0}
  .direct-preview .phone .journey-gate-copy>p{font-size:15px;line-height:2}
  .direct-preview .phone .journey-gate .journey-eyebrow{font-size:10px;letter-spacing:4px}
  .direct-preview .phone .journey-gate .journey-primary{min-height:58px;font-size:17px}
  .direct-preview .phone .journey-gate .journey-gate-actions{margin-top:30px}
  .direct-preview .phone .journey-gate .gate-background-image,.direct-preview .phone .journey-gate .gate-cover-layer{left:auto;right:0;top:0;width:68%;height:100%;object-position:50% 30%;mask-image:linear-gradient(90deg,transparent,#000 18%);filter:brightness(.84) saturate(.78)}
  .direct-preview .phone .gate-scene-shade{background:linear-gradient(90deg,#100b0e 0%,#100b0ef5 27%,#100b0ea3 46%,#100b0e12 70%),linear-gradient(0deg,#100b0e85,transparent 45%,#180b142b)}
  .direct-preview:not([data-page="welcome"]):not([data-page="guide"]) .phone #app{width:min(100%,680px);margin-inline:auto}
  .direct-preview .phone .bottom-nav{width:min(100%,680px);margin-inline:auto}
  .direct-preview .phone .sheet{max-width:620px;margin-inline:auto}
  .direct-preview .phone .toast{left:50%;right:auto;transform:translate(-50%,15px);width:max-content;max-width:560px}
  .direct-preview .phone .toast.visible{transform:translate(-50%,0)}
}
@media(min-width:760px) and (max-height:650px){
  .direct-preview .phone .journey-gate .journey-gate-inner{padding-top:24px;padding-bottom:24px}
  .direct-preview .phone .journey-gate-bottom{padding-top:32px;margin-bottom:0}
  .direct-preview .phone .journey-gate-copy h1{font-size:38px;margin:14px 0}
  .direct-preview .phone .journey-gate .journey-gate-actions{margin-top:18px}
}
@media(max-width:759px){
  .direct-preview .phone .journey-gate .journey-gate-inner{max-width:620px;margin:auto}
  .direct-preview .phone .journey-gate-copy h1{font-size:30px}
  .direct-preview .phone .journey-guide .journey-guide-inner{padding-inline:22px}
}
@media(max-height:590px) and (max-width:759px){
  .direct-preview .phone .journey-gate .journey-gate-inner{padding:17px 22px}
  .direct-preview .phone .journey-gate-copy h1{font-size:26px}
}

/* optional-profile.css */
.optional-profile-edit{flex:none;min-height:44px;padding:9px 12px;border:1px solid #eed5e1;border-radius:22px;font-size:12px;color:#af507e;background:#fff5fa;white-space:nowrap}
.optional-profile-sheet{display:flex;flex-direction:column;overflow:hidden;padding-bottom:max(20px,env(safe-area-inset-bottom))}
.optional-profile-sheet .sheet-handle,.optional-profile-sheet .sheet-header{flex:none}
#optional-profile-form{display:flex;flex-direction:column;min-height:0}
.optional-profile-sheet .optional-profile-note{flex:none;margin:0 0 12px;font-size:12px;color:#937a89}
.optional-profile-fields{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;overflow-anchor:none;padding:0 2px 4px;scrollbar-width:thin;touch-action:pan-y pinch-zoom;-webkit-overflow-scrolling:touch;contain:layout paint}
.phone .overlay-backdrop.profile-edit-backdrop{backdrop-filter:none;-webkit-backdrop-filter:none}
.optional-profile-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.optional-profile-field{min-width:0;margin-bottom:12px}
.optional-profile-sheet .optional-profile-field label{display:flex;align-items:center;gap:8px;font-size:12px;margin:0 0 7px;color:#775868}
.optional-profile-field label span{font-size:10px;color:#aa94a0}
.optional-profile-sheet .optional-profile-field input,.optional-profile-sheet .optional-profile-field textarea,.optional-profile-sheet .optional-profile-field select{display:block;width:100%;min-width:0;min-height:44px;border:1px solid #eadbe3;border-radius:11px;padding:10px 12px;background:#fffafc;color:#604958;font:inherit;font-size:16px;line-height:1.5}
.optional-profile-sheet .optional-profile-field textarea{min-height:78px;max-height:150px;resize:vertical}
.optional-profile-sheet .optional-profile-field small{display:block;margin-top:5px;font-size:11px;line-height:1.6;color:#a38a98}
.optional-profile-sheet .optional-profile-field :is(input,textarea,select):focus-visible{outline:2px solid #e992b7;outline-offset:2px}
.optional-profile-sheet #optional-profile-error{flex:none;min-height:0;margin:0;font-size:12px;line-height:1.6;color:#c03969}
.optional-profile-sheet #optional-profile-error:not(:empty){padding-top:9px}
.optional-profile-sheet .sheet-actions{flex:none;margin-top:13px}
.optional-profile-sheet .sheet-actions button{min-height:46px;font-size:14px}
@media(max-width:350px){.optional-profile-edit{padding:8px 9px;font-size:11px}.profile-hero-top:has(.optional-profile-edit){gap:10px}.optional-profile-sheet{padding-right:18px;padding-left:18px}}
.profile-hero-top:has(.optional-profile-edit) .profile-title{min-width:0;overflow-wrap:anywhere}
.phone .optional-profile-edit{background:#392430;border-color:#785165;color:#ead5e0}
.phone .optional-profile-sheet .optional-profile-note{color:#bfa3b5}
.phone .optional-profile-sheet .optional-profile-field label{color:#e4ccd9}
.phone .optional-profile-sheet .optional-profile-field label span,.phone .optional-profile-sheet .optional-profile-field small{color:#b99bab}
.phone .optional-profile-sheet .optional-profile-field :is(input,textarea,select){background:#32212e;color:#f1dce9;border-color:#67465b;color-scheme:dark}
.phone .optional-profile-sheet .optional-profile-field :is(input,textarea,select):focus-visible{outline-color:#d5aa99}
.phone .optional-profile-sheet #optional-profile-error{color:#efb0b3}
.profile-interest-picker{min-width:0;margin:5px 0 14px;padding:14px;border:1px solid #604352;border-radius:16px;background:#1b1219}
.phone .optional-profile-sheet .profile-interest-picker legend{padding:0 6px;color:#f1dce9;font-size:14px;font-weight:600}
.profile-interest-picker legend span{margin-left:6px;color:#b99bab;font-size:11px;font-weight:400}
.profile-interest-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.phone .optional-profile-sheet .profile-interest-heading p{margin:0;color:#baa2b1;font-size:11px;line-height:1.6}
.profile-interest-count{flex:none;color:#e7cbbd;font-size:11px;font-variant-numeric:tabular-nums}
.profile-interest-categories{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:14px;padding-bottom:5px}
.phone .optional-profile-sheet .profile-interest-categories button{flex:none;padding:8px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:#bd9fac;font:inherit;font-size:12px;line-height:1.3}
.phone .optional-profile-sheet .profile-interest-categories button[aria-pressed=true]{background:#45303c;border-color:#6c4c5d;color:#f1e1d7}
.profile-interest-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.phone .optional-profile-sheet .profile-interest-chip{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:7px;min-width:0;min-height:42px;margin:0;padding:9px 11px;border:1px solid #513b49;border-radius:22px;background:#2d202a;color:#dbc4d2;cursor:pointer;font-size:12px;line-height:1.5;transition:background .15s,border-color .15s;user-select:none;-webkit-user-select:none}
.phone .optional-profile-sheet .profile-interest-chip[hidden]{display:none}
.phone .optional-profile-sheet .profile-interest-chip input{position:absolute;width:1px;height:1px;min-width:0;min-height:0;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}
.profile-interest-check{flex:none;width:12px;color:#f6e6d8;opacity:0;font-size:12px}
.phone .optional-profile-sheet .profile-interest-chip:has(input:checked){background:#6c4054;border-color:#b88699;color:#fff0e8}
.profile-interest-chip:has(input:checked) .profile-interest-check{opacity:1}
.phone .optional-profile-sheet .profile-interest-chip:has(input:disabled){opacity:.42;cursor:not-allowed}
.phone .optional-profile-sheet .profile-interest-chip:has(input:focus-visible),.phone .optional-profile-sheet .profile-interest-categories button:focus-visible{outline:2px solid #e4c5af;outline-offset:3px}
.phone .optional-profile-sheet .profile-interest-empty{margin:6px 0;padding:22px 8px;text-align:center;color:#b99bab;font-size:12px}
@media(max-width:370px){.profile-interest-picker{padding:10px}.phone .optional-profile-sheet .profile-interest-categories button{padding:8px}.phone .optional-profile-sheet .profile-interest-chip{padding:9px 8px;gap:5px}}

/* safari-guide.css */
/* TikTok menu illustration: familiar light controls inside the night palette. */
.journey-guide .guide-art{height:410px;background:linear-gradient(135deg,#ececf7,#f5f4fb);color:#161923}
.journey-guide .guide-art::after{height:0}
.journey-guide .guide-art-label{color:#797d93;right:13px;top:8px}
.journey-guide .guide-device{top:15px;left:5%;width:75%;height:440px;transform:none;border:6px solid #141418;border-radius:44px 44px 0 0;box-shadow:0 0 0 2px #8c8c95,4px 0 15px #38334f28}
.journey-guide .guide-device-status{height:42px;padding:5px 21px 0;font-size:12px;background:#dedee1}
.journey-guide .guide-device-status i{width:48%;height:23px;border-radius:0 0 15px 15px;background:#09090b}
.journey-guide .guide-device-status>span{font-size:11px}
.journey-guide .guide-appbar{height:65px;padding:0 19px;background:#dedee1;border-color:#cacacf}
.journey-guide .guide-appbar b{font-size:22px;color:#101014}
.journey-guide .guide-appbar small{height:12px;margin-top:5px}
.guide-address-pill{display:block;width:107px;height:9px;border-radius:10px;background:#b9b9bf}
.journey-guide .guide-more{width:35px;height:35px;font-size:20px;letter-spacing:0;color:#101014}
.journey-guide .guide-dim{opacity:1;top:107px}
.journey-guide .guide-menu{top:122px;padding:14px 14px 20px;border-radius:29px 29px 0 0;opacity:1;transform:translateY(0);background:#f7f7f9}
.journey-guide .guide-menu-title{font-size:18px;margin-bottom:13px}
.journey-guide .guide-menu-title>span{font-size:24px}
.journey-guide .guide-menu-row{height:42px;font-size:14px;padding:0 13px;gap:11px;color:#12151c}
.journey-guide .guide-menu-row .journey-icon{width:20px;height:20px}
.journey-guide .guide-open-row{height:42px;border:0;background:#fff;box-shadow:none;font-weight:500}
.journey-guide .guide-open-row::after{content:'';position:absolute;inset:2px 0;border:2px solid #f43f55;border-radius:50%;transform:rotate(-2deg);pointer-events:none}
.journey-guide .guide-row-tap{display:none}
.journey-guide .guide-blue-arrow{width:18%;height:280px;right:0;top:77px;opacity:1}
.journey-guide .guide-point-note{right:12px;bottom:21px;font-size:12px}
.journey-guide .guide-animation[data-guide-step="1"] .guide-open-row::after{animation:guide-option-pulse 1.5s ease-in-out infinite}
.journey-guide .guide-animation[data-guide-step="1"] .guide-blue-arrow{opacity:1}
.journey-guide .guide-animation[data-guide-step="2"] .guide-blue-arrow{opacity:0}
.journey-guide .guide-safari{inset:42px 0 0}
.journey-guide .guide-safari-toolbar{height:43px;font-size:12px}
.journey-guide .guide-safari-body{padding:23px 24px}
.journey-guide .guide-safari-icon{width:52px;height:52px}
.journey-guide .guide-safari-body>b{font-size:23px}
.journey-guide .guide-safari-body>p,.journey-guide .guide-success{font-size:11px}
.journey-guide .guide-safari-body>div,.journey-guide .guide-safari-body>div>i{font-size:11px}
.journey-guide .guide-safari-body .guide-mini-button{font-size:12px;padding:10px;margin-top:20px}
.journey-guide .guide-caption{min-height:83px;padding-top:14px}
.journey-guide .guide-caption h2{font-size:14px}
.journey-guide .guide-caption p{font-size:11px}
.journey-guide .safari-copy-actions{gap:12px;padding-top:17px;box-shadow:none}
.journey-guide .safari-copy-button{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:22px;min-width:0;width:100%;max-width:390px;padding:8px 16px;background:#2c1e29;border:1px solid #634656;border-radius:19px}
.safari-copy-prompt{display:flex;align-items:center;justify-content:flex-end;gap:10px;color:#f3e5d8}
.safari-copy-prompt b{font-size:17px;font-weight:500;white-space:nowrap}
.safari-copy-arrow{font-size:27px;line-height:1;color:#ead1b8;animation:copy-arrow-nudge 1.5s ease-in-out infinite}
.safari-copy-icon{display:flex;flex-direction:column;align-items:center;gap:4px}
.journey-guide .safari-copy-button .safari-copy-label{font-size:15px;text-align:left;color:#eee1d3;white-space:nowrap}
.safari-copy-instructions{text-align:center;color:#c7adbc;font-size:12px;line-height:1.7}
.safari-copy-instructions>span{display:none}
.safari-copy-instructions p{margin:2px 0 0}
.safari-copy-instructions b{color:#f2dfd2;font-weight:500}
.journey-guide .safari-copy-actions .journey-status{margin:0;max-width:100%}
@keyframes guide-option-pulse{50%{opacity:.5}}
@keyframes copy-arrow-nudge{50%{transform:translateX(5px)}}
@media(max-width:420px){
 .journey-guide .guide-art{height:320px}
 .journey-guide .guide-device{top:14px;border-width:5px;border-radius:35px 35px 0 0;height:370px;width:78%}
 .journey-guide .guide-device-status{height:34px;padding-inline:14px;font-size:10px}
 .journey-guide .guide-device-status i{height:18px}
 .journey-guide .guide-device-status>span{font-size:8px}
 .journey-guide .guide-appbar{height:54px;padding-inline:13px}
 .journey-guide .guide-appbar b{font-size:17px}
 .journey-guide .guide-more{width:29px;height:29px;font-size:16px}
 .journey-guide .guide-menu{top:90px;padding:10px 9px 16px;border-radius:24px 24px 0 0}
 .journey-guide .guide-menu-title{font-size:16px;margin-bottom:7px}
 .journey-guide .guide-menu-row,.journey-guide .guide-open-row{height:33px;font-size:12px;padding-inline:9px;gap:8px}
 .journey-guide .guide-menu-row .journey-icon{width:17px;height:17px}
 .journey-guide .guide-blue-arrow{height:230px;top:63px;right:-2px;width:17%}
 .journey-guide .guide-point-note{font-size:9px;right:6px}
 .journey-guide .guide-safari{top:34px}
 .journey-guide .guide-safari-body{padding:16px 15px}
 .journey-guide .guide-safari-body>b{font-size:18px}
 .journey-guide .safari-copy-button{gap:12px;padding:8px 10px}
 .safari-copy-prompt{gap:7px}
 .safari-copy-prompt b{font-size:15px}
 .journey-guide .safari-copy-button .safari-copy-label{font-size:13px}
 .journey-guide .guide-caption{min-height:70px}
 .journey-guide .journey-guide-copy{padding-bottom:11px}
}
@media(max-height:700px){.journey-guide .safari-copy-actions{gap:7px;padding-top:10px}.safari-copy-instructions{font-size:11px;line-height:1.6}.safari-copy-instructions>span{display:none}}
@media(prefers-reduced-motion:reduce){.safari-copy-arrow,.journey-guide .guide-open-row::after{animation:none!important}}

/* language-ui.css */
.qs-language-control{display:inline-flex;align-items:center;flex:none;gap:4px;border:1px solid rgba(237,226,216,.25);border-radius:18px;padding:3px 6px;color:#ede2d8;background:#24191fe6;max-width:128px;min-height:32px}
.qs-language-control select{font:inherit;font-size:12px;min-height:26px;max-width:100px;width:100px;padding:0 2px;border:0;color:inherit;background:transparent;border-radius:4px;cursor:pointer}
.qs-language-control option{color:#ede2d8;background:#24191f}
.journey-header .qs-language-control{margin-inline-start:auto}
.journey-header .journey-adult{order:5;margin-inline-start:8px}
.entry-loading{min-height:70vh;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#ede2d8;gap:16px}
.entry-spinner{width:28px;height:28px;border:2px solid #4d3645;border-top-color:#ead6c4;border-radius:50%;animation:entry-spin .8s linear infinite}
@keyframes entry-spin{to{transform:rotate(360deg)}}
html[dir=rtl] .profile-hero,html[dir=rtl] .sheet,html[dir=rtl] .moment,html[dir=rtl] .journey-gate-copy{text-align:right}
html[dir=rtl] .guide-animation,html[dir=rtl] .guide-device,html[dir=rtl] .safari-copy-button,html[dir=rtl] .swipe-actions{direction:ltr}
.journey-copy-directions,.journey-gate-copy h1,.journey-guide h1{overflow-wrap:break-word}
html:not([lang^=zh]) .journey-guide h1{font-size:clamp(20px,5vw,28px)}
html:not([lang^=zh]) .journey-gate-copy h1{font-size:clamp(24px,6vw,36px);line-height:1.15}
.profile-interest-chip{min-width:0}.profile-interest-chip span{overflow-wrap:break-word}
.bottom-nav button{min-width:0}.bottom-nav button span{font-size:11px;overflow-wrap:anywhere}
@media(max-width:380px){.qs-language-control{max-width:104px}.qs-language-control select{width:78px;max-width:78px}.journey-header{gap:6px}.journey-adult{font-size:10px}.header-actions{gap:5px}}
@media(prefers-reduced-motion:reduce){.entry-spinner{animation:none}}

/* mobile-layout.css */
/* Keep the main portrait visible above the actions on older, shorter iPhones. */
@media(max-width:480px){
 .recommend-stage .lifestyle-image{height:340px;min-height:240px;object-fit:cover;object-position:center 36%}
}
@media(max-width:480px) and (max-height:740px){
 .recommend-stage .cosmic-cover{height:112px}
 .recommend-stage .identity-line{margin-top:-42px;min-height:80px}
 .recommend-stage .identity-line .person-avatar{width:70px;height:70px}
 .recommend-stage .identity-copy h2{font-size:21px}
 .recommend-stage .reason-line{margin:7px 17px 6px}
 .recommend-stage .profile-tags{margin:0 16px 8px;gap:5px}
 .recommend-stage .profile-tags button{font-size:11px;padding:4px 8px}
 .recommend-stage .profile-bio-video{margin:8px 17px 10px;padding-right:0;font-size:13px;line-height:1.6;min-height:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
 .recommend-stage .lifestyle-image{height:290px;min-height:220px}
}

/* compatibility.css */
/* iOS 12 compatibility. Load LAST. Feature classes are set by compatibility.js.
 * Supported portrait widths: 375px / 414px, with short landscape viewports.
 * Modern browsers retain the original layout and native API implementations.
 */
[data-qs-inert]{pointer-events:none;user-select:none;-webkit-user-select:none}
.qs-legacy-viewport body.direct-preview,
.qs-legacy-viewport body.direct-preview.board-mode,
.qs-legacy-viewport .direct-preview .phone,
.qs-legacy-viewport .direct-preview.board-mode .phone{height:var(--qs-viewport-height,100vh);min-height:0}
.qs-legacy-viewport .direct-preview .phone .journey-gate .journey-gate-inner{padding:24px;padding:calc(24px + env(safe-area-inset-top,0px)) calc(24px + env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) calc(24px + env(safe-area-inset-left,0px))}
.qs-legacy-viewport .direct-preview .phone .journey-guide .journey-guide-inner{padding-left:22px;padding-right:22px;padding-left:calc(22px + env(safe-area-inset-left,0px));padding-right:calc(22px + env(safe-area-inset-right,0px))}
.qs-legacy-viewport .direct-preview .phone .journey-guide .journey-guide-actions{padding-bottom:18px;padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}
.qs-legacy-viewport .direct-preview .phone .sheet{padding-bottom:27px;padding-bottom:calc(27px + env(safe-area-inset-bottom,0px))}
.qs-legacy-viewport .phone .optional-profile-sheet{max-height:92%;padding-bottom:20px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}
.qs-legacy-viewport .journey-guide-scroll,
.qs-legacy-viewport .scroll-body,
.qs-legacy-viewport .video-card,
.qs-legacy-viewport .sheet,
.qs-legacy-viewport .chat-scroll{ -webkit-overflow-scrolling:touch }
.qs-legacy-viewport .optional-profile-fields{contain:none}
.qs-legacy-viewport .optional-profile-sheet{overflow:hidden}
.qs-legacy-viewport #optional-profile-form{flex:1;overflow:hidden}
.qs-legacy-viewport .gate-cover-layer,
.qs-legacy-viewport .journey-single .gate-background-image{-webkit-mask-image:linear-gradient(#000 0%,#000 80%,transparent 100%)}

/* inset shorthand arrived after iOS 12. These are the actual positioned layers. */
.qs-no-inset .video-card,.qs-no-inset .cosmic-cover:after,
.qs-no-inset .profile-cover-frame:after,.qs-no-inset .overlay-backdrop,
.qs-no-inset .chat-view,.qs-no-inset .photo-view,.qs-no-inset .rec-card,
.qs-no-inset .photo-shade,.qs-no-inset .gate-cover-host,
.qs-no-inset .gate-background-image,.qs-no-inset .gate-scene-shade,
.qs-no-inset .gate-background-video,.qs-no-inset .gate-video-shade{top:0;right:0;bottom:0;left:0}
.qs-no-inset .video-deck:before{top:12px;right:7px;bottom:0;left:7px}
.qs-no-inset .card-behind{top:12px;right:9px;bottom:-7px;left:9px}
.qs-no-inset .guide-more:after{top:-8px;right:-8px;bottom:-8px;left:-8px}
.qs-no-inset .guide-dim{top:29px;right:0;bottom:0;left:0}
.qs-no-inset .journey-guide .guide-dim{top:107px}
.qs-no-inset .guide-safari{top:29px;right:0;bottom:0;left:0}
.qs-no-inset .journey-guide .guide-safari{top:42px}
.qs-no-inset .journey-guide .guide-open-row:after{top:2px;right:0;bottom:2px;left:0}

/* :has() and :is() must not be present in a legacy selector list. */
.qs-no-has .profile-hero-top .profile-title{min-width:0;word-wrap:break-word;overflow-wrap:break-word}
.qs-no-has .phone .optional-profile-sheet .optional-profile-field input,
.qs-no-has .phone .optional-profile-sheet .optional-profile-field textarea,
.qs-no-has .phone .optional-profile-sheet .optional-profile-field select{background:#32212e;color:#f1dce9;border-color:#67465b}
.qs-no-has .phone .optional-profile-sheet .optional-profile-field input:focus,
.qs-no-has .phone .optional-profile-sheet .optional-profile-field textarea:focus,
.qs-no-has .phone .optional-profile-sheet .optional-profile-field select:focus{outline:2px solid #d5aa99;outline-offset:2px}
.qs-no-has .phone .optional-profile-sheet .profile-interest-chip.qs-selected{background:#6c4054;border-color:#b88699;color:#fff0e8}
.qs-no-has .profile-interest-chip.qs-selected .profile-interest-check{opacity:1}
.qs-no-has .phone .optional-profile-sheet .profile-interest-chip.qs-disabled{opacity:.42;cursor:not-allowed}
.qs-no-has .phone .optional-profile-sheet .profile-interest-chip:focus-within{outline:2px solid #e4c5af;outline-offset:3px}
.qs-no-has body[data-page="welcome"] .phone,
.qs-no-has body[data-page="guide"] .phone{background:#151015;border-color:#493c48}
.qs-no-has body[data-page="welcome"] .statusbar,
.qs-no-has body[data-page="guide"] .statusbar{background:#151015;color:#f0e6df}

/* Flex-gap fallbacks only. Grid gaps already work in Safari 12. */
.qs-no-flex-gap .journey-brand>*+*,.qs-no-flex-gap .journey-header>*+*,
.qs-no-flex-gap .header-actions>*+*,.qs-no-flex-gap .identity-line>*+*,
.qs-no-flex-gap .profile-hero-top>*+*,.qs-no-flex-gap .share-card>*+*,
.qs-no-flex-gap .pending-row>*+*,.qs-no-flex-gap .conv>*+*,
.qs-no-flex-gap .notification>*+*,.qs-no-flex-gap .comment>*+*,
.qs-no-flex-gap .chat-header>*+*,.qs-no-flex-gap .chat-input>*+*,
.qs-no-flex-gap .bubble-row>*+*,.qs-no-flex-gap .inline-form>*+*,
.qs-no-flex-gap .sheet-actions>*+*,.qs-no-flex-gap .menu-row>*+*,
.qs-no-flex-gap .guide-caption>*+*,.qs-no-flex-gap .journey-steps>li>*+*,
.qs-no-flex-gap .journey-safari-heading>*+*,.qs-no-flex-gap .guide-menu-row>*+*{margin-left:10px}
.qs-no-flex-gap .journey-guide-label{margin-left:auto}
.qs-no-flex-gap .journey-primary>*+*,.qs-no-flex-gap .primary>*+*,
.qs-no-flex-gap .swipe-choice>*+*,.qs-no-flex-gap .journey-copy>*+*,
.qs-no-flex-gap .swipe-footer>*+*,.qs-no-flex-gap .safari-copy-prompt>*+*{margin-left:8px}
/* Child margins preserve each container's existing inset and mobile spacing. */
.qs-no-flex-gap .profile-tags>*,.qs-no-flex-gap .tags>*,
.qs-no-flex-gap .profile-interest-categories>*,.qs-no-flex-gap .filter-options>*,
.qs-no-flex-gap .feed-topic-chips>*,.qs-no-flex-gap .topic-strip>*{margin:3px}
.qs-no-flex-gap .profile-interest-chip .profile-interest-check{margin-right:7px}
.qs-no-flex-gap .profile-interest-heading output{margin-left:8px}
.qs-no-flex-gap .optional-profile-field label span{margin-left:8px}
.qs-no-flex-gap .moment>.person-avatar,.qs-no-flex-gap .moment>.avatar{margin-right:12px}
.qs-no-flex-gap .moment-bottom>*+*,.qs-no-flex-gap .comment-meta>*+*{margin-left:10px}
.qs-no-flex-gap .moment-bottom button>*+*{margin-left:4px}
.qs-no-flex-gap .compact-tabs>*+*,.qs-no-flex-gap .segments>*+*,.qs-no-flex-gap .feed-tabs>*+*{margin-left:22px}
.qs-no-flex-gap .bottom-nav button>*+*,.qs-no-flex-gap .profile-stats button>*+*,
.qs-no-flex-gap .safari-copy-icon>*+*{margin-top:4px}
.qs-no-flex-gap .floating-stack>*+*{margin-top:12px}
.qs-no-flex-gap .safari-copy-actions>*+*{margin-top:7px}
.qs-no-flex-gap .guide-animation-controls>*+*{margin-left:2px}
.qs-no-flex-gap .qs-language-control>*+*{margin-left:4px}
.qs-no-flex-gap .entry-loading>*+*{margin-top:16px}

/* Language selector uses logical spacing and clamp in its modern stylesheet. */
.qs-legacy-viewport .journey-header .qs-language-control{margin-left:auto}
.qs-legacy-viewport .journey-header .journey-adult{margin-left:8px}
html.qs-legacy-viewport:not([lang^="zh"]) .direct-preview .phone .journey-guide h1{font-size:23px}
html.qs-legacy-viewport:not([lang^="zh"]) .direct-preview .phone .journey-gate-copy h1{font-size:28px}
.qs-legacy-viewport .bottom-nav button span{overflow-wrap:break-word;word-wrap:break-word}
html[dir="rtl"].qs-legacy-viewport .journey-header .qs-language-control{margin-left:0;margin-right:auto}
html[dir="rtl"].qs-legacy-viewport .journey-header .journey-adult{margin-left:0;margin-right:8px}

/* Catalogue imagery is the only aspect-ratio layout in the application. */
.qs-no-aspect .cat-photo{height:0;padding-bottom:133.3333%}
.qs-no-aspect .cat-photo img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}

@media(max-width:420px){
 .qs-no-inset .journey-guide .guide-safari{top:34px}
 .qs-legacy-viewport .journey-guide .guide-device-status{padding-left:14px;padding-right:14px}
 .qs-legacy-viewport .journey-guide .guide-appbar{padding-left:13px;padding-right:13px}
 .qs-legacy-viewport .journey-guide .guide-menu-row{padding-left:9px;padding-right:9px}
}
@media(min-width:760px){
 .qs-legacy-viewport .direct-preview .phone .journey-gate .journey-gate-inner{padding:40px 7vw}
 .qs-legacy-viewport .direct-preview .phone .journey-gate-bottom{width:44%;max-width:480px;margin-bottom:24px}
 .qs-legacy-viewport .direct-preview .phone .journey-gate-copy h1{font-size:48px}
 .qs-legacy-viewport .direct-preview .phone .journey-gate .gate-background-image,
 .qs-legacy-viewport .direct-preview .phone .journey-gate .gate-cover-layer{left:auto;-webkit-mask-image:linear-gradient(90deg,transparent,#000 18%)}
 .qs-legacy-viewport .direct-preview:not([data-page="welcome"]):not([data-page="guide"]) .phone #app,
 .qs-legacy-viewport .direct-preview .phone .bottom-nav{width:100%;max-width:680px;margin-left:auto;margin-right:auto}
 .qs-legacy-viewport .direct-preview .phone .sheet{margin-left:auto;margin-right:auto}
}
@media(orientation:landscape) and (max-height:500px){
 /* Keep the entrance and guide reachable when browser chrome takes most height. */
 .direct-preview .phone .journey-gate .journey-gate-inner{min-height:100%;padding-top:16px;padding-bottom:18px}
 .direct-preview .phone .journey-gate-bottom{padding-top:24px;margin-bottom:0}
 .direct-preview .phone .journey-gate-copy h1{font-size:25px;margin-top:7px;margin-bottom:9px}
 .direct-preview .phone .journey-gate .journey-gate-actions{margin-top:15px}
 .direct-preview .phone .journey-guide{overflow-y:auto;-webkit-overflow-scrolling:touch}
 .direct-preview .phone .journey-guide .journey-guide-inner{height:auto;min-height:100%}
 .direct-preview .phone .journey-guide-scroll{flex:none;overflow:visible}
 .direct-preview .phone .bottom-nav{height:55px;height:calc(55px + env(safe-area-inset-bottom,0px))}
 .direct-preview .phone .app-header{height:49px;padding-top:6px;padding-bottom:5px}
 .direct-preview .phone #app,.direct-preview .phone .bottom-nav{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}
}
/* Arabic/Hebrew use the same fallback spacing on the opposite side. */
html[dir="rtl"].qs-no-flex-gap .journey-brand>*+*,
html[dir="rtl"].qs-no-flex-gap .identity-line>*+*,
html[dir="rtl"].qs-no-flex-gap .profile-hero-top>*+*,
html[dir="rtl"].qs-no-flex-gap .conv>*+*,
html[dir="rtl"].qs-no-flex-gap .comment>*+*,
html[dir="rtl"].qs-no-flex-gap .sheet-actions>*+*{margin-left:0;margin-right:10px}
html[dir="rtl"].qs-no-flex-gap .profile-interest-chip .profile-interest-check{margin-right:0;margin-left:7px}
