/* Approved 390px prototype: charcoal, oxblood and silver; four primary destinations. */
.mobile-app-header{display:none}.feed-only{display:block;max-width:780px;margin:auto}.publish-fab{display:none}.desktop-flow-header{max-width:540px;margin:0 auto 24px;display:flex;gap:15px;align-items:center}.desktop-flow-header h1{font-size:25px;flex:1;margin:0}.desktop-flow-header .icon-button{display:grid;place-items:center;min-width:40px;height:40px}.flow-content{max-width:540px;margin:auto}.form-field{display:block;margin-bottom:19px}.form-field>span{display:block;font-size:12px;color:var(--muted);margin-bottom:9px}.form-field input,.form-field select,.form-field textarea{margin:0;background:var(--surface);font-size:13px;padding:12px;border-radius:7px;min-height:44px}.form-field .errorlist{margin:7px 0 0}.field-hint{font-size:11px;line-height:1.8;color:var(--muted);display:block;margin:8px 0}.field-error{font-size:12px;color:#eda1ab}.form-intro{padding:8px 0 24px}.form-intro h2{font-size:24px;margin-bottom:10px}.form-intro p{margin:0;font-size:13px;line-height:1.8;color:var(--muted)}.required{font-style:normal;font-size:10px;color:#df8999;margin-left:5px;font-weight:400}.gender-field{border:0;padding:0;margin:0 0 22px;min-width:0}.gender-field legend{font-size:13px;margin-bottom:10px}.gender-options{display:flex;gap:12px}.gender-options label{flex:1;position:relative;cursor:pointer}.gender-options input{position:absolute;opacity:0;width:100%;height:100%;margin:0}.gender-options span{display:block;text-align:center;padding:13px;border:1px solid var(--line);border-radius:7px;background:var(--surface);font-size:13px}.gender-options input:checked+span{border-color:#df8999;color:#df8999;background:#a6314b14;box-shadow:inset 0 0 0 1px #df899955}.gender-options input:focus-visible+span{outline:2px solid #df8999;outline-offset:3px}.gender-field p{font-size:12px;margin:9px 0 0;color:var(--muted)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:24px 0 14px;font-size:12px}.section-head b{font-weight:500}.section-head>span{font-size:11px;color:var(--muted)}.body-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.body-fields input{min-width:0;width:100%;padding:12px 9px}.body-fields .form-field>span{font-size:12px;white-space:nowrap}.account-details{color:var(--muted);font-size:12px;margin:0 0 20px;border-top:1px solid var(--line)}.account-details summary{cursor:pointer;padding:15px 0}.check-label{display:flex;align-items:flex-start;gap:9px;font-size:11px;color:var(--muted);line-height:1.8;margin:17px 0}.check-label input{flex:none;width:16px;height:16px;margin:3px 0 0;accent-color:#9c2943;min-height:0}.check-label a{color:#df8999}.fineprint{font-size:10px;color:var(--muted);line-height:1.8;text-align:center;margin:12px 0}.registration-page>.primary{min-height:46px}.post-quota{margin:20px 0 8px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.post-quota b{font-size:13px;font-weight:500}.post-quota p{font-size:12px;line-height:1.7;color:var(--muted);margin:8px 0 0}.post-quota.exhausted{border-color:#a52d4977}.post-editor{border:0;background:transparent!important;resize:vertical;width:100%;min-height:165px;font-size:15px;line-height:1.9;margin:18px 0 0;padding:0;box-shadow:none}.post-editor:focus{outline:0}.upload-zone{border:1px dashed var(--line);border-radius:13px;min-height:110px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:12px;color:var(--muted);width:100%;background:var(--surface);margin:12px 0 23px;padding:18px;cursor:pointer;text-align:center}.upload-zone .icon{color:#df8999;width:25px;height:25px}.upload-zone b{font-size:12px;font-weight:500}.upload-zone>span{font-size:11px}.compose-notice{padding:12px 14px;background:#a6314b14;border-radius:10px;display:flex;gap:8px}.compose-notice .icon{width:17px;height:17px;flex:none;color:#df8999;margin-top:2px}.compose-notice p{font-size:12px;line-height:1.8;color:var(--muted);margin:0}.image-preview-item{position:relative;aspect-ratio:1;overflow:hidden;border-radius:8px}.image-preview-item img{width:100%;height:100%;object-fit:cover}.image-preview-item button{position:absolute;right:4px;top:4px;min-height:27px;width:27px;padding:0;border-radius:50%;background:#121215e6;border:1px solid #b3a6b577;font-size:18px;line-height:1}.me-person{margin:4px 0 24px;gap:17px;align-items:center}.me-person .avatar{width:72px;height:72px;border-radius:20px;font-size:27px}.me-person h2{font-size:22px;margin:0 0 3px;line-height:1.5}.me-person small{font-size:11px}.me-person .text-button{display:inline-block;font-size:12px;margin-top:7px;padding:0;min-height:0}.quota-card{border:1px solid var(--line);border-left:2px solid #9c2943;border-radius:10px;background:linear-gradient(120deg,var(--surface),#a6314b14);padding:18px;margin:20px 0}.quota-card>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.quota-card h3{font-size:14px;margin-bottom:7px}.quota-card p{font-size:11px;color:var(--muted);margin:0}.quota-card>div>.icon{width:27px;height:27px;color:#df8999}.quota-card .button{font-size:11px;min-height:33px;padding:6px 11px;margin-top:15px;border:1px solid #8c596977;background:transparent}.quota-card .button .icon{width:13px;height:13px}.settings-group{background:var(--surface);border:1px solid var(--line);border-radius:13px;margin:17px 0;overflow:hidden}.setting-row{width:100%;padding:16px;display:flex;align-items:center;gap:12px;text-align:left;border-bottom:1px solid var(--line);font-size:13px;min-height:56px}.setting-row:last-child{border:0}.setting-row>span{flex:1}.setting-row>small{color:var(--muted);font-size:11px}.setting-row>.icon:last-child{width:15px;height:15px;color:var(--muted)}.setting-row:active{background:#a6314b14}.logout-form{margin-top:30px}.login-logo{margin:22px 0 35px}.login-logo img{width:86px;height:86px;object-fit:contain;border:1px solid #5c454f;border-radius:10px;padding:5px;background:#131216;margin-bottom:19px}.login-logo h2{font-size:29px;margin-bottom:9px}.login-logo p{font-size:13px;color:var(--muted)}.login-page .primary{min-height:46px}.install-page{text-align:center}.install-page>img{width:72px;border-radius:18px;margin:20px auto}.install-page>p{font-size:13px;color:var(--muted)}.install-page section{text-align:left;margin-top:30px}.install-page section h3{margin-top:24px;font-size:14px}.install-page section p{font-size:12px;color:var(--muted)}.order-card{display:block}.order-card .section-head{margin-top:0}.locked-gender{display:flex;justify-content:space-between;align-items:center;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:10px;margin-bottom:20px;font-size:13px;gap:10px}.locked-gender small{display:flex;align-items:center;gap:4px;font-size:10px}.locked-gender .icon{width:14px;height:14px}
@media(max-width:720px){
:root{--bg:#121215;--surface:#1c1c21;--surface2:#27272e;--text:#eeeef1;--muted:#a2a2ae;--line:#34343e;--wine:#df8999;-webkit-font-smoothing:antialiased}body{padding-bottom:calc(68px + env(safe-area-inset-bottom));background:var(--bg)}body.focus-page{padding-bottom:env(safe-area-inset-bottom)}main{margin:0;width:100%;min-height:100dvh}.topbar{display:none}.mobile-app-header{display:flex;align-items:center;gap:8px;min-height:75px;padding:16px 20px;position:sticky;top:0;z-index:12;background:#121215fa;border-bottom:1px solid var(--line);padding-top:max(16px,env(safe-area-inset-top))}.mobile-app-header h1{font-size:24px;font-weight:600;letter-spacing:.03em;flex:1;margin:0}.focus-page .mobile-app-header h1{font-size:18px;letter-spacing:0}.mobile-header-actions{display:flex;align-items:center;gap:9px;margin-left:auto}.mobile-header-actions .icon-button{display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;width:34px;height:34px;color:#dcdce4}.icon-button .icon{width:19px;height:19px}.back-link{display:grid;place-items:center;width:30px;height:38px;flex:none;margin-left:-7px}.compact-brand{display:flex;gap:7px;align-items:center;font-size:18px;letter-spacing:.08em;font-weight:600}.compact-brand>img{width:36px;height:36px;object-fit:contain;padding:3px;background:#131216;border-radius:10px}.compact-brand small{display:block;font-size:6px;letter-spacing:.2em;line-height:1.5;margin-top:3px;color:var(--muted);font-weight:400}.adult-pill{padding:4px 8px;color:#df8999;background:#a6314b14;border-radius:5px;font-size:11px}.rail{inset:auto 0 0;width:100%;height:calc(66px + env(safe-area-inset-bottom));padding:0 8px env(safe-area-inset-bottom);background:#121215fa;border:0;border-top:1px solid var(--line);z-index:15;backdrop-filter:blur(14px)}.rail>.brand,.rail-copy,.rail-foot{display:none}.rail nav{height:66px;display:flex;justify-content:space-around;gap:0}.rail nav a{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;flex:1;gap:5px;padding:9px 0 7px;color:var(--muted);font-size:10px;border:0!important;border-radius:0!important;background:none!important;min-height:44px}.rail nav a .icon{width:21px;height:21px}.rail nav a.active{color:#df8999}.rail nav a.active:before{content:'';position:absolute;top:0;width:22px;height:2px;background:#9c2943;border-radius:2px}.focus-page .rail{display:none}.content{padding:0;max-width:100%;margin:0;overflow-wrap:anywhere}.content>.page-heading{display:none}main>footer{display:none}.desktop-flow-header{display:none}.flow-content{padding:22px 20px 30px;max-width:540px;margin:0 auto}.page-me .flow-content{padding-top:23px}.flash-stack{margin:12px 16px}.notice{margin:12px 16px;font-size:11px;padding:10px 12px}.page-feed .banner{margin:18px 20px 4px;border:1px solid #6d626a66;border-radius:7px;min-height:177px;padding:17px 19px 19px;background:radial-gradient(ellipse at 85% 65%,#632a3c50,transparent 62%),linear-gradient(125deg,#202026,#17171c);box-shadow:inset 0 1px #fff1}.banner h2{font-family:'Between Serif','Songti SC',serif;font-size:25px;font-weight:500;line-height:1.55;letter-spacing:.04em;max-width:210px;margin:13px 0 10px;position:relative;z-index:1}.banner p{font-size:10px;line-height:1.8;color:#c295a3;max-width:225px;position:relative;z-index:1;margin:0}.banner .eyebrow{font-size:8px;letter-spacing:.16em;color:#bab3be}.banner-cta{font-size:10px;display:inline-block;margin-top:10px;position:relative;z-index:1}.banner-symbol{position:absolute;right:15px;font-size:150px;color:#b49eab20}.hardware-art{position:absolute;right:9px;top:29px;width:102px;height:129px;opacity:.65;transform:rotate(-20deg);pointer-events:none;z-index:0}.hardware-art:before,.hardware-art:after{content:'';position:absolute;left:34px;width:34px;height:73px;background:linear-gradient(90deg,#131317,#2e292f 48%,#111115);border:1px solid #71616b;box-shadow:inset 0 0 0 3px #1a181d,inset 0 0 0 4px #80727a25}.hardware-art:before{top:-51px}.hardware-art:after{bottom:-43px}.hardware-art i{position:absolute;width:61px;height:70px;left:21px;top:6px;border:4px solid #9c9ba5;border-left-color:#4e4b58;border-top-color:#d0cdd4;border-right-color:#8a8794;border-radius:50%;box-shadow:inset 0 0 0 1px #24212c,0 3px 7px #0009;transform:rotate(-15deg)}.hardware-art i+i{top:49px;transform:rotate(15deg);border-top-color:#76717f;border-bottom-color:#c9c5ce}.hardware-art b{position:absolute;width:6px;height:6px;border:1px solid #aea8b1;background:#68616b;border-radius:50%;left:48px;top:-15px}.banner:has(>img) .hardware-art{display:none}.feed-only .tabs{margin:0;padding:20px 20px 0;gap:25px}.tabs a{font-size:13px;padding-bottom:12px}.feed-only .post{border:0;border-radius:0;border-bottom:1px solid var(--line);background:var(--bg);padding:23px 20px 20px;margin:0}.post-text{font-size:14px;line-height:1.85;margin:17px 0 12px}.person-line b{font-size:14px}.person-link .avatar{width:40px;height:40px;border-radius:12px}.person-link small{font-size:10px;margin-top:5px}.post-actions{border:0;padding-top:5px;gap:22px;margin-top:12px}.post-actions button{padding:4px 0;min-width:35px;font-size:12px}.post .media-grid{border:1px solid var(--line);border-radius:5px;overflow:hidden}.publish-fab{display:grid;place-items:center;position:fixed;bottom:calc(84px + env(safe-area-inset-bottom));right:20px;width:48px;height:48px;border:1px solid #e297a533;border-radius:14px;background:#9c2943;color:#fff5f7;box-shadow:inset 0 1px #ffffff17,0 5px 14px #0005;z-index:11}.publish-fab .icon{width:24px;height:24px}.primary{background:#9c2943;border-color:#e297a533;border-radius:7px;color:#fff5f7}.publish-header-button{font-size:12px;min-height:34px;padding:6px 13px;white-space:nowrap}.compose-page .person-link .avatar{width:40px;height:40px}.compose-page .post-editor{font-size:15px;min-height:165px}.compose-page .post-quota{margin-top:20px}.compose-page #file-input{display:none}.registration-page input[type=radio]{position:absolute}.registration-page input,.registration-page select{font-size:14px}.page-membership .membership-heading{margin:0;padding:27px 22px 24px;text-align:left;background:radial-gradient(ellipse at 85% 0,#8f24323b,transparent 65%),var(--surface);border-bottom:1px solid var(--line)}.membership-heading h1{font-family:inherit;font-size:27px;font-weight:500;line-height:1.5;margin:9px 0}.membership-heading p{font-size:12px;line-height:1.9}.page-membership .plan-grid{padding:20px 20px 0;gap:12px}.page-membership .plan{border-radius:13px;padding:16px 12px;margin-bottom:0}.page-membership .two-columns{padding:20px 20px 0;gap:0}.page-membership .content>section.card{margin:0 20px 22px}.page-membership .plan h2{font-size:18px}.page-membership .price{font-size:25px}.page-membership .plan ul{font-size:11px;line-height:2.5}.page-friends .two-columns{padding:18px 20px}.page-friends .official-contact{padding:13px}.page-friends .member-row{padding:14px}.page-friends .two-columns h2{font-size:16px}.page-friends .two-columns>.card{border-radius:9px}.page-inbox .conversation-list{border:0;border-radius:0;background:none;margin:8px 0;padding:0 20px}.conversation{gap:12px;padding:22px 0}.conversation .avatar{height:50px;width:46px;border-radius:11px;border-bottom:2px solid #9997a6}.conversation b{font-size:14px}.conversation p{font-size:12px}.page-inbox .mobile-app-header:after{content:'PRIVATE CONNECTIONS';font-size:8px;letter-spacing:.14em;position:absolute;left:20px;bottom:7px;color:#df8999}.page-chat .mobile-app-header{display:none}.page-chat .chat-heading{padding:16px;margin:0;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--bg);z-index:12}.page-chat .annual-note{margin:12px 16px}.page-chat .chat-panel{border:0;border-radius:0;background:none}.page-chat #chat-form{position:sticky;bottom:0;background:var(--surface);padding-bottom:max(14px,env(safe-area-inset-bottom))}.page-chat #chat-messages{height:calc(100dvh - 280px);min-height:240px}.page-profile .profile-cover{display:none}.page-profile .form-card{border:0;background:none;padding:22px 20px;margin:0 auto;border-radius:0}.page-profile .form-card>h2,.page-profile .settings-links{display:none}.page-legal .legal,.page-order_detail .content>.card,.page-checkout .content>.card{margin:20px;border-radius:10px}.page-password_change .auth-card,.page-password_reset .auth-card,.page-password_reset_confirm .auth-card{border:0;background:none;padding:22px 20px;margin:0}.badge .icon{width:17px;height:17px}.page-feed .empty{margin:20px;border-radius:10px}.page-login .login-page{max-width:480px}.page-login .login-logo{margin-top:22px}.page-login .auth-links{font-size:12px;margin-top:20px}.page-register .content{padding-bottom:20px}.page-me .me-person .avatar{width:72px;height:72px}.page-me .me-person small{font-size:11px}.focus-page main .notice{font-size:11px}.page-inbox .mobile-header-actions form{margin:0}.mobile-header-actions .clear-inbox-button{font-size:10px;min-height:32px;padding:5px 8px;background:transparent}.clear-inbox-button .icon{width:14px;height:14px}.me-person>div{min-width:0}.me-person h2{overflow-wrap:anywhere}.flow-content input,.flow-content textarea,.flow-content select{scroll-margin-top:110px}.order-card .section-head b{font-size:14px}
}
@media(max-width:360px){.mobile-app-header{padding-left:16px;padding-right:16px}.flow-content{padding-left:16px;padding-right:16px}.body-fields{gap:7px}.body-fields input{padding:12px 7px}.me-person h2{font-size:20px}.page-membership .plan-grid{padding-left:14px;padding-right:14px;gap:8px}}

@media(max-width:720px){html{scrollbar-width:none}body::-webkit-scrollbar{display:none}.mobile-app-header{min-height:82px}.mobile-app-header h1{font-size:26px}.focus-page .mobile-app-header h1{font-size:24px}.account-details summary small{float:right;font-size:10px}.registration-page .form-field input,.registration-page .form-field select{min-height:47px}.registration-page .gender-options span{padding:13px}.registration-page .form-intro{padding-top:9px}.page-profile .content>.flow-content{padding-top:22px}}

@media(max-width:720px){.mobile-app-header{gap:12px}.back-link{width:40px;margin-left:0}.registration-page .form-field{margin-bottom:17px}.registration-page .account-details{border-top:0}.registration-page .account-details summary{padding:8px 0}}

/* V1.2: forms stay readable at native mobile scale, including installed PWA. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}main,.content,.flow-content,.form-field,.person-link>div,.two-columns>*{min-width:0}.code-entry{display:flex;gap:10px;align-items:stretch}.code-entry input{flex:1;min-width:0;width:0}.code-send{flex:none;padding:10px 12px;white-space:nowrap;font-size:12px;min-width:100px;color:#e3a5b8;border-color:#714353;background:#41232c}.code-status:empty{display:none}.code-status{min-height:18px;margin:-7px 0 19px}.account-fields{margin-bottom:28px;padding-bottom:9px;border-bottom:1px solid var(--line)}.account-fields>.section-head{margin-top:5px}.erasure-entry{display:block;text-align:center;font-size:12px;color:#bb8494;margin:28px 0 8px;padding:12px}.danger-link{color:#e7a0af}.erasure-warning{padding:18px;background:#a32e4610;border:1px solid #8d3a4b55;border-radius:12px;margin:0 0 25px}.erasure-warning h3{font-size:14px}.erasure-warning ul{padding-left:18px;font-size:12px;line-height:2;color:#d3afb9}.erasure-warning p{font-size:11px;color:var(--muted);line-height:1.9}.danger-icon{display:inline-grid;place-items:center;width:45px;height:45px;background:#96263d22;color:#e38b9e;border-radius:12px;margin-bottom:18px}.danger-icon .icon{width:23px;height:23px}.cancel-erasure{margin-top:12px;background:transparent}.settings-label{font-size:11px;margin-left:5px}.mobile-header-actions .icon-button:has(.settings-label){width:auto;padding:0 9px;display:flex}.desktop-flow-header .icon-button:has(.settings-label){display:flex;width:auto;padding:0 10px}.registration-page .form-intro{padding-bottom:17px}
@media(max-width:720px){body{width:100%;min-width:0}.content{width:100%}input:not([type=checkbox]):not([type=radio]):not([type=submit]),select,textarea{font-size:16px!important;max-width:100%;min-width:0}input[type=file]{width:100%;font-size:12px!important}.form-field>span{font-size:12px}.body-fields{gap:8px}.body-fields input{padding:11px 7px}.code-entry input{letter-spacing:2px}.code-send{font-size:12px;min-width:104px}.mobile-app-header{padding-top:calc(16px + env(safe-area-inset-top));padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));min-height:calc(82px + env(safe-area-inset-top))}.flow-content{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}.page-membership .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan ul{padding-left:0}.plan,.member-row,.person-link,.conversation{min-width:0}.person-link b,.conversation b,.member-row b{overflow-wrap:anywhere}.member-row{flex-wrap:wrap;gap:12px}.notice{flex-wrap:wrap}.notice a,.notice button{flex:none}.two-columns,.feed-grid{grid-template-columns:minmax(0,1fr)}.table-scroll{max-width:100%;overflow-x:auto}.chat-heading{min-width:0}.chat-heading>div{min-width:0}.chat-heading h1{overflow-wrap:anywhere;font-size:20px}#chat-form{min-width:0}#chat-form textarea{min-width:0;flex:1}#lightbox{padding:70px 12px 30px}#viewer-image{max-width:100%}.viewer-toolbar{left:12px;right:12px;justify-content:flex-end;gap:8px}.form-card,.auth-card{max-width:100%}.page-profile .locked-gender{flex-wrap:wrap}.erasure-page .form-intro{padding-bottom:10px}.page-me .me-person{align-items:flex-start}.settings-group{min-width:0}.setting-row{min-width:0}.setting-row>span{min-width:0}.setting-row small{white-space:normal}.flow-content .primary.full{min-height:47px}}
@media(max-width:360px){.flow-content{padding-left:16px;padding-right:16px}.body-fields{gap:6px}.body-fields .form-field>span{font-size:11px}.code-send{min-width:94px;padding:9px}.mobile-app-header h1{font-size:23px}.compact-brand{font-size:16px}.mobile-header-actions{gap:6px}.mobile-header-actions .icon-button{width:32px;height:34px}}
