/* ============================================================
   MixDrop Crew — Design System
   Extends the main MixDrop design (dark theme, glass morphism)
   Crew accent: Tangerine Orange #FF6B2C
   ============================================================ */

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

:root{
  /* Core palette */
  --crew-bg:#08080e;
  --crew-card:#12121e;
  --crew-accent:#8B6CFF;
  --crew-text:#ebebf0;
  --crew-brand:#FF6B2C;
  --crew-verified:#34C77B;
  --crew-border:rgba(235,235,240,0.09);
  --crew-text-dim:rgba(235,235,240,0.52);
  --crew-radius:12px;

  /* Extended palette (aliases for backwards compat) */
  --bg:var(--crew-bg);--bg-card:var(--crew-card);--bg-card-hover:#181828;
  --bg-light:#fafafa;--bg-card-light:#fff;--bg-card-hover-light:#f5f5f7;
  --text:var(--crew-text);--text-70:rgba(235,235,240,0.72);--text-50:var(--crew-text-dim);--text-30:rgba(235,235,240,0.35);--text-15:rgba(235,235,240,0.18);--text-08:var(--crew-border);
  --text-d:#1a1a1f;--text-d-70:rgba(26,26,31,0.65);--text-d-50:rgba(26,26,31,0.45);--text-d-30:rgba(26,26,31,0.28);--text-d-15:rgba(26,26,31,0.14);--text-d-08:rgba(26,26,31,0.06);
  --crew:var(--crew-brand);--crew-dim:rgba(255,107,44,0.10);--crew-line:rgba(255,107,44,0.35);--crew-glow:rgba(255,107,44,0.15);
  --accent:var(--crew-accent);--accent-dim:rgba(139,108,255,0.10);--accent-line:rgba(139,108,255,0.35);
  --ok:var(--crew-verified);--ok-dim:rgba(52,199,123,0.08);
  --warn:#FFB840;--danger:#FF4D4D;
  --verified:#00D4AA;
  --font:-apple-system,BlinkMacSystemFont,'SF Pro Display','SF Pro Text','Inter',system-ui,'Helvetica Neue',sans-serif;
  --mono:'SF Mono',SFMono-Regular,ui-monospace,'JetBrains Mono',Consolas,monospace;
  --ease:cubic-bezier(0.25,1,0.5,1);
}

html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
body{font-family:var(--font);background:var(--bg);color:var(--text);overflow-x:hidden;line-height:1.65;width:100%}
body.light{background:var(--bg-light);color:var(--text-d)}

/* ---- NAV ---- */
.crew-nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:0 56px;height:64px;display:flex;align-items:center;justify-content:space-between;backdrop-filter:blur(32px) saturate(1.5);-webkit-backdrop-filter:blur(32px) saturate(1.5);background:rgba(8,8,14,0.75);border-bottom:1px solid var(--text-08);transition:background 0.3s}
body.light .crew-nav{background:rgba(250,250,250,0.8);border-color:var(--text-d-08)}
.crew-nav-left{display:flex;align-items:center;gap:16px}
.crew-nav-logo{text-decoration:none;color:inherit;font-size:15px;font-weight:700;letter-spacing:0.04em}
.crew-nav-badge{font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--crew);padding:3px 8px;border:1px solid var(--crew-line);border-radius:4px}
.crew-nav-links{display:flex;gap:24px;align-items:center}
.crew-nav-links a{font-size:12px;font-weight:450;letter-spacing:0.02em;color:var(--text-50);text-decoration:none;transition:color 0.2s}
.crew-nav-links a:hover,.crew-nav-links a.active{color:var(--text)}
body.light .crew-nav-links a{color:var(--text-d-50)}
body.light .crew-nav-links a:hover,body.light .crew-nav-links a.active{color:var(--text-d)}
.crew-nav-right{display:flex;align-items:center;gap:16px}
.crew-nav-cta{font-size:12px;font-weight:600;letter-spacing:0.02em;padding:8px 20px;background:var(--crew);color:#fff;border-radius:6px;text-decoration:none;transition:all 0.25s var(--ease);border:none;cursor:pointer}
.crew-nav-cta:hover{opacity:0.85}
.crew-nav-cta-ghost{background:none;border:1px solid var(--text-15);color:var(--text-70);font-weight:500}
.crew-nav-cta-ghost:hover{border-color:var(--text-30);color:var(--text)}
body.light .crew-nav-cta-ghost{border-color:var(--text-d-15);color:var(--text-d-70)}
body.light .crew-nav-cta-ghost:hover{border-color:var(--text-d-30);color:var(--text-d)}
.mode-toggle{cursor:pointer;padding:4px;border:none;background:none;color:var(--text-30);font-size:15px;transition:color 0.2s;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.mode-toggle:hover{color:var(--text)}
body.light .mode-toggle{color:var(--text-d-30)}
body.light .mode-toggle:hover{color:var(--text-d)}

/* ---- LAYOUT ---- */
.crew-container{max-width:1100px;margin:0 auto;padding:0 56px}
.crew-page{padding-top:96px;min-height:100vh}
.crew-section{padding:40px 0}
.crew-header{margin-bottom:32px}
.crew-header h1{font-size:clamp(24px,4vw,36px);font-weight:600;letter-spacing:-0.025em;line-height:1.15}
.crew-header p{font-size:15px;color:var(--text-50);margin-top:8px;line-height:1.7}
body.light .crew-header p{color:var(--text-d-50)}
.label{font-size:11px;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:var(--crew)}
.mono{font-family:var(--mono);letter-spacing:0.04em}

/* ---- SEARCH BAR ---- */
.crew-search{display:flex;gap:8px;align-items:center;padding:12px 16px;background:var(--bg-card);border:1px solid var(--text-08);border-radius:12px;margin-bottom:24px;flex-wrap:wrap}
body.light .crew-search{background:var(--bg-card-light);border-color:var(--text-d-08)}
.crew-search-icon{color:var(--text-30);font-size:16px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}
body.light .crew-search-icon{color:var(--text-d-30)}
.crew-search input[type="text"],.crew-search select{flex:1;min-width:120px;padding:8px 12px;background:var(--text-08);border:1px solid transparent;border-radius:8px;color:var(--text);font-family:var(--font);font-size:13px;outline:none;transition:border-color 0.2s}
.crew-search input[type="text"]:focus,.crew-search select:focus{border-color:var(--crew-line)}
body.light .crew-search input[type="text"],body.light .crew-search select{background:var(--text-d-08);color:var(--text-d)}
.crew-search select{cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23888' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}
.crew-search select option{background:var(--bg-card);color:var(--text)}
body.light .crew-search select option{background:var(--bg-card-light);color:var(--text-d)}
.crew-search-btn{padding:8px 20px;background:var(--crew);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:opacity 0.2s;font-family:var(--font)}
.crew-search-btn:hover{opacity:0.85}

/* ---- TOGGLE (remote, etc.) ---- */
.crew-toggle{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-50);cursor:pointer;user-select:none;white-space:nowrap}
body.light .crew-toggle{color:var(--text-d-50)}
.crew-toggle input{display:none}
.crew-toggle-track{width:34px;height:20px;border-radius:10px;background:var(--text-15);position:relative;transition:background 0.2s;flex-shrink:0}
.crew-toggle-track::after{content:'';position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--text-50);transition:all 0.2s var(--ease)}
.crew-toggle input:checked+.crew-toggle-track{background:var(--crew)}
.crew-toggle input:checked+.crew-toggle-track::after{left:16px;background:#fff}

/* ---- TABS ---- */
.crew-tabs{display:flex;gap:0;border-bottom:1px solid var(--text-08);margin-bottom:24px}
body.light .crew-tabs{border-color:var(--text-d-08)}
.crew-tab{padding:12px 20px;font-size:13px;font-weight:500;color:var(--text-50);cursor:pointer;border:none;background:none;font-family:var(--font);position:relative;transition:color 0.2s}
.crew-tab:hover{color:var(--text-70)}
.crew-tab.active{color:var(--crew);font-weight:600}
.crew-tab.active::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--crew);border-radius:1px 1px 0 0}
body.light .crew-tab{color:var(--text-d-50)}
body.light .crew-tab:hover{color:var(--text-d-70)}
body.light .crew-tab.active{color:var(--crew)}

