@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=DM+Serif+Display&display=swap');

:root{--pwt-gold:#C8913A;--pwt-gold-light:#D4A855;--pwt-gold-bg:#FFF8F0;--pwt-dark:#1A1A2E;--pwt-navy:#16213E;--pwt-text:#333;--pwt-muted:#999;--pwt-light:#F7F5F2;--pwt-border:#eee;--pwt-white:#fff;--pwt-success:#27ae60;--pwt-success-bg:#E8F5E9;--pwt-radius:12px;--pwt-radius-sm:8px;--pwt-radius-pill:20px;--pwt-shadow:0 2px 12px rgba(0,0,0,.04);--pwt-shadow-hover:0 8px 24px rgba(0,0,0,.08);--pwt-font:'DM Sans',-apple-system,BlinkMacSystemFont,sans-serif;--pwt-font-display:'DM Serif Display',Georgia,serif;--pwt-transition:all .2s ease}

.pwt-page{font-family:var(--pwt-font);color:var(--pwt-text);max-width:1200px;margin:0 auto;padding:32px 24px}
.pwt-section-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px;border-bottom:2px solid var(--pwt-gold);padding-bottom:16px;flex-wrap:wrap;gap:12px}
.pwt-page-title{margin:0;font-size:26px;font-family:var(--pwt-font-display);color:var(--pwt-dark);line-height:1.2}
.pwt-page-subtitle{margin:4px 0 0;font-size:14px;color:var(--pwt-muted)}
.pwt-subsection-title{font-family:var(--pwt-font-display);color:var(--pwt-dark);font-size:20px;margin:32px 0 16px}
.pwt-no-results{text-align:center;padding:60px 20px;color:var(--pwt-muted);grid-column:1/-1}
.pwt-muted{color:var(--pwt-muted)}

.pwt-btn{display:inline-block;padding:10px 24px;border-radius:var(--pwt-radius-sm);font-size:13px;font-weight:600;font-family:var(--pwt-font);text-decoration:none;cursor:pointer;border:2px solid transparent;transition:var(--pwt-transition);white-space:nowrap;line-height:1.4;box-sizing:border-box}
.pwt-btn-sm{padding:6px 16px;font-size:12px}
.pwt-btn-primary{background:var(--pwt-gold);color:var(--pwt-white);border-color:var(--pwt-gold)}
.pwt-btn-primary:hover{background:#b47f32;border-color:#b47f32}
.pwt-btn-dark{background:var(--pwt-dark);color:var(--pwt-white);border-color:var(--pwt-dark)}
.pwt-btn-dark:hover{background:var(--pwt-navy)}
.pwt-btn-ghost{background:transparent;color:var(--pwt-dark);border-color:var(--pwt-dark)}
.pwt-btn-ghost:hover{background:var(--pwt-dark);color:var(--pwt-white)}
.pwt-btn-outline{display:inline-block;padding:6px 14px;border-radius:6px;border:1px solid var(--pwt-gold);background:none;color:var(--pwt-gold);font-size:12px;font-weight:600;font-family:var(--pwt-font);cursor:pointer;text-decoration:none;transition:var(--pwt-transition)}
.pwt-btn-outline:hover{background:var(--pwt-gold);color:var(--pwt-white)}
.pwt-action-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border:1px solid var(--pwt-border);border-radius:var(--pwt-radius-pill);background:none;cursor:pointer;font-size:13px;font-family:var(--pwt-font);color:var(--pwt-text);transition:var(--pwt-transition)}
.pwt-action-btn:hover{border-color:var(--pwt-gold);color:var(--pwt-gold)}
.pwt-action-btn.pwt-liked{color:var(--pwt-gold);border-color:var(--pwt-gold)}

