@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--ink:#14213c;--muted:#71809b;--purple:#8f42ff;--blue:#3486ff;--bg:#f4f7fd;--edge:#edf0f8;--sidebar:#101726;--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;line-height:1.46}a{color:#2268e6;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:default}img{object-fit:cover}h1,h2,h3,p{margin-top:0}h1{font-size:24px;letter-spacing:-.65px}h2{font-size:19px}h3{font-size:15px}.muted{color:var(--muted)}.card{background:#fff;border:1px solid var(--edge);border-radius:var(--radius);box-shadow:0 4px 15px rgba(33,49,80,.045)}.site-header{height:72px;background:#111827;color:#fff;display:flex;align-items:center;gap:24px;padding:0 32px;position:sticky;top:0;z-index:30}.brand{display:flex;align-items:center;gap:9px;min-width:232px;white-space:nowrap;color:#fff;font-size:28px;letter-spacing:-1.5px;font-weight:800}.brand>span:last-child>span,.brand>span:last-child{color:inherit}.brand span span{color:#bc47ff}.brand-mark{font-size:37px;line-height:1;background:linear-gradient(135deg,#6b70ff,#e239ff);color:transparent;background-clip:text}.search-form{flex:1;max-width:600px;background:#20293a;color:#afbed7;border-radius:26px;display:flex;align-items:center;gap:11px;padding:0 16px;height:42px;margin-right:auto}.search-form input{min-width:0;flex:1;background:transparent;border:0;outline:none;color:#fff}.search-form input::placeholder{color:#abb9cd}.top-actions{display:flex;align-items:center;gap:28px}.top-actions a{display:flex;position:relative;color:#d4dcf4}.top-actions a:hover{color:#b84afe}.count-badge{position:absolute;top:-11px;right:-10px;border-radius:50%;min-width:20px;height:20px;display:grid;place-items:center;background:#f1276b;color:white;font-size:10px;font-weight:800;padding:0 4px}.profile-menu{position:relative;margin-left:5px}.profile-toggle{background:transparent;border:0;color:white;display:flex;align-items:center;gap:9px;max-width:200px;padding:3px}.profile-toggle>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-avatar{width:39px;height:39px;border-radius:50%;border:2px solid #2b3447}.dropdown{position:absolute;top:52px;right:0;width:234px;max-height:min(73vh,470px);overflow:auto;background:#fff;box-shadow:0 17px 55px #111c3850;border:1px solid #e6ebf5;border-radius:13px;padding:8px;display:none;color:#243453;z-index:40}.profile-menu.open .dropdown{display:block}.dropdown-heading{padding:11px;border-bottom:1px solid #eff1f7;margin-bottom:5px;font-weight:700}.dropdown-heading small{display:block;color:#8591aa;font-weight:500;margin-top:3px}.dropdown a,.dropdown-logout{border:0;background:none;color:#34405b;display:flex;align-items:center;gap:12px;padding:11px;width:100%;border-radius:9px;text-align:left;font-weight:550}.dropdown a:hover,.dropdown-logout:hover{background:#f3f0ff;color:#863aff}.dropdown form{margin:0}.layout{display:grid;grid-template-columns:252px minmax(510px,1fr) 349px;max-width:1670px;min-height:calc(100vh - 72px);margin:auto}.left-panel{background:var(--sidebar);color:#fff;display:flex;flex-direction:column;min-height:calc(100vh - 72px);position:relative;overflow:hidden}.side-nav{padding:21px 15px;position:relative;z-index:1}.side-link{display:flex;align-items:center;gap:18px;padding:13px 16px;color:#e9efff;font-size:15px;border-radius:12px;margin-bottom:4px}.side-link:hover{background:#26314a;color:white}.side-link.active{background:linear-gradient(100deg,#5147ed,#8736d3);color:#fff;font-weight:700;box-shadow:0 5px 20px #604de944}.nav-icon{height:25px;width:29px;display:flex;align-items:center;justify-content:center;color:#97a9d4}.nav-home .nav-icon,.nav-home.active .nav-icon{color:#fff}.nav-profile .nav-icon{color:#6c84ef}.nav-friends .nav-icon{color:#25b7e7}.nav-shouts .nav-icon{color:#bd52ff}.nav-moods .nav-icon{color:#3f91ff}.nav-saved .nav-icon{color:#38b5ff}.nav-explore .nav-icon{color:#2dbde3}.side-scenery{margin-top:auto;min-height:300px;background:linear-gradient(to bottom,#11182700,#11182744 14%,#12172703),url('sunset.svg') center bottom/cover no-repeat;display:flex;align-items:flex-end;padding:0 25px 30px}.slogan{font-size:21px;font-weight:800;line-height:1.5;letter-spacing:-.5px;text-shadow:0 2px 8px #080b20}.slogan span{color:#c752ff}.center-panel{min-width:0;padding:17px 16px 50px}.center-inner{max-width:920px;margin:auto}.right-panel{padding:17px 16px 32px 0}.widget{padding:17px;margin-bottom:13px}.widget-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;gap:8px}.widget-title h3{margin:0;font-size:15px}.widget-title a{color:#953eff;text-decoration:underline;font-size:12px;white-space:nowrap}.widget-moods{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.mood-card{padding:8px 3px;text-align:center;border-radius:11px;display:flex;align-items:center;flex-direction:column;justify-content:center;color:#2b3a58;min-height:79px}.mood-card span{font-size:33px;line-height:1.2;margin-bottom:6px}.mood-card small{font-size:12px}.mood-happy{background:#fff7de}.mood-sad{background:#e8f6ff}.mood-angry{background:#fff0f2}.mood-cool{background:#fff9e6}.mood-loved{background:#ffecf6}.mood-tired{background:#fff4e4}.mood-excited{background:#fff9e2}.mood-bored{background:#f2f2f7}.mood-card:hover{transform:translateY(-2px)}.online-person{display:flex;align-items:center;color:#23304a;gap:11px;padding:7px 2px;position:relative}.widget-avatar{width:42px;height:42px;border-radius:50%;flex-shrink:0}.online-person>span:nth-last-child(2){font-weight:600}.online-person small,.person-row small,.notification-row small{display:block;color:#7f8eae;font-size:12px;font-weight:400;margin-top:1px}.online-dot{width:10px;height:10px;border:2px solid #fff;background:#1bc76d;border-radius:50%;position:absolute;left:31px;bottom:10px}.more-dots{margin-left:auto;color:#95a5c3}.trend-row{display:flex;align-items:center;gap:12px;color:#243556;padding:6px}.trend-row strong{font-size:25px;color:#a437ff;line-height:1}.trend-row span{font-weight:650}.trend-row small{color:#8999b5;margin-left:auto}.widget-empty{color:#8591a8;font-size:13px;padding:8px 0}.discover-person{display:flex;align-items:center;gap:10px;margin:11px 0}.discover-person>a{color:#26364f;font-weight:600;overflow:hidden;text-overflow:ellipsis}.discover-person form{margin-left:auto}.tiny-btn{border:0;border-radius:8px;padding:7px 11px;background:#8f41ed;color:white;font-size:12px;font-weight:650}.tiny-btn:hover,.primary-btn:hover{filter:brightness(1.05)}.right-promo{background:linear-gradient(130deg,#3b4bf1,#af3cef);padding:20px;color:#fff;border-radius:14px;position:relative;overflow:hidden}.right-promo strong{font-size:19px;line-height:1.35}.right-promo p{margin:9px 0 0;color:#f3eaff}.right-promo>span{position:absolute;font-size:88px;right:7px;bottom:-24px;opacity:.17}.stories-wrap{display:flex;gap:12px;overflow-x:auto;padding:0 0 15px;margin-bottom:2px;scrollbar-width:thin}.story-tile{position:relative;flex:0 0 98px;width:98px;height:149px;border-radius:12px;overflow:hidden;color:white;background:linear-gradient(150deg,#233e72,#a441ce);border:3px solid #9846ff}.story-tile img{width:100%;height:100%;display:block}.story-tile:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#050717d9)}.story-username,.add-story strong{position:absolute;bottom:8px;left:3px;right:3px;text-align:center;color:white;font-size:12px;font-weight:650;z-index:2;text-shadow:0 1px 4px #000}.add-story{border:0;background:linear-gradient(150deg,#1c3a5c,#1f1137);display:grid;place-items:center}.story-plus{width:43px;height:43px;border-radius:50%;background:linear-gradient(135deg,#397fff,#a439eb);display:grid;place-items:center;color:#fff}.stories-empty{color:#8290ab;background:#fff;border-radius:12px;min-width:230px;display:grid;place-items:center;text-align:center;padding:15px}.composer{padding:14px 16px;margin-bottom:18px}.composer-upper{display:flex;align-items:flex-start;gap:13px}.avatar{width:45px;height:45px;flex-shrink:0;border-radius:50%}.shout-form{flex:1;min-width:0}.shout-form textarea{border:1px solid #e6ebf6;width:100%;padding:15px;border-radius:11px;resize:vertical;min-height:68px;color:var(--ink)}.composer-tools{display:flex;align-items:center;gap:22px;margin-top:12px;flex-wrap:wrap}.upload-label,.privacy-label{display:flex;align-items:center;gap:8px;cursor:pointer;color:#57627e;font-size:13px}.upload-label svg{color:#257de9}.privacy-label svg{color:#8652e3}.privacy-label select{background:transparent;border:0;color:#57627e;max-width:102px}.primary-btn{border:0;display:inline-flex;align-items:center;gap:7px;justify-content:center;padding:11px 19px;border-radius:9px;color:white;background:linear-gradient(110deg,#3e76ff,#9c3eff);font-weight:700}.composer-tools>.primary-btn{margin-left:auto}.media-preview{display:flex;gap:8px;flex-wrap:wrap}.media-preview img{height:70px;width:70px;border-radius:8px}.media-preview>span{font-size:12px;color:#70809c}.page-heading{display:flex;align-items:center;justify-content:space-between;margin:20px 1px 12px;flex-wrap:wrap;gap:8px}.page-heading h1,.page-heading h2{display:flex;align-items:center;gap:9px;margin:0}.page-heading svg{color:#9942ef}.mini-link{font-size:12px;color:#9e40f0}.feed-tabs{display:flex;gap:24px;border-bottom:1px solid #e6eaf3;margin-bottom:12px;overflow:auto}.feed-tabs a{color:#5f7091;padding:9px 5px 11px;white-space:nowrap;font-weight:600;position:relative}.feed-tabs a.selected{color:#9135ee}.feed-tabs a.selected:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;border-radius:5px;background:#9d36ef}.feed-post{padding:16px;margin-bottom:14px;position:relative}.post-top{display:flex;gap:11px;align-items:center}.post-author{flex:1;min-width:0}.post-author a{color:#1368f5;font-size:14px;font-weight:750}.post-meta{font-size:12px;color:#8492ad;margin-top:2px}.post-extra{position:relative;align-self:flex-start}.post-extra summary{cursor:pointer;list-style:none;color:#657995}.post-extra summary::-webkit-details-marker{display:none}.post-options{position:absolute;right:0;top:28px;min-width:153px;background:#fff;padding:7px;box-shadow:0 7px 27px #1c28512f;border:1px solid #e4e8f2;border-radius:10px;z-index:9}.post-options button{width:100%;padding:9px;border:0;background:none;display:flex;align-items:center;gap:9px;text-align:left;color:#37435d}.post-options button:hover{background:#f5efff}.post-body{padding:9px 0 11px 56px;white-space:normal;overflow-wrap:anywhere;font-size:14px;color:#1f304e}.post-body .tag{font-weight:700;color:#8b43ed}.post-media{margin-left:55px;display:grid;gap:5px;border-radius:10px;overflow:hidden;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}.post-media a{display:block;min-width:0}.post-media img{width:100%;height:206px;object-fit:cover;display:block}.post-media-1 img{height:auto;max-height:430px}.post-media-4{grid-template-columns:repeat(2,1fr);grid-auto-flow:row}.post-video{max-height:430px;width:calc(100% - 55px);margin-left:55px;border-radius:9px;background:#151c2d}.reshout-card{border:1px solid #edf1f9;border-radius:10px;padding:12px;margin-left:55px;color:#5c6984}.reshout-card>div:first-child{display:flex;gap:6px;align-items:center}.reshout-card p{margin:8px 0}.reshout-card .post-media{margin:0}.post-mood-badge{margin:10px 0 2px 55px;display:inline-flex;gap:8px;align-items:center;border-radius:20px;padding:4px 11px;background:#f6f1ff;color:#6644a0}.post-mood-badge span{font-size:24px}.post-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 0 55px}.reaction-actions,.post-share{display:flex;align-items:center;gap:19px}.reaction-actions button,.post-share button{display:inline-flex;align-items:center;gap:6px;background:none;border:0;padding:0;color:#6a7b99}.reaction-actions .action-like svg{color:#f4316b;fill:#f4316b}.reaction-actions .action-like.is-liked{color:#f4316b;font-weight:750}.action-stat{display:inline-flex;align-items:center;gap:6px;color:#e63665}.post-share{margin-left:auto}.post-share button:hover,.reaction-actions button:hover{color:#a23cf4}.reshout-form button{font-size:12px;color:#9883aa}.comments-area{padding-top:13px;margin-left:55px;border-top:1px solid #edf0f7;margin-top:12px}.comment-row{display:flex;gap:8px;margin-bottom:10px}.small-avatar{width:30px;height:30px;border-radius:50%}.comment-bubble{background:#f3f6fc;padding:8px 11px;border-radius:12px;min-width:60px;max-width:calc(100% - 60px)}.comment-bubble strong{color:#2861d0}.comment-bubble p{margin:4px 0;overflow-wrap:anywhere}.comment-bubble small{color:#8492ad}.delete-comment{margin-left:auto}.delete-comment button{border:0;background:none;font-size:22px;color:#adbed2}.comment-form{display:flex;gap:8px}.comment-form input{flex:1;min-width:0;border:1px solid #e5eaf3;background:#f8faff;border-radius:23px;padding:10px 15px}.comment-form .primary-btn{border-radius:50%;height:41px;width:41px;padding:9px}.empty-state{text-align:center;color:#8a96ad;padding:37px 15px;margin-bottom:13px}.empty-state h3{color:#2d3751;margin-bottom:6px}.empty-emoji{font-size:30px;color:#a04cff}.mood-composer{padding:17px;margin-bottom:16px}.mood-composer h2{display:flex;align-items:center;gap:8px;margin:0 0 12px}.mood-composer h2 svg{color:#8849ee}.composer-user{display:flex;align-items:center;gap:14px}.composer-user textarea{flex:1;min-width:0;border-radius:9px;border:1px solid #e8edf5;padding:12px;resize:vertical}.mood-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:9px;margin:16px 0}.mood-option{position:relative;border:2px solid transparent;border-radius:13px;min-height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer}.mood-option input{position:absolute;opacity:0}.mood-option:has(input:checked){border-color:#9147f6;box-shadow:0 0 0 2px #9c5bff1a}.mood-option span{font-size:31px}.mood-option small{font-size:11px;margin-top:5px}.mood-submit{margin-left:auto;display:flex}.mood-filter{display:flex;gap:7px;overflow-x:auto;margin:12px 0}.mood-filter a{background:#fff;padding:8px 11px;white-space:nowrap;border-radius:20px;color:#687997;font-size:12px;border:1px solid #e8edf7}.mood-filter a.selected{color:#fff;background:#9650ec}.people-section{padding:20px;margin-bottom:16px}.people-section h2{margin:0 0 15px}.people-section h2 small{font-weight:400;color:#8d9ab5}.person-row{display:flex;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid #f0f2f7}.person-row:last-child{border:0}.person-row>a{font-weight:650;color:#23446d;margin-right:auto}.person-row form{flex-shrink:0}.outline-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid #d5ddef;border-radius:9px;background:white;color:#685e8c;padding:10px 14px;font-weight:600}.compact{padding:7px 10px;font-size:12px}.profile-card{overflow:hidden;margin-bottom:20px}.profile-banner{height:160px;background:linear-gradient(125deg,#21367a,#8a39d2 60%,#d88de8);position:relative}.profile-cover-title{position:absolute;color:#ffffff55;font-size:38px;font-weight:800;right:22px;bottom:15px}.profile-cover-title span{color:#ff82d3}.profile-summary{display:flex;align-items:flex-end;padding:0 18px 20px;gap:15px;flex-wrap:wrap}.profile-photo{width:95px;height:95px;border:4px solid white;border-radius:50%;margin-top:-48px;position:relative}.profile-details{flex:1;min-width:180px}.profile-details h1{margin:0}.profile-details p{color:#8996ae;margin:4px 0}.profile-current-mood{color:#8851c7}.profile-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.profile-controls form{margin:0}.profile-bio{border-top:1px solid #f0f2f7;padding:15px 20px;white-space:pre-line;color:#586984}.admin-role{font-size:12px;background:#f1eaff;color:#8d3ce8;padding:4px 7px;border-radius:7px;vertical-align:middle}.story-uploader{padding:20px;margin-bottom:16px}.story-uploader form{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.story-uploader input[type=text]{flex:1;padding:11px;border:1px solid #e8edf4;border-radius:9px;min-width:170px}.full-story{margin-bottom:16px;padding:16px}.story-author{display:flex;align-items:center;gap:11px;margin-bottom:15px}.story-author small{margin-left:auto;color:#8998b4}.full-story .post-media,.full-story .post-video{margin:0;width:100%}.full-story .post-media img{max-height:450px;object-fit:contain;background:#f4f7fb}.full-story>p{padding-top:10px}.messages-layout{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:430px;overflow:hidden}.conversation-list{border-right:1px solid #eef0f6;padding:15px}.conversation-list h3{margin:0 0 18px}.conversation-person{display:flex;align-items:center;gap:8px;color:#344668;padding:8px;border-radius:11px}.conversation-person.chosen,.conversation-person:hover{background:#f0ebff}.conversation-person img{width:35px;height:35px}.conversation-content{display:flex;flex-direction:column;min-width:0}.chat-heading{padding:12px;display:flex;gap:10px;align-items:center;border-bottom:1px solid #e9edf5}.chat-history{flex:1;padding:15px;min-height:300px;max-height:550px;overflow:auto;display:flex;flex-direction:column;gap:8px}.chat-bubble{background:#eaf0f9;border-radius:12px 12px 12px 2px;padding:9px 12px;align-self:flex-start;max-width:80%;overflow-wrap:anywhere}.chat-bubble.mine{align-self:flex-end;background:#e6d9ff;border-radius:12px 12px 2px 12px}.chat-bubble p{margin:0}.chat-bubble small{font-size:10px;color:#8390ab}.send-message{padding:12px;display:flex;gap:8px;border-top:1px solid #e9edf5}.send-message input{flex:1;min-width:0;padding:12px;border:1px solid #e9edf5;border-radius:20px}.notification-row{display:flex;align-items:center;gap:10px;padding:13px;border-bottom:1px solid #f1f3f8;color:#384966}.notification-row.not-read{background:#f8f3ff}.notification-row span{flex:1}.settings-card{padding:24px;margin-bottom:16px}.settings-card h2{margin:0 0 18px}.stack-form{display:flex;flex-direction:column;gap:15px}.stack-form label{display:flex;flex-direction:column;gap:7px;font-weight:650;font-size:13px;color:#3d4a68}.stack-form label small{font-weight:400;color:#8a96aa}.stack-form input:not([type=checkbox]),.stack-form textarea{width:100%;border:1px solid #dde5f3;border-radius:9px;padding:12px;background:#fff;color:#21334f}.stack-form .checkbox-line{display:flex;flex-direction:row;align-items:flex-start;gap:9px;font-weight:500}.checkbox-line input{margin-top:3px}.stack-form .primary-btn{align-self:flex-start}.settings-avatar .profile-photo{margin:0}.toast{background:#eafbee;border:1px solid #bdecc7;color:#225d33;padding:12px 16px;margin-bottom:14px;border-radius:10px}.toast-error{background:#fff1f2;border-color:#ffd0d8;color:#a22748}.warning-note{background:#fff8e6;border:1px solid #f4e3ae;color:#73521b;border-radius:10px;padding:12px 15px;margin-bottom:15px}.warning-note a{font-weight:700}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-hero{background:radial-gradient(circle at 70% 30%,#6534a6,#1b2854 48%,#111629);padding:55px 9vw;color:#fff;display:flex;flex-direction:column;justify-content:center}.auth-hero .brand{font-size:35px}.auth-hero h1{font-size:clamp(48px,6vw,80px);line-height:1.1;letter-spacing:-4px;margin:65px 0 20px}.auth-hero p{font-size:18px;line-height:1.7;color:#c9d4f1;max-width:430px}.adult-tag{padding:9px 15px;background:#e2c5ff25;border:1px solid #ab88eb;align-self:flex-start;border-radius:30px;font-weight:700;letter-spacing:2px;margin-top:30px}.auth-box{align-self:center;justify-self:center;width:min(440px,90%);padding:30px}.auth-box h2{font-size:27px}.auth-box>.muted{margin-bottom:25px}.auth-box .stack-form{gap:13px}.auth-box .block-btn{width:100%;align-self:stretch;margin-top:4px}.switch-auth{margin:20px 0 0;color:#65718a}.switch-auth a{font-weight:700;color:#8e4ae8}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.admin-header-label{font-weight:700;display:flex;align-items:center;gap:9px}.admin-back{margin-left:auto;color:#fff}.admin-layout{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:calc(100vh - 72px)}.admin-sidebar{background:#161c30;padding:25px}.admin-sidebar h3{color:#8ea0c4}.admin-sidebar a{display:block;border-radius:9px;padding:11px 12px;color:#dbe4fc}.admin-sidebar a.selected{background:#693ae5;color:#fff}.admin-main{padding:28px;max-width:1200px;width:100%;margin:auto}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:20px}.stat{padding:20px}.stat strong{display:block;font-size:32px;color:#8438e5}.stat span{color:#8190aa}.admin-table-scroll{overflow:auto}.admin-table{border-collapse:collapse;width:100%}.admin-table th,.admin-table td{border-bottom:1px solid #edf0f6;padding:12px 8px;text-align:left;white-space:nowrap}.admin-table th{background:#f7f9fc}.admin-table td small{display:block;color:#7d8ba5}.admin-comment{padding:15px 0;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eef0f7;gap:12px}.admin-comment p{color:#586b86;margin:7px 0}.admin-thumb{width:90px;height:70px;border-radius:8px}.inline-controls{display:flex;align-items:flex-end;gap:15px}.inline-controls input{padding:9px;border:1px solid #ddd;border-radius:8px}.inline-controls label{display:flex;flex-direction:column;gap:7px}
@media(max-width:1280px){.layout{grid-template-columns:222px minmax(440px,1fr) 298px}.left-panel{min-width:0}.side-link{gap:11px}.right-panel{padding-right:10px}.widget{padding:12px}.mood-card span{font-size:25px}.widget-moods{gap:6px}.center-panel{padding-left:12px;padding-right:12px}.brand{min-width:207px}}
@media(max-width:1080px){.layout{grid-template-columns:210px minmax(0,1fr)}.right-panel{display:none}.site-header{gap:15px;padding:0 16px}.brand{min-width:185px;font-size:24px}.top-actions{gap:14px}.side-nav{padding:15px 9px}}
@media(max-width:720px){.layout{display:block}.left-panel{min-height:auto;overflow:auto}.side-nav{display:flex;gap:4px;padding:7px;overflow-x:auto}.side-link{margin:0;white-space:nowrap;padding:8px 10px;font-size:12px;gap:6px}.nav-icon{width:20px}.side-scenery{display:none}.site-header{height:58px;padding:0 10px;gap:10px}.brand{font-size:18px;min-width:auto;letter-spacing:-.7px}.brand-mark{font-size:23px}.search-form{height:36px;min-width:0;padding:0 8px}.search-form input{font-size:11px}.top-actions a:nth-child(-n+2){display:none}.top-actions{gap:8px}.top-actions svg{width:19px}.profile-toggle{max-width:50px}.profile-toggle span{display:none}.profile-toggle>svg{display:none}.top-avatar{height:32px;width:32px}.center-panel{padding:10px}.stories-wrap{padding-bottom:10px}.story-tile{flex-basis:81px;width:81px;height:123px}.composer-upper{gap:8px}.composer{padding:10px}.avatar{width:37px;height:37px}.composer-tools{gap:10px}.upload-label,.privacy-label{font-size:11px}.post-media,.post-video,.post-actions,.post-body,.comments-area,.post-mood-badge,.reshout-card{margin-left:0}.post-media img{height:160px}.post-media-1 img{height:auto}.feed-post{padding:12px}.mood-grid{grid-template-columns:repeat(4,1fr)}.messages-layout{grid-template-columns:1fr}.conversation-list{border-bottom:1px solid #eaeef6;border-right:0;max-height:160px;overflow:auto}.auth-layout{display:block}.auth-hero{padding:25px;min-height:215px}.auth-hero h1{font-size:37px;letter-spacing:-1.8px;margin:25px 0 5px}.auth-hero p{font-size:13px}.auth-hero .adult-tag{margin-top:4px;font-size:11px}.auth-box{margin:20px auto;width:92%}.admin-layout{display:block}.admin-sidebar{display:flex;gap:5px;overflow-x:auto;padding:8px}.admin-sidebar h3{display:none}.admin-sidebar a{white-space:nowrap;font-size:12px}.admin-main{padding:12px}.stats-grid{grid-template-columns:repeat(2,1fr)}.post-share{gap:9px}.post-actions{margin-top:12px}}

/* v2.2.0 — neutral unselected state; independent six-choice reaction menu */
.reaction-group{position:relative;display:inline-flex;align-items:center;gap:3px;max-width:100%}
.reaction-group form{margin:0}
.reaction-actions .reaction-main{display:inline-flex;align-items:center;gap:6px;background:none;border:0;padding:5px 1px;color:#6a7b99;font-weight:550;line-height:1.5}
.reaction-actions .reaction-main svg{fill:none!important;stroke:currentColor!important;color:inherit!important}
.reaction-actions .reaction-main:hover{color:#6551ce}
.reaction-actions .reaction-main.is-reacted{color:#7047db;font-weight:750}
.reaction-glyph{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:23px}
.reaction-glyph [hidden]{display:none!important}
.reaction-active-emoji{font-size:20px;line-height:1}
.reaction-count{font-weight:600;font-size:12px;color:#8190a9;padding-left:3px}
.reaction-actions .reaction-picker-toggle{padding:5px 2px;color:#8090ab;border:0;background:transparent;display:inline-flex;align-items:center;justify-content:center}
.reaction-actions .reaction-picker-toggle:hover{color:#7047db}
.reaction-picker[hidden]{display:none!important}
.reaction-picker{position:absolute;z-index:60;left:0;bottom:calc(100% + 10px);display:flex;gap:4px;align-items:center;padding:8px 10px;background:#fff;border:1px solid #e6e6f2;border-radius:17px;box-shadow:0 10px 35px #262b4840;max-width:min(375px,85vw)}
.reaction-picker:after{content:"";position:absolute;left:26px;bottom:-8px;width:14px;height:14px;background:#fff;border-bottom:1px solid #e6e6f2;border-right:1px solid #e6e6f2;transform:rotate(45deg)}
.reaction-actions .reaction-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px 8px;border:1px solid transparent;background:transparent;border-radius:12px;min-width:44px;color:#4e5d7a}
.reaction-actions .reaction-option:hover,.reaction-actions .reaction-option[aria-pressed="true"]{background:#f3f0ff;border-color:#e5d9fb;transform:translateY(-2px)}
.reaction-option-emoji{font-size:23px;line-height:1.2}
.reaction-option-label{font-size:10px;font-weight:650}
.reaction-stat{color:#72839e}
.reaction-stat svg{fill:none;stroke:currentColor}
@media(max-width:720px){.reaction-picker{left:-9px;gap:1px;padding:7px}.reaction-actions .reaction-option{min-width:37px;padding:5px}.reaction-option-emoji{font-size:21px}.reaction-actions{gap:12px}.reaction-label{font-size:12px}}

/* v2.3.1 — no arrow or counter, reliable immediate feedback. */
.reaction-group{min-width:70px;position:relative;z-index:2}
.reaction-actions .reaction-main{min-height:32px;gap:7px;white-space:nowrap;touch-action:pan-y}
.reaction-actions .reaction-main:focus-visible{outline:2px solid #7559df;outline-offset:3px;border-radius:4px}
.reaction-actions .reaction-main:disabled{opacity:.75}
.reaction-actions .reaction-main.is-reacted{color:#6049de}
.reaction-actions .reaction-picker-toggle,.reaction-count{display:none!important}
.reaction-picker[hidden]{display:none!important}
.reaction-picker{bottom:calc(100% + 5px)}
.reaction-error[hidden]{display:none!important}
.reaction-error{position:absolute;z-index:70;top:calc(100% + 8px);left:0;min-width:220px;max-width:min(320px,80vw);background:#fff1f2;border:1px solid #f7baca;color:#972e49;padding:8px 10px;border-radius:8px;box-shadow:0 6px 18px #20293c20;font-size:12px;line-height:1.4}
.reaction-actions .comment-toggle{min-height:32px}

.reaction-picker.below{bottom:auto;top:calc(100% + 7px)}
.reaction-picker:after{display:none!important}


/* v2.3.2 — make the emoji picker reachable without disappearing. */
.feed-post.reaction-post-open { z-index: 40; }
.reaction-group { z-index: 5; }
.reaction-picker:not([hidden]) { pointer-events:auto; }
/* Picker touches the button's hover zone — no pointer gap. */
.reaction-picker { bottom:calc(100% - 3px); z-index: 90; }
.reaction-picker.below { top:calc(100% - 3px); bottom:auto; }
/* Invisible hover runway to permit diagonal movement toward an emoji. */
.reaction-picker:not(.below)::before { content:"";position:absolute;left:0;right:0;bottom:-13px;height:16px; }
.reaction-picker.below::before { content:"";position:absolute;left:0;right:0;top:-13px;height:16px; }
@media (hover: hover) and (pointer: fine) {
 .reaction-option { transition: background-color .12s ease, transform .12s ease; }
}

/* v2.3.3: form action URL JavaScript correction ships with this styling revision. */

/* Standalone full release: centered, moderately boxed layout */
@media (min-width:1281px) {
  .layout { max-width:1460px; grid-template-columns:244px minmax(510px,1fr) 326px; }
  .site-header { max-width:1460px; margin-left:auto; margin-right:auto; }
  .admin-layout { max-width:1460px; margin-left:auto; margin-right:auto; }
}

/* WordPress-matching registration and profile selectors. */
.stack-form select{width:100%;border:1px solid #dde5f3;border-radius:9px;padding:12px;background:#fff;color:#21334f;min-height:44px}

/* Friend-only conversations, private-message reply/report/emoji controls */
.conversation-entry{display:flex;align-items:center;gap:2px;border-radius:11px}
.conversation-entry:hover{background:#f7f4ff}
.conversation-entry .conversation-person{flex:1;min-width:0}
.conversation-person span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.conversation-entry form{flex-shrink:0;margin:0}
.conversation-remove{border:0;background:transparent;color:#8893ab;font-size:19px;line-height:1;width:25px;height:28px;border-radius:7px}
.conversation-remove:hover{background:#fff0f2;color:#c62845}
.message-search-form{display:flex;align-items:center;gap:4px;margin-bottom:12px}
.message-search-form input{width:100%;min-width:0;padding:9px 10px;border-radius:9px;border:1px solid #e3e9f3;background:#fff;font-size:12px}
.message-search-form button{border:0;background:#ede7ff;padding:8px;border-radius:8px;color:#6531c4;cursor:pointer}
.message-history-search{margin:10px 12px 0}
.message-history-search a{font-size:12px;padding:6px}
.chat-bubble{position:relative;padding-right:30px}
.chat-bubble-menu{position:absolute;right:6px;top:2px;z-index:5}
.chat-bubble-menu details{position:relative}
.chat-bubble-menu summary{cursor:pointer;list-style:none;color:#7887a3;padding:0 4px;font-size:19px;line-height:21px}
.chat-bubble-menu summary::-webkit-details-marker{display:none}
.chat-message-actions{position:absolute;right:0;top:24px;min-width:215px;background:#fff;color:#26314a;border:1px solid #e1e5ef;padding:8px;box-shadow:0 8px 28px #26314a27;border-radius:10px;z-index:9}
.chat-message-actions button,.chat-message-actions select{font-size:12px;width:100%;padding:8px;border:0;text-align:left;color:#26314a;background:#f7f8fe;border-radius:7px;margin-bottom:5px}
.chat-message-actions select{max-width:100%;border:1px solid #e2e7f1}
.chat-message-actions button:hover{background:#ece5ff}
.chat-quoted{display:flex;flex-direction:column;gap:2px;border-left:3px solid #956be1;padding:5px 7px;margin-bottom:7px;background:#ffffff69;color:#35405b;font-size:11px;border-radius:3px}
.chat-quoted small{font-weight:650;color:#7b44c7}
.chat-bubble p{white-space:pre-wrap}
.send-message{display:block}
.message-compose{width:100%}
.message-compose-row{display:flex;align-items:flex-end;gap:7px}
.message-compose-row textarea{flex:1;min-width:0;border:1px solid #e2e8f4;padding:10px 12px;border-radius:13px;resize:vertical;min-height:44px;max-height:140px}
#emoji-toggle{background:none;border:0;font-size:23px;cursor:pointer;padding:5px}
.emoji-picker{display:flex;gap:3px;flex-wrap:wrap;padding:8px;margin-bottom:6px;background:#f7f5ff;border-radius:8px}
.emoji-picker[hidden],.reply-preview[hidden]{display:none!important}
.emoji-pick{font-size:21px;background:transparent;border:0;border-radius:7px;padding:4px}
.emoji-pick:hover{background:#ede4ff}
.reply-preview{padding:7px 9px;background:#f1eaff;border-left:3px solid #9250e5;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;color:#553d85;border-radius:7px;font-size:12px}
.reply-preview button{border:0;background:transparent;font-size:19px;color:#754baa}
@media(max-width:720px){.message-history-search{margin:8px}.chat-message-actions{min-width:190px}.chat-bubble{max-width:89%}}

/* TeenZone 2.4 — clean PM actions, report dialog, popover emoji selector */
.message-compose{position:relative;min-width:0}
.message-compose-row{align-items:center;gap:10px}
.message-compose-row textarea{flex:1;resize:none;border-radius:16px;min-height:54px;max-height:170px;padding:15px 14px;line-height:1.5;outline:0;background:#fff}
.message-compose-row textarea:focus{border-color:#a485f7;box-shadow:0 0 0 3px #a485f71b}
.message-send-button{display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;padding:0;border-radius:14px}
.emoji-anchor{position:relative;flex:0 0 auto;align-self:center}
#emoji-toggle{display:grid;place-items:center;width:42px;height:42px;border:1px solid transparent;border-radius:12px;color:#7452be;background:#f5f1ff;padding:0}
#emoji-toggle:hover,#emoji-toggle[aria-expanded=true]{background:#eee4ff;color:#7035d3}
.emoji-picker{position:absolute;display:block;bottom:calc(100% + 12px);left:0;width:min(338px,calc(100vw - 44px));max-height:min(385px,65vh);overflow:auto;padding:12px;background:#fff;border:1px solid #e9e5f4;border-radius:17px;box-shadow:0 14px 45px #20263b2e;z-index:28;margin:0}
.emoji-title{display:flex;align-items:center;justify-content:space-between;padding:0 4px 10px;color:#293149;font-size:14px}
#emoji-close{width:27px;height:27px;border:0;border-radius:50%;background:#f2f3f8;font-size:18px;color:#61708b}
.emoji-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;background:#f5f5fa;padding:4px;border-radius:11px;margin-bottom:11px}
.emoji-category{border:0;background:transparent;padding:8px 3px;color:#72809c;border-radius:8px;font-size:12px;font-weight:650}
.emoji-category.selected{background:white;color:#7440d8;box-shadow:0 1px 5px #21263c20}
.emoji-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;max-height:235px;overflow:auto}
.emoji-pick{border:0;border-radius:10px;background:transparent;font-size:23px;line-height:1;width:100%;min-height:39px;padding:5px 2px;display:grid;place-items:center}
.emoji-pick:hover,.emoji-pick:focus-visible{background:#f0eaff;outline:0;transform:scale(1.05)}
.chat-bubble{overflow:visible;isolation:isolate;padding-right:31px}
.chat-bubble:has(.message-menu[open]){z-index:12}
.chat-bubble-menu{right:5px;top:5px;z-index:10}
.chat-bubble-menu .message-menu summary{display:grid;place-items:center;width:24px;height:26px;padding:0;border-radius:8px;background:transparent;color:#737f9a;cursor:pointer;list-style:none}
.chat-bubble-menu .message-menu summary:hover,.message-menu[open] summary{background:#ffffffa1;color:#602ec5}
.chat-bubble-menu .message-menu summary::-webkit-details-marker{display:none}
.chat-message-actions{position:absolute;right:0;top:calc(100% + 5px);display:flex;flex-direction:column;min-width:142px;padding:5px;border:1px solid #e8eaf2;background:#fff;color:#26314a;border-radius:12px;box-shadow:0 12px 30px #17243a30;z-index:30}
.chat-message-actions button{display:flex;align-items:center;gap:9px;width:100%;padding:10px 9px;margin:0;background:transparent;border:0;border-radius:8px;color:#34415d;text-align:left;font-size:13px;font-weight:550}
.chat-message-actions button:hover,.chat-message-actions button:focus-visible{background:#f3effe;color:#6531cb;outline:0}
.chat-message-actions .message-report{color:#b33f59}
.chat-message-actions .message-report:hover{background:#fff0f3;color:#ac2b49}
.report-message-dialog{position:fixed;inset:0;margin:auto;width:min(440px,calc(100vw - 30px));max-height:calc(100dvh - 25px);overflow-y:auto;padding:0;border:1px solid #e7e7ef;border-radius:19px;background:white;box-shadow:0 30px 100px #11182b45;color:#25304b;z-index:200}
.report-message-dialog::backdrop{background:#121c36a6;backdrop-filter:blur(3px)}
.report-message-dialog:not([open]){display:none}
.report-message-form{padding:23px}
.report-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px}
.report-dialog-top h2{font-size:21px;margin:0;letter-spacing:-.4px}
#report-dialog-close{background:#f3f4f8;color:#66758a;border:0;border-radius:50%;font-size:22px;line-height:1;width:32px;height:32px}
.report-message-form>p:not(.message-send-error){color:#75809a;line-height:1.6;margin:0 0 20px;font-size:13px}
.report-message-form label{display:block;font-weight:700;font-size:13px;margin-bottom:8px}
.report-message-form textarea{width:100%;min-height:126px;resize:vertical;padding:13px;border:1px solid #dce2ef;border-radius:12px;outline:0;background:#fafbff;color:#273654}
.report-message-form textarea:focus{border-color:#9569ea;box-shadow:0 0 0 3px #9569ea1c}
.report-dialog-buttons{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}
.report-dialog-buttons button{min-width:106px;justify-content:center}
.message-send-error{margin:6px 0 0;color:#b12c4a;font-size:12px;line-height:1.5}
.message-send-error[hidden]{display:none}
@media(max-width:720px){.emoji-picker{left:-2px;width:min(322px,calc(100vw - 35px))}.message-compose-row{gap:5px}.message-compose-row textarea{min-height:51px;padding:12px}.message-send-button{width:44px;height:44px}.chat-message-actions{min-width:135px}}

.message-menu.menu-up .chat-message-actions{top:auto;bottom:calc(100% + 5px)}
.pm-toast{position:fixed;bottom:23px;right:23px;max-width:min(360px,calc(100vw - 36px));padding:13px 18px;border:1px solid #dcd4f3;border-radius:12px;background:#fff;color:#49316a;box-shadow:0 12px 35px #1c253435;font-size:13px;font-weight:600;z-index:250}

/* TeenZone Stories v2.5 — full-screen viewer and story creation modal */
.tz-story-strip{padding:17px 18px;margin-bottom:17px;overflow:hidden}
.tz-story-strip-title{display:flex;justify-content:space-between;align-items:center;margin:0 0 13px}.tz-story-strip-title h2{margin:0;font-size:19px}.tz-story-strip-title a{font-size:12px;font-weight:650}
.tz-story-tiles{display:flex;gap:13px;overflow:auto;padding:3px 0 10px;scrollbar-width:thin}
.tz-story-tile{border:0;background:none;display:flex;flex-direction:column;align-items:center;flex:0 0 76px;width:76px;gap:7px;color:#2c3853;cursor:pointer;padding:0;font-weight:650;font-size:11px;min-width:0}
.tz-story-tile>span:last-child{max-width:74px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tz-story-ring{width:67px;height:67px;padding:3px;border-radius:50%;background:linear-gradient(135deg,#fb2f9e,#8b36f8,#537df6);display:grid;place-items:center}
.tz-story-ring img{width:61px;height:61px;object-fit:cover;border:3px solid #fff;border-radius:50%;background:#eff1f8}
.tz-add-ring{background:#f9f4ff;border:2px dashed #b79bf0}.tz-story-plus{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;color:white;background:linear-gradient(135deg,#e716b5,#8840ff)}
.tz-stories-gallery{padding:20px;margin:16px 0}.tz-story-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(122px,1fr));gap:12px}
.tz-story-gallery-card{padding:0;border:0;background:#f5f3fc;overflow:hidden;border-radius:12px;cursor:pointer;position:relative;aspect-ratio:3/4;text-align:left}
.tz-story-gallery-card>img,.tz-video-preview{width:100%;height:100%;object-fit:cover}.tz-video-preview{display:grid;place-items:center;color:#7357ad;background:linear-gradient(140deg,#e1d8fd,#faf7ff)}
.tz-story-gallery-card>span{position:absolute;bottom:0;left:0;right:0;min-height:46px;background:linear-gradient(transparent,#171726d9);display:flex;align-items:end;padding:8px;color:white;font-size:12px;font-weight:650}.tz-story-mini{width:25px;height:25px;border-radius:50%;margin-right:7px}
#tz-create-dialog,#tz-viewer-dialog,#tz-story-report-dialog{border:0;box-shadow:0 20px 80px #08102066}#tz-create-dialog::backdrop,#tz-viewer-dialog::backdrop,#tz-story-report-dialog::backdrop{background:#0b1124ad}
.tz-create-dialog{width:min(450px,calc(100vw - 24px));max-height:calc(100dvh - 30px);overflow:auto;padding:22px 24px;border-radius:17px;color:#18233d;background:#fff}
.tz-create-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.tz-create-header h2{margin:0}.tz-dialog-x{border:0;background:transparent;font-size:26px;line-height:1;color:#6d7791}
.tz-upload-types{display:flex;background:#f5f6fb;border-radius:10px;gap:5px;padding:5px;margin-bottom:15px}.tz-upload-types button{flex:1;border:0;border-radius:7px;padding:10px;display:flex;align-items:center;justify-content:center;gap:7px;background:transparent;color:#566788;font-weight:650}.tz-upload-types .active{background:linear-gradient(110deg,#e513b3,#893dff);color:white}
.tz-drop-target{border:1.5px dashed #b9bcf9;border-radius:12px;background:#f8f9ff;display:flex;align-items:center;justify-content:center;text-align:center;flex-direction:column;min-height:150px;gap:8px;padding:17px;cursor:pointer}.tz-drop-target.is-dragging{background:#ebe1ff;border-color:#943dff}.tz-drop-target input{width:100%;max-width:240px;font-size:11px;color:#526481}.tz-drop-icon{color:#7643f1}.tz-drop-target strong{font-size:13px}.tz-drop-target small{font-size:11px;color:#8c97b0}
.tz-story-preview{height:132px;margin-top:12px;position:relative;border-radius:11px;overflow:hidden;background:#eee;display:flex;align-items:center;gap:10px;padding:7px}.tz-story-preview[hidden]{display:none}.tz-story-preview img,.tz-story-preview video{height:100%;width:130px;object-fit:contain}.tz-story-preview small{overflow-wrap:anywhere;font-size:11px;color:#53627f}.tz-story-preview button{position:absolute;right:8px;top:7px;border:0;border-radius:50%;background:#18213e;color:#fff;width:25px;height:25px;font-size:19px}
.tz-story-field{display:flex;flex-direction:column;margin-top:13px;font-weight:650;gap:6px;font-size:12px}.tz-story-field small{font-weight:400;color:#818da4}.tz-story-field input,.tz-story-field select{border:1px solid #e4e8f4;border-radius:9px;padding:11px;background:#f8f9fe;color:#2e3c5e;width:100%}
.tz-story-hint{font-size:11px;color:#8a96af;margin:12px 0}.tz-story-share{width:100%;border:0;background:linear-gradient(115deg,#f014aa,#7d48fe);padding:12px;color:white;display:flex;align-items:center;justify-content:center;gap:9px;border-radius:9px;font-weight:700}
.tz-story-error{margin:8px 0;padding:9px;border-radius:7px;color:#a1223c;background:#fff0f3}.tz-upload-progress{margin-bottom:10px;height:5px;background:#e7e7fb;border-radius:4px;overflow:hidden}.tz-upload-progress span{display:block;height:100%;width:0;background:#9449eb;transition:width .1s}
.tz-viewer-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:15px;background:#090d18;color:#fff;overflow:hidden;border-radius:0}
.tz-viewer-dialog[open]{display:flex;align-items:center;justify-content:center}.tz-viewer-close{position:fixed;top:20px;right:26px;z-index:4;font-size:32px;color:#fff;background:none;border:0;line-height:1}
.tz-viewer-panel{position:relative;height:min(90dvh,820px);width:min(460px,calc(100vw - 90px));background:#161d30;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;isolation:isolate}
.tz-story-progress{display:flex;gap:4px;position:absolute;z-index:4;left:12px;right:12px;top:10px}.tz-story-progress span{height:3px;background:#ffffff60;border-radius:6px;flex:1;overflow:hidden}.tz-story-progress b{height:100%;display:block;background:#fff;transition:width .05s linear}
.tz-viewer-top{position:absolute;top:20px;left:0;right:0;z-index:5;display:flex;align-items:center;gap:9px;padding:10px 14px;background:linear-gradient(#0008,transparent);min-width:0}.tz-viewer-top>img{width:37px;height:37px;border-radius:50%;border:2px solid white}.tz-viewer-top>div:not(.tz-viewer-menu){display:flex;flex-direction:column;min-width:0}.tz-viewer-top strong{font-size:13px;text-shadow:0 1px 4px #000}.tz-viewer-top small{font-size:10px;color:#e3e1ee}.tz-viewer-top>span{margin-left:auto;font-size:11px;background:#0007;padding:5px 8px;border-radius:20px;white-space:nowrap}.tz-viewer-more{border:0;background:#0004;color:white;border-radius:7px;padding:6px;display:grid;place-items:center}.tz-viewer-menu{position:absolute;right:12px;top:59px;background:white;color:#17243e;padding:5px;border-radius:10px;box-shadow:0 5px 20px #0005}.tz-viewer-menu[hidden]{display:none}.tz-viewer-menu button{padding:9px;border:0;background:white;display:flex;align-items:center;gap:7px;width:100%;color:#253252;font-size:12px}
.tz-viewer-media{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#111a2c}.tz-viewer-media img,.tz-viewer-media video{width:100%;height:100%;object-fit:contain}
.tz-viewer-caption{position:absolute;bottom:89px;left:12px;right:12px;margin:0;text-align:center;color:#fff;font-weight:650;text-shadow:0 1px 5px #000;font-size:13px;pointer-events:none}
.tz-viewer-bottom{position:absolute;left:10px;right:10px;bottom:17px;z-index:3;display:flex;align-items:center;gap:7px}.tz-viewer-bottom form{display:flex;flex:1;border:1px solid #ffffffb7;border-radius:10px;min-width:0;overflow:hidden;background:#0007}.tz-viewer-bottom form[hidden]{display:none}.tz-viewer-bottom input{color:white;flex:1;min-width:0;background:transparent;border:0;padding:12px;font-size:12px}.tz-viewer-bottom input::placeholder{color:#eee}.tz-viewer-bottom form button{border:0;background:linear-gradient(115deg,#f014aa,#8047fc);color:white;padding:9px}.tz-story-reactions{display:flex;gap:4px}.tz-story-reactions button{border:0;border-radius:100%;background:#0009;padding:9px;min-width:31px;font-size:17px}.tz-viewer-message{position:absolute;bottom:68px;left:12px;right:12px;z-index:4;padding:8px;border-radius:8px;background:#111b31d9;color:white;text-align:center;font-size:12px}
.tz-viewer-nav{position:absolute;top:48%;width:44px;height:44px;background:#ffffff27;border:1px solid #ffffff40;border-radius:50%;color:white;font-size:35px;display:grid;place-items:center}.tz-story-prev{left:max(14px,calc(50vw - 310px))}.tz-story-next{right:max(14px,calc(50vw - 310px))}
.tz-story-report-dialog{border-radius:16px;padding:23px;width:min(430px,calc(100vw - 28px));background:white;color:#18233d}.tz-story-report-dialog h2{margin-bottom:17px}.tz-story-report-dialog label{display:flex;flex-direction:column;gap:9px;font-weight:650}.tz-story-report-dialog textarea{border:1px solid #e0e3ee;padding:11px;border-radius:10px;min-height:110px;resize:vertical}.tz-report-actions{margin-top:14px;display:flex;justify-content:flex-end;gap:8px}
.tz-admin-story-settings{display:flex;gap:12px;align-items:flex-start;flex-direction:column;margin:15px 0}.tz-admin-story-settings label{display:block;padding:11px;border:1px solid #e6e8f3;border-radius:9px;width:100%}.tz-admin-story-settings button{margin-top:3px}
@media(max-width:620px){.tz-story-tiles{gap:8px}.tz-story-tile{flex-basis:70px;width:70px}.tz-viewer-dialog{padding:0}.tz-viewer-panel{width:100vw;height:100dvh;border-radius:0}.tz-viewer-nav{top:42%;z-index:5;width:35px;height:35px;font-size:27px;background:#0008}.tz-story-prev{left:7px}.tz-story-next{right:7px}.tz-viewer-close{top:6px;right:8px;font-size:29px}.tz-viewer-top{padding-right:38px}.tz-viewer-caption{bottom:89px}.tz-story-reactions button{font-size:15px;padding:7px}.tz-create-dialog{padding:16px}}


/* v2.7 Stories: unobtrusive icons without dark pill backgrounds. */
.tz-viewer-top .tz-story-views{background:transparent!important;border:0!important;box-shadow:none!important;padding:3px 0!important;color:#fff;display:inline-flex;align-items:center;gap:5px;font-weight:600;font-size:12px;font-variant-numeric:tabular-nums}
.tz-viewer-top .tz-viewer-more{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;color:#fff;padding:5px;min-height:36px;min-width:32px}
.tz-viewer-top .tz-viewer-more:hover{opacity:.75}
.tz-viewer-top .tz-viewer-more:focus-visible,.tz-story-like:focus-visible{outline:2px solid #fff;outline-offset:3px}
.tz-viewer-menu button{background:transparent!important;border:0!important;box-shadow:none!important}
.tz-viewer-menu button:hover{color:#7543eb}
.tz-story-reactions{display:flex;align-items:center;flex-shrink:0}
.tz-story-reactions .tz-story-like{border:0!important;box-shadow:none!important;background:transparent!important;padding:5px 2px!important;border-radius:0!important;min-width:0!important;color:#fff;display:flex;align-items:center;gap:5px;font-size:12px;white-space:nowrap;font-weight:650}
.tz-story-like svg{flex-shrink:0;stroke-width:1.9}
.tz-story-like.is-liked{color:#ff9ce6}
.tz-story-like.is-liked svg{fill:#fc4cb8;stroke:#ffadef}
.tz-story-like:disabled{opacity:.65;cursor:wait}
#tz-story-like-count{font-variant-numeric:tabular-nums;min-width:1ch}
.tz-story-ring img{object-fit:cover;background:#edf0f8}
.tz-story-mini{object-fit:cover}
@media(max-width:620px){.tz-story-reactions .tz-story-like{font-size:11px;padding:4px 0!important;gap:3px}.tz-story-reactions .tz-story-like svg{width:18px;height:18px}.tz-viewer-top .tz-story-views{font-size:11px}}

/* v2.8 Stories: image-only upload heading (other post and video features unchanged). */
.tz-story-photo-label{display:flex;align-items:center;gap:8px;color:#6d45c0;font-size:13px;font-weight:700;margin:9px 0 12px}
.tz-story-photo-label svg{flex-shrink:0}

/* TeenZone v2.9 – clean photo / YouTube / colored post composer & icon-only feed. */
.tz-post-composer{padding:16px 20px!important;margin-bottom:17px}
.tz-post-prompt-row{display:flex;gap:12px;align-items:center}
.tz-post-prompt{flex:1;text-align:left;background:#f4f6fb;color:#475873;border:0;border-radius:15px;padding:16px 17px;font-size:15px;cursor:pointer;min-height:51px}
.tz-post-prompt:hover{background:#eef1f9}
.tz-post-quick-actions{display:flex;align-items:center;justify-content:space-around;border-top:1px solid #edf0f7;margin-top:13px;padding-top:13px;gap:8px;flex-wrap:wrap}
.tz-post-quick-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;background:transparent;font-size:13px;color:#273854;font-weight:650;border-radius:9px;padding:8px;cursor:pointer;white-space:nowrap}
.tz-post-quick-actions button:hover{background:#f5f3ff}
.tz-compose-photo svg{color:#15b986}.tz-compose-youtube svg{color:#f03242}.tz-compose-colored svg{color:#d833ce}
.tz-post-quick-actions small{font-size:12px;color:#67738e}
.tz-post-dialog,.tz-post-report-dialog{border:1px solid #e5e9f4;box-shadow:0 25px 85px #08132938;border-radius:17px;background:white;color:#162541;padding:0;width:min(520px,calc(100vw - 28px));max-height:calc(100dvh - 30px);overflow:auto}
.tz-post-dialog::backdrop,.tz-post-report-dialog::backdrop{background:#0c1739a8;backdrop-filter:blur(2px)}
.tz-post-dialog-head,.tz-post-report-head{display:flex;justify-content:space-between;align-items:center;padding:19px 22px;border-bottom:1px solid #edf0f7}
.tz-post-dialog h2,.tz-post-report-dialog h2{margin:0;font-size:19px}
.tz-post-dialog-head button,.tz-post-report-head button{border:0;background:transparent;color:#64748b;font-size:25px;cursor:pointer;width:34px;height:34px}
#tz-post-form{padding:20px 22px 22px;display:grid;gap:15px}
.tz-photo-picker{cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1.5px dashed #b7c5e4;background:#f7f9ff;color:#3373e8;border-radius:12px;padding:23px 16px;text-align:center}
.tz-photo-picker strong{color:#23477c}.tz-photo-picker span{font-size:12px;color:#6c7894}
#tz-post-images{width:100%;margin-top:8px;font-size:12px}
.tz-post-photo-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}
.tz-post-photo-preview img{width:100%;height:95px;object-fit:cover;border-radius:9px}
#tz-post-video-fields label,#tz-post-report-form label,.tz-post-body-label{display:block;font-size:13px;font-weight:700;color:#334462;margin-bottom:7px}
#tz-post-youtube-link{width:100%;border:1px solid #dce3f0;border-radius:10px;padding:12px;font-size:14px;color:#253555}
#tz-post-video-fields small{display:block;color:#71809d;font-size:12px;margin-top:8px}
.tz-post-youtube-preview{display:flex;align-items:center;gap:10px;border:1px solid #e5ebf6;border-radius:10px;overflow:hidden;margin-top:9px;padding:6px;color:#43536e;font-weight:650}
.tz-post-youtube-preview img{width:120px;height:72px;object-fit:cover;border-radius:6px}
.tz-choose-title{display:block;margin-bottom:11px;color:#243753}
.tz-post-colors{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:12px}
.tz-post-swatch{height:51px;border-radius:10px;border:3px solid transparent;cursor:pointer;box-shadow:0 0 0 1px #0000000a}
.tz-post-swatch.selected{border:3px solid #fff;outline:2px solid #645cf2}
.tz-bg-rose{background:linear-gradient(130deg,#ff477d,#aa2da7)}
.tz-bg-coral{background:linear-gradient(130deg,#fd4d64,#fb6938)}
.tz-bg-orange{background:linear-gradient(130deg,#fe7d43,#ffa33e)}
.tz-bg-yellow{background:linear-gradient(130deg,#ffcc31,#ff9e38)}
.tz-bg-green{background:linear-gradient(130deg,#39d599,#0fa977)}
.tz-bg-blue{background:linear-gradient(130deg,#4c94ff,#3175e9)}
.tz-bg-purple{background:linear-gradient(130deg,#8f76ff,#645bdc)}
.tz-bg-pink{background:linear-gradient(130deg,#fb96fa,#ff71b0)}
.tz-bg-lavender{background:linear-gradient(130deg,#a1c2ff,#9d85ec)}
.tz-bg-hearts{background:linear-gradient(135deg,#f95699,#fe8bb2);background-image:radial-gradient(circle at 25% 28%,#ffd7e5 0 6px,transparent 7px),radial-gradient(circle at 73% 72%,#ffb6db 0 12px,transparent 13px),linear-gradient(135deg,#f95699,#fe8bb2)}
.tz-bg-clouds{background:linear-gradient(135deg,#80c6ff,#488bda);background-image:radial-gradient(circle at 20% 60%,#c3ecff 0 18px,transparent 19px),radial-gradient(circle at 82% 31%,#c3ecff 0 12px,transparent 13px),linear-gradient(135deg,#80c6ff,#488bda)}
.tz-bg-night{background:linear-gradient(140deg,#172457,#1a0c38);background-image:radial-gradient(circle at 75% 25%,#ffeaae 0 12px,transparent 13px),radial-gradient(circle at 25% 60%,#fff9d6 0 2px,transparent 3px),linear-gradient(140deg,#172457,#1a0c38)}
.tz-colored-preview{min-height:130px;border-radius:12px;display:flex;align-items:center;justify-content:center;text-align:center;color:white;font-weight:800;font-size:23px;padding:22px;overflow-wrap:anywhere}
#tz-post-body{display:block;width:100%;border:1px solid #dfe5f1;border-radius:11px;resize:vertical;padding:13px;font:inherit;min-height:89px;color:#263655}
.tz-post-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:15px}
.tz-post-dialog-footer label{font-size:12px;color:#5c6b82}.tz-post-dialog-footer select{display:block;padding:8px;border-radius:9px;border:1px solid #dce4f0;margin-top:3px}
.tz-post-dialog-footer .primary-btn{display:flex;align-items:center;gap:7px;min-width:118px;justify-content:center}
.post-body.tz-colored-feed-post{margin-top:12px;margin-bottom:14px;margin-left:0;padding:42px 24px;min-height:230px;display:flex;align-items:center;justify-content:center;text-align:center;color:white!important;font-size:clamp(23px,4vw,36px);font-weight:800;line-height:1.4;overflow-wrap:anywhere;border-radius:12px}
.tz-youtube-player{margin-top:12px;margin-bottom:12px;aspect-ratio:16/9;border-radius:13px;overflow:hidden;background:#101629}
.tz-youtube-player iframe{display:block;width:100%;height:100%;border:0}
.feed-post .post-actions{display:flex!important;align-items:center;justify-content:space-between}
.feed-post .post-actions .reaction-main,.feed-post .post-actions .comment-toggle,.feed-post .post-actions .share-button{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:6px!important;color:#506582!important;display:inline-flex!important;align-items:center;gap:8px;padding:6px!important;font-weight:600}
.feed-post .post-actions .reaction-main.is-reacted{color:#6743e6!important}
.feed-post .post-actions .reaction-actions{display:flex;align-items:center;gap:19px}
.feed-post .post-actions .post-share{margin-left:auto}
.feed-post .post-actions button:hover{color:#754ff0!important;background:transparent!important}
.tz-post-like-count,.tz-post-comment-count{font-size:13px;font-variant-numeric:tabular-nums;color:inherit}
.tz-post-report-dialog{width:min(445px,calc(100vw - 26px))}
#tz-post-report-form{padding:19px 22px 23px}
#tz-post-report-reason{width:100%;min-height:133px;resize:vertical;padding:12px;border:1px solid #dce4ee;border-radius:10px;color:#243758;font:inherit;box-sizing:border-box}
#tz-post-report-error{color:#c51b36;margin:7px 0}
.tz-post-report-footer{display:flex;justify-content:flex-end;align-items:center;gap:9px;margin-top:15px}
@media(max-width:560px){.tz-post-composer{padding:12px!important}.tz-post-quick-actions{justify-content:space-between}.tz-post-quick-actions button{padding:6px 0;font-size:12px;gap:4px}.tz-post-quick-actions small{font-size:10px}.tz-post-colors{gap:5px}.tz-post-swatch{height:43px}.tz-post-photo-preview img{height:72px}.post-body.tz-colored-feed-post{min-height:170px;padding:27px 14px}}

.tz-bg-yellow.tz-colored-preview,.tz-bg-yellow.tz-colored-feed-post{color:#663c04!important}
.tz-bg-lavender.tz-colored-preview,.tz-bg-lavender.tz-colored-feed-post{color:#233b73!important}


/* v2.9.2: crisp image popup — no white card or colored control backgrounds. */
.post-media a[data-post-image]{cursor:zoom-in;display:block;overflow:hidden}
.tz-post-image-dialog{
  border:0;box-shadow:none;background:transparent;color:white;
  padding:0;margin:auto;overflow:visible;max-width:min(95vw,1200px);
  max-height:94vh;width:max-content;
}
.tz-post-image-dialog::backdrop{background:rgba(9,12,22,.64)}
.tz-post-image-full{display:block;max-width:min(92vw,1200px);max-height:92vh;width:auto;height:auto;object-fit:contain;border:0;border-radius:3px;box-shadow:none;background:transparent}
.tz-post-image-dialog button{
  position:absolute;z-index:1;border:0!important;box-shadow:none!important;
  background:transparent!important;color:#fff;cursor:pointer;
  display:grid;place-items:center;line-height:1;
  text-shadow:0 1px 8px #111;transition:opacity .15s;
}
.tz-post-image-dialog button:hover{opacity:.72}
.tz-post-image-dialog button:focus-visible{outline:2px solid white;outline-offset:3px}
.tz-post-image-close{right:0;top:-39px;font-size:34px;width:39px;height:36px}
.tz-post-image-prev,.tz-post-image-next{top:50%;transform:translateY(-50%);font-size:52px;width:45px;height:56px}
.tz-post-image-prev{left:0}.tz-post-image-next{right:0}
.tz-post-image-dialog button[hidden]{display:none!important}
@media(max-width:720px){.tz-post-image-full{max-width:96vw;max-height:85vh}.tz-post-image-close{top:-42px}}

/* Comments v2.9.3 — clear, unboxed, background-free controls */
.comments-area{background:transparent!important;border:0!important;padding-top:12px}
.comment-list{display:flex;flex-direction:column;gap:14px}
.tz-comment-thread{display:flex;flex-direction:column;gap:10px}
.tz-comment-thread[hidden],.tz-comment-more-btn[hidden]{display:none!important}
.tz-comment-item{display:flex;gap:10px;align-items:flex-start;padding:0;background:none!important;min-width:0}
.tz-comment-item.tz-comment-child{margin-left:42px}
.tz-comment-item>.small-avatar{width:32px;height:32px;border-radius:50%;flex:0 0 32px}
.tz-comment-content{flex:1;min-width:0;background:transparent!important;border:0!important;box-shadow:none!important}
.tz-comment-head{display:flex;align-items:center;gap:8px;min-height:24px}
.tz-comment-head strong{font-size:13px}.tz-comment-head small{color:var(--muted);font-size:11px}
.tz-comment-text{margin:3px 0 5px;font-size:13px;white-space:normal;overflow-wrap:anywhere}
.tz-comment-actions{display:flex;gap:16px;align-items:center}
.tz-comment-actions button,.tz-comment-more summary,.tz-comment-more-btn,.tz-comment-menu button,.tz-comment-emoji-open,.tz-comment-send,.tz-reply-context button{display:inline-flex;align-items:center;gap:5px;padding:3px 2px!important;background:transparent!important;color:var(--muted)!important;border:0!important;border-radius:0!important;box-shadow:none!important;cursor:pointer;font-size:12px;line-height:1.5}
.tz-comment-actions button:hover,.tz-comment-more summary:hover,.tz-comment-more-btn:hover,.tz-comment-menu button:hover,.tz-comment-emoji-open:hover,.tz-comment-send:hover{color:var(--ink)!important}
.tz-comment-actions [aria-pressed="true"]{color:#315cbe!important}
.tz-comment-more{margin-left:auto;position:relative}
.tz-comment-more summary{list-style:none}.tz-comment-more summary::-webkit-details-marker{display:none}
.tz-comment-menu{position:absolute;right:0;top:100%;z-index:12;min-width:115px;padding:8px 10px;display:grid;gap:7px;border:1px solid var(--edge);border-radius:10px;background:var(--card,#fff);box-shadow:0 9px 20px #11182722}
.tz-comment-menu button{text-align:left;justify-content:flex-start}
.tz-comment-more-btn{margin:12px 0;font-weight:600}
.comment-form{display:flex;flex-direction:column;gap:6px;padding-top:14px;border-top:1px solid var(--edge);background:transparent!important}
.tz-reply-context{font-size:12px;color:var(--muted)}.tz-reply-context[hidden]{display:none}
.tz-comment-compose{display:flex;gap:8px;align-items:center;border:1px solid var(--edge);border-radius:24px;padding:7px 11px;background:transparent!important}
.tz-comment-compose input{min-width:0;flex:1;background:transparent!important;border:0!important;box-shadow:none!important;outline:none!important;padding:4px!important;color:var(--ink)}
.tz-comment-compose button{flex:0 0 auto}.tz-comment-send{color:#436cc8!important}
.tz-comment-dialog{width:min(450px,calc(100vw - 30px));padding:24px;border:1px solid var(--edge);border-radius:14px;color:var(--ink);background:#fff}
.tz-comment-dialog::backdrop{background:#0008}.tz-comment-dialog h2{font-size:18px;margin-bottom:16px}
.tz-comment-dialog textarea{width:100%;border:1px solid var(--edge);border-radius:10px;padding:12px;resize:vertical;background:transparent;color:var(--ink)}
.tz-dialog-controls{display:flex;justify-content:flex-end;gap:14px;margin-top:14px}
.tz-dialog-controls button{padding:8px 4px;border:0;background:transparent;color:var(--ink);font-weight:600}
.tz-dialog-controls button[type="submit"]{color:#2563eb}
.tz-comment-dialog-error{color:#c32645;font-size:12px;margin-top:8px}
.tz-comment-emojis{position:fixed;z-index:250;width:276px;max-height:215px;overflow:auto;background:#fff;border:1px solid var(--edge);border-radius:13px;padding:12px;box-shadow:0 10px 30px #0002}
.tz-comment-emojis[hidden]{display:none!important}.tz-comment-emoji-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:2px}
.tz-comment-emoji-grid button{font-size:22px;background:transparent;border:0;border-radius:6px;padding:6px 0}
.tz-comment-emoji-grid button:hover{background:#f0f2f7}
@media(max-width:640px){.tz-comment-item.tz-comment-child{margin-left:26px}.tz-comment-menu{right:-5px}}


/* v2.9.4: Colored Shouts stay compact even with many line breaks or long text. */
.post-body.tz-colored-feed-post {
  position:relative;
  height: auto;
  min-height:210px;
  max-height:280px;
  padding:24px 22px 46px;
  margin-block:12px 14px;
  display:flex;
  justify-content:center;
  align-items:center;
  overflow:hidden;
  font-size:clamp(18px, 2.5vw, 27px);
  line-height:1.3;
}
.tz-colored-feed-text {
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:6;
  line-clamp:6;
  overflow:hidden;
  overflow-wrap:anywhere;
  word-break:break-word;
  white-space:pre-wrap;
  width:100%;
  max-height:210px;
  text-align:center;
  font:inherit;
}
.tz-colored-readmore {
  position:absolute;
  bottom:10px;
  left:50%;
  transform:translateX(-50%);
  color:inherit;
  border:0;
  border-radius:0;
  background:transparent;
  text-decoration:underline;
  font-size:13px;
  font-weight:700;
  padding:6px 12px;
  white-space:nowrap;
  cursor:pointer;
}
.tz-colored-readmore[hidden]{display:none!important}
.tz-colored-readmore:hover{opacity:.8}
.tz-colored-readmore:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.tz-colored-full-dialog {
  position:fixed;
  inset:0;
  margin:auto;
  width:min(680px, calc(100vw - 26px));
  max-height:min(80dvh, 720px);
  overflow:auto;
  border:0;
  border-radius:16px;
  box-shadow:0 30px 90px #07112650;
  padding:0;
  color:#fff;
}
.tz-colored-full-dialog:not([open]){display:none}
.tz-colored-full-dialog::backdrop{background:rgba(9, 14, 30, .7)}
.tz-colored-full-content {
  min-height:200px;
  padding:54px 32px;
  display:flex;
  justify-content:center;
  align-items:center;
  text-align:center;
  font-size:clamp(19px,3vw,28px);
  font-weight:800;
  line-height:1.45;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.tz-colored-full-close {
  position:sticky;
  top:10px;
  float:right;
  margin:10px 12px -50px 0;
  z-index:1;
  width:34px;
  height:34px;
  padding:0;
  font-size:27px;
  line-height:30px;
  text-align:center;
  color:inherit;
  background:transparent;
  border:0;
  cursor:pointer;
}
.tz-colored-full-dialog.tz-bg-yellow,.tz-colored-full-dialog.tz-bg-lavender{color:#26395d}
@media(max-width:560px) {
  .post-body.tz-colored-feed-post{min-height:170px;max-height:250px;padding:18px 15px 44px;font-size:21px}
  .tz-colored-feed-text{-webkit-line-clamp:6;line-clamp:6;max-height:180px}
  .tz-colored-full-content{padding:52px 22px;font-size:21px}
}


/* TeenZone v3.0: clean profile preview; no colored button, menu or icon backgrounds. */
.tz-profile-card{overflow:visible;margin-bottom:14px}
.tz-profile-cover{height:clamp(145px,20vw,218px);position:relative;background:#e8ecf3 url('sunset.svg') center center/cover no-repeat;border-radius:var(--radius) var(--radius) 0 0}
.tz-profile-cover:has([style]){background-size:cover}
.tz-profile-cover-form{position:absolute;right:12px;bottom:12px;z-index:1}
.tz-profile-cover-edit{display:inline-flex;align-items:center;gap:5px;padding:7px 9px;cursor:pointer;background:#fff;border-radius:8px;color:#273753;font-size:12px}
.tz-profile-summary{display:flex;align-items:flex-end;flex-wrap:wrap;gap:16px;padding:0 21px 18px}
.tz-profile-avatar-wrap{position:relative;width:116px;height:116px;flex:0 0 116px;margin-top:-46px}
.tz-profile-avatar-link{display:block;width:116px;height:116px;border-radius:100%;border:4px solid #fff;overflow:hidden;position:relative}
.tz-profile-avatar{width:100%;height:100%;object-fit:cover}
.tz-profile-avatar-form{position:absolute;right:0;bottom:1px;z-index:1}
.tz-profile-avatar-form label{display:flex;align-items:center;justify-content:center;width:31px;height:31px;border-radius:50%;background:#fff;color:#253353;border:1px solid #dde4ee;cursor:pointer}
.tz-profile-identity{min-width:170px;flex:1}
.tz-profile-identity h1{font-size:22px;margin:0 0 3px;overflow-wrap:anywhere}
.tz-profile-admin-label{font-size:11px;color:#7b59b5;font-weight:600;vertical-align:middle}
.tz-profile-handle{margin:0;color:#66738b;font-size:12px}
.tz-profile-bio{margin:7px 0 4px;white-space:normal;color:#3f4b63;overflow-wrap:anywhere}
.tz-profile-facts{display:flex;gap:13px;flex-wrap:wrap;margin-top:8px;color:#617088;font-size:12px}
.tz-profile-facts span{display:inline-flex;align-items:center;gap:4px}
.tz-profile-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto;align-self:center}
.tz-profile-actions form{margin:0}
.tz-profile-action,.tz-profile-pin-button,.tz-profile-plain-submit,.tz-profile-more summary,.tz-profile-more-menu button,.tz-profile-more-menu a{border:0;background:transparent!important;box-shadow:none!important;color:#273955;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 9px;border-radius:6px;text-decoration:none;font-weight:600;font-size:12px;cursor:pointer}
.tz-profile-action:hover,.tz-profile-pin-button:hover,.tz-profile-more-menu button:hover,.tz-profile-more-menu a:hover{color:#8750d5;text-decoration:underline}
.tz-profile-more{position:relative}
.tz-profile-more summary{list-style:none}
.tz-profile-more summary::-webkit-details-marker{display:none}
.tz-profile-more-menu{position:absolute;right:0;top:100%;z-index:20;background:#fff;border:1px solid #e4e9f1;border-radius:10px;box-shadow:0 12px 40px #20283d21;padding:5px;min-width:165px}
.tz-profile-more-menu button,.tz-profile-more-menu a{display:flex;width:100%;justify-content:flex-start;text-align:left;white-space:nowrap}
.tz-profile-more-menu form{width:100%}
.tz-profile-tabs{display:flex;align-items:center;gap:20px;border-top:1px solid #e8edf3;padding:0 19px;overflow-x:auto}
.tz-profile-tabs a{padding:12px 7px 11px;color:#64738a;font-weight:650;font-size:13px;white-space:nowrap;border-bottom:2px solid transparent}
.tz-profile-tabs a.selected{color:#7951c3;border-color:#7951c3}
.tz-profile-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(175px,240px);gap:13px;align-items:start}
.tz-profile-main{min-width:0}.tz-profile-side{min-width:0}
.tz-profile-side-card{padding:13px;margin-bottom:12px;overflow:hidden}
.tz-profile-side-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:5px}
.tz-profile-side-heading strong{font-size:14px}
.tz-profile-side-heading a{font-size:11px}
.tz-profile-side-photos,.tz-profile-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.tz-profile-side-photos a,.tz-profile-photo-grid a{display:block;aspect-ratio:1;overflow:hidden;border-radius:7px}
.tz-profile-side-photos img,.tz-profile-photo-grid img{width:100%;height:100%;object-fit:cover}
.tz-profile-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.tz-profile-side-friends,.tz-profile-friend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 4px}
.tz-profile-side-friends a,.tz-profile-friend-grid a{color:#35445e;text-align:center;min-width:0;font-size:10px;display:flex;flex-direction:column;align-items:center;gap:4px;overflow:hidden}
.tz-profile-side-friends img,.tz-profile-friend-grid img{width:41px;height:41px;border-radius:50%}
.tz-profile-side-friends span,.tz-profile-friend-grid span{overflow:hidden;text-overflow:ellipsis;width:100%;white-space:nowrap}
.tz-profile-friend-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:17px}
.tz-profile-friend-grid img{width:68px;height:68px}
.tz-profile-section{padding:20px;min-height:120px}.tz-profile-section h2{margin:0 0 17px}.tz-profile-section h2 small{font-size:12px;color:#7d8ba1}
.tz-profile-about-list p{display:flex;align-items:flex-start;gap:9px;margin:0 0 13px;color:#506078;overflow-wrap:anywhere}
.tz-profile-pinned-label{display:flex;align-items:center;gap:5px;color:#7b569e;font-size:12px;margin:6px 0 10px}
.tz-profile-post-item{position:relative}
.tz-profile-pin-form{position:absolute;right:43px;top:14px;z-index:2}
.tz-profile-pin-button{font-size:11px;padding:5px}
.tz-profile-empty{padding:24px;color:#7d8ba1}
.tz-profile-report-dialog{border:1px solid #e6eaf1;border-radius:12px;padding:20px;width:min(420px,92vw);box-shadow:0 15px 60px #10182845}
.tz-profile-report-dialog::backdrop{background:#101827a3}
.tz-profile-report-top{display:flex;justify-content:space-between;align-items:center}
.tz-profile-report-top button,.tz-profile-report-buttons button{border:0;background:transparent;padding:8px;cursor:pointer}
.tz-profile-report-dialog textarea{width:100%;padding:12px;resize:vertical;border:1px solid #dae0eb;border-radius:8px;margin:9px 0}
.tz-profile-report-buttons{display:flex;justify-content:flex-end;gap:12px}
.tz-profile-plain-submit{align-self:flex-start}
@media(max-width:1050px){.tz-profile-columns{grid-template-columns:minmax(0,1fr)}.tz-profile-side{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.tz-profile-side-card{margin-bottom:0}}
@media(max-width:600px){.tz-profile-summary{align-items:flex-start;padding:0 12px 13px;gap:9px}.tz-profile-avatar-wrap{width:92px;height:92px;flex-basis:92px;margin-top:-35px}.tz-profile-avatar-link{width:92px;height:92px}.tz-profile-identity{flex-basis:calc(100% - 112px)}.tz-profile-actions{width:100%;margin-left:0;justify-content:flex-start}.tz-profile-identity h1{font-size:18px}.tz-profile-cover{height:145px}.tz-profile-facts{gap:7px}.tz-profile-tabs{gap:10px;padding:0 7px}.tz-profile-side{grid-template-columns:1fr 1fr}.tz-profile-side-card:last-child{grid-column:1/-1}}

/* Profile page spans the standard right widget column. Other pages retain their boxed layout. */
.layout.tz-profile-wide-layout{grid-template-columns:252px minmax(0,1fr)}
.tz-profile-wide-layout .center-inner{max-width:1100px}
.tz-profile-cover-edit{background:transparent;color:#fff;text-shadow:0 1px 6px #000;font-weight:650;box-shadow:none}
.tz-profile-avatar-form label{background:transparent;color:#fff;border:0;text-shadow:0 1px 5px #000}
@media(max-width:720px){.layout.tz-profile-wide-layout{display:block}}

/* v3.0.1: profile layout stability; all profile controls remain background-free. */
.layout.tz-profile-wide-layout>.center-panel{width:100%;min-width:0}
.layout.tz-profile-wide-layout .center-inner{width:100%;max-width:1100px}
.tz-profile-card>.tz-profile-cover{display:block;min-height:175px;background-color:#e7e9f5;background-position:center;background-size:cover}
.tz-profile-card>.tz-profile-summary{display:flex;align-items:flex-end;gap:16px}
.tz-profile-card>.tz-profile-tabs{display:flex;flex-wrap:nowrap}
.tz-profile-more-menu:not([hidden]){max-width:min(280px,90vw)}
@media(max-width:650px){.tz-profile-card>.tz-profile-cover{min-height:145px}.tz-profile-card>.tz-profile-summary{flex-wrap:wrap;align-items:center}}

/* v3.0.3: clean Settings dashboard, designed to match the approved screenshot */
.tz-settings-wide-layout{grid-template-columns:252px minmax(0,1fr);max-width:1560px}
.tz-settings-wide-layout .center-panel{padding:24px 25px 56px}
.tz-settings-wide-layout .center-inner{max-width:1230px}
.tz-settings-heading{margin:0 0 22px}
.tz-settings-heading h1{margin:0 0 4px;font-size:27px;font-weight:800;color:#172038}
.tz-settings-heading p{color:#7987a1;font-size:15px;margin:0}
.tz-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.tz-settings-column{min-width:0;display:grid;align-content:start;gap:17px}
.tz-settings-card{padding:18px 22px;min-width:0;box-shadow:none;border:1px solid #e5e9f1;border-radius:14px}
.tz-settings-card h2{font-size:19px;letter-spacing:-.3px;margin:1px 0 10px;color:#151d30}
.tz-settings-row{display:flex;align-items:center;gap:16px;min-height:63px;border-top:1px solid #edf0f4;color:#1c2941}
.tz-settings-card .tz-settings-row:first-of-type{border-top:1px solid #edf0f4}
.tz-settings-row:not(details){padding:9px 4px}
.tz-settings-row>summary{padding:10px 4px;min-height:62px;display:flex;align-items:center;gap:16px;width:100%;cursor:pointer;list-style:none}
.tz-settings-row>summary::-webkit-details-marker{display:none}
.tz-settings-row span:not(.tz-settings-icon){flex:1;min-width:0}
.tz-settings-row strong{display:block;font-size:14px;font-weight:650}
.tz-settings-row small{display:block;font-size:12px;line-height:1.4;color:#7d8aa4;font-weight:400;margin-top:2px}
.tz-settings-icon{width:31px;flex:none;display:flex;align-items:center;justify-content:center;color:#18243c}
.tz-settings-chevron{color:#75849f;font-size:25px;font-weight:400;line-height:1;transition:transform .15s}
.tz-settings-row[open] .tz-settings-chevron{transform:rotate(90deg)}
.tz-settings-row[open]{display:block}
.tz-settings-row[open]>summary{border-bottom:1px solid #eff1f5}
.tz-settings-form{padding:14px 6px 19px;max-width:100%;color:#51627e}
.tz-settings-form label{display:flex;flex-direction:column;gap:7px;color:#384760;font-size:13px}
.tz-settings-form input,.tz-settings-form textarea,.tz-settings-form select{background:#fff;color:#25314b;border:1px solid #dce3ed;border-radius:8px;padding:11px;max-width:100%;width:100%}
.tz-settings-form .primary-btn{align-self:flex-start}
.tz-settings-form>p{line-height:1.55;color:#62718e;font-size:13px}
.tz-settings-form>small{color:#8290a8}
.tz-settings-toggle-row{cursor:pointer}
.tz-settings-toggle{appearance:none;-webkit-appearance:none;flex:0 0 42px;height:23px!important;width:42px!important;border-radius:99px;border:0!important;position:relative;background:#c3ccda;cursor:pointer;margin-left:auto;transition:background .15s}
.tz-settings-toggle:before{content:"";position:absolute;width:17px;height:17px;border-radius:50%;background:white;left:3px;top:3px;box-shadow:0 1px 3px #29364c4d;transition:transform .15s}
.tz-settings-toggle:checked{background:#397bfa}
.tz-settings-toggle:checked:before{transform:translateX(19px)}
.tz-settings-toggle:focus-visible{outline:2px solid #865aff;outline-offset:3px}
.tz-settings-notify-form .tz-settings-row{min-height:64px}
.tz-settings-save{display:block;margin:14px 0 1px auto;border:1px solid #d5dcec;background:transparent;color:#355788;border-radius:9px;padding:9px 13px;font-size:12px;font-weight:650}
.tz-settings-save:hover{border-color:#8aa8df;color:#244ed1}
.tz-settings-action form{margin-left:auto}
.tz-settings-action button{background:none;border:0;color:#5975a5;font-weight:700;font-size:23px;padding:7px}
.tz-settings-blocked{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e7eaf2;padding:9px 0;color:#25334c}
.tz-settings-blocked form button{background:transparent;border:1px solid #d9e1ed;border-radius:7px;padding:6px 10px;color:#334c7b}
#tz-theme-choice{max-width:115px;border:1px solid #dde4ed;border-radius:8px;background:#fff;color:#243351;padding:8px;font-size:12px}
.tz-danger-button{border:1px solid #fac4c8;background:#fff7f7;color:#b12c38;padding:10px 14px;border-radius:8px;align-self:flex-start;font-weight:650}
.tz-settings-static{cursor:default}
@media(max-width:1010px){.tz-settings-grid{grid-template-columns:1fr}.tz-settings-wide-layout{grid-template-columns:220px minmax(0,1fr)}.tz-settings-wide-layout .center-panel{padding:18px}}
@media(max-width:720px){.tz-settings-wide-layout{display:block}.tz-settings-heading h1{font-size:24px}.tz-settings-card{padding:14px}.tz-settings-wide-layout .center-panel{padding:15px 12px 50px}.tz-settings-grid{gap:12px}}
/* A consistent light/dark appearance on the Settings dashboard. */
html[data-tz-theme="dark"] body{--bg:#141c2b;--ink:#e7edfa;--edge:#334156;--sidebar:#0c1424;background:#141c2b;color:#e7edfa}
html[data-tz-theme="dark"] .tz-settings-heading h1,html[data-tz-theme="dark"] .tz-settings-card h2,html[data-tz-theme="dark"] .tz-settings-row,html[data-tz-theme="dark"] .tz-settings-icon{color:#ecf2ff}
html[data-tz-theme="dark"] .tz-settings-card,html[data-tz-theme="dark"] .card{background:#1c2739;border-color:#35435b;color:#e7edfa}
html[data-tz-theme="dark"] .tz-settings-row,html[data-tz-theme="dark"] .tz-settings-card .tz-settings-row:first-of-type{border-color:#334058}
html[data-tz-theme="dark"] .tz-settings-row small,html[data-tz-theme="dark"] .tz-settings-heading p{color:#a8b7ce}
html[data-tz-theme="dark"] .tz-settings-form input,html[data-tz-theme="dark"] .tz-settings-form select,html[data-tz-theme="dark"] .tz-settings-form textarea,html[data-tz-theme="dark"] #tz-theme-choice{background:#172336;color:#edf3ff;border-color:#42516b}
html[data-tz-theme="dark"] .tz-settings-form label,html[data-tz-theme="dark"] .tz-settings-form p,html[data-tz-theme="dark"] .tz-settings-blocked{color:#c5d4e8}
html[data-tz-theme="dark"] .feed-post,html[data-tz-theme="dark"] .composer,html[data-tz-theme="dark"] .profile-layout,html[data-tz-theme="dark"] .widget,html[data-tz-theme="dark"] .right-panel{color:#e7edfa}
html[data-tz-theme="dark"] .post-author a{color:#9ac0ff}

/* v3.0.4: Settings-specific sidebar typography stays identical to Shouts/Explore.
   The settings layout may change column widths, but not the navigation font. */
.tz-settings-wide-layout .left-panel .side-nav .side-link {
  font-family: Inter,system-ui,-apple-system,Segoe UI,sans-serif;
  font-size: 15px;
  line-height: 1.46;
  font-weight: 400;
  letter-spacing: normal;
  color: #e9efff;
}
.tz-settings-wide-layout .left-panel .side-nav .side-link:hover { color: #fff; }
.tz-settings-wide-layout .left-panel .side-nav .side-link.active { color: #fff; font-weight: 700; }
@media(max-width:720px) {
  .tz-settings-wide-layout .left-panel .side-nav .side-link { font-size: 12px; }
}

/* v3.0.5 — Sticky left navigation/right widgets; scroll just the middle feed. */
@media (min-width:1081px) {
  .layout:not(.tz-settings-wide-layout) > .left-panel {
    position:sticky;top:72px;align-self:start;height:calc(100dvh - 72px);
    min-height:0;overflow-y:auto;overscroll-behavior:contain;
    scrollbar-width:thin;scrollbar-color:#46516d transparent;
  }
  .layout:not(.tz-settings-wide-layout) > .right-panel {
    position:sticky;top:72px;align-self:start;height:calc(100dvh - 72px);
    overflow-y:auto;overscroll-behavior:contain;
    scrollbar-width:thin;scrollbar-color:#c5cddc transparent;
  }
  .layout:not(.tz-settings-wide-layout) > .left-panel .side-scenery {
    flex:1 0 175px;min-height:175px;
    background:linear-gradient(to bottom,#11182700,#11182744 14%,#12172703),url('sunset.svg') center bottom/cover no-repeat;
  }
}
/* Settings is the only page with no left sidebar; keep wide settings cards. */
.layout.tz-settings-wide-layout {display:grid;grid-template-columns:minmax(0,1fr)!important;max-width:1460px}
.layout.tz-settings-wide-layout>.center-panel{min-width:0;padding:18px 22px 48px}
.layout.tz-settings-wide-layout .center-inner{max-width:1200px;width:100%}
.tz-feed-sentinel{display:flex;justify-content:center;align-items:center;min-height:52px;padding:15px 8px;color:var(--muted);font-size:13px}
.tz-feed-sentinel[hidden]{display:none}
@media (max-width:1080px) and (min-width:721px){
  .layout:not(.tz-settings-wide-layout)>.left-panel{position:sticky;top:72px;height:calc(100dvh - 72px);min-height:0;overflow:auto;align-self:start}
  .layout:not(.tz-settings-wide-layout)>.left-panel .side-scenery{flex:1 0 160px;min-height:160px}
}
@media(max-width:720px){
  .layout.tz-settings-wide-layout{display:block}
  .layout.tz-settings-wide-layout>.center-panel{padding:12px 10px 42px}
  .layout:not(.tz-settings-wide-layout)>.left-panel{position:static;height:auto;min-height:auto}
}


/* TeenZone v3.0.6: owner can click the full profile photo to replace it.
   No colored button backgrounds; camera icon stays visible on light photos. */
.tz-profile-avatar-upload-trigger{
  position:relative;display:block;width:116px;height:116px;padding:0;margin:0;
  border:4px solid #fff;border-radius:50%;background:transparent!important;
  overflow:hidden;cursor:pointer;appearance:none;box-shadow:none!important;
}
.tz-profile-avatar-upload-trigger .tz-profile-avatar{width:100%;height:100%;object-fit:cover;display:block}
.tz-profile-avatar-upload-trigger:hover .tz-profile-avatar{filter:brightness(.93)}
.tz-profile-avatar-upload-trigger:focus-visible,
.tz-profile-change-photo-action:focus-visible{outline:3px solid #7756d9;outline-offset:3px}
.tz-profile-avatar-camera{
  position:absolute;right:5px;bottom:5px;display:flex;align-items:center;justify-content:center;
  color:#16223c;background:transparent!important;filter:drop-shadow(0 0 2px white) drop-shadow(0 0 3px white);
  pointer-events:none;
}
.tz-profile-avatar-form{display:none}
.tz-profile-change-photo-action{color:inherit;background:transparent!important;border:0;box-shadow:none!important}
@media(max-width:600px){
  .tz-profile-avatar-upload-trigger{width:92px;height:92px}
  .tz-profile-avatar-camera{right:3px;bottom:3px}
}


/* TeenZone v3.0.7: fully visible camera OUTSIDE the avatar clipping mask.
   Transparent controls, with readable icon/text on both themes. */
.tz-profile-avatar-wrap{overflow:visible!important;isolation:isolate}
.tz-profile-avatar-wrap .tz-profile-avatar-upload-trigger{
  position:relative;z-index:1;overflow:hidden;display:block;
  width:116px;height:116px;flex:none;padding:0;
  border-radius:50%;border:4px solid #fff;
  background:transparent!important;box-shadow:none!important;
}
.tz-profile-avatar-wrap .tz-profile-avatar-camera{
  position:absolute;z-index:6;right:-12px;bottom:-3px;
  width:46px;height:46px;display:flex;align-items:center;justify-content:center;
  padding:8px;margin:0;cursor:pointer;pointer-events:auto;
  border:0;border-radius:50%;background:transparent!important;
  box-shadow:none!important;color:#111f39;
  filter:drop-shadow(0 1px 2px #fff) drop-shadow(0 0 3px #fff);
}
.tz-profile-avatar-wrap .tz-profile-avatar-camera svg{
  display:block;flex:none;width:26px;height:26px;stroke-width:2.6;
}
.tz-profile-avatar-wrap .tz-profile-avatar-camera:hover,
.tz-profile-avatar-wrap .tz-profile-avatar-camera:focus-visible{
  color:#6938c7;filter:drop-shadow(0 1px 2px #fff) drop-shadow(0 0 3px #fff);
}
.tz-profile-avatar-wrap .tz-profile-avatar-camera:focus-visible{outline:2px solid #744bce;outline-offset:0}
.tz-profile-actions .tz-profile-change-photo-action{
  display:inline-flex;align-items:center;gap:8px;
  font-size:13px;font-weight:700;line-height:1.25;min-height:42px;
  padding:9px 5px;color:#20314c!important;
  background:transparent!important;border:0!important;
  box-shadow:none!important;white-space:normal;text-align:left;
}
.tz-profile-actions .tz-profile-change-photo-action svg{display:block;flex:none;stroke-width:2.2}
.tz-profile-actions .tz-profile-change-photo-action:hover{color:#6641be!important;text-decoration:underline}
html[data-tz-theme="dark"] .tz-profile-actions .tz-profile-change-photo-action{color:#f0f4ff!important}
html[data-tz-theme="dark"] .tz-profile-avatar-wrap .tz-profile-avatar-camera{
  color:#fff;filter:drop-shadow(0 1px 2px #0b1321) drop-shadow(0 0 4px #0b1321);
}
@media(max-width:600px){
  .tz-profile-avatar-wrap .tz-profile-avatar-upload-trigger{width:92px;height:92px}
  .tz-profile-avatar-wrap .tz-profile-avatar-camera{right:-11px;bottom:-3px;width:42px;height:42px}
  .tz-profile-avatar-wrap .tz-profile-avatar-camera svg{width:25px;height:25px}
  .tz-profile-actions .tz-profile-change-photo-action{min-height:44px}
}


/* TeenZone v3.0.8 — desktop-like full-width mobile feed and a real slide-out menu. */
.tz-mobile-menu-toggle,.tz-mobile-search-toggle,.tz-mobile-drawer-head,.tz-mobile-widgets-section,.tz-mobile-menu-backdrop{display:none}
.tz-mobile-menu-toggle,.tz-mobile-search-toggle,.tz-mobile-drawer-close{border:0;background:transparent;color:inherit;cursor:pointer;align-items:center;justify-content:center}
.tz-mobile-menu-backdrop[hidden]{display:none!important}
@media (max-width:1080px){
  /* No compressed desktop sidebar or hidden right-column widgets on mobile/tablet. */
  .layout:not(.tz-settings-wide-layout),.layout.tz-profile-wide-layout{display:block!important;width:100%;min-width:0;max-width:900px;margin:0 auto}
  .layout:not(.tz-settings-wide-layout)>.center-panel{width:100%;min-width:0;padding:12px 12px 42px}
  .layout:not(.tz-settings-wide-layout)>.center-panel>.center-inner{max-width:100%;width:100%;min-width:0}
  .layout:not(.tz-settings-wide-layout)>.right-panel{display:none!important}
  .tz-mobile-menu-toggle,.tz-mobile-search-toggle{display:inline-flex;flex:0 0 36px;width:36px;height:38px;padding:5px;color:#edf0ff;border-radius:9px}
  .site-header{max-width:100%;gap:10px;min-height:62px;padding:0 14px}
  .site-header .brand{margin-right:auto;min-width:0}
  .site-header .top-actions{gap:12px}
  .site-header .search-form{flex:1;min-width:0;max-width:400px}
  .tz-mobile-menu-backdrop:not([hidden]){display:block;position:fixed;inset:0;background:rgba(12,18,35,.53);z-index:1002}
  .layout:not(.tz-settings-wide-layout)>.left-panel{
    display:flex!important;flex-direction:column;position:fixed!important;top:0!important;left:0!important;
    z-index:1003!important;width:min(324px,87vw);max-width:87vw;height:100dvh!important;min-height:0!important;
    padding:0!important;margin:0!important;overflow-y:auto!important;overflow-x:hidden!important;
    background:#fefeff;color:#17233e;box-shadow:14px 0 36px rgba(11,20,40,.18);
    transform:translateX(-105%);transition:transform .23s ease;overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;scrollbar-width:thin
  }
  body.tz-mobile-menu-open .layout:not(.tz-settings-wide-layout)>.left-panel{transform:translateX(0)}
  body.tz-mobile-menu-open{overflow:hidden}
  .tz-mobile-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:17px 15px 12px;gap:10px;border-bottom:1px solid #edf0f6;z-index:2}
  .tz-mobile-drawer-person{display:flex;align-items:center;gap:10px;min-width:0;color:#15223b;text-decoration:none}
  .tz-mobile-drawer-person span{display:flex;flex-direction:column;gap:2px;min-width:0}
  .tz-mobile-drawer-person strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .tz-mobile-drawer-person small{font-size:12px;color:#657593}
  .tz-mobile-drawer-avatar{height:44px;width:44px;flex:none;border-radius:50%;object-fit:cover}
  .tz-mobile-drawer-close{display:inline-flex;width:36px;height:36px;flex:none;color:#334159}
  .layout:not(.tz-settings-wide-layout)>.left-panel .side-nav{display:flex!important;flex-direction:column!important;flex-shrink:0;gap:3px!important;padding:13px 12px!important;overflow:visible!important;z-index:2}
  .layout:not(.tz-settings-wide-layout)>.left-panel .side-link{display:flex;align-items:center;margin:0!important;padding:12px 13px!important;gap:13px!important;border-radius:10px!important;font-size:14px!important;color:#202d45!important;white-space:normal}
  .layout:not(.tz-settings-wide-layout)>.left-panel .side-link:hover{color:#5d2fd0!important;background:#f3efff!important}
  .layout:not(.tz-settings-wide-layout)>.left-panel .side-link.active{color:#6527d2!important;background:#f0eaff!important;box-shadow:none!important}
  .layout:not(.tz-settings-wide-layout)>.left-panel .nav-icon{height:24px;width:27px;flex:none;color:inherit!important}
  .tz-mobile-widgets-section{display:block;position:relative;z-index:2;margin:0 12px 10px;border-top:1px solid #e8edf5;padding-top:8px}
  .tz-mobile-widgets>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:12px 13px;list-style:none;border-radius:10px;font-size:14px;background:#f3efff;color:#4f26ae}
  .tz-mobile-widgets>summary::-webkit-details-marker{display:none}
  .tz-mobile-widgets>summary>span{display:flex;align-items:center;gap:13px}
  .tz-mobile-widgets>summary>svg{transition:transform .2s ease}
  .tz-mobile-widgets[open]>summary>svg{transform:rotate(180deg)}
  .tz-mobile-widgets-content{padding:13px 0 2px;max-width:100%}
  .tz-mobile-widgets-content .widget{display:block!important;background:transparent!important;box-shadow:none!important;border:0!important;border-bottom:1px solid #e9edf5!important;border-radius:0!important;padding:8px 5px 14px;margin:0 0 10px;color:#23324a}
  .tz-mobile-widgets-content .widget-title h3{font-size:13px;color:#20314d}
  .tz-mobile-widgets-content .widget-title a{font-size:11px}
  .tz-mobile-widgets-content .widget-moods{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}
  .tz-mobile-widgets-content .mood-card{min-width:0;min-height:62px;padding:5px 2px}
  .tz-mobile-widgets-content .mood-card span{font-size:23px}
  .tz-mobile-widgets-content .mood-card small{font-size:10px}
  .tz-mobile-widgets-content .online-person,.tz-mobile-widgets-content .discover-person{min-width:0}
  .tz-mobile-widgets-content .right-promo{display:none}
  .layout:not(.tz-settings-wide-layout)>.left-panel .side-scenery{display:flex!important;flex:none!important;margin-top:auto!important;min-height:160px!important;height:190px!important;background:linear-gradient(180deg,#fff0,#f2efff66 24%),url('sunset.svg') center bottom / cover no-repeat!important;padding:0 19px 15px}
  .layout:not(.tz-settings-wide-layout)>.left-panel .slogan{font-size:15px;line-height:1.35;color:#43347f;text-shadow:0 1px 4px #fff}
  html[data-tz-theme="dark"] .layout:not(.tz-settings-wide-layout)>.left-panel{background:#151e31;color:#ecf0ff}
  html[data-tz-theme="dark"] .tz-mobile-drawer-head{border-color:#3b4964}
  html[data-tz-theme="dark"] .tz-mobile-drawer-person{color:#f0f2ff}
  html[data-tz-theme="dark"] .layout:not(.tz-settings-wide-layout)>.left-panel .side-link{color:#e2e9ff!important}
  html[data-tz-theme="dark"] .layout:not(.tz-settings-wide-layout)>.left-panel .side-link.active{background:#3a2865!important;color:#f6ebff!important}
  html[data-tz-theme="dark"] .tz-mobile-widgets>summary{background:#30254d;color:#e0c8ff}
  html[data-tz-theme="dark"] .tz-mobile-widgets-content .widget{color:#e3edff}
  html[data-tz-theme="dark"] .tz-mobile-widgets-content .widget-title h3{color:#e3edff}
  html[data-tz-theme="dark"] .tz-mobile-widgets-section{border-color:#34405a}
  html[data-tz-theme="dark"] .tz-mobile-widgets-content .widget{border-color:#34405a!important}
  /* Settings remains free of the navigation drawer; retain the clean desktop-style cards. */
  .layout.tz-settings-wide-layout>.center-panel{max-width:900px;margin:auto}
  .site-header:not(.tz-mobile-search-open) .search-form{display:none}
  .site-header.tz-mobile-search-open .search-form{display:flex;position:absolute;z-index:50;top:calc(100% + 3px);left:10px;right:10px;max-width:none;min-height:45px;padding:0 14px;background:#273149;border:1px solid #63728c;box-shadow:0 7px 18px #11182744;border-radius:10px}
}
@media (max-width:720px){
  .site-header{height:59px;gap:6px;padding:0 9px}
  .site-header .brand{font-size:20px;min-width:0}
  .site-header .brand-mark{font-size:24px}
  .site-header .top-actions{gap:8px}
  .site-header .top-actions a:nth-child(-n+2){display:none}
  .site-header .top-actions svg{width:20px;height:20px}
  .site-header .profile-menu{margin:0}
  .site-header .profile-toggle{padding:0}
  .site-header .top-avatar{height:30px;width:30px}
  .tz-mobile-search-toggle,.tz-mobile-menu-toggle{width:32px;height:34px;flex-basis:32px;padding:4px}
  .layout:not(.tz-settings-wide-layout)>.center-panel{padding:10px 8px 32px}
  .layout:not(.tz-settings-wide-layout)>.center-panel>.center-inner{max-width:100%}
  /* Keep the full desktop-style post content and photo proportions, not a squeezed 3-column miniature. */
  .feed-post,.composer{width:100%;max-width:100%}
  .post-media img{height:auto;max-height:550px;object-fit:cover}
  .post-media-1 img{height:auto}
  .site-header .count-badge{top:-7px;right:-8px}
}
@media(max-width:390px){.site-header .brand{font-size:18px}.site-header .top-actions{gap:6px}}
@media (prefers-reduced-motion: reduce){.layout:not(.tz-settings-wide-layout)>.left-panel{transition:none}}

/* v3.0.9: Explore is people-only; compact user search and no posts empty-state. */
.tz-explore-search-card{padding:17px 19px;margin-bottom:15px}
.tz-explore-search{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0}
.tz-explore-search-field{display:flex;align-items:center;gap:10px;flex:1;min-width:205px;min-height:44px;border:1px solid #dde5f2;border-radius:11px;padding:0 14px;background:transparent;color:#7084a2}
.tz-explore-search-field input{flex:1;min-width:0;height:42px;border:0!important;outline:0!important;background:transparent!important;color:var(--ink)}
.tz-explore-search-field:focus-within{border-color:#9262e8;box-shadow:0 0 0 2px #ad91ed22}
.tz-explore-search-submit{border:1px solid #dce3f0;background:transparent;color:#324260;padding:10px 18px;border-radius:10px;font-weight:650;min-height:44px}
.tz-explore-search-submit:hover{border-color:#9f81e3;color:#803ce7}
.tz-explore-clear{font-size:13px;font-weight:600;color:#687992}
.tz-explore-results{padding:8px 20px}
.tz-explore-results-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 0 10px;border-bottom:1px solid #edf1f7}
.tz-explore-results-heading h2{font-size:18px;margin:0}
.tz-explore-results-heading span{font-size:12px}
.tz-explore-member{display:flex;align-items:center;gap:13px;padding:13px 0;border-bottom:1px solid #f0f3f8}
.tz-explore-member:last-child{border-bottom:0}
.tz-explore-avatar{display:flex;flex-shrink:0}
.tz-explore-avatar img{width:44px;height:44px;border-radius:50%}
.tz-explore-member-info{display:flex;flex-direction:column;flex:1;min-width:0;gap:1px}
.tz-explore-member-name{font-weight:700;color:#293b58;overflow-wrap:anywhere}
.tz-explore-member-info small{color:#8796ad;font-size:12px;overflow-wrap:anywhere}
.tz-explore-friend-form{flex-shrink:0;margin:0}
.tz-explore-friend-button{border:1px solid #dce3ef;background:transparent;color:#3b4d6e;border-radius:9px;padding:8px 12px;font-weight:600;font-size:12px;white-space:nowrap}
.tz-explore-friend-button:hover{border-color:#8f42ff;color:#853ae5}
.tz-explore-empty{color:#8392a9;padding:20px 0;margin:0}
html[data-tz-theme="dark"] .tz-explore-search-field,html[data-tz-theme="dark"] .tz-explore-search-submit,html[data-tz-theme="dark"] .tz-explore-friend-button{border-color:#41516b;color:#dae5f7}
html[data-tz-theme="dark"] .tz-explore-search-field input,html[data-tz-theme="dark"] .tz-explore-member-name{color:#eaf2ff}
html[data-tz-theme="dark"] .tz-explore-results-heading,html[data-tz-theme="dark"] .tz-explore-member{border-color:#35415a}
@media(max-width:520px){.tz-explore-search-card{padding:13px}.tz-explore-results{padding:5px 13px}.tz-explore-search{gap:8px}.tz-explore-search-field{min-width:100%;flex-basis:100%}.tz-explore-search-submit{flex:1}.tz-explore-friend-button{padding:7px 9px}}

/* TeenZone v3.0.10 required photo on registration */
.auth-box .tz-register-avatar-label{display:block;font-size:13px;font-weight:650;color:#3d4a68;margin-bottom:0}
.auth-box .tz-register-avatar-row{display:flex;gap:15px;align-items:center;min-width:0}
.auth-box .tz-register-avatar-preview{width:76px;height:76px;flex:0 0 76px;border-radius:50%;object-fit:cover;border:2px solid #e1e5f1;background:#f5f5fb}
.auth-box .tz-register-avatar-control{min-width:0;flex:1}
.auth-box .tz-register-avatar-control input[type=file]{display:block;width:100%;padding:9px;border:1px solid #dde5f3;border-radius:9px;background:transparent;color:#21334f;max-width:100%;font-size:12px}
.auth-box .tz-register-avatar-control small{display:block;font-size:11px;color:#6f7f9d;margin-top:5px}
.auth-box .tz-register-avatar-control .tz-register-avatar-error{color:#b8254b}
html[data-tz-theme=dark] .auth-box .tz-register-avatar-label{color:#dbe3f4}
html[data-tz-theme=dark] .auth-box .tz-register-avatar-control input[type=file]{color:#e9eefb;border-color:#4e596f}
@media(max-width:480px){.auth-box .tz-register-avatar-preview{width:64px;height:64px;flex-basis:64px}.auth-box .tz-register-avatar-row{gap:10px}}

/* TeenZone v3.0.11: accessible four-step registration (clean, responsive). */
.tz-register-wizard .tz-register-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:3px 0 12px}
.tz-register-wizard .tz-register-progress[hidden],.tz-register-wizard .tz-registration-step[hidden],.tz-register-wizard .tz-register-actions [hidden],.tz-register-wizard .tz-register-progress-note[hidden]{display:none!important}
.tz-register-step-indicator{text-align:center;color:#8190a6;font-size:11px;min-width:0;position:relative}
.tz-register-step-indicator b{margin:0 auto 6px;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;border:1px solid #d8dfeb;background:transparent;font-size:13px;font-weight:700}
.tz-register-step-indicator small{display:block;font-size:11px}
.tz-register-step-indicator.is-active{color:#6b31c5;font-weight:700}
.tz-register-step-indicator.is-active b{border-color:#7139cc;color:#7139cc}
.tz-register-step-indicator.is-complete b{background:#6e37be;border-color:#6e37be;color:#fff}
.tz-register-wizard .tz-registration-step{display:flex;flex-direction:column;gap:14px;min-width:0}
.tz-registration-step h3{margin:1px 0 0;font-size:17px;letter-spacing:-.25px;color:#1e2a42}
.tz-registration-step > .muted{font-size:12px;margin:-7px 0 2px}
.tz-register-wizard .tz-register-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:5px}
.tz-register-wizard .tz-register-actions button{flex:1;min-width:0;max-width:240px;min-height:43px;border-radius:9px}
.tz-register-wizard .tz-register-progress-note{margin:-3px 0 0;text-align:center;color:#73849d;font-size:12px}
html[data-tz-theme=dark] .tz-registration-step h3{color:#e9ecf4}
html[data-tz-theme=dark] .tz-register-step-indicator{color:#a7b2c9}
html[data-tz-theme=dark] .tz-register-step-indicator.is-active{color:#c99aff}
html[data-tz-theme=dark] .tz-register-step-indicator.is-active b{border-color:#c99aff;color:#c99aff}
html[data-tz-theme=dark] .tz-register-step-indicator b{border-color:#626e85}
@media(max-width:480px){.tz-register-wizard .tz-register-actions button{max-width:none}.tz-register-step-indicator small{font-size:10px}.tz-register-step-indicator b{width:28px;height:28px}.auth-box .tz-registration-step{gap:12px}}
/* v3.1.0 admin controls / site branding */
.tz-brand-logo{width:36px;height:36px;flex:none;object-fit:contain;border-radius:8px}
.brand{min-width:0}.brand>span:last-child{overflow:hidden;text-overflow:ellipsis;max-width:250px}
.tz-verified{display:inline-flex;vertical-align:middle;align-items:center;justify-content:center;width:17px;height:17px;border-radius:50%;background:#4778e9;color:#fff;margin-left:5px}
.tz-admin-member-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:12px}
.tz-admin-member-search{display:flex;gap:6px;flex-wrap:wrap}.tz-admin-member-search input{min-width:210px;padding:10px;border:1px solid #d9e1f0;border-radius:8px}
.tz-admin-member-cell{display:flex;align-items:center;gap:10px}.tz-admin-member-cell a{font-weight:700}.tz-admin-member-avatar{height:39px;width:39px;border-radius:50%}
.tz-admin-member-menu{position:relative}.tz-admin-member-menu>summary{display:inline-flex;cursor:pointer;list-style:none;background:transparent;border:0;padding:8px;color:#34425e}.tz-admin-member-menu>summary::-webkit-details-marker{display:none}
.tz-admin-dropdown{position:absolute;top:33px;right:0;z-index:15;min-width:205px;padding:7px;background:#fff;border:1px solid #e2e6f0;border-radius:11px;box-shadow:0 12px 32px #17244322;max-height:280px;overflow:auto}
.tz-admin-dropdown a,.tz-admin-dropdown form>button,.tz-admin-password-menu>summary{display:flex;gap:8px;align-items:center;width:100%;padding:9px;color:#283551;background:transparent;border:0;text-align:left;white-space:nowrap;font-size:13px;cursor:pointer}
.tz-admin-dropdown a:hover,.tz-admin-dropdown form>button:hover,.tz-admin-password-menu>summary:hover{background:#f2f5fb}
.tz-admin-password-menu form{display:flex;flex-wrap:wrap;gap:7px;padding:9px}.tz-admin-password-menu input{max-width:165px;min-width:0;padding:7px;border:1px solid #d6deed;border-radius:7px}
.admin-table tr:nth-last-child(-n+2) .tz-admin-dropdown{top:auto;bottom:32px}
.tz-admin-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:20px 0 0;color:#63718a}.tz-admin-pagination div{display:flex;gap:8px}.tz-admin-pagination a{padding:9px 13px;border:1px solid #dce4f0;border-radius:8px}
.tz-admin-settings-form{display:grid;gap:16px;max-width:720px}.tz-admin-settings-form>label{display:grid;gap:7px;font-weight:650}.tz-admin-settings-form input:not([type=radio]):not([type=file]),.tz-admin-settings-form textarea{width:100%;border:1px solid #d6dff0;border-radius:9px;padding:12px;color:#1e293c;background:#fff}.tz-admin-settings-form input[type=file]{border:1px dashed #c9d5e9;border-radius:9px;padding:13px;width:100%}
.tz-admin-settings-form fieldset{border:1px solid #e1e6ee;border-radius:9px;padding:12px;display:flex;gap:22px;flex-wrap:wrap}.tz-admin-settings-form fieldset label{display:flex;align-items:center;gap:6px}
.tz-admin-settings-form .primary-btn{justify-self:start}.tz-logo-current{display:flex;align-items:center;gap:12px;color:#687794}.tz-logo-current img{height:56px;width:56px;object-fit:contain}.tz-admin-secondary-form{margin-top:16px}
.tz-admin-shortcuts{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0 20px}.tz-admin-shortcuts a{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;color:#384360;border:1px solid #e1e5ed;border-radius:9px}
.tz-admin-report-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.tz-admin-audit{display:flex;gap:15px;flex-wrap:wrap;align-items:center;border-bottom:1px solid #e7ebf2;padding:12px 0}.tz-admin-audit>span{color:#7d889b}
@media(max-width:700px){.tz-admin-member-search{width:100%}.tz-admin-member-search input{flex:1;min-width:0}.tz-admin-dropdown{position:fixed;right:10px;top:auto;bottom:12px;max-width:90vw}.admin-table{min-width:650px}}

@media(min-width:701px){.admin-main .admin-table-scroll{overflow:visible}}
@media(max-width:700px){.admin-main .admin-table-scroll{overflow-x:auto;overflow-y:visible}}

/* v3.1.2: clean line-icon footer with accessible text popups */
.tz-site-footer{max-width:1460px;margin:0 auto;padding:26px 20px 32px;display:flex;flex-direction:column;align-items:center;gap:16px;color:#78879f;font-size:12px;border-top:1px solid #e4eaf4}
.tz-footer-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 16px}
.tz-footer-links button{display:inline-flex;align-items:center;gap:6px;padding:7px 1px;font:inherit;font-size:12px;font-weight:550;white-space:nowrap;border:0;background:transparent;color:#66768d;cursor:pointer}
.tz-footer-links button:hover,.tz-footer-links button:focus-visible{color:#7545c0;text-decoration:underline;text-underline-offset:3px}
.tz-footer-links button svg{flex:0 0 auto;stroke-width:1.8}
.tz-footer-drawer{display:none}
.tz-footer-dialog{position:fixed;inset:0;margin:auto;border:1px solid #dee5f0;border-radius:16px;background:#fff;box-shadow:0 22px 90px #101d3855;color:#293a56;width:min(690px,calc(100vw - 24px));max-width:none;max-height:min(86dvh,860px);padding:0;overflow:hidden}
.tz-footer-dialog::backdrop{background:rgba(8,16,31,.65);backdrop-filter:blur(2px)}
.tz-footer-dialog[open]{display:flex;flex-direction:column}
.tz-footer-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:19px 22px;border-bottom:1px solid #e8edf5;flex:0 0 auto}
.tz-footer-dialog-heading{display:flex;align-items:center;gap:11px;min-width:0}
.tz-footer-dialog-heading>span{display:flex;align-items:center;color:#7153ad}
.tz-footer-dialog-heading h2{font-size:21px;margin:0;line-height:1.25;overflow-wrap:anywhere}
.tz-footer-dialog-header button{flex:0 0 auto;background:transparent;color:inherit;border:0;padding:7px;border-radius:8px;cursor:pointer}
.tz-footer-dialog-header button:hover,.tz-footer-dialog-bottom button:hover{background:#f2f4fa}
.tz-footer-dialog-scroll{overflow-y:auto;min-height:0;overscroll-behavior:contain;padding:12px 26px 30px;flex:1 1 auto}
.tz-footer-policy h3{font-size:16px;color:#273451;margin:21px 0 7px}
.tz-footer-policy h4{font-size:14px;color:#334562;margin:17px 0 5px}
.tz-footer-policy p,.tz-footer-policy li{font-size:13px;line-height:1.78;color:#586a84;overflow-wrap:anywhere}
.tz-footer-policy p{margin:0 0 10px}.tz-footer-policy ul{padding-left:22px;margin:0 0 12px}
.tz-footer-dialog-bottom{border-top:1px solid #e8edf5;padding:11px 22px;text-align:right;flex:0 0 auto}
.tz-footer-dialog-bottom button{padding:9px 16px;border:1px solid #d8e0ec;border-radius:9px;color:#34445e;background:transparent;cursor:pointer}
.tz-footer-contact-form{display:grid;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid #e6eaf2}
.tz-footer-contact-form label{font-size:13px;font-weight:650;color:#3c4c66;display:grid;gap:8px}
.tz-footer-contact-form textarea{width:100%;resize:vertical;min-height:110px;padding:12px;border:1px solid #cbd5e4;border-radius:9px;background:transparent;color:inherit;font:inherit}
.tz-footer-contact-form button{justify-self:start;padding:11px 15px;border:1px solid #7d65b7;color:#6d4bab;border-radius:9px;background:transparent;cursor:pointer;font-weight:650}
.tz-footer-policy .tz-footer-note{border-left:3px solid #ac9dd3;padding-left:13px;margin-top:13px}
.auth-layout + .tz-site-footer{background:#fff}
.tz-admin-footer-page>details>summary{display:flex;align-items:center;gap:9px;cursor:pointer;font-weight:700}
.tz-admin-footer-page>details>summary small{margin-left:auto;font-size:12px;color:#8592a8;font-weight:400}
.tz-admin-footer-page .tz-admin-settings-form{padding-top:18px;max-width:100%}
.tz-admin-footer-options{display:flex;gap:25px;flex-wrap:wrap;align-items:center}.tz-admin-footer-options label{display:flex;align-items:center;gap:9px;font-size:13px}.tz-admin-footer-options input[type=number]{max-width:90px;padding:7px;border:1px solid #d9e0ed;border-radius:8px}
.tz-footer-request p{overflow-wrap:anywhere;white-space:normal}
html[data-tz-theme=dark] .tz-site-footer{border-color:#35415a;color:#aeb9ce}
html[data-tz-theme=dark] .tz-footer-links button{color:#b0bbd2}
html[data-tz-theme=dark] .tz-footer-dialog{background:#1b2639;border-color:#405069;color:#e6edf9}
html[data-tz-theme=dark] .tz-footer-dialog-header,html[data-tz-theme=dark] .tz-footer-dialog-bottom{border-color:#3c495f}
html[data-tz-theme=dark] .tz-footer-policy h3,html[data-tz-theme=dark] .tz-footer-policy h4{color:#e5edf9}
html[data-tz-theme=dark] .tz-footer-policy p,html[data-tz-theme=dark] .tz-footer-policy li{color:#b7c3d8}
html[data-tz-theme=dark] .tz-footer-dialog-bottom button{color:#e1e9f8;border-color:#56677f}
html[data-tz-theme=dark] .tz-footer-contact-form label{color:#dde6f7}
html[data-tz-theme=dark] .tz-footer-dialog-header button:hover,html[data-tz-theme=dark] .tz-footer-dialog-bottom button:hover{background:#324055}
@media(max-width:720px){
 .tz-site-footer{padding:20px 12px 24px;gap:12px}.tz-footer-links{gap:0 12px}
 .tz-site-footer .tz-footer-links button{font-size:11px;padding:8px 2px}
 .tz-footer-dialog{width:calc(100vw - 16px);max-height:90dvh;border-radius:13px}
 .tz-footer-dialog-header{padding:15px}.tz-footer-dialog-scroll{padding:9px 16px 22px}.tz-footer-dialog-bottom{padding:9px 16px}
 .tz-footer-drawer{display:block;margin:14px 14px 24px;padding:10px 0;border-top:1px solid #dbe1ef}
 .tz-footer-drawer h3{font-size:12px;letter-spacing:.02em;text-transform:uppercase;color:#8190a6;margin:5px 0 9px}
 .tz-footer-drawer .tz-footer-links{display:grid;grid-template-columns:1fr;gap:0;justify-items:stretch}
 .tz-footer-drawer .tz-footer-links button{width:100%;padding:11px 4px;color:#455872;font-size:13px;text-align:left}
}

/* v3.1.3 — username-only UI, widget ordering, mobile and message layout */
.layout.tz-messages-wide-layout{grid-template-columns: minmax(185px,230px) minmax(0,1fr)!important;}
.layout.tz-messages-wide-layout .center-panel{min-width:0;max-width:none;width:100%;}
.layout.tz-messages-wide-layout .center-inner{max-width:1100px;margin-left:auto;margin-right:auto;}
.tz-registration-privacy-link{background:transparent;border:0;padding:0;color:#6736bb;text-decoration:underline;cursor:pointer;font:inherit;font-weight:650;vertical-align:baseline;}
.tz-widget-footer .tz-footer-links{display:flex;flex-direction:column;align-items:stretch;gap:2px;margin:5px 0 0;}
.tz-widget-footer .tz-footer-links button{display:flex;align-items:center;text-align:left;width:100%;gap:9px;padding:8px 7px;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;font-size:12px;border-radius:7px;}
.tz-widget-footer .tz-footer-links button:hover{background:rgba(128,128,128,.09);}
.tz-widget-footer .tz-footer-links svg{flex:0 0 auto;}
.tz-widget-admin-list{display:flex;flex-direction:column;gap:8px;}
.tz-widget-admin-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid var(--border,#e4e7ef);border-radius:10px;}
.tz-widget-admin-enabled{display:flex;align-items:center;gap:9px;margin:0;}
.tz-widget-admin-order{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;}
.tz-widget-admin-order input{width:72px;min-width:72px;}
html[data-tz-theme=dark] .tz-registration-privacy-link{color:#c7a0ff;}
@media(max-width:720px){.layout.tz-messages-wide-layout{display:block!important;}.layout.tz-messages-wide-layout .center-inner{max-width:none;}}
@media(max-width:530px){.tz-widget-admin-row{flex-wrap:wrap;}.tz-widget-footer .tz-footer-links{padding:0;}}


/* v3.1.5: User profile video tab + widgets, owner-only online friends. */
.tz-profile-video-heading{margin:0 0 10px;}
.tz-profile-video-heading h2{display:flex;align-items:center;gap:7px;font-size:17px;}
.tz-profile-video-heading small{font-size:12px;color:#748096;}
.tz-profile-side-heading strong{display:inline-flex;align-items:center;gap:5px;}
.tz-profile-online-list{display:flex;flex-direction:column;gap:4px;min-width:0;}
.tz-profile-online-list .online-person{margin:0;min-width:0;}
.tz-profile-side-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;}
.tz-profile-video-preview{position:relative;display:block;width:100%;aspect-ratio:16/10;border-radius:8px;overflow:hidden;background:#182236;color:#fff;}
.tz-profile-video-preview img{display:block;width:100%;height:100%;object-fit:cover;}
.tz-profile-video-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#cbd5e1;}
.tz-profile-video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;pointer-events:none;}
.tz-profile-video-preview:hover .tz-profile-video-play{background:rgba(0,0,0,.8);}
html[data-tz-theme="dark"] .tz-profile-video-preview{background:#131b2b;}
@media(max-width:600px){.tz-profile-side-video-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}

/* v3.1.6: accessible responsive login/security */
.tz-password-field{position:relative;display:flex;align-items:center}.tz-password-field input{width:100%;padding-right:53px!important}.tz-password-eye{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:9px;background:transparent;color:inherit;display:grid;place-items:center;cursor:pointer}.tz-password-eye:hover{background:rgba(128,128,128,.10)}.tz-auth-options{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.tz-auth-options a{font-size:13px}.tz-auth-options .checkbox-line{font-size:13px}.tz-auth-setup code{overflow-wrap:anywhere;white-space:normal}.tz-auth-codes{padding:12px;border:1px dashed currentColor;border-radius:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;letter-spacing:1px;font-family:monospace}.tz-auth-settings fieldset{border:0;margin:0;padding:0}.tz-auth-settings .stack-form{margin-top:12px}@media(max-width:680px){.auth-layout{width:100%;max-width:100%;min-width:0}.auth-box{min-width:0;width:100%;box-sizing:border-box}.tz-auth-options{align-items:flex-start;flex-direction:column;gap:8px}.tz-auth-codes{grid-template-columns:1fr}}

/* v3.1.7 — simple SMTP settings, responsive like the reference admin page */
.tz-smtp-panel{max-width:960px;margin:0 auto}.tz-smtp-panel>h2{margin-bottom:4px}.tz-smtp-form{max-width:780px;margin:20px auto 0;gap:15px}.tz-smtp-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.tz-smtp-form label,.tz-smtp-test-form label{display:flex;flex-direction:column;gap:7px;font-weight:650;color:var(--text,#202b45)}.tz-smtp-form input,.tz-smtp-form select,.tz-smtp-test-form input{width:100%;min-width:0;border:1px solid #dde4ef;border-radius:9px;padding:12px;background:#f7f9fd;color:#24314b;min-height:44px;font:inherit}.tz-smtp-form small{font-weight:400}.tz-smtp-save{width:100%;min-height:44px;margin-top:4px}.tz-smtp-test{max-width:780px;margin:22px auto 0;border-top:1px solid #e5eaf2;padding-top:17px}.tz-smtp-test summary{cursor:pointer;font-weight:650;color:inherit}.tz-smtp-test-form{display:flex;align-items:flex-end;gap:10px;margin:12px 0}.tz-smtp-test-form label{flex:1}.tz-smtp-test-form button{min-height:44px;white-space:nowrap}.tz-smtp-panel p.muted{line-height:1.55}[data-tz-theme="dark"] .tz-smtp-form input,[data-tz-theme="dark"] .tz-smtp-form select,[data-tz-theme="dark"] .tz-smtp-test-form input{background:#262d44;color:#eef2ff;border-color:#47506a}@media(max-width:680px){.tz-smtp-fields{grid-template-columns:1fr}.tz-smtp-test-form{flex-direction:column;align-items:stretch}.tz-smtp-test-form label{width:100%}}

/* Fansoci v3.1.8: footer information lives in user Settings, not feed widgets. */
.tz-settings-pages-description{color:#7d8aa4;font-size:13px;line-height:1.5;margin:0 0 10px;}
.tz-settings-page-links{display:grid;grid-template-columns:1fr;gap:0;}
.tz-settings-page-link{display:flex;align-items:center;gap:14px;width:100%;min-height:51px;padding:9px 4px;border:0;border-top:1px solid #edf0f4;background:transparent;color:#27354d;text-align:left;font:inherit;cursor:pointer;}
.tz-settings-page-link:hover,.tz-settings-page-link:focus-visible{color:#7545c0;background:rgba(117,69,192,.055);border-radius:7px;outline-offset:-2px;}
.tz-settings-page-icon{flex:0 0 31px;width:31px;display:flex;align-items:center;justify-content:center;}
.tz-settings-page-label{flex:1;min-width:0;font-weight:600;font-size:14px;}
.tz-settings-page-link>svg:last-child{flex:none;opacity:.65;}
html[data-tz-theme="dark"] .tz-settings-page-link{border-color:#334058;color:#e7edfa;}
html[data-tz-theme="dark"] .tz-settings-page-link:hover,html[data-tz-theme="dark"] .tz-settings-page-link:focus-visible{background:rgba(175,140,235,.1);color:#cfb0ff;}
html[data-tz-theme="dark"] .tz-settings-pages-description{color:#a8b7ce;}


/* Fansoci v3.1.9 — Create Post popup: avoid intrinsic grid width overflow. */
dialog.tz-post-dialog{
  width:min(540px,calc(100vw - 24px));
  max-width:calc(100vw - 24px);
  min-width:0;
  max-height:calc(100dvh - 24px);
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  padding:0;
  margin:auto;
}
.tz-post-dialog .tz-post-dialog-head{min-width:0;max-width:100%;}
#tz-post-form{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  width:100%;
  max-width:100%;
  min-width:0;
  padding:18px 20px 22px;
  gap:13px;
}
#tz-post-form > *{min-width:0;max-width:100%;}
#tz-post-form > [hidden]{display:none!important;}
#tz-post-body,#tz-post-youtube-link,#tz-post-images,
#tz-post-form .tz-post-dialog-footer select{
  box-sizing:border-box;
  min-width:0;
  max-width:100%;
}
#tz-post-body,#tz-post-youtube-link{width:100%;}
.tz-post-dialog-footer{min-width:0;flex-wrap:wrap;gap:12px;}
.tz-post-dialog-footer label{min-width:0;flex:1 1 160px;}
.tz-post-dialog-footer select{width:100%;}
.tz-post-dialog-footer .primary-btn{flex:0 0 auto;}
.tz-post-photo-preview,.tz-post-colors{min-width:0;max-width:100%;}
.tz-profile-message-action{white-space:nowrap;}
.tz-profile-message-limited{opacity:.75;cursor:help;}
.tz-profile-message-limited:hover{text-decoration:none;}
@media(max-width:540px){
 dialog.tz-post-dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:14px;}
 #tz-post-form{padding:15px 14px 18px;}
 .tz-post-dialog-head{padding:14px;}
 .tz-post-dialog-footer .primary-btn{min-width:95px;}
}

/* Fansoci 3.2.0 Private Messages */
.pm-heading{flex-wrap:wrap;min-width:0}.pm-typing{font-size:12px;font-weight:600;color:#7850ba}.pm-typing[hidden]{display:none}
.pm-conversation-actions{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}
.pm-conversation-actions button{border:1px solid #e1e5f1;background:transparent;color:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:5px;font-size:12px;padding:7px 9px;border-radius:9px}
.pm-conversation-actions button:hover,.pm-conversation-actions button[data-active="1"]{border-color:#8d70db;color:#7046b1}
.pm-unread-count{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 5px;border-radius:99px;background:#763fe4;color:white;font-weight:750;font-size:11px;margin-left:auto}
.pm-unread-count[hidden]{display:none}.pm-pinned-indicator{font-size:12px;margin-left:auto}
.pm-older-wrap{text-align:center;padding:5px}.pm-older-wrap button[hidden]{display:none}.pm-older-wrap button{font-size:12px;padding:5px 12px}
.pm-voice-button{background:transparent;border:0;cursor:pointer;border-radius:9px;font-size:22px;padding:8px 5px;flex:0 0 auto}.pm-voice-button:hover{background:#f2eafc}
.pm-record-status{font-size:12px;color:#77638e;margin:6px 0 0}.pm-record-status[hidden]{display:none}
.pm-voice-audio{display:block;width:min(270px,100%);max-width:100%;height:45px;margin:9px 4px 5px 0}
.pm-expiry{display:block;font-size:10px;color:#7d7591;margin:1px 0 6px}
.pm-reactions{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:4px}
.pm-reaction-count{border:1px solid #d7c8f0;background:#faf8ff;cursor:pointer;border-radius:18px;padding:2px 7px;color:#554778;font-size:12px}
.pm-reaction-popover{position:absolute;bottom:100%;left:0;display:flex;max-width:min(320px,90vw);gap:2px;border-radius:12px;background:#fff;box-shadow:0 6px 22px #15182c44;padding:6px;z-index:45}
.pm-reaction-popover button{font-size:20px;border:0;background:transparent;padding:4px;border-radius:7px;cursor:pointer}
.pm-reaction-popover button:hover{background:#eee9f8}
.pm-inline-edit{width:min(330px,100%);resize:vertical;background:#fff;color:#25324d;border:1px solid #ad8dce;border-radius:8px;padding:9px;font:inherit;min-height:65px}
.pm-edit-actions{display:flex;gap:7px;margin-top:7px}.pm-edit-actions button{border:1px solid #d8dce6;background:transparent;color:inherit;border-radius:7px;padding:6px 9px;cursor:pointer}
.pm-edit-actions button:first-child{background:#7040cc;color:#fff}.pm-read-status,.pm-edited{font-size:10px}
[data-tz-theme="dark"] .pm-reaction-popover,[data-tz-theme="dark"] .pm-inline-edit{background:#252d44;color:#f7f3ff;border-color:#4f5972}
[data-tz-theme="dark"] .pm-reaction-count{background:#302a4a;color:#e6d8ff}
@media(max-width:720px){.pm-heading{padding:10px}.pm-conversation-actions{width:100%;justify-content:flex-end}.pm-conversation-actions button{font-size:11px;padding:6px}.pm-voice-audio{width:min(240px,72vw)}.pm-reaction-popover{left:auto;right:0}.pm-older-wrap{padding:5px}}

/* Fansoci 3.2.1 — Private Messages: clean voice, pin and mute (desktop/mobile). */
.pm-heading{position:relative;overflow:visible;z-index:8;gap:10px}
.pm-conversation-actions{position:relative;margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:nowrap;z-index:12}
.pm-conversation-actions>.pm-action-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#f8faff;border:1px solid #e3e9f4;border-radius:10px;padding:8px 12px;color:#253451;font-size:12px;font-weight:650;white-space:nowrap;transition:background .15s,border-color .15s;color-scheme:light}
.pm-conversation-actions>.pm-action-button svg{color:#7843d9;flex:0 0 auto}
.pm-conversation-actions>.pm-action-button:hover,.pm-conversation-actions>.pm-action-button[aria-expanded="true"]{background:#f1eaff;border-color:#cdb5ef;color:#6334b7}
.pm-settings-popover{position:absolute;top:calc(100% + 11px);right:0;width:290px;max-width:calc(100vw - 35px);z-index:35;padding:17px;background:#fff;border:1px solid #e5e9f2;border-radius:15px;box-shadow:0 14px 44px #14203930;color:#26344c;text-align:left}
.pm-settings-popover[hidden],.pm-mute-choices[hidden]{display:none!important}
.pm-settings-popover .pm-panel-title{display:flex;align-items:center;gap:10px;font-size:14px}
.pm-settings-popover .pm-panel-title svg{color:#814ae9;flex:0 0 auto}
.pm-settings-popover p{font-size:12px;font-weight:400;color:#78849c;line-height:1.55;margin:11px 0 14px}
.pm-conversation-actions .pm-panel-primary{display:block;width:100%;min-height:39px;margin-top:10px;background:linear-gradient(105deg,#7945fc,#9649e9);color:#fff;border:0;border-radius:10px;font-weight:700;font-size:12px;cursor:pointer}
.pm-conversation-actions .pm-panel-primary:hover{filter:brightness(1.06);color:#fff}
.pm-mute-choices{display:flex;flex-direction:column;border:1px solid #ecedf6;border-radius:12px;padding:5px 10px}
.pm-mute-choices label{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 3px;cursor:pointer;font-size:12px;color:#3c4861}
.pm-mute-choices label+label{border-top:1px solid #f1f2f7}
.pm-mute-choices input[type="radio"]{width:16px;height:16px;accent-color:#7d48e7;flex:0 0 auto}
.pm-pinned-indicator{display:inline-flex;color:#7950ce;margin-left:auto}
.pm-voice-button{flex:0 0 auto;width:47px;height:47px;display:grid;place-items:center;padding:0;border:1px solid transparent;border-radius:13px;background:#f5efff;color:#7742e7;font-size:unset;line-height:1;box-shadow:none}
.pm-voice-button svg{width:23px;height:23px}
.pm-voice-button:hover,.pm-voice-button:focus-visible{background:#eee4ff;outline:2px solid #9871fa;outline-offset:2px}
.pm-voice-button.is-recording{background:#fff0f2;border-color:#f6b4bf;color:#d42748;animation:pm-record-pulse 1s ease-in-out infinite}
@keyframes pm-record-pulse{50%{box-shadow:0 0 0 5px rgba(216,42,74,.12)}}
.pm-voice-player{display:flex;align-items:center;gap:9px;width:min(300px,100%);min-width:0;padding:7px 2px 2px;margin:2px 0}
.pm-voice-player audio.pm-voice-audio{display:none!important}
.pm-voice-play{width:40px;height:40px;min-width:40px;border:0;background:linear-gradient(135deg,#5679ff,#8546ed);color:#fff;border-radius:50%;display:grid;place-items:center;padding:0;cursor:pointer;box-shadow:0 3px 9px #6845d536}
.pm-voice-play:hover,.pm-voice-play:focus-visible{filter:brightness(1.1);outline-offset:2px}
.pm-voice-player .pm-voice-waveform{display:flex;align-items:center;justify-content:space-between;gap:2px;flex:1;min-width:0;height:34px;overflow:hidden;pointer-events:none}
.pm-voice-waveform span{display:block;flex:1;min-width:2px;max-width:3px;border-radius:6px;background:#cec4df;transition:background .15s}
.pm-voice-waveform span.passed{background:#8044ea}
.pm-voice-duration{font-variant-numeric:tabular-nums;color:#6f4bb1;font-size:12px;min-width:28px;white-space:nowrap;text-align:right}
.pm-voice-progress{position:absolute;width:1px;height:1px;opacity:0;clip-path:inset(50%);overflow:hidden}
.pm-voice-progress:focus-visible{position:static;width:100%;height:16px;opacity:1;clip-path:none}
.pm-voice-player .pm-expiry{font-size:11px}
/* Attach the custom player as a single focusable voice control; no native download menu. */
[data-tz-theme="dark"] .pm-conversation-actions>.pm-action-button,[data-tz-theme="dark"] .pm-settings-popover{background:#252d44;border-color:#48516c;color:#f2f2ff;color-scheme:dark}
[data-tz-theme="dark"] .pm-settings-popover p{color:#bec5d8}
[data-tz-theme="dark"] .pm-mute-choices{border-color:#4c536b}
[data-tz-theme="dark"] .pm-mute-choices label{color:#f1f0fb}
[data-tz-theme="dark"] .pm-mute-choices label+label{border-color:#434960}
[data-tz-theme="dark"] .pm-conversation-actions>.pm-action-button:hover{background:#343053}
[data-tz-theme="dark"] .pm-voice-button{background:#30284d;color:#c3a4ff}
@media(max-width:720px){
 .pm-heading{gap:8px}
 .pm-conversation-actions{width:100%;justify-content:flex-end;margin-top:1px}
 .pm-conversation-actions>.pm-action-button{min-height:35px;padding:6px 10px;font-size:12px}
 .pm-settings-popover{top:calc(100% + 8px);width:min(300px,calc(100vw - 35px));right:0}
 .pm-voice-button{width:43px;height:43px}
 .pm-voice-player{width:min(260px,69vw);gap:6px}
 .pm-voice-play{width:36px;height:36px;min-width:36px}
 .pm-voice-waveform{gap:1px!important}
}

.pm-voice-player .pm-voice-waveform{pointer-events:auto;cursor:pointer}

/* v3.2.2 — Online Users: sidebar Show All -> Explore online-only directory. */
.tz-explore-directory-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px}
.tz-explore-directory-tabs a{display:inline-flex;align-items:center;gap:7px;border:1px solid #e1e6f0;color:#566782;background:var(--card,#fff);border-radius:10px;padding:10px 15px;font-weight:650;font-size:13px}
.tz-explore-directory-tabs a.selected{border-color:#9051e5;color:#8339e1;background:#f7f0ff}
.tz-explore-avatar{position:relative}
.tz-explore-online-dot{position:absolute;width:12px;height:12px;border-radius:50%;background:#1bc76d;border:2px solid #fff;bottom:0;right:0}
html[data-tz-theme="dark"] .tz-explore-directory-tabs a{background:#202a3d;color:#e0eafc;border-color:#41516b}
html[data-tz-theme="dark"] .tz-explore-directory-tabs a.selected{background:#322453;color:#d5b6ff;border-color:#9261ee}

/* Notifications page v3.2.3 — bell remains a navigation link, no dropdown */
.tz-notification-page{max-width:900px;margin:0 auto}.tz-notify-heading{align-items:center;gap:14px;flex-wrap:wrap}.tz-notify-toolbar{display:flex;gap:7px;flex-wrap:wrap;margin-left:auto;align-items:center}.tz-notify-toolbar form{margin:0}.tz-notify-clear{color:#a83b49}.tz-notify-card{overflow:hidden}.tz-notify-tabs{display:flex;gap:4px;padding:15px 16px 0;border-bottom:1px solid var(--edge)}.tz-notify-tabs a{display:flex;gap:8px;padding:9px 14px;color:var(--muted);font-weight:700;border-radius:8px 8px 0 0;border-bottom:2px solid transparent}.tz-notify-tabs a.selected{color:#8450dc;border-color:#8450dc}.tz-notify-tabs span{font-weight:650;opacity:.75}.tz-notice{display:flex;align-items:center;gap:12px;padding:15px 17px;border-bottom:1px solid var(--edge)}.tz-notice-unread{background:#f4f0ff}.tz-notice-photo{width:43px;min-width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:#e7def8;color:#8557b0}.tz-notice-photo img{width:43px;height:43px;border-radius:50%;object-fit:cover}.tz-notice-content{flex:1;min-width:0;color:var(--ink);overflow-wrap:anywhere}.tz-notice-content strong{font-weight:750}.tz-notice-content small{display:block;color:var(--muted);margin-top:5px}.tz-notice-dot{width:8px;height:8px;border-radius:50%;background:#8653ed;flex-shrink:0}.tz-notice-actions{display:flex;gap:6px}.tz-notice-actions form{margin:0}.tz-notice-action{border:1px solid transparent;background:transparent;border-radius:8px;color:var(--muted);display:flex;align-items:center;gap:4px;padding:7px}.tz-notice-action span{font-size:11px}.tz-notice-action:hover{background:#e6e3f3;color:#4e36a3}.tz-notice-delete:hover{color:#b82e48}.tz-notify-empty{text-align:center;padding:32px 15px}.tz-notify-more{text-align:center;padding:14px}.tz-notify-more [hidden],.tz-notify-empty[hidden],.tz-note-alert[hidden]{display:none}.tz-note-alert{padding:10px 15px;color:#8a2438;background:#fff1f2}.tz-note-alert.success{color:#246445;background:#e6faf0}
html[data-tz-theme="dark"] .tz-notice-unread{background:#332c4b}html[data-tz-theme="dark"] .tz-notice-photo{background:#36324b;color:#c5a7ff}html[data-tz-theme="dark"] .tz-notice-content{color:#e9edff}html[data-tz-theme="dark"] .tz-notify-tabs a.selected{color:#bd9cff}html[data-tz-theme="dark"] .tz-notice-action:hover{background:#39435c;color:#dfd0ff}html[data-tz-theme="dark"] .tz-note-alert{background:#3b2737;color:#ffa7b6}
@media(max-width:700px){.tz-notify-toolbar{width:100%;margin-left:0}.tz-notice{gap:8px;padding:12px 8px}.tz-notice-photo,.tz-notice-photo img{width:33px;height:33px;min-width:33px}.tz-notice-actions{flex-direction:column}.tz-notice-action span{display:none}}

/* v3.2.4 live status and friend requests */
.tz-live-alert{margin:10px 0;padding:12px 16px;border:1px solid var(--line,#ddd);border-radius:12px;background:var(--card,#fff);font-size:14px;}
.tz-live-alert[hidden]{display:none!important;}
.tz-friend-request-count{display:inline-flex;margin-left:auto;min-width:19px;height:19px;padding:0 5px;border-radius:999px;align-items:center;justify-content:center;background:#d94d70;color:#fff;font-size:11px;font-weight:700;}

/* v3.2.7: brand fallback + compact username editor */
.tz-brand-logo-fallback[hidden]{display:none!important}.tz-admin-username-control{display:inline-block;min-width:155px;vertical-align:middle}.tz-admin-username-control>summary{cursor:pointer}.tz-admin-username-control form{background:#f8f9ff;border-radius:8px}.tz-admin-username-control input{max-width:170px}

/* Official system welcome uses the existing Fansoci private-message layout. */
.tz-system-avatar{width:37px;height:37px;border-radius:50%;display:inline-flex;flex:0 0 37px;align-items:center;justify-content:center;background:linear-gradient(135deg,#198cff,#9835ef);color:white;font-size:23px;font-weight:900;box-shadow:0 2px 9px #745fd52c}
.tz-system-conversation .conversation-person{gap:10px}
.tz-system-conversation .conversation-person>span:nth-child(2){display:flex;flex-direction:column;min-width:0}
.tz-system-label{display:block;font-size:11px;color:#71809d;margin-top:3px;font-weight:500}
.tz-system-heading .tz-system-verified{margin-left:auto;border-radius:99px;background:#e9f1ff;color:#275cc5;padding:5px 9px;font-size:11px;font-weight:750}
.tz-system-history{justify-content:flex-start;min-height:320px}
.tz-system-bubble{padding:17px 18px;max-width:min(570px,94%);line-height:1.6}
.tz-system-bubble .tz-welcome-title{display:block;font-size:17px;font-weight:800;color:#273750;margin-bottom:10px}
.tz-system-bubble .pm-message-body{white-space:normal;margin-bottom:15px}
.tz-system-bubble .tz-welcome-link{display:inline-block;text-decoration:none;padding:9px 16px;margin-bottom:12px}
.tz-system-bubble small{display:block;margin-top:8px}
.tz-system-readonly{border-top:1px solid var(--edge,#e5e8f2);padding:16px 18px;font-size:12px;color:#8790a6;text-align:center}
html[data-tz-theme="dark"] .tz-system-bubble .tz-welcome-title{color:#f2efff}
html[data-tz-theme="dark"] .tz-system-heading .tz-system-verified{background:#2b3860;color:#bad7ff}
html[data-tz-theme="dark"] .tz-system-label,html[data-tz-theme="dark"] .tz-system-readonly{color:#9ba8bf}

/* v3.2.9 — all actual reactions shown for Shouts and Moods. */
.tz-reaction-summary{display:flex;align-items:center;gap:7px;margin:9px 0 2px 60px;color:#73809b;font-size:12px;min-height:23px}
.tz-reaction-summary[hidden]{display:none!important}
.tz-reaction-summary-emojis{display:inline-flex;align-items:center;flex-wrap:wrap;gap:2px}
.tz-reaction-mini{font-size:18px;line-height:1.2;display:inline-flex;justify-content:center;align-items:center;min-width:20px;background:transparent;border:0}
.tz-reaction-summary-total{font-variant-numeric:tabular-nums;font-size:12px;color:inherit}
@media(max-width:720px){.tz-reaction-summary{margin-left:0}}

.feed-post .post-actions .tz-post-like-count{display:none!important}


/* Fansoci v3.2.11 — compact reactions on the right, above Share.
   Only posts with reactions render the summary. This applies to Shouts and Moods. */
.feed-post .post-actions{align-items:flex-end!important}
.feed-post .post-actions .post-share{
  display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;
  gap:2px;min-width:0;margin-left:auto;
}
.feed-post .post-actions .post-share .tz-reaction-summary{
  display:flex;align-items:center;justify-content:flex-end;gap:5px;
  margin:0;padding:0;min-height:0;max-width:100%;font-size:12px;
  text-align:right;white-space:nowrap;color:#73809b;
}
.feed-post .post-actions .post-share .tz-reaction-summary[hidden]{display:none!important}
.feed-post .post-actions .post-share .tz-reaction-summary-emojis{
  display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:1px;
}
.feed-post .post-actions .post-share .tz-reaction-mini{
  font-size:17px;line-height:1.2;min-width:17px;
}
.feed-post .post-actions .post-share .share-button{align-self:flex-end}
@media(max-width:560px){
 .feed-post .post-actions .post-share .tz-reaction-summary{gap:3px;font-size:11px}
 .feed-post .post-actions .post-share .tz-reaction-mini{font-size:15px;min-width:15px}
}

/* v3.2.19: Paste clipboard images directly into Shouts. */
.tz-post-photo-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:11px}
.tz-post-photo-tools small{color:#64748b;line-height:1.5;font-size:12px;flex:1 1 185px}
.tz-post-photo-tools kbd{font-family:inherit;border:1px solid #cbd5e1;border-radius:4px;padding:1px 4px;background:#f8fafc;color:#334155}
.tz-post-paste-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 13px;border:1px solid #bfb6ff;border-radius:9px;background:#f4efff;color:#663ade;cursor:pointer;font-weight:650;font-size:13px}
.tz-post-paste-btn:hover,.tz-post-paste-btn:focus-visible{background:#e9e0ff;border-color:#8c62ee}
.tz-post-paste-status{font-size:12px;color:#21784c;margin:8px 0 0}
.tz-post-paste-status.is-error{color:#b42338}
[data-tz-theme="dark"] .tz-post-paste-btn{background:#272044;color:#d6c5ff;border-color:#654cab}
[data-tz-theme="dark"] .tz-post-photo-tools small{color:#bec7d7}
[data-tz-theme="dark"] .tz-post-photo-tools kbd{background:#1c2536;color:#f0f1f8;border-color:#556179}
[data-tz-theme="dark"] .tz-post-paste-status{color:#90e6bf}
[data-tz-theme="dark"] .tz-post-paste-status.is-error{color:#ff9ca9}