/* ---- VIEW TOGGLE (list/map) ---- */
.crew-view-toggle{display:flex;gap:2px;background:var(--text-08);border-radius:8px;padding:2px;margin-left:auto}
body.light .crew-view-toggle{background:var(--text-d-08)}
.crew-view-btn{padding:6px 16px;font-size:11px;font-weight:500;color:var(--text-50);cursor:pointer;border:none;background:none;font-family:var(--font);border-radius:6px;transition:all 0.2s}
.crew-view-btn.active{background:var(--bg-card);color:var(--text);box-shadow:0 1px 3px rgba(0,0,0,0.2)}
body.light .crew-view-btn.active{background:var(--bg-card-light);color:var(--text-d);box-shadow:0 1px 3px rgba(0,0,0,0.08)}

/* ---- FILTERS BAR ---- */
.crew-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px;align-items:center}
.crew-filter{padding:6px 14px;font-size:11px;font-weight:500;color:var(--text-50);background:var(--text-08);border:1px solid transparent;border-radius:20px;cursor:pointer;transition:all 0.2s;font-family:var(--font);white-space:nowrap}
.crew-filter:hover{border-color:var(--text-15);color:var(--text-70)}
.crew-filter.active{background:var(--crew-dim);border-color:var(--crew-line);color:var(--crew)}
body.light .crew-filter{background:var(--text-d-08);color:var(--text-d-50)}
body.light .crew-filter:hover{border-color:var(--text-d-15);color:var(--text-d-70)}
body.light .crew-filter.active{background:var(--crew-dim);border-color:var(--crew-line);color:var(--crew)}
.crew-sort{font-size:12px;color:var(--text-50);margin-left:auto;display:flex;align-items:center;gap:6px}
.crew-sort select{background:none;border:none;color:var(--crew);font-family:var(--font);font-size:12px;font-weight:500;cursor:pointer;outline:none}
body.light .crew-sort{color:var(--text-d-50)}