.pwt-input,.pwt-select,.pwt-textarea{padding:10px 14px;border:1px solid #ddd;border-radius:var(--pwt-radius-sm);font-size:14px;font-family:var(--pwt-font);outline:none;transition:border-color .2s;width:100%;box-sizing:border-box}
.pwt-input:focus,.pwt-select:focus,.pwt-textarea:focus{border-color:var(--pwt-gold)}
.pwt-select{background:var(--pwt-white)}
.pwt-filters-bar{background:var(--pwt-white);border-radius:var(--pwt-radius);padding:20px;margin-bottom:24px;box-shadow:var(--pwt-shadow);display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.pwt-filters-bar .pwt-input{flex:2;min-width:200px}
.pwt-filters-bar .pwt-select{flex:1;min-width:160px}
.pwt-filters-compact .pwt-select{min-width:200px}
.pwt-form-panel{background:var(--pwt-white);border-radius:var(--pwt-radius);padding:24px;margin-bottom:24px;box-shadow:var(--pwt-shadow);border-left:4px solid var(--pwt-gold);display:flex;flex-direction:column;gap:12px}
.pwt-form-panel h3{margin:0 0 4px;font-family:var(--pwt-font-display);color:var(--pwt-dark)}

.pwt-badge{display:inline-block;padding:3px 10px;border-radius:var(--pwt-radius-pill);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}
.pwt-badge-premium{background:linear-gradient(135deg,var(--pwt-gold),var(--pwt-gold-light));color:var(--pwt-white)}
.pwt-badge-type{background:var(--pwt-navy);color:var(--pwt-white)}
.pwt-badge-sponsored{background:var(--pwt-gold);color:var(--pwt-white)}
.pwt-badge-free{background:var(--pwt-success);color:var(--pwt-white)}
.pwt-badge-active{background:var(--pwt-success);color:var(--pwt-white)}
.pwt-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.pwt-tag{font-size:11px;padding:3px 8px;background:#f0f0f0;color:#666;border-radius:6px;white-space:nowrap}
.pwt-tag-area{background:var(--pwt-gold-bg);color:var(--pwt-gold);font-weight:600}
.pwt-tag-salary{background:var(--pwt-success-bg);color:var(--pwt-success);font-weight:600}

.pwt-stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:32px}
.pwt-stat-card{background:var(--pwt-white);border-radius:var(--pwt-radius);padding:24px 20px;border-left:4px solid var(--pwt-gold);box-shadow:var(--pwt-shadow)}
.pwt-stat-icon{font-size:14px;margin-bottom:2px}
.pwt-stat-value{font-size:32px;font-weight:800;color:var(--pwt-dark);font-family:var(--pwt-font-display);line-height:1.1}
.pwt-stat-label{font-size:13px;color:var(--pwt-muted);margin-top:4px}

.pwt-members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}
.pwt-member-card{background:var(--pwt-white);border-radius:var(--pwt-radius);padding:20px;box-shadow:var(--pwt-shadow);border-left:4px solid var(--pwt-border);transition:var(--pwt-transition)}
.pwt-member-card:hover{box-shadow:var(--pwt-shadow-hover);transform:translateY(-2px)}
.pwt-card-premium{border-left-color:var(--pwt-gold)}
.pwt-card-header{display:flex;gap:14px;align-items:flex-start}
.pwt-card-avatar img{width:52px;height:52px;border-radius:50%;object-fit:cover}
.pwt-card-info{flex:1;min-width:0}
.pwt-card-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pwt-card-name{font-weight:700;font-size:15px;color:var(--pwt-dark);text-decoration:none}
.pwt-card-name:hover{color:var(--pwt-gold)}
.pwt-card-role{font-size:13px;font-weight:600;color:#444;margin-top:2px}
.pwt-card-company{font-size:12px;color:var(--pwt-muted)}
.pwt-card-bio{font-size:12px;color:#777;margin:10px 0 0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pwt-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:10px;border-top:1px solid #f5f5f5}
.pwt-card-level{font-size:11px;color:var(--pwt-muted)}

.pwt-vagas-list{display:flex;flex-direction:column;gap:16px}
.pwt-vaga-card{background:var(--pwt-white);border-radius:var(--pwt-radius);padding:24px;box-shadow:var(--pwt-shadow);border-left:4px solid var(--pwt-border);display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap;transition:var(--pwt-transition)}
.pwt-vaga-card:hover{box-shadow:var(--pwt-shadow-hover)}
.pwt-card-sponsored{border-left-color:var(--pwt-gold)}
.pwt-vaga-main{flex:1;min-width:0}
.pwt-vaga-title-row{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap}
.pwt-vaga-title{margin:0;font-size:17px;font-family:var(--pwt-font-display);color:var(--pwt-dark)}
.pwt-vaga-company{font-size:14px;font-weight:600;color:#444}
.pwt-vaga-desc{font-size:13px;color:#777;margin:8px 0;line-height:1.5}
.pwt-vaga-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:140px}
.pwt-vaga-actions .pwt-btn{width:100%;text-align:center}
.pwt-vaga-meta{font-size:11px;color:var(--pwt-muted)}

.pwt-wins-feed{display:flex;flex-direction:column;gap:16px}
.pwt-win-card{background:var(--pwt-white);border-radius:var(--pwt-radius);padding:24px;box-shadow:var(--pwt-shadow)}
.pwt-win-content{display:flex;gap:14px}
.pwt-win-content .pwt-card-avatar img{width:48px;height:48px}
.pwt-win-body{flex:1;min-width:0}
.pwt-win-author-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}
.pwt-win-title{margin:10px 0 6px;font-size:17px;font-family:var(--pwt-font-display);color:var(--pwt-dark)}
.pwt-win-desc{font-size:14px;color:#555;line-height:1.6;margin:0}
.pwt-win-actions{display:flex;align-items:center;gap:16px;margin-top:14px;padding-top:12px;border-top:1px solid #f5f5f5}
.pwt-win-date{font-size:12px;color:var(--pwt-muted);margin-left:auto}

.pwt-mentorship-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.pwt-mentorship-card{background:var(--pwt-white);border-radius:var(--pwt-radius);padding:20px;box-shadow:var(--pwt-shadow);border-left:4px solid var(--pwt-gold)}
.pwt-mentorship-avatars{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.pwt-mentorship-avatars img{width:40px;height:40px;border-radius:50%}
.pwt-mentorship-arrow{font-size:18px;color:var(--pwt-gold)}
.pwt-mentorship-pair-info{font-size:13px;margin-bottom:8px}
.pwt-mentorship-dates{display:flex;justify-content:space-between;margin-top:12px;padding-top:10px;border-top:1px solid #f5f5f5;font-size:12px;color:var(--pwt-muted)}
.pwt-how-it-works{background:linear-gradient(135deg,var(--pwt-dark),var(--pwt-navy));border-radius:var(--pwt-radius);padding:40px 32px;margin-top:40px;color:var(--pwt-white)}
.pwt-how-it-works h2{font-family:var(--pwt-font-display);margin:0 0 24px;font-size:22px}
.pwt-steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px}
.pwt-step h4{margin:8px 0 4px}
.pwt-step p{font-size:13px;color:#ccc;line-height:1.5;margin:0}
.pwt-step-number{width:36px;height:36px;border-radius:50%;background:var(--pwt-gold);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;color:var(--pwt-white)}


.pwt-resources-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.pwt-resource-card{background:var(--pwt-white);border-radius:var(--pwt-radius);padding:20px;box-shadow:var(--pwt-shadow);display:flex;flex-direction:column;transition:var(--pwt-transition)}
.pwt-resource-card:hover{box-shadow:var(--pwt-shadow-hover)}
.pwt-resource-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}
.pwt-resource-icon{font-size:32px}
.pwt-resource-title{margin:0 0 8px;font-size:15px;font-family:var(--pwt-font-display);color:var(--pwt-dark);flex:1;line-height:1.4}
.pwt-resource-footer{display:flex;justify-content:space-between;align-items:center;padding-top:10px;margin-top:auto;border-top:1px solid #f5f5f5}
.pwt-resource-downloads{font-size:12px;color:var(--pwt-muted)}

.pwt-professional-badge{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;align-items:center}
.pwt-member-type{background:var(--pwt-gold);color:var(--pwt-white);padding:2px 10px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}
.pwt-gamification{margin-top:10px}
.pwt-level-badge{background:var(--pwt-navy);color:var(--pwt-white);padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}
.pwt-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.pwt-badge-item{background:var(--pwt-light);padding:4px 10px;border-radius:12px;font-size:12px}

.pwt-pagination{display:flex;justify-content:center;gap:6px;margin-top:32px;padding-top:20px}
.pwt-page-btn{padding:8px 14px;border:1px solid var(--pwt-border);border-radius:6px;background:var(--pwt-white);cursor:pointer;font-size:13px;font-family:var(--pwt-font);transition:var(--pwt-transition)}
.pwt-page-btn:hover{border-color:var(--pwt-gold);color:var(--pwt-gold)}
.pwt-page-active{background:var(--pwt-gold);color:var(--pwt-white);border-color:var(--pwt-gold)}

@media(max-width:480px){.pwt-stats-row,.pwt-steps-grid{grid-template-columns:1fr}}

/* ═══════════════════════════════════════
   NOVIDADES FEED
   ═══════════════════════════════════════ */

.pwt-feed-tabs{display:flex;gap:4px;margin-bottom:24px;flex-wrap:wrap}
.pwt-feed-tab{padding:8px 18px;border:1px solid var(--pwt-border);border-radius:var(--pwt-radius-pill);background:var(--pwt-white);cursor:pointer;font-size:13px;font-family:var(--pwt-font);font-weight:500;color:var(--pwt-text);transition:var(--pwt-transition)}
.pwt-feed-tab:hover{border-color:var(--pwt-gold);color:var(--pwt-gold)}
.pwt-tab-active{background:var(--pwt-gold);color:var(--pwt-white);border-color:var(--pwt-gold)}

.pwt-novidades-feed{display:flex;flex-direction:column;gap:12px}

.pwt-feed-item{background:var(--pwt-white);border-radius:var(--pwt-radius);padding:20px;box-shadow:var(--pwt-shadow);display:flex;gap:14px;transition:var(--pwt-transition)}
.pwt-feed-item:hover{box-shadow:var(--pwt-shadow-hover)}

.pwt-feed-avatar{position:relative;flex-shrink:0}
.pwt-feed-avatar img{width:44px;height:44px;border-radius:50%}
.pwt-feed-type-icon{position:absolute;bottom:-2px;right:-4px;font-size:14px;background:var(--pwt-white);border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px rgba(0,0,0,.1)}

.pwt-feed-body{flex:1;min-width:0}
.pwt-feed-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}
.pwt-feed-action{font-size:14px;color:var(--pwt-dark)}
.pwt-feed-action a{color:var(--pwt-dark);font-weight:700;text-decoration:none}
.pwt-feed-action a:hover{color:var(--pwt-gold)}
.pwt-feed-tag{font-size:10px;padding:2px 8px;background:var(--pwt-gold-bg);color:var(--pwt-gold);border-radius:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}
.pwt-feed-content{font-size:14px;color:#555;line-height:1.6;margin:6px 0}
.pwt-feed-content strong{color:var(--pwt-dark)}
.pwt-feed-meta{margin-top:8px}
.pwt-feed-time{font-size:12px;color:var(--pwt-muted);margin-top:6px}

.pwt-feed-type-win{border-left:3px solid #f1c40f}
.pwt-feed-type-vaga{border-left:3px solid var(--pwt-gold)}
.pwt-feed-type-recurso{border-left:3px solid #3498db}
.pwt-feed-type-novo_membro{border-left:3px solid var(--pwt-success)}
.pwt-feed-type-post{border-left:3px solid var(--pwt-navy)}

.pwt-load-more-wrap{text-align:center;margin-top:24px}

@media(max-width:768px){.pwt-feed-item{flex-direction:column}.pwt-feed-tabs{overflow-x:auto;flex-wrap:nowrap}}

/* ═══════════════════════════════════════
   AUTH — Login & Registration
   ═══════════════════════════════════════ */

.pwt-auth-card{background:var(--pwt-white);border-radius:var(--pwt-radius);padding:40px;max-width:520px;margin:40px auto;box-shadow:0 4px 24px rgba(0,0,0,.08)}
.pwt-auth-register{max-width:640px}
.pwt-auth-header{text-align:center;margin-bottom:28px}
.pwt-auth-title{margin:0;font-size:24px;font-family:var(--pwt-font-display);color:var(--pwt-dark)}
.pwt-auth-subtitle{margin:6px 0 0;font-size:14px;color:var(--pwt-muted)}
.pwt-auth-form{display:flex;flex-direction:column;gap:16px}
.pwt-form-group{display:flex;flex-direction:column;gap:4px}
.pwt-form-group label{font-size:13px;font-weight:600;color:var(--pwt-dark);display:flex;justify-content:space-between;align-items:center}
.pwt-form-check label{flex-direction:row;gap:8px;font-weight:400;font-size:13px;color:#666;cursor:pointer;justify-content:flex-start}
.pwt-form-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--pwt-gold)}
.pwt-form-row{display:flex;gap:16px}
.pwt-form-half{flex:1;min-width:0}
.pwt-form-section-title{margin:20px 0 4px;font-size:15px;font-family:var(--pwt-font-display);color:var(--pwt-dark);padding-top:16px;border-top:1px solid var(--pwt-border)}
.pwt-forgot-link{font-size:12px;font-weight:400;color:var(--pwt-gold);text-decoration:none}
.pwt-forgot-link:hover{text-decoration:underline}
.pwt-btn-full{width:100%;text-align:center;padding:14px 24px;font-size:15px}
.pwt-auth-divider{text-align:center;margin:20px 0;position:relative}
.pwt-auth-divider::before{content:'';position:absolute;top:50%;left:0;right:0;height:1px;background:var(--pwt-border)}
.pwt-auth-divider span{background:var(--pwt-white);padding:0 16px;position:relative;font-size:13px;color:var(--pwt-muted)}
.pwt-auth-footer{text-align:center;margin-top:16px;font-size:14px;color:#666}
.pwt-auth-footer a{color:var(--pwt-gold);text-decoration:none}
.pwt-auth-footer a:hover{text-decoration:underline}
.pwt-auth-error{background:#FEE;border:1px solid #fcc;border-radius:var(--pwt-radius-sm);padding:12px 16px;font-size:13px;color:#c00;margin-bottom:8px}
.pwt-auth-success{background:#EFE;border:1px solid #cfc;border-radius:var(--pwt-radius-sm);padding:12px 16px;font-size:13px;color:#060;margin-bottom:8px}
.pwt-auth-logged-in{text-align:center;display:flex;flex-direction:column;gap:12px;align-items:center}
.pwt-auth-logged-in .pwt-btn{min-width:200px}

@media(max-width:640px){.pwt-auth-card{margin:20px 16px;padding:28px 20px}.pwt-auth-register{max-width:none}.pwt-form-row{flex-direction:column;gap:16px}}

/* ═══════════════════════════════════════
   MESSAGING
   ═══════════════════════════════════════ */
.pwt-msg-layout{display:grid;grid-template-columns:340px 1fr;gap:0;background:var(--pwt-white);border-radius:var(--pwt-radius);box-shadow:var(--pwt-shadow);overflow:hidden;height:calc(100vh - 260px);min-height:500px}

/* Sidebar */
.pwt-msg-sidebar{border-right:1px solid var(--pwt-border);display:flex;flex-direction:column;overflow:hidden}
.pwt-msg-search-bar{padding:12px;border-bottom:1px solid var(--pwt-border)}
.pwt-msg-search-bar .pwt-input{font-size:13px;padding:8px 12px}
.pwt-msg-inbox-list{flex:1;overflow-y:auto}
.pwt-msg-inbox-item{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;transition:var(--pwt-transition);border-bottom:1px solid #f5f5f5;position:relative}
.pwt-msg-inbox-item:hover{background:var(--pwt-gold-bg)}
.pwt-msg-item-active{background:var(--pwt-gold-bg);border-left:3px solid var(--pwt-gold)}
.pwt-msg-item-unread{background:#FFFDF7}
.pwt-msg-item-unread .pwt-msg-inbox-name{color:var(--pwt-dark)}
.pwt-msg-inbox-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0}
.pwt-msg-inbox-meta{flex:1;min-width:0}
.pwt-msg-inbox-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.pwt-msg-inbox-name{font-size:14px;font-weight:600;color:var(--pwt-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pwt-msg-inbox-time{font-size:11px;color:var(--pwt-muted);white-space:nowrap;flex-shrink:0}
.pwt-msg-inbox-preview{font-size:12px;color:var(--pwt-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.pwt-msg-unread-dot{background:var(--pwt-gold);color:var(--pwt-white);font-size:10px;font-weight:700;min-width:20px;height:20px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pwt-msg-no-convos,.pwt-msg-no-result{text-align:center;padding:40px 20px;color:var(--pwt-muted);font-size:13px}

/* Thread panel */
.pwt-msg-thread-panel{display:flex;flex-direction:column;overflow:hidden}
.pwt-msg-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;color:var(--pwt-muted);text-align:center;padding:40px}
.pwt-msg-empty-icon{font-size:48px;margin-bottom:12px;opacity:.5}
.pwt-msg-empty h3{margin:0;font-family:var(--pwt-font-display);color:var(--pwt-dark)}
.pwt-msg-empty p{margin:6px 0 0;font-size:14px}

.pwt-msg-thread-header{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--pwt-border);background:var(--pwt-light)}
.pwt-msg-back-btn{display:none;background:none;border:none;font-size:20px;cursor:pointer;padding:0 8px 0 0;color:var(--pwt-text)}
.pwt-msg-thread-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}
.pwt-msg-thread-info{flex:1}
.pwt-msg-thread-info strong{font-size:15px;color:var(--pwt-dark)}
.pwt-msg-delete-btn{background:none;border:none;font-size:16px;cursor:pointer;opacity:.5;transition:var(--pwt-transition);padding:4px 8px}
.pwt-msg-delete-btn:hover{opacity:1}

/* Messages */
.pwt-msg-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:8px}
.pwt-msg-bubble{max-width:70%;padding:10px 14px;border-radius:16px;font-size:14px;line-height:1.5;word-wrap:break-word}
.pwt-msg-bubble-mine{align-self:flex-end;background:var(--pwt-gold);color:var(--pwt-white);border-bottom-right-radius:4px}
.pwt-msg-bubble-theirs{align-self:flex-start;background:var(--pwt-light);color:var(--pwt-text);border-bottom-left-radius:4px}
.pwt-msg-bubble-time{font-size:10px;margin-top:4px;opacity:.65}
.pwt-msg-bubble-mine .pwt-msg-bubble-time{text-align:right}
.pwt-msg-loading{text-align:center;padding:30px;color:var(--pwt-muted);font-size:13px}

/* Composer */
.pwt-msg-composer{display:flex;gap:8px;padding:12px 20px;border-top:1px solid var(--pwt-border);align-items:flex-end;background:var(--pwt-white)}
.pwt-msg-composer .pwt-textarea{flex:1;resize:none;font-size:14px;min-height:40px;max-height:120px}
.pwt-msg-composer .pwt-btn{flex-shrink:0}

/* Modal */
.pwt-msg-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:9999;display:flex;align-items:center;justify-content:center}
.pwt-msg-modal{background:var(--pwt-white);border-radius:var(--pwt-radius);width:400px;max-width:90vw;box-shadow:0 16px 48px rgba(0,0,0,.15)}
.pwt-msg-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--pwt-border)}
.pwt-msg-modal-header h3{margin:0;font-family:var(--pwt-font-display);font-size:18px;color:var(--pwt-dark)}
.pwt-msg-modal-close{background:none;border:none;font-size:18px;cursor:pointer;color:var(--pwt-muted)}
.pwt-msg-modal-body{padding:20px}
.pwt-msg-modal-body label{font-size:13px;font-weight:600;color:var(--pwt-text);margin-bottom:6px;display:block}
.pwt-msg-member-results{margin-top:8px;max-height:240px;overflow-y:auto}
.pwt-msg-member-item{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;border-radius:var(--pwt-radius-sm);transition:var(--pwt-transition)}
.pwt-msg-member-item:hover{background:var(--pwt-gold-bg)}
.pwt-msg-member-item img{width:36px;height:36px;border-radius:50%;object-fit:cover}
.pwt-msg-member-item span{font-size:14px;font-weight:500}

/* Nav badge */
.pwt-msg-badge-nav{background:var(--pwt-gold);color:var(--pwt-white);font-size:10px;font-weight:700;padding:2px 6px;border-radius:10px;margin-left:4px;vertical-align:super}

/* ─── Responsive ─── */
@media(max-width:768px){
    .pwt-msg-layout{grid-template-columns:1fr;height:calc(100vh - 200px)}
    .pwt-msg-thread-panel{display:none}
    .pwt-msg-thread-open .pwt-msg-sidebar{display:none}
    .pwt-msg-thread-open .pwt-msg-thread-panel{display:flex}
    .pwt-msg-back-btn{display:block}
    .pwt-msg-bubble{max-width:85%}
}