/* ---- GIG CARD ---- */
.crew-gig-list{display:flex;flex-direction:column;gap:12px}
.crew-gig-card{padding:20px 24px;background:var(--bg-card);border:1px solid var(--text-08);border-radius:12px;transition:all 0.25s var(--ease);cursor:pointer;text-decoration:none;color:inherit;display:block}
.crew-gig-card:hover{border-color:var(--text-15);background:var(--bg-card-hover);transform:translateY(-1px)}
body.light .crew-gig-card{background:var(--bg-card-light);border-color:var(--text-d-08)}
body.light .crew-gig-card:hover{background:var(--bg-card-hover-light);border-color:var(--text-d-15)}
.crew-gig-card-top{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}
.crew-gig-badge{font-size:9px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;padding:3px 8px;border-radius:4px}
.crew-gig-badge.new{background:var(--crew-dim);color:var(--crew);border:1px solid var(--crew-line)}
.crew-gig-badge.urgent{background:rgba(255,77,77,0.10);color:var(--danger);border:1px solid rgba(255,77,77,0.35)}
.crew-gig-badge.featured{background:rgba(255,184,64,0.10);color:var(--warn);border:1px solid rgba(255,184,64,0.35)}
.crew-gig-badge.remote{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-line)}
.crew-gig-source{font-size:10px;color:var(--text-30);margin-left:auto;font-weight:450}
body.light .crew-gig-source{color:var(--text-d-30)}
.crew-gig-card h3{font-size:15px;font-weight:600;margin-bottom:6px;line-height:1.35}
.crew-gig-meta{display:flex;align-items:center;gap:16px;font-size:12px;color:var(--text-50);flex-wrap:wrap}
body.light .crew-gig-meta{color:var(--text-d-50)}
.crew-gig-meta span{display:flex;align-items:center;gap:4px;white-space:nowrap}
.crew-gig-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:14px;border-top:1px solid var(--text-08)}
body.light .crew-gig-bottom{border-color:var(--text-d-08)}
.crew-gig-stats{font-size:11px;color:var(--text-30);display:flex;gap:12px}
body.light .crew-gig-stats{color:var(--text-d-30)}
.crew-gig-apply{padding:8px 20px;background:var(--crew);color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:opacity 0.2s;font-family:var(--font);text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.crew-gig-apply:hover{opacity:0.85}
.crew-gig-apply.external{background:var(--text-08);color:var(--text-50)}
.crew-gig-apply.external:hover{background:var(--text-15);color:var(--text)}
body.light .crew-gig-apply.external{background:var(--text-d-08);color:var(--text-d-50)}
body.light .crew-gig-apply.external:hover{background:var(--text-d-15);color:var(--text-d)}

/* ---- TALENT CARD ---- */
.crew-talent-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.crew-talent-card{padding:24px;background:var(--bg-card);border:1px solid var(--text-08);border-radius:12px;transition:all 0.25s var(--ease);cursor:pointer;text-decoration:none;color:inherit;display:block}
.crew-talent-card:hover{border-color:var(--text-15);background:var(--bg-card-hover);transform:translateY(-1px)}
body.light .crew-talent-card{background:var(--bg-card-light);border-color:var(--text-d-08)}
body.light .crew-talent-card:hover{background:var(--bg-card-hover-light);border-color:var(--text-d-15)}
.crew-talent-top{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.crew-avatar{width:48px;height:48px;border-radius:50%;background:var(--crew-dim);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:var(--crew);flex-shrink:0;overflow:hidden}
.crew-avatar img{width:100%;height:100%;object-fit:cover}
.crew-talent-info h3{font-size:14px;font-weight:600;line-height:1.3}
.crew-talent-info p{font-size:12px;color:var(--text-50);margin-top:2px}
body.light .crew-talent-info p{color:var(--text-d-50)}
.crew-talent-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.crew-badge{font-size:10px;font-weight:500;padding:3px 10px;border-radius:4px;display:inline-flex;align-items:center;gap:4px}
.crew-badge.verified{background:rgba(0,212,170,0.10);color:var(--verified);border:1px solid rgba(0,212,170,0.30)}
.crew-badge.available{background:rgba(255,184,64,0.10);color:var(--warn);border:1px solid rgba(255,184,64,0.30)}
.crew-badge.score{background:var(--crew-dim);color:var(--crew);border:1px solid var(--crew-line)}
.crew-talent-skills{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:12px}
.crew-skill-tag{font-size:10px;padding:3px 8px;border-radius:4px;background:var(--text-08);color:var(--text-50)}
body.light .crew-skill-tag{background:var(--text-d-08);color:var(--text-d-50)}
.crew-talent-bottom{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--text-50);padding-top:12px;border-top:1px solid var(--text-08)}
body.light .crew-talent-bottom{border-color:var(--text-d-08);color:var(--text-d-50)}
.crew-talent-rate{font-weight:600;color:var(--text-70)}
body.light .crew-talent-rate{color:var(--text-d-70)}

/* ---- MATCH INDICATOR ---- */
.crew-match{font-size:11px;font-weight:600;color:var(--ok);display:flex;align-items:center;gap:4px}

/* ---- MAP ---- */
.crew-map-container{height:500px;border-radius:12px;overflow:hidden;border:1px solid var(--text-08);margin-bottom:24px;position:relative;display:none}
.crew-map-container.visible{display:block}
body.light .crew-map-container{border-color:var(--text-d-08)}
#crew-map{width:100%;height:100%}

/* Leaflet popup override for dark theme */
.leaflet-popup-content-wrapper{background:var(--bg-card)!important;color:var(--text)!important;border-radius:10px!important;box-shadow:0 8px 32px rgba(0,0,0,0.4)!important;border:1px solid var(--text-08)!important}
.leaflet-popup-tip{background:var(--bg-card)!important}
.leaflet-popup-content{font-family:var(--font)!important;font-size:13px!important;line-height:1.5!important;margin:12px 16px!important}
.leaflet-popup-content a{color:var(--crew)!important;text-decoration:none!important;font-weight:600!important}
body.light .leaflet-popup-content-wrapper{background:var(--bg-card-light)!important;color:var(--text-d)!important;border-color:var(--text-d-08)!important;box-shadow:0 8px 32px rgba(0,0,0,0.08)!important}
body.light .leaflet-popup-tip{background:var(--bg-card-light)!important}

/* ---- FORM ELEMENTS ---- */
.crew-form{display:flex;flex-direction:column;gap:20px;max-width:640px}
.crew-field{display:flex;flex-direction:column;gap:6px}
.crew-field label{font-size:12px;font-weight:500;color:var(--text-50);letter-spacing:0.02em}
body.light .crew-field label{color:var(--text-d-50)}
.crew-input,.crew-textarea,.crew-select{padding:10px 14px;background:var(--bg-card);border:1px solid var(--text-08);border-radius:8px;color:var(--text);font-family:var(--font);font-size:14px;outline:none;transition:border-color 0.2s}
.crew-input:focus,.crew-textarea:focus,.crew-select:focus{border-color:var(--crew-line)}
body.light .crew-input,body.light .crew-textarea,body.light .crew-select{background:var(--bg-card-light);border-color:var(--text-d-08);color:var(--text-d)}
.crew-textarea{resize:vertical;min-height:120px;line-height:1.6}
.crew-select{cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23888' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}
.crew-input-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.crew-form-actions{display:flex;gap:12px;padding-top:12px}
.crew-btn{padding:12px 28px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.25s var(--ease);font-family:var(--font);border:none;display:inline-flex;align-items:center;gap:8px;justify-content:center}
.crew-btn-primary{background:var(--crew);color:#fff}
.crew-btn-primary:hover{opacity:0.85}
.crew-btn-secondary{background:var(--text-08);color:var(--text-70)}
.crew-btn-secondary:hover{background:var(--text-15);color:var(--text)}
body.light .crew-btn-secondary{background:var(--text-d-08);color:var(--text-d-70)}
body.light .crew-btn-secondary:hover{background:var(--text-d-15);color:var(--text-d)}

/* ---- PROFILE ---- */
.crew-profile-header{display:flex;gap:32px;align-items:flex-start;padding:32px;background:var(--bg-card);border:1px solid var(--text-08);border-radius:16px;margin-bottom:24px}
body.light .crew-profile-header{background:var(--bg-card-light);border-color:var(--text-d-08)}
.crew-profile-avatar{width:96px;height:96px;border-radius:50%;background:var(--crew-dim);display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:600;color:var(--crew);flex-shrink:0;overflow:hidden;border:2px solid var(--crew-line)}
.crew-profile-avatar img{width:100%;height:100%;object-fit:cover}
.crew-profile-info{flex:1}
.crew-profile-info h1{font-size:24px;font-weight:600;margin-bottom:4px}
.crew-profile-info .headline{font-size:15px;color:var(--text-70);margin-bottom:8px}
body.light .crew-profile-info .headline{color:var(--text-d-70)}
.crew-profile-location{font-size:13px;color:var(--text-50);margin-bottom:12px;display:flex;align-items:center;gap:6px}
body.light .crew-profile-location{color:var(--text-d-50)}
.crew-profile-badges{display:flex;gap:8px;flex-wrap:wrap}
.crew-profile-actions{display:flex;gap:8px;margin-left:auto;flex-shrink:0;align-items:flex-start}

.crew-profile-section{padding:24px;background:var(--bg-card);border:1px solid var(--text-08);border-radius:12px;margin-bottom:16px}
body.light .crew-profile-section{background:var(--bg-card-light);border-color:var(--text-d-08)}
.crew-profile-section h2{font-size:14px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-30);margin-bottom:16px}
body.light .crew-profile-section h2{color:var(--text-d-30)}
.crew-profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.crew-stat{text-align:center;padding:16px;background:var(--text-08);border-radius:8px}
body.light .crew-stat{background:var(--text-d-08)}
.crew-stat-val{font-size:24px;font-weight:600;display:block;color:var(--text)}
body.light .crew-stat-val{color:var(--text-d)}
.crew-stat-label{font-size:11px;color:var(--text-30);text-transform:uppercase;letter-spacing:0.1em;margin-top:4px}
body.light .crew-stat-label{color:var(--text-d-30)}

/* ---- REVIEWS ---- */
.crew-review{padding:16px 0;border-bottom:1px solid var(--text-08)}
.crew-review:last-child{border-bottom:none}
body.light .crew-review{border-color:var(--text-d-08)}
.crew-review-top{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.crew-review-stars{color:var(--warn);font-size:13px;letter-spacing:2px}
.crew-review-author{font-size:12px;color:var(--text-50)}
body.light .crew-review-author{color:var(--text-d-50)}
.crew-review p{font-size:14px;color:var(--text-70);line-height:1.65}
body.light .crew-review p{color:var(--text-d-70)}

/* ---- PORTFOLIO ---- */
.crew-portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.crew-portfolio-item{padding:16px;background:var(--text-08);border-radius:8px;display:flex;align-items:center;gap:12px;transition:background 0.2s;cursor:pointer}
.crew-portfolio-item:hover{background:var(--text-15)}
body.light .crew-portfolio-item{background:var(--text-d-08)}
body.light .crew-portfolio-item:hover{background:var(--text-d-15)}
.crew-portfolio-icon{font-size:20px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:var(--crew)}
.crew-portfolio-info h4{font-size:13px;font-weight:600;margin-bottom:2px}
.crew-portfolio-info p{font-size:11px;color:var(--text-50)}
body.light .crew-portfolio-info p{color:var(--text-d-50)}

/* ---- CREW CARD ---- */
.crew-card-preview{width:380px;margin:0 auto;background:linear-gradient(135deg,#1a1020 0%,#12121e 50%,#0a1018 100%);border:1px solid var(--text-08);border-radius:20px;padding:40px 32px;text-align:center;position:relative;overflow:hidden}
.crew-card-preview::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(ellipse at 30% 20%,var(--crew-glow) 0%,transparent 50%);pointer-events:none}
.crew-card-brand{font-size:10px;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--crew);margin-bottom:24px;position:relative}
.crew-card-avatar{width:80px;height:80px;border-radius:50%;background:var(--crew-dim);margin:0 auto 16px;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:600;color:var(--crew);border:2px solid var(--crew-line);position:relative;overflow:hidden}
.crew-card-avatar img{width:100%;height:100%;object-fit:cover}
.crew-card-name{font-size:20px;font-weight:600;margin-bottom:4px;position:relative}
.crew-card-headline{font-size:13px;color:var(--text-50);margin-bottom:4px;position:relative}
.crew-card-score{font-size:12px;color:var(--crew);font-weight:600;margin-bottom:20px;position:relative;display:flex;align-items:center;justify-content:center;gap:6px}
.crew-card-qr{width:120px;height:120px;margin:0 auto 16px;background:#fff;border-radius:8px;padding:8px;position:relative;display:flex;align-items:center;justify-content:center}
.crew-card-qr canvas{width:100%!important;height:100%!important}
.crew-card-url{font-size:11px;color:var(--text-30);font-family:var(--mono);letter-spacing:0.02em;position:relative}
.crew-card-actions{display:flex;gap:8px;justify-content:center;margin-top:24px;flex-wrap:wrap}
.crew-card-actions button,.crew-card-actions a{padding:8px 16px;border-radius:8px;font-size:12px;font-weight:500;cursor:pointer;transition:all 0.2s;font-family:var(--font);border:1px solid var(--text-15);background:none;color:var(--text-70);text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.crew-card-actions button:hover,.crew-card-actions a:hover{border-color:var(--text-30);color:var(--text)}

/* ---- GIG DETAIL ---- */
.crew-gig-detail{display:grid;grid-template-columns:1fr 340px;gap:24px}
.crew-gig-main{padding:32px;background:var(--bg-card);border:1px solid var(--text-08);border-radius:16px;overflow:hidden;position:relative;z-index:0}
#gig-mini-map{position:relative;z-index:0}
#gig-mini-map .leaflet-pane,#gig-mini-map .leaflet-control-container{z-index:0!important}
#gig-mini-map .leaflet-tile-pane{z-index:0!important}
#gig-mini-map .leaflet-overlay-pane{z-index:1!important}
#gig-mini-map .leaflet-marker-pane{z-index:2!important}
body.light .crew-gig-main{background:var(--bg-card-light);border-color:var(--text-d-08)}
.crew-gig-main h1{font-size:22px;font-weight:600;margin-bottom:8px;line-height:1.35}
.crew-gig-main .description{font-size:14px;color:var(--text-70);line-height:1.75;margin:20px 0}
body.light .crew-gig-main .description{color:var(--text-d-70)}
.crew-gig-sidebar{display:flex;flex-direction:column;gap:16px}
.crew-gig-sidebar-card{padding:24px;background:var(--bg-card);border:1px solid var(--text-08);border-radius:12px}
body.light .crew-gig-sidebar-card{background:var(--bg-card-light);border-color:var(--text-d-08)}
.crew-gig-info-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--text-08);font-size:13px}
.crew-gig-info-row:last-child{border-bottom:none}
body.light .crew-gig-info-row{border-color:var(--text-d-08)}
.crew-gig-info-label{color:var(--text-50)}
body.light .crew-gig-info-label{color:var(--text-d-50)}
.crew-gig-info-val{font-weight:600;color:var(--text,#fff);text-align:right;max-width:60%;word-break:break-word}
body.light .crew-gig-info-val{color:var(--text-d,#111)}

/* ---- LIVE PREVIEW ---- */
.crew-preview{padding:24px;background:var(--bg-card);border:1px solid var(--text-08);border-radius:12px;margin-top:24px}
body.light .crew-preview{background:var(--bg-card-light);border-color:var(--text-d-08)}
.crew-preview h3{font-size:12px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-30);margin-bottom:16px}
body.light .crew-preview h3{color:var(--text-d-30)}

/* ---- OPTION TOGGLES (Urgent, Featured) ---- */
.crew-options{display:flex;gap:16px;flex-wrap:wrap}
.crew-option{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--bg-card);border:1px solid var(--text-08);border-radius:10px;cursor:pointer;transition:all 0.2s;user-select:none}
.crew-option:hover{border-color:var(--text-15)}
.crew-option.active{border-color:var(--crew-line);background:var(--crew-dim)}
body.light .crew-option{background:var(--bg-card-light);border-color:var(--text-d-08)}
body.light .crew-option:hover{border-color:var(--text-d-15)}
body.light .crew-option.active{border-color:var(--crew-line);background:var(--crew-dim)}
.crew-option-info h4{font-size:13px;font-weight:600}
.crew-option-info p{font-size:11px;color:var(--text-50)}
body.light .crew-option-info p{color:var(--text-d-50)}
.crew-option-price{font-size:12px;font-weight:600;color:var(--crew)}

/* ---- EMPTY STATE ---- */
.crew-empty{text-align:center;padding:80px 24px;color:var(--text-30)}
body.light .crew-empty{color:var(--text-d-30)}
.crew-empty-icon{font-size:48px;margin-bottom:16px;opacity:0.5}
.crew-empty h3{font-size:16px;font-weight:600;margin-bottom:8px;color:var(--text-50)}
body.light .crew-empty h3{color:var(--text-d-50)}
.crew-empty p{font-size:14px;max-width:400px;margin:0 auto}

/* ---- LOADING ---- */
.crew-loading{display:flex;align-items:center;justify-content:center;padding:60px;gap:8px;color:var(--text-30)}
.crew-spinner{width:20px;height:20px;border:2px solid var(--text-15);border-top-color:var(--crew);border-radius:50%;animation:crewSpin 0.6s linear infinite}
@keyframes crewSpin{to{transform:rotate(360deg)}}

/* ---- LOGO ICON ---- */
.crew-logo-icon{border-radius:10px;vertical-align:middle;margin-right:10px;filter:drop-shadow(0 0 12px rgba(255,107,44,0.4)) drop-shadow(0 0 30px rgba(255,107,44,0.2));transition:filter 0.3s ease}
.crew-nav-logo:hover .crew-logo-icon{filter:drop-shadow(0 0 16px rgba(255,107,44,0.5)) drop-shadow(0 0 40px rgba(255,107,44,0.3))}

/* ---- TOAST NOTIFICATIONS ---- */
.crew-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);padding:12px 24px;border-radius:10px;font-size:14px;font-weight:500;z-index:10000;opacity:0;transition:opacity 0.3s,transform 0.3s;pointer-events:none;max-width:90vw;text-align:center}
.crew-toast-show{opacity:1;transform:translateX(-50%) translateY(0)}
.crew-toast-info{background:var(--crew-card);color:var(--crew-text);border:1px solid var(--crew-border)}
.crew-toast-success{background:rgba(52,199,123,0.15);color:var(--crew-verified);border:1px solid rgba(52,199,123,0.3)}
.crew-toast-error{background:rgba(239,68,68,0.15);color:#EF4444;border:1px solid rgba(239,68,68,0.3)}

/* ---- SKELETON LOADING ---- */
.crew-skeleton{background:var(--crew-card);border-radius:var(--crew-radius);padding:20px;margin-bottom:12px;border:1px solid var(--text-08);overflow:hidden}
body.light .crew-skeleton{background:var(--bg-card-light);border-color:var(--text-d-08)}
.crew-skeleton-line{height:14px;background:linear-gradient(90deg,rgba(235,235,240,0.06) 25%,rgba(235,235,240,0.12) 50%,rgba(235,235,240,0.06) 75%);background-size:200% 100%;border-radius:7px;margin-bottom:10px;animation:skeleton-shimmer 1.5s ease infinite}
body.light .crew-skeleton-line{background:linear-gradient(90deg,rgba(26,26,31,0.04) 25%,rgba(26,26,31,0.08) 50%,rgba(26,26,31,0.04) 75%);background-size:200% 100%}
.crew-skeleton-line:last-child{margin-bottom:0}
@keyframes skeleton-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}

/* ---- PAGINATION ---- */
.crew-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:24px 0;margin-top:12px}
.crew-page-info{font-size:13px;color:var(--crew-text-dim);font-weight:500}
.crew-btn-ghost{padding:8px 20px;background:none;border:1px solid var(--crew-border);color:var(--crew-text-dim);border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all 0.2s var(--ease);font-family:var(--font)}
.crew-btn-ghost:hover{border-color:rgba(235,235,240,0.18);color:var(--crew-text)}
body.light .crew-btn-ghost{border-color:var(--text-d-08);color:var(--text-d-50)}
body.light .crew-btn-ghost:hover{border-color:var(--text-d-15);color:var(--text-d)}

/* ---- FORM INLINE ERRORS ---- */
.crew-field-error{font-size:12px;color:#EF4444;margin-top:4px;min-height:0;overflow:hidden;transition:all 0.2s var(--ease)}
.crew-input.invalid,.crew-textarea.invalid,.crew-select.invalid{border-color:rgba(239,68,68,0.5)}

/* ---- APPLY BUTTON STATES ---- */
.crew-btn-success{background:rgba(52,199,123,0.15)!important;color:var(--crew-verified)!important;border:1px solid rgba(52,199,123,0.3)!important;cursor:default!important}
.crew-gig-apply.crew-btn-success{background:rgba(52,199,123,0.15)!important;color:var(--crew-verified)!important}

/* ---- ANIMATIONS ---- */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.reveal{opacity:0;transform:translateY(20px);transition:all 0.6s var(--ease)}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ---- RESPONSIVE ---- */
@media(max-width:900px){
  .crew-talent-grid{grid-template-columns:1fr}
  .crew-gig-detail{grid-template-columns:1fr}
  .crew-gig-sidebar{order:-1}
  .crew-profile-header{flex-direction:column;align-items:center;text-align:center}
  .crew-profile-actions{margin-left:0;margin-top:16px}
  .crew-profile-stats{grid-template-columns:repeat(3,1fr)}
  .crew-portfolio-grid{grid-template-columns:1fr}
  .crew-input-row{grid-template-columns:1fr}
  .crew-card-preview{width:100%;max-width:380px}
}

/* ---- MOBILE (768px and below) ---- */
@media(max-width:768px){
  /* Nav: compact, hide right-side buttons */
  .crew-nav{padding:0 16px;height:56px}
  .crew-nav-right{display:none}
  .crew-nav-logo{font-size:14px}
  .crew-logo-icon{width:32px!important;height:32px!important}
  .crew-nav-badge{font-size:9px;padding:2px 6px}

  /* Container: tighter padding */
  .crew-container{padding:0 16px}
  .crew-page{padding-top:72px;padding-bottom:72px}

  /* Header: tighter typography */
  .crew-header{margin-bottom:20px}
  .crew-header h1{font-size:clamp(20px,5vw,28px)}
  .crew-header p{font-size:14px;margin-top:4px}
  .label{font-size:10px;letter-spacing:0.14em}

  /* Search bar: stack vertically, clean */
  .crew-search{flex-direction:column;gap:8px;padding:12px;border-radius:10px;margin-bottom:16px}
  .crew-search-icon{display:none}
  .crew-search input[type="text"]{width:100%;min-width:100%;font-size:14px;padding:10px 12px}
  .crew-search select{width:100%;min-width:100%;font-size:14px;padding:10px 12px}
  .crew-search-btn{width:100%;padding:12px;font-size:14px;border-radius:8px;min-height:44px}
  .crew-toggle{padding:4px 0;font-size:13px}

  /* Tabs: horizontal scroll */
  .crew-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-bottom:16px;gap:0}
  .crew-tabs::-webkit-scrollbar{display:none}
  .crew-tab{white-space:nowrap;padding:10px 14px;font-size:12px;flex-shrink:0}

  /* View toggle */
  .crew-view-toggle{flex-shrink:0}
  .crew-view-btn{padding:6px 12px;font-size:11px}

  /* Filters: horizontal scroll, no wrap */
  .crew-filters{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-bottom:16px;gap:6px;padding-bottom:2px}
  .crew-filters::-webkit-scrollbar{display:none}
  .crew-filter{padding:6px 14px;font-size:11px;flex-shrink:0;white-space:nowrap;min-height:36px;display:inline-flex;align-items:center}
  .crew-sort{flex-shrink:0;white-space:nowrap}

  /* Gig cards: full width, mobile optimized */
  .crew-gig-list{gap:10px}
  .crew-gig-card{padding:16px;border-radius:10px}
  .crew-gig-card h3{font-size:15px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .crew-gig-card-top{margin-bottom:8px;gap:6px}
  .crew-gig-meta{gap:8px;font-size:11px;flex-wrap:wrap}
  .crew-gig-meta span{font-size:11px}
  .crew-gig-bottom{flex-direction:column;align-items:stretch;gap:10px;margin-top:12px;padding-top:12px}
  .crew-gig-stats{font-size:11px}
  .crew-gig-apply{width:100%;justify-content:center;min-height:44px;font-size:13px;border-radius:8px;padding:10px 20px}
  .crew-gig-badge{font-size:9px;padding:3px 7px}
  .crew-gig-source{font-size:10px}

  /* Talent cards: full width */
  .crew-talent-grid{grid-template-columns:1fr;gap:10px}
  .crew-talent-card{padding:16px;border-radius:10px}
  .crew-talent-top{gap:12px;margin-bottom:10px}
  .crew-avatar{width:44px;height:44px;font-size:14px}
  .crew-talent-info h3{font-size:14px}
  .crew-talent-info p{font-size:11px}
  .crew-talent-badges{gap:4px;margin-bottom:8px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .crew-talent-badges::-webkit-scrollbar{display:none}
  .crew-badge{font-size:10px;padding:3px 8px;flex-shrink:0;white-space:nowrap}
  .crew-talent-skills{gap:4px;margin-bottom:8px}
  .crew-skill-tag{font-size:10px;padding:3px 7px}
  .crew-talent-bottom{font-size:11px;padding-top:10px}
  .crew-talent-rate{font-size:12px}

  /* Gig detail: single column */
  .crew-gig-detail{grid-template-columns:1fr;gap:16px}
  .crew-gig-sidebar{order:-1}
  .crew-gig-main{padding:16px;border-radius:10px}
  .crew-gig-main h1{font-size:18px}
  .crew-gig-main .description{font-size:13px;margin:16px 0}
  .crew-gig-sidebar-card{padding:16px;border-radius:10px}
  .crew-gig-info-row{font-size:12px;padding:8px 0}
  #gig-mini-map{height:160px!important;border-radius:8px!important}

  /* Profile: single column compact */
  .crew-profile-header{flex-direction:column;align-items:flex-start;padding:20px;gap:16px;border-radius:12px}
  .crew-profile-avatar{width:64px;height:64px;font-size:22px}
  .crew-profile-info h1{font-size:20px}
  .crew-profile-info .headline{font-size:14px}
  .crew-profile-location{font-size:12px}
  .crew-profile-badges{gap:6px}
  .crew-profile-actions{margin-left:0;margin-top:12px;flex-wrap:wrap;gap:8px}
  .crew-profile-actions .crew-btn{font-size:12px;padding:10px 16px;flex:1;min-width:0;min-height:44px}
  .crew-profile-section{padding:16px;border-radius:10px;margin-bottom:12px}
  .crew-profile-section h2{font-size:12px;margin-bottom:12px}
  .crew-profile-stats{grid-template-columns:repeat(3,1fr);gap:8px}
  .crew-stat{padding:12px 8px;border-radius:6px}
  .crew-stat-val{font-size:18px}
  .crew-stat-label{font-size:10px}

  /* Portfolio */
  .crew-portfolio-grid{grid-template-columns:1fr;gap:8px}
  .crew-portfolio-item{padding:12px}
  .crew-portfolio-icon{font-size:16px}
  .crew-portfolio-info h4{font-size:12px}
  .crew-portfolio-info p{font-size:10px}

  /* Reviews */
  .crew-review{padding:12px 0}
  .crew-review-stars{font-size:12px}
  .crew-review-author{font-size:11px}
  .crew-review p{font-size:13px}

  /* Card preview */
  .crew-card-preview{width:100%;max-width:380px;padding:28px 20px;border-radius:16px}
  .crew-card-actions{flex-direction:column;align-items:stretch;gap:6px}
  .crew-card-actions button,.crew-card-actions a{min-height:44px;justify-content:center}
  .crew-card-avatar{width:64px;height:64px;font-size:22px}
  .crew-card-name{font-size:18px}
  .crew-card-headline{font-size:12px}
  .crew-card-qr{width:100px;height:100px;padding:6px}
  .crew-card-url{font-size:10px}

  /* Form */
  .crew-form{max-width:100%}
  .crew-input-row{grid-template-columns:1fr}
  .crew-input,.crew-textarea,.crew-select{font-size:16px;padding:12px 14px}
  .crew-field label{font-size:12px}
  .crew-form-actions{flex-direction:column;gap:8px}
  .crew-form-actions .crew-btn{width:100%;min-height:48px;font-size:14px}
  .crew-options{flex-direction:column;gap:10px}
  .crew-option{padding:12px 16px}
  .crew-btn{min-height:44px;font-size:13px}

  /* Post page: single column */
  #mode-form{grid-template-columns:1fr!important;gap:20px!important}

  /* Map */
  .crew-map-container{height:280px;border-radius:10px}

  /* Empty state */
  .crew-empty{padding:48px 16px}
  .crew-empty-icon{font-size:24px;margin-bottom:12px;opacity:0.4}
  .crew-empty h3{font-size:15px}
  .crew-empty p{font-size:13px}

  /* Loading */
  .crew-loading{padding:40px;font-size:13px}

  /* Toast: above mobile nav */
  .crew-toast{bottom:72px;font-size:13px;padding:10px 20px}

  /* Modal */
  .crew-modal{padding:24px 20px;border-radius:14px;max-width:100%}
  .crew-modal h2{font-size:18px}
  .crew-modal p{font-size:13px}

  /* Footer: above mobile nav */
  .crew-footer{margin-top:48px;padding:32px 0 80px}
  .crew-footer-links{gap:16px}
  .crew-footer-links a{font-size:11px}
  .crew-footer-copy{font-size:10px}

  /* Gig detail: sticky apply bar */
  .crew-gig-sidebar-card .crew-btn-primary{position:fixed;bottom:56px;left:0;right:0;z-index:90;border-radius:0;padding:14px 24px;font-size:15px;margin:0!important;padding-bottom:calc(14px + env(safe-area-inset-bottom))}

  /* Skeleton cards: mobile friendly */
  .crew-skeleton{padding:16px;margin-bottom:8px;border-radius:10px}

  /* Tabs + view flex row: wrap on mobile */
  [style*="display:flex"][style*="align-items:center"][style*="gap:8px"]{flex-wrap:wrap}
}
/* ---- FOOTER ---- */
.crew-footer{padding:40px 0;border-top:1px solid var(--text-08);text-align:center;margin-top:80px}
body.light .crew-footer{border-color:var(--text-d-08)}
.crew-footer-logo{font-size:14px;font-weight:600;letter-spacing:0.06em;margin-bottom:14px}
.crew-footer-links{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin-bottom:14px}
.crew-footer-links a{font-size:12px;color:var(--text-30);text-decoration:none;transition:color 0.2s}
.crew-footer-links a:hover{color:var(--text)}
body.light .crew-footer-links a{color:var(--text-d-30)}
body.light .crew-footer-links a:hover{color:var(--text-d)}
.crew-footer-copy{font-size:11px;color:var(--text-15)}
body.light .crew-footer-copy{color:var(--text-d-15)}

/* ---- MOBILE BOTTOM NAV ---- */
.crew-mobile-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:100;height:56px;background:rgba(8,8,14,0.96);backdrop-filter:blur(32px) saturate(1.5);-webkit-backdrop-filter:blur(32px) saturate(1.5);border-top:1px solid var(--text-08);padding:0 16px;padding-bottom:env(safe-area-inset-bottom)}
body.light .crew-mobile-nav{background:rgba(255,255,255,0.96);border-color:var(--text-d-08)}
.crew-mobile-nav-items{display:flex;align-items:center;justify-content:space-around;height:56px;max-width:400px;margin:0 auto}
.crew-mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;text-decoration:none;color:var(--text-30);font-size:10px;font-weight:500;letter-spacing:0.02em;transition:color 0.2s;padding:6px 16px;min-width:56px;-webkit-tap-highlight-color:transparent}
.crew-mobile-nav-item.active{color:var(--crew);font-weight:600}
.crew-mobile-nav-item:active{opacity:0.7}
body.light .crew-mobile-nav-item{color:var(--text-d-30)}
body.light .crew-mobile-nav-item.active{color:var(--crew)}
.crew-mobile-nav-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;line-height:1}
.crew-mobile-nav-icon svg{width:20px;height:20px;display:block}
@media(max-width:768px){
  .crew-mobile-nav{display:block}
}

/* ---- SIGNUP MODAL ---- */
.crew-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;background:rgba(0,0,0,0.65);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;transition:opacity 0.3s var(--ease)}
.crew-modal-overlay.crew-modal-visible{opacity:1}
.crew-modal{background:var(--bg-card);border:1px solid var(--text-08);border-radius:16px;padding:36px 32px;max-width:440px;width:100%;position:relative;transform:translateY(20px);transition:transform 0.3s var(--ease)}
.crew-modal-overlay.crew-modal-visible .crew-modal{transform:translateY(0)}
body.light .crew-modal{background:var(--bg-card-light);border-color:var(--text-d-08)}
.crew-modal-close{position:absolute;top:16px;right:16px;background:none;border:none;color:var(--text-30);font-size:24px;cursor:pointer;padding:4px 8px;line-height:1;transition:color 0.2s}
.crew-modal-close:hover{color:var(--text)}
body.light .crew-modal-close{color:var(--text-d-30)}
body.light .crew-modal-close:hover{color:var(--text-d)}
.crew-modal h2{font-size:20px;font-weight:600;margin-bottom:12px;line-height:1.3}
.crew-modal p{font-size:14px;color:var(--text-70);line-height:1.6;margin-bottom:20px}
body.light .crew-modal p{color:var(--text-d-70)}
.crew-modal p strong{color:var(--crew);font-weight:600}
.crew-modal ul{list-style:none;margin-bottom:24px;display:flex;flex-direction:column;gap:10px}
.crew-modal ul li{font-size:13px;color:var(--text-70);display:flex;align-items:center;gap:10px}
body.light .crew-modal ul li{color:var(--text-d-70)}
.crew-modal ul li::before{content:'\2713';color:var(--ok);font-weight:600;font-size:14px;flex-shrink:0}
.crew-btn-ghost-modal{background:none;border:1px solid var(--text-15);color:var(--text-50);border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all 0.2s var(--ease);font-family:var(--font);padding:12px 28px}
.crew-btn-ghost-modal:hover{border-color:var(--text-30);color:var(--text)}
body.light .crew-btn-ghost-modal{border-color:var(--text-d-15);color:var(--text-d-50)}
body.light .crew-btn-ghost-modal:hover{border-color:var(--text-d-30);color:var(--text-d)}

/* ---- REVIEWS (API-backed) ---- */
.crew-reviews{margin-top:32px}
.crew-review-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.crew-review-avg{font-size:24px;font-weight:700}
.crew-review-stars-summary{color:#FFB840;font-size:18px;letter-spacing:2px}
.crew-review-count{color:var(--text-50);font-size:13px}
body.light .crew-review-count{color:var(--text-d-50)}
.crew-review-card{background:var(--bg-card);border:1px solid var(--text-08);border-radius:12px;padding:16px;margin-bottom:12px}
body.light .crew-review-card{background:var(--bg-card-light);border-color:var(--text-d-08)}
.crew-review-card-stars{color:#FFB840;letter-spacing:2px;font-size:14px}
.crew-review-card-author{font-size:13px;font-weight:600;margin-left:8px}
.crew-review-meta{font-size:12px;color:var(--text-50);margin-top:4px}
body.light .crew-review-meta{color:var(--text-d-50)}
.crew-review-comment{margin-top:8px;font-size:14px;line-height:1.5;color:var(--text-70)}
body.light .crew-review-comment{color:var(--text-d-70)}
.crew-review-more{margin-top:12px;padding:10px 24px;background:none;border:1px solid var(--text-15);color:var(--text-50);border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all 0.2s var(--ease);font-family:var(--font)}
.crew-review-more:hover{border-color:var(--text-30);color:var(--text)}
body.light .crew-review-more{border-color:var(--text-d-15);color:var(--text-d-50)}
body.light .crew-review-more:hover{border-color:var(--text-d-30);color:var(--text-d)}
.crew-review-empty{font-size:13px;color:var(--text-30)}
body.light .crew-review-empty{color:var(--text-d-30)}

/* ---- REVIEW FORM (gig page) ---- */
.crew-review-form{margin-top:32px;padding:24px;background:var(--bg-card);border:1px solid var(--text-08);border-radius:12px}
body.light .crew-review-form{background:var(--bg-card-light);border-color:var(--text-d-08)}
.crew-review-form h2{font-size:14px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-30);margin-bottom:16px}
body.light .crew-review-form h2{color:var(--text-d-30)}
.crew-star-input{display:flex;gap:4px;cursor:pointer;margin-bottom:16px}
.crew-star-input span{font-size:28px;color:var(--text-15);transition:color 0.15s;user-select:none;line-height:1}
body.light .crew-star-input span{color:var(--text-d-15)}
.crew-star-input span.active,.crew-star-input span.hover{color:#FFB840}
.crew-star-input:focus{outline:2px solid var(--crew);outline-offset:4px;border-radius:4px}
.crew-review-form textarea{width:100%;min-height:80px;resize:vertical;padding:10px 14px;background:var(--text-08);border:1px solid transparent;border-radius:8px;color:var(--text);font-family:var(--font);font-size:14px;line-height:1.6;outline:none;transition:border-color 0.2s;box-sizing:border-box}
.crew-review-form textarea:focus{border-color:var(--crew-line)}
body.light .crew-review-form textarea{background:var(--text-d-08);color:var(--text-d)}
.crew-review-char-count{font-size:11px;color:var(--text-30);text-align:right;margin-top:4px}
body.light .crew-review-char-count{color:var(--text-d-30)}
.crew-review-form .crew-btn-primary{margin-top:12px}
.crew-review-form.disabled{opacity:0.5;pointer-events:none}

@media(prefers-reduced-motion:reduce){*{animation-duration:0s!important;transition-duration:0s!important}}
