/* ============================================================
   SHARELIMITLESS — DESIGN SYSTEM TOKENS
   Theme: "Saffron & Ink" — woven-thread motif referencing
   multi-tenant threads coming together, grounded in a South
   Asian textile palette. Ink frame / paper canvas structure.
   ============================================================ */
:root{
  --ink:#12131a; --ink-soft:#1c1e28; --ink-softer:#262838;
  --paper:#ffffff; --paper-alt:#f1f3f5; --card:#ffffff;
  --border:#e4e7eb; --border-soft:#f0f2f5;
  --saffron:#e8a33d; --saffron-dark:#c9832a; --saffron-tint:#fbf0dd;
  --lapis:#2f5d9e; --lapis-tint:#e8eef8;
  --emerald:#2e9e6b; --emerald-tint:#e5f4ec;
  --danger:#d64545; --danger-tint:#fbe9e9;
  --text-1:#1b1c22; --text-2:#63636c; --text-3:#94939a;
  --text-inv:#f7f5ef; --text-inv-soft:#b9b9c6;
  --r-sm:8px; --r-md:14px; --r-lg:22px; --r-pill:999px;
  --shadow-1:0 1px 2px rgba(18,19,26,.05), 0 6px 18px rgba(18,19,26,.05);
  --shadow-2:0 4px 10px rgba(18,19,26,.06), 0 16px 40px rgba(18,19,26,.10);
  --font-d:'Manrope',sans-serif; --font-u:'Inter',sans-serif; --font-m:'Inter',sans-serif; --font-mono:'JetBrains Mono',monospace;
}

html[data-theme="dark"] {
  --ink:#0c0b12; --ink-soft:#17151f; --ink-softer:#242130;
  --paper:#1b1926; --paper-alt:#11101a; --card:#1b1926;
  --border:#353144; --border-soft:#292638;
  --saffron-dark:#f0ad49; --saffron-tint:rgba(232,163,61,.14);
  --lapis:#76a7e8; --lapis-tint:rgba(76,132,210,.16);
  --emerald:#55c995; --emerald-tint:rgba(46,158,107,.16);
  --danger:#ff7373; --danger-tint:rgba(214,69,69,.16);
  --text-1:#f7f5ef; --text-2:#b5b1c1; --text-3:#888397;
  --shadow-1:0 1px 2px rgba(0,0,0,.28), 0 8px 24px rgba(0,0,0,.18);
  --shadow-2:0 12px 36px rgba(0,0,0,.42);
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;max-width:100%;overflow-x:clip;}
body{
  font-family:var(--font-u); color:var(--text-1); background:var(--paper-alt);
  -webkit-font-smoothing:antialiased; font-size:14px; line-height:1.5;
}
h1,h2,h3,h4{font-family:var(--font-d); margin:0; color:var(--text-1); font-weight:600;}
p{margin:0;}
button{font-family:var(--font-u); cursor:pointer;}
a{color:inherit; text-decoration:none;}
::selection{background:var(--saffron-tint); color:var(--text-1);}
:focus-visible{outline:2px solid var(--lapis); outline-offset:2px; border-radius:4px;}
img,svg{display:block;}
input,select,textarea{font-family:var(--font-u); font-size:14px;}

/* Global Theme Transition */
body, .admin-sidebar, .admin-main, .card, .admin-topbar, .notif-item, td, th, a, button, input, select, textarea {
  transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

/* ---------- woven-thread signature texture ---------- */
.thread-bg{
  position:absolute; inset:0; overflow:hidden; pointer-events:none;
}
.thread-bg svg{width:100%; height:100%;}

/* ============================================================
   PROTOTYPE VIEWER CHROME (not part of either product portal)
   ============================================================ */
.proto-bar{
  position:fixed; top:0; left:0; right:0; height:52px; z-index:1000;
  background:var(--ink); color:var(--text-inv-soft);
  display:flex; align-items:center; gap:14px; padding:0 18px;
  font-size:12px; border-bottom:1px solid #000;
}
.proto-bar .proto-label{
  font-family:var(--font-m); font-size:11px; letter-spacing:.04em;
  color:var(--saffron); text-transform:uppercase; white-space:nowrap;
}
.proto-bar select{
  background:var(--ink-soft); color:var(--text-inv); border:1px solid #34364a;
  border-radius:var(--r-sm); padding:7px 10px; font-size:12.5px; font-family:var(--font-u);
}
.proto-bar .spacer{flex:1;}
.proto-bar .proto-hint{color:var(--text-inv-soft); font-size:11.5px; display:none;}
@media(min-width:900px){.proto-bar .proto-hint{display:block;}}
.app-root{margin-top:0;}

/* ============================================================
   SHARED COMPONENTS
   ============================================================ */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  border-radius:var(--r-sm); border:1px solid transparent; font-weight:600;
  font-size:13.5px; padding:10px 18px; transition:transform .12s ease, box-shadow .12s ease;
  white-space:nowrap;
}
.btn:active{transform:scale(.98);}
.btn-primary{background:var(--saffron); color:#241505;}
.btn-primary:hover{background:var(--saffron-dark);}
.btn-dark{background:var(--ink); color:var(--text-inv);}
.btn-dark:hover{background:var(--ink-soft);}
.btn-white{background:var(--paper); color:var(--text-1); border-color:var(--border);}
.btn-white:hover{background:var(--paper-alt);}
.btn-ghost{background:transparent; color:var(--text-1); border-color:var(--border);}
.btn-ghost:hover{background:var(--paper-alt);}
.btn-danger-ghost{background:transparent; color:var(--danger); border-color:var(--danger-tint);}
.btn-sm{padding:7px 12px; font-size:12.5px;}
.btn-block{width:100%;}
.btn-icon{width:36px; height:36px; padding:0; border-radius:var(--r-sm);}

.li-delivery {
  background: var(--paper-alt);
  border: 1px solid var(--border);
  border-radius: var(--r-md);
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 20px;
}
.li-delivery-label {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--text-3);
  margin-bottom: -2px;
}
.li-delivery-actions, .li-delivery-status {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}
.li-delivery-actions .btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  height: 32px !important;
  padding: 0 14px !important;
  font-size: 12.5px !important;
  border: 1px solid transparent !important;
}
.li-delivery-actions .btn-white {
  border-color: var(--border) !important;
}

.badge{
  display:inline-flex; align-items:center; gap:5px; font-size:11px; font-weight:700;
  padding:3px 9px; border-radius:var(--r-pill); text-transform:uppercase; letter-spacing:.03em;
}
.badge-active{background:var(--emerald-tint); color:var(--emerald);}
.badge-pending{background:var(--saffron-tint); color:var(--saffron-dark);}
.badge-inactive{background:#eee; color:var(--text-3);}
.badge-danger{background:var(--danger-tint); color:var(--danger);}
.badge-info{background:var(--lapis-tint); color:var(--lapis);}

.card{
  background:var(--card); border:1px solid var(--border); border-radius:var(--r-md);
  box-shadow:var(--shadow-1);
}
.pad-lg{padding:26px;}
.pad-md{padding:18px;}

.field{margin-bottom:16px;}
.field label{
  display:block; font-size:12.5px; font-weight:600; color:var(--text-2);
  margin-bottom:7px; letter-spacing:.01em;
}
.field .hint{font-size:11.5px; color:var(--text-3); margin-top:6px;}
.input, .select, .textarea{
  width:100%; padding:11px 13px; border:1px solid var(--border); border-radius:var(--r-sm);
  background:var(--paper); color:var(--text-1); font-size:13.5px; transition:border-color .12s;
}
.input:focus, .select:focus, .textarea:focus{border-color:var(--lapis); outline:none; background:var(--paper);}
.select option{background:var(--paper); color:var(--text-1);}
html[data-theme="dark"] .select{color-scheme:dark;}
html[data-theme="dark"] .select option{background:#1b1926; color:#f7f5ef;}
.input-group{position:relative;}
.input-icon{position:absolute; left:13px; top:50%; transform:translateY(-50%); color:var(--text-3);}
.input-group .input{padding-left:38px;}
.textarea{resize:vertical; min-height:90px;}

.avatar{
  width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  font-weight:700; font-size:13px; color:#fff; flex-shrink:0;
}
.divider{height:1px; background:var(--border); border:none; margin:0;}
.eyebrow{
  font-family:var(--font-m); font-size:11px; letter-spacing:.09em; text-transform:uppercase;
  color:var(--saffron-dark); font-weight:600;
}
.icon{width:18px; height:18px; stroke:currentColor; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;}
.scroll-thin::-webkit-scrollbar{width:6px; height:6px;}
.scroll-thin::-webkit-scrollbar-thumb{background:var(--border); border-radius:8px;}

/* ============================================================
   SCREEN VISIBILITY
   ============================================================ */
.screen{display:none;}
.screen.active{display:block;}

/* ============================================================
   AUTH SHELL (Login / Register / Forgot)
   ============================================================ */
.auth-shell{min-height:100vh; display:flex;}
@media (min-height: 620px) and (min-width: 1024px) {
  .auth-shell {
    height: 100vh;
    overflow: hidden;
  }
  body.auth-body-page {
    overflow: hidden;
    height: 100vh;
  }
}
.auth-side{
  flex:1.05; background:var(--ink); position:relative; color:var(--text-inv);
  display:flex; flex-direction:column; justify-content:space-between; padding:48px;
  overflow:hidden;
}
.auth-side .brand {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 10px !important;
  position: relative;
  z-index: 2;
  text-decoration: none !important;
}
.auth-side .brand img {
  width: 36px !important;
  height: 36px !important;
  border-radius: 10px !important;
  flex-shrink: 0 !important;
  display: block !important;
}
.auth-side .brand span {
  font-family: 'Inter', system-ui, -apple-system, sans-serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  letter-spacing: -0.03em !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
}
.auth-side .story{position:relative; z-index:2; max-width:420px;}
.auth-side .story .eyebrow{color:var(--saffron);}
.auth-side .story h2{color:var(--text-inv); font-size:32px; line-height:1.2; margin-top:14px; font-weight:500;}
.auth-side .story p{color:var(--text-inv-soft); margin-top:14px; font-size:14px; line-height:1.7;}
.auth-testimonial{margin-top:40px; border-top:1px solid rgba(255,255,255,0.08); padding-top:24px; position:relative; z-index:2;}
.auth-testimonial .quote{font-family:var(--font-m); font-size:14.5px; line-height:1.6; color:rgba(255,255,255,0.85); font-style:italic; margin-bottom:16px;}
.auth-testimonial .author{display:flex; align-items:center; gap:12px;}
.auth-testimonial .avatar{width:32px; height:32px; border-radius:50%; background:var(--saffron-tint); color:var(--saffron-dark); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:11px; font-family:var(--font-m); flex-shrink:0;}
.auth-testimonial .info{display:flex; flex-direction:column;}
.auth-testimonial .info .name{font-size:13px; font-weight:600; color:#fff;}
.auth-testimonial .info .role{font-size:11px; color:var(--text-inv-soft); opacity:0.7;}
.auth-main{flex:1; display:flex; align-items:center; justify-content:center; padding:40px 24px; background:var(--paper);}
.auth-mobile-brand {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  margin-bottom: 20px !important;
  text-decoration: none !important;
}
.auth-mobile-brand img {
  width: 30px !important;
  height: 30px !important;
  max-width: 30px !important;
  max-height: 30px !important;
  border-radius: 8px !important;
  flex-shrink: 0 !important;
  display: block !important;
}
.auth-mobile-brand span {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 2px !important;
  font-family: 'Inter', system-ui, -apple-system, sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--text-1) !important;
  letter-spacing: -0.02em !important;
  line-height: 1 !important;
}
.auth-mobile-brand span span {
  color: #e8a33d !important;
}
@media (min-width: 901px) {
  .auth-mobile-brand {
    display: none !important;
  }
};
.auth-box .eyebrow{margin-bottom:10px; display:block;}
.auth-box h1{font-size:28px; margin-bottom:8px;}
.auth-box .sub{color:var(--text-2); font-size:13.5px; margin-bottom:28px;}
.auth-foot{margin-top:22px; text-align:center; font-size:13px; color:var(--text-2);}
.auth-foot a{color:var(--lapis); font-weight:600;}
.or-divider{display:flex; align-items:center; gap:12px; margin:20px 0; color:var(--text-3); font-size:12px;}
.or-divider .line{flex:1; height:1px; background:var(--border);}
.social-row{display:flex; gap:10px;}
.social-row .btn{flex:1;}
.check-row{display:flex; align-items:center; justify-content:space-between; margin:-4px 0 18px;}
.check-row label{display:flex; align-items:center; gap:8px; font-size:13px; color:var(--text-2); font-weight:500;}
@media(max-width:1023px){.auth-side{display:none;}}

/* ============================================================
   ADMIN APP SHELL
   ============================================================ */
.admin-shell{min-height:100vh;}
@media(min-width:961px){.admin-shell{display:flex;}}
.admin-sidebar{
  width:242px; background:var(--ink); color:var(--text-inv-soft); flex-shrink:0;
  display:flex; flex-direction:column; position:fixed; left:0; top:0; bottom:0; z-index:100;
}
.admin-sidebar .brand{
  display:flex; align-items:center; gap:10px; padding:22px 20px; border-bottom:1px solid #24263400;
}
.admin-sidebar .brand .mark{
  width:32px; height:32px; border-radius:9px; background:var(--saffron); flex-shrink:0;
  display:flex; align-items:center; justify-content:center; color:var(--ink); font-weight:800; font-size:14px;
}
.admin-sidebar .brand .admin-brand-logo{
  width:30px; height:30px; border-radius:8px; object-fit:cover; flex-shrink:0;
}
.admin-sidebar .brand b{color:var(--text-inv); font-family:var(--font-d); font-size:17px; font-weight:800; letter-spacing:-.02em;}
.admin-sidebar .brand .admin-brand-accent{color:var(--saffron); font-weight:500;}
.admin-sidebar .brand small{display:block; font-size:10.5px; color:var(--text-inv-soft); font-family:var(--font-m);}
.nav-group{
  padding:8px 12px;
  flex:1;
  overflow-y:auto;
}
.nav-group::-webkit-scrollbar{
  width:4px;
}
.nav-group::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,0.15);
  border-radius:4px;
}
.nav-group::-webkit-scrollbar-track{
  background:transparent;
}
.nav-group .nav-title{
  font-size:9px; text-transform:uppercase; letter-spacing:.11em; color:#77798b;
  padding:17px 12px 6px; font-weight:800;
}
.nav-group .nav-title:first-child{padding-top:8px;}
.nav-item{
  display:flex; align-items:center; gap:11px; padding:10px 12px; border-radius:var(--r-sm);
  font-size:13.5px; font-weight:500; color:var(--text-inv-soft); position:relative; margin-bottom:2px;
}
.nav-item .icon{width:17px; height:17px;}
.nav-item:hover{background:var(--ink-soft); color:var(--text-inv);}
.nav-item.is-active{background:var(--ink-soft); color:var(--text-inv);}
.nav-item.is-active::before{
  content:""; position:absolute; left:-12px; top:8px; bottom:8px; width:3px; border-radius:3px; background:var(--saffron);
}
.nav-item .count{
  margin-left:auto; background:var(--saffron); color:var(--ink); font-size:10.5px; font-weight:800;
  padding:1px 7px; border-radius:var(--r-pill);
}
.sidebar-foot{margin-top:auto; padding:16px 20px; border-top:1px solid #262838;}
.sidebar-foot .who{display:flex; align-items:center; gap:10px;}
.sidebar-foot .who b{color:var(--text-inv); font-size:12.5px; display:block;}
.sidebar-foot .who span{font-size:11px; color:var(--text-inv-soft);}

.admin-main{flex:1; min-width:0; display:flex; flex-direction:column;}
@media(min-width:961px){.admin-main{margin-left:242px;}}
.admin-topbar{
  height:66px; border-bottom:1px solid var(--border); background:rgba(255,255,255,.96);
  display:flex; align-items:center; gap:16px; padding:0 24px; position:sticky; top:0; z-index:100;
  backdrop-filter:blur(12px);
}
html[data-theme="dark"] .admin-topbar {
  background:rgba(27,25,38,.96);
  border-bottom-color:var(--border);
}

/* Theme Toggle Icons */
.sun-icon { display: none; }
.moon-icon { display: block; }
html[data-theme="dark"] .sun-icon { display: block; color: var(--saffron); }
html[data-theme="dark"] .moon-icon { display: none; }
html[data-theme="dark"] .theme-btn:hover { color: var(--saffron) !important; }
.admin-topbar .crumbs{font-size:12px; color:var(--text-3); font-family:var(--font-m);}
.admin-topbar h1{font-size:19px;}
.topbar-search{
  flex:1; max-width:340px; display:flex; align-items:center; gap:8px; background:var(--paper-alt);
  border:1px solid var(--border); border-radius:var(--r-pill); padding:8px 14px; color:var(--text-3);
}
.topbar-search input{background:transparent; border:none; outline:none; font-size:13px; width:100%; color:var(--text-1);}
.topbar-actions{display:flex; align-items:center; gap:12px; margin-left:auto;}
.icon-btn{
  width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  color:var(--text-2); border:1px solid var(--border); background:var(--card); position:relative;
}
.icon-btn:hover{background:var(--paper-alt);}
.icon-btn .dot{position:absolute; top:8px; right:8px; width:7px; height:7px; border-radius:50%; background:var(--danger); border:1.5px solid var(--card);}
.admin-content{padding:24px; flex:1;}
.mobile-only{display:none;}
html, body {
  overflow-x: clip;
  max-width: 100%;
}
.admin-shell, .admin-main {
  max-width: 100%;
}

.sidebar-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.65);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  z-index: 195;
  border: 0;
  outline: 0;
  display: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease, visibility 0.25s ease;
}

@media(max-width:960px){
  .sidebar-backdrop {
    display: block;
  }
  .sidebar-backdrop.open {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
  .admin-sidebar {
    position: fixed !important;
    left: -290px !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 270px !important;
    max-width: 85vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    overflow: hidden !important;
    background: var(--ink, #0c0e14) !important;
    color: var(--text-inv-soft);
    z-index: 200 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    transition: left 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 0 40px rgba(0, 0, 0, 0.6);
  }
  .admin-sidebar.open {
    left: 0;
  }
  .admin-sidebar .brand {
    padding: 18px 20px 14px;
    flex-shrink: 0;
    background: var(--ink, #0c0e14);
  }
  .admin-sidebar .nav-group {
    flex: 1;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .admin-sidebar .sidebar-foot {
    margin-top: auto;
    padding: 16px 20px;
    padding-bottom: max(16px, env(safe-area-inset-bottom));
    background: var(--ink, #0c0e14);
    border-top: 1px solid #262838;
    flex-shrink: 0;
  }
  .admin-topbar {
    padding-left: 12px !important;
    padding-right: 12px !important;
    gap: 8px !important;
    overflow: visible !important;
  }
  .admin-shell {
    display: block !important;
  }
  .admin-main,
  .admin-main.sidebar-collapsed {
    margin-left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  .admin-content {
    padding: 16px 12px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  .mobile-only {
    display: flex !important;
    align-items: center;
    justify-content: center;
  }
  .topbar-search {
    display: none;
  }
  body.mobile-sidebar-open {
    overflow: hidden !important;
    touch-action: none;
  }
}

/* Page header row */
.page-head{display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:22px; flex-wrap:wrap; gap:14px;}
.page-head h2{font-size:24px;}
.page-head .sub{color:var(--text-2); font-size:13px; margin-top:5px;}
.head-actions{display:flex; gap:10px;}

/* Stat cards */
.stat-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-bottom:24px;}
.stat-card{
  padding:20px;
  cursor:pointer;
}
.stat-card:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow-2);
  border-color:var(--saffron);
}
.stat-card .top{display:flex; align-items:center; justify-content:space-between;}
.stat-card .ic{width:38px; height:38px; border-radius:10px; display:flex; align-items:center; justify-content:center;}
.stat-card .val{font-family:var(--font-d); font-size:28px; margin-top:14px; font-weight:600;}
.stat-card .lbl{color:var(--text-2); font-size:12.5px; margin-top:2px;}
.stat-card .delta{font-size:11.5px; font-weight:700; margin-top:10px; display:flex; align-items:center; gap:4px;}
.delta.up{color:var(--emerald);} .delta.down{color:var(--danger);}
@media(max-width:1100px){.stat-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.stat-grid{grid-template-columns:1fr;}}

.grid-2{display:grid; grid-template-columns:2fr 1fr; gap:18px;}
@media(max-width:960px){.grid-2{grid-template-columns:1fr;}}

.section-title{display:flex; align-items:center; justify-content:space-between; margin-bottom:16px;}
.section-title h3{font-size:15.5px;}
.section-title a{font-size:12.5px; color:var(--lapis); font-weight:600;}

/* activity list */
.activity-row{display:flex; gap:12px; padding:13px 0; border-bottom:1px solid var(--border-soft);}
.activity-row:last-child{border-bottom:none;}
.activity-row .dotwrap{width:32px; height:32px; border-radius:50%; background:var(--paper-alt); display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.activity-row .txt b{font-weight:600;}
.activity-row .txt p{font-size:13px; color:var(--text-1); margin-top:2px;}
.activity-row .txt span{font-size:11.5px; color:var(--text-3);}

/* simple bar chart placeholder */
.bars{display:flex; align-items:flex-end; gap:10px; height:140px; padding-top:10px;}
.bars .bar{flex:1; background:linear-gradient(180deg,var(--saffron),var(--saffron-dark)); border-radius:6px 6px 2px 2px; position:relative;}
.bars .bar span{position:absolute; bottom:-20px; left:0; right:0; text-align:center; font-size:10.5px; color:var(--text-3);}

/* progress rings / quick tasks */
.task-row{display:flex; align-items:center; gap:12px; padding:11px 0; border-bottom:1px solid var(--border-soft);}
.task-row:last-child{border-bottom:none;}
.task-row input[type=checkbox]{width:17px; height:17px; accent-color:var(--emerald);}
.task-row .t{font-size:13px;}
.task-row .t.done{text-decoration:line-through; color:var(--text-3);}
.task-row .tag{margin-left:auto;}

/* Professional dashboard */
.dashboard-page{max-width:1296px; width:100%; margin:0 auto;}
.dashboard-head{align-items:center; margin-bottom:24px;}
.eyebrow{font-size:10.5px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; color:var(--saffron-dark); margin-bottom:4px;}
.period-chip{height:42px; padding:0 14px; border:1px solid var(--border); border-radius:var(--r-pill); color:var(--text-2); font-size:12px; font-weight:600; background:var(--card); display:inline-flex; align-items:center; justify-content:center; white-space:nowrap;}
.professional-stats .stat-card{cursor:default; min-width:0;}
.professional-stats .stat-card:hover{transform:none; border-color:var(--border); box-shadow:var(--shadow-1);}
.stat-card .stat-saffron{background:var(--saffron-tint); color:var(--saffron-dark);}
.stat-card .stat-lapis{background:var(--lapis-tint); color:var(--lapis);}
.stat-card .stat-emerald{background:var(--emerald-tint); color:var(--emerald);}
.stat-card .stat-danger{background:var(--danger-tint); color:var(--danger); font-size:12px; font-weight:700;}
.metric-note{font-size:10px; font-weight:700; color:var(--text-3); background:var(--paper-alt); padding:3px 8px; border-radius:var(--r-pill);}
.metric-note.needs-action{color:var(--saffron-dark); background:var(--saffron-tint);}
.metric-foot{font-size:11px; color:var(--text-3); margin-top:9px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.attention-card{padding:22px 26px; margin-bottom:24px;}
.attention-title,.workspace-title{margin-bottom:14px;}
.attention-title p,.workspace-title p{font-size:11.5px; color:var(--text-3); margin-top:3px;}
.attention-row{display:flex; align-items:center; gap:12px; padding:11px 0; border-top:1px solid var(--border-soft);}
.attention-icon{width:34px; height:34px; border-radius:9px; display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.attention-icon .icon{width:16px; height:16px;}
.attention-icon.approval{background:var(--emerald-tint); color:var(--emerald);}
.attention-icon.message{background:var(--lapis-tint); color:var(--lapis);}
.attention-icon.task{background:var(--saffron-tint); color:var(--saffron-dark);}
.attention-icon.invoice{background:var(--danger-tint); color:var(--danger);}
.attention-copy{display:flex; flex-direction:column; flex:1; min-width:0;}
.attention-copy strong{font-size:13px; font-weight:650;}
.attention-copy span{font-size:11.5px; color:var(--text-3); margin-top:2px;}
.attention-empty{display:flex; align-items:center; gap:13px; border-top:1px solid var(--border-soft); padding:18px 0 3px;}
.attention-empty-icon{width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:var(--emerald-tint); color:var(--emerald); flex-shrink:0;}
.attention-empty-icon .icon{width:18px; height:18px;}
.attention-empty strong,.attention-empty span{display:block;}
.attention-empty strong{font-size:13.5px;}.attention-empty span{font-size:12px; color:var(--text-3); margin-top:2px;}
.workspace-overview{padding:22px 0 4px; overflow:hidden;}
.workspace-title{padding:0 26px;}
.workspace-table th:first-child,.workspace-table td:first-child{padding-left:26px;}
.workspace-table th:last-child,.workspace-table td:last-child{padding-right:26px;}
.workspace-cell{display:flex; align-items:center; gap:11px; min-width:180px;}
.workspace-avatar{width:34px; height:34px; border-radius:9px; display:flex; align-items:center; justify-content:center; background:var(--lapis-tint); color:var(--lapis); font-weight:800; flex-shrink:0;}
.workspace-cell strong,.workspace-cell span{display:block;}.workspace-cell strong{font-size:13px;}.workspace-cell span{font-size:11.5px; color:var(--text-3); margin-top:2px;}
.status-dot{display:inline-flex; align-items:center; gap:7px; font-size:12px; font-weight:600; color:var(--text-2);}.status-dot i{width:7px; height:7px; border-radius:50%; background:var(--emerald); box-shadow:0 0 0 3px var(--emerald-tint);}
.pending-pill{font-size:11px; font-weight:700; padding:4px 8px; border-radius:var(--r-pill); color:var(--saffron-dark); background:var(--saffron-tint);}.muted-value,.activity-time{font-size:12px; color:var(--text-3);}
.table-action{text-align:right;}.dashboard-empty{margin:0 26px 22px; padding:32px; border:1px dashed var(--border); border-radius:var(--r-md); text-align:center;}.dashboard-empty strong,.dashboard-empty span{display:block;}.dashboard-empty span{font-size:12px; color:var(--text-3); margin:5px 0 16px;}
.sr-only{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;}
@media(max-width:760px){
  .attention-card{padding:18px;}
  .workspace-title{padding:0 14px;}
  .workspace-table th:first-child,.workspace-table td:first-child{padding-left:14px !important;}
  .workspace-table th:last-child,.workspace-table td:last-child{padding-right:14px !important;}
  .workspace-table th, .workspace-table td { padding: 10px 6px !important; font-size: 11.5px !important; }
  .workspace-table th:nth-child(4), .workspace-table td:nth-child(4) { display: none !important; }
  .period-chip{display:none;}
  .metric-foot{white-space:normal;}
  .attention-row .btn{padding:7px 10px;}
  .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .workspace-cell{min-width:0 !important; gap: 8px !important;}
  .workspace-avatar{width: 28px !important; height: 28px !important; font-size: 11px !important; border-radius: 7px !important;}
}

/* Workspaces Dashboard Styling */
.workspace-contact-cell strong, .workspace-contact-cell span,
.workspace-activity-cell strong, .workspace-activity-cell span {
  display: block;
}
.workspace-contact-cell strong, .workspace-activity-cell strong {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--text-1);
}
.workspace-contact-cell span, .workspace-activity-cell span {
  font-size: 12px;
  color: var(--text-3);
  margin-top: 2px;
}
.workspace-attention-cell {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.workspace-attention-cell span {
  display: inline-flex;
  align-items: center;
  padding: 4px 8px;
  border-radius: var(--r-pill);
  font-size: 11px;
  font-weight: 700;
  background: var(--saffron-tint);
  color: var(--saffron-dark);
}
.workspace-attention-cell span.approval {
  background: var(--emerald-tint);
  color: var(--emerald);
}
.workspace-attention-cell span.message {
  background: var(--lapis-tint);
  color: var(--lapis);
}
.workspace-attention-cell span.invoice {
  background: var(--danger-tint);
  color: var(--danger);
}
.workspace-attention-cell span.clear {
  background: var(--emerald-tint);
  color: var(--emerald);
}

.workspace-search-form {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 14px;
  border: 1px solid var(--border);
  border-radius: var(--r-pill);
  background: var(--paper-alt);
  height: 38px;
}
.workspace-search-form .icon {
  width: 14px;
  height: 14px;
  color: var(--text-3);
  flex-shrink: 0;
}
.workspace-search-form input {
  border: 0;
  outline: 0;
  background: none;
  color: var(--text-1);
  font: inherit;
  font-size: 13px;
  padding: 0;
  width: 250px;
}
.workspace-search-form input::placeholder {
  color: var(--text-3);
}
.workspace-search-form .btn {
  border: 0 !important;
  background: transparent !important;
  font-weight: 600;
  color: var(--text-2) !important;
  padding: 0 8px !important;
  font-size: 12.5px;
  cursor: pointer;
}
.workspace-search-form .btn:hover {
  color: var(--text-1) !important;
  background: transparent !important;
}

.workspace-actions-wrap {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  white-space: nowrap;
}

details.workspace-actions-menu {
  position: relative;
  display: inline-block;
}
details.workspace-actions-menu summary {
  list-style: none;
  cursor: pointer;
  width: 34px;
  height: 34px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--card);
  color: var(--text-2);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  user-select: none;
  transition: border-color 0.15s, background 0.15s, color 0.15s;
}
details.workspace-actions-menu summary::-webkit-details-marker {
  display: none;
}
details.workspace-actions-menu summary:hover,
details.workspace-actions-menu[open] summary {
  border-color: var(--saffron);
  background: var(--saffron-tint);
  color: var(--saffron-dark);
}
details.workspace-actions-menu > div {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 6px;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 10px;
  box-shadow: var(--shadow-2);
  z-index: 100;
  min-width: 170px;
  padding: 6px;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
details.workspace-actions-menu > div a,
details.workspace-actions-menu > div button {
  display: block;
  width: 100%;
  padding: 8px 12px;
  font-size: 12.5px;
  color: var(--text-2);
  text-decoration: none;
  background: none;
  border: 0;
  text-align: left;
  border-radius: 6px;
  cursor: pointer;
  transition: background 0.12s ease, color 0.12s ease;
  font-family: inherit;
}
details.workspace-actions-menu > div a:hover,
details.workspace-actions-menu > div button:hover {
  background: var(--paper-alt);
  color: var(--text-1);
}
details.workspace-actions-menu > div button.danger:hover {
  background: var(--danger-tint);
  color: var(--danger);
}

/* Open dropdown upwards for the last row to prevent clipping */
.workspace-table tr:last-child:not(:first-child) details.workspace-actions-menu > div {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 6px;
}

.table-wrap {
  min-height: 250px !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}
.table-wrap::-webkit-scrollbar {
  display: none !important;
}

/* Prevent clipping of dropdown menus by allowing vertical overflow on desktop screens */
@media (min-width: 761px) {
  .table-wrap {
    overflow: visible !important;
  }
}

/* Profile page */
.profile-page{max-width:1060px;width:100%;margin:0 auto;}.profile-page-head{margin-bottom:22px;}.profile-page-head h2{font-size:24px;}.profile-page-head p{font-size:12.5px;color:var(--text-2);margin-top:5px;}
.profile-alert{padding:11px 14px;border-radius:var(--r-sm);font-size:12px;font-weight:600;margin-bottom:16px;border:1px solid;}.profile-alert.error{background:var(--danger-tint);color:var(--danger);border-color:var(--danger);}.profile-alert.success{background:var(--emerald-tint);color:var(--emerald);border-color:var(--emerald);}
.profile-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:20px;align-items:start;}.profile-identity-card{padding:26px 22px;text-align:center;position:sticky;top:90px;}.profile-large-avatar{width:72px;height:72px;border-radius:22px;margin:0 auto 14px;background:var(--saffron);color:#241505;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;box-shadow:0 8px 22px rgba(232,163,61,.22);}.profile-identity-card h3{font-size:17px;}.profile-identity-card>p{font-size:11.5px;color:var(--text-3);margin-top:3px;word-break:break-word;}.profile-role-badge{display:inline-block;margin-top:11px;padding:3px 8px;border-radius:var(--r-pill);background:var(--saffron-tint);color:var(--saffron-dark);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;}.profile-meta{margin:22px -2px 0;text-align:left;border-top:1px solid var(--border-soft);}.profile-meta div{display:flex;justify-content:space-between;gap:10px;padding:11px 2px;border-bottom:1px solid var(--border-soft);}.profile-meta dt{font-size:10.5px;color:var(--text-3);}.profile-meta dd{font-size:10.5px;color:var(--text-1);font-weight:650;text-align:right;margin:0;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.profile-main-column{display:flex;flex-direction:column;gap:20px;}.profile-form-card,.profile-appearance-card{padding:24px;}.profile-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:17px;margin-bottom:19px;border-bottom:1px solid var(--border-soft);}.profile-card-heading h3{font-size:15px;}.profile-card-heading p{font-size:11.5px;color:var(--text-3);margin-top:3px;}.profile-form{max-width:560px;}.profile-form .field input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--paper-alt);color:var(--text-1);font:inherit;font-size:13px;outline:none;transition:border .15s,box-shadow .15s;}.profile-form .field input:focus{border-color:var(--saffron);box-shadow:0 0 0 3px var(--saffron-tint);}.profile-form .field small{display:block;font-size:10.5px;color:var(--text-3);margin-top:5px;}.profile-form-actions{display:flex;justify-content:flex-end;padding-top:4px;}.saved-preference{font-size:10px;font-weight:750;color:var(--saffron-dark);background:var(--saffron-tint);padding:4px 8px;border-radius:var(--r-pill);}
.profile-theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}.profile-theme-options button{border:1px solid var(--border);border-radius:11px;background:var(--paper-alt);padding:10px;text-align:left;color:var(--text-1);cursor:pointer;transition:.15s ease;}.profile-theme-options button:hover{border-color:var(--saffron);transform:translateY(-1px);}.profile-theme-options button.active{border-color:var(--saffron);box-shadow:0 0 0 2px var(--saffron-tint);}.profile-theme-options strong,.profile-theme-options small{display:block;}.profile-theme-options strong{font-size:11.5px;margin-top:9px;}.profile-theme-options small{font-size:9.5px;color:var(--text-3);margin-top:1px;}.profile-theme-preview{height:58px;border-radius:7px;display:grid;grid-template-columns:18px 1fr;grid-template-rows:12px 1fr;gap:4px;padding:6px;border:1px solid rgba(128,128,128,.18);overflow:hidden;}.profile-theme-preview i{display:block;border-radius:2px;}.profile-theme-preview i:first-child{grid-row:1/3}.profile-theme-preview.light-preview{background:#f4f5f7}.light-preview i{background:#fff}.light-preview i:first-child{background:#171821}.profile-theme-preview.dark-preview{background:#11101a}.dark-preview i{background:#272433}.dark-preview i:first-child{background:#0c0b12}.profile-theme-preview.system-preview{background:linear-gradient(135deg,#f4f5f7 50%,#11101a 50%)}.system-preview i{background:rgba(128,128,128,.35)}
@media(max-width:760px){.profile-layout{grid-template-columns:1fr}.profile-identity-card{position:static}.profile-theme-options{grid-template-columns:1fr}.profile-theme-preview{height:74px}}
.brand-color-inputs{display:flex;align-items:center;gap:12px}.brand-color-inputs input[type=color]{width:52px!important;height:42px;padding:3px!important;cursor:pointer}.brand-color-inputs input[type=text]{width:130px!important;font-family:var(--font-m)}.color-presets{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.color-presets button{width:26px;height:26px;border-radius:50%;border:2px solid transparent;background:var(--preset-color);cursor:pointer;box-shadow:0 0 0 1px var(--border);transition:transform .15s,border-color .15s}.color-presets button:hover{transform:translateY(-2px)}.color-presets button.active{border-color:var(--text-1)}

/* Workspace detail */
.workspace-detail-page{max-width:1296px;width:100%;margin:0 auto;}.workspace-breadcrumb{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--text-3);margin-bottom:12px;}.workspace-breadcrumb a{color:var(--lapis);text-decoration:none;}.workspace-breadcrumb strong{font-weight:600;color:var(--text-2);}
.workspace-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px 24px;margin-bottom:16px;}.workspace-hero-main{display:flex;align-items:center;gap:15px;min-width:0;}.workspace-logo{width:58px;height:58px;border-radius:15px;object-fit:cover;flex-shrink:0;border:1px solid var(--border);}.workspace-logo-fallback{display:flex;align-items:center;justify-content:center;background:var(--saffron-tint);color:var(--saffron-dark);font-size:20px;font-weight:800;}.workspace-hero-copy{min-width:0;}.workspace-status{display:flex;align-items:center;gap:6px;color:var(--emerald);font-size:11.5px;font-weight:750;margin-bottom:3px;}.workspace-status i{width:6px;height:6px;border-radius:50%;background:var(--emerald);}.workspace-hero h1{font-family:var(--font-d);font-size:26px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.workspace-hero p{font-size:13.5px;color:var(--text-3);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.workspace-hero-actions{display:flex;gap:9px;flex-shrink:0;}.workspace-hero-actions .icon{width:14px;height:14px;}
.workspace-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:17px;}.workspace-metrics>.card{padding:16px 18px;}.workspace-metrics span,.workspace-metrics strong,.workspace-metrics small{display:block;}.workspace-metrics span{font-size:12px;color:var(--text-3);font-weight:650;}.workspace-metrics strong{font-family:var(--font-d);font-size:25px;margin-top:5px;}.workspace-metrics small{font-size:11.5px;color:var(--text-3);margin-top:3px;}.workspace-metric-redirect{position:relative;padding-right:48px!important}.workspace-metric-redirect-icon{position:absolute;right:16px;top:15px;width:18px;height:18px;fill:none;stroke:var(--text-3);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:color .18s ease,transform .18s ease}.workspace-metric-redirect:hover .workspace-metric-redirect-icon{color:var(--saffron);transform:translate(2px,-2px)}.mini-progress{height:4px;background:var(--border-soft);border-radius:4px;margin-top:8px;overflow:hidden;}.mini-progress i{display:block;height:100%;background:var(--emerald);border-radius:4px;}
.workspace-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:18px;overflow-x:auto;}.workspace-tabs button{border:0;background:none;color:var(--text-3);padding:10px 13px;font:inherit;font-size:13.5px;font-weight:650;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;}.workspace-tabs button[aria-selected=true]{color:var(--text-1);border-bottom-color:var(--saffron);}.workspace-tabs button span{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;margin-left:4px;padding:0 4px;border-radius:9px;background:var(--paper-alt);font-size:10px;}
.workspace-panel{display:none;}.workspace-panel.active{display:block;}.workspace-overview-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.75fr);gap:18px;}.workspace-side-stack{display:flex;flex-direction:column;gap:18px;}.workspace-section-card,.workspace-collection-card{padding:21px;}.workspace-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--border-soft);}.workspace-card-head h3{font-size:16.5px;}.workspace-card-head p{font-size:12.5px;color:var(--text-3);margin-top:2px;}
.workspace-activity-item{display:flex;align-items:center;gap:10px;padding:11px 8px;margin:0 -8px;border-bottom:1px solid var(--border-soft);cursor:pointer;transition:background 0.15s ease,padding 0.15s ease;border-radius:8px;}.workspace-activity-item:hover{background:var(--paper-alt);}.workspace-activity-item:last-child{border-bottom:0;}.activity-kind{width:31px !important;height:31px !important;border-radius:8px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;flex-shrink:0 !important;padding:0 !important;background:var(--paper-alt);color:var(--text-3);}.activity-kind .icon{width:14px !important;height:14px !important;display:block !important;margin:0 !important;padding:0 !important;}.workspace-activity-item>div{flex:1;min-width:0;}.workspace-activity-item strong,.workspace-activity-item span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.workspace-activity-item strong{font-size:13.5px;}.workspace-activity-item span{font-size:11.5px;color:var(--text-3);margin-top:2px;}.workspace-activity-item time,.workspace-data-row time{font-size:11.5px;color:var(--text-3);white-space:nowrap;}
.health-score{font-size:10.5px;font-weight:750;padding:3px 7px;border-radius:var(--r-pill);background:var(--emerald-tint);color:var(--emerald);}.health-score.warning{background:var(--saffron-tint);color:var(--saffron-dark);}.health-list{list-style:none;padding:7px 0 0;margin:0;}.health-list li{display:flex;align-items:flex-start;gap:8px;padding:8px 0;border-bottom:1px solid var(--border-soft);font-size:12.5px;color:var(--text-2);}.health-list li:last-child{border-bottom:0}.health-list i{width:6px;height:6px;border-radius:50%;background:var(--saffron);margin-top:5px;flex-shrink:0;}.health-good{display:flex;align-items:center;gap:10px;padding-top:16px;}.health-good>span{width:30px;height:30px;border-radius:50%;background:var(--emerald-tint);color:var(--emerald);display:flex;align-items:center;justify-content:center;font-weight:800;}.health-good strong,.health-good p{display:block;}.health-good strong{font-size:13.5px;}.health-good p{font-size:11.5px;color:var(--text-3);margin-top:2px;}
.workspace-details-list{margin:7px 0 0;}.workspace-details-list div{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid var(--border-soft);}.workspace-details-list div:last-child{border-bottom:0}.workspace-details-list dt{font-size:12px;color:var(--text-3);}.workspace-details-list dd{font-size:12px;color:var(--text-1);font-weight:600;text-align:right;margin:0;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.workspace-empty{text-align:center;padding:52px 20px;}.workspace-empty.compact{padding:38px 20px 22px;}.workspace-empty-icon{width:38px;height:38px;border-radius:50%;margin:0 auto 9px;background:var(--paper-alt);color:var(--text-3);display:flex;align-items:center;justify-content:center;font-weight:800;}.workspace-empty strong,.workspace-empty p{display:block;}.workspace-empty strong{font-size:14.5px;}.workspace-empty p{font-size:12.5px;color:var(--text-3);margin-top:4px;}.workspace-data-list{padding-top:3px;}.workspace-data-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 90px;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border-soft);}.workspace-data-row:last-child{border-bottom:0}.data-row-main{min-width:0;}.data-row-main strong,.data-row-main span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.data-row-main strong{font-size:13.5px;}.data-row-main span{font-size:11.5px;color:var(--text-3);margin-top:2px;}.data-status{width:max-content;font-size:10.5px;font-weight:750;text-transform:uppercase;padding:3px 7px;border-radius:var(--r-pill);background:var(--paper-alt);color:var(--text-2);}.status-done,.status-approved,.status-paid,.status-agency{background:var(--emerald-tint);color:var(--emerald);}.status-pending,.status-in-progress,.status-unpaid,.status-client{background:var(--saffron-tint);color:var(--saffron-dark);}.status-rejected,.status-void{background:var(--danger-tint);color:var(--danger);}
@media(max-width:960px){.workspace-overview-grid{grid-template-columns:1fr}.workspace-side-stack{display:grid;grid-template-columns:1fr 1fr}.workspace-metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.workspace-hero{align-items:flex-start;flex-direction:column}.workspace-hero-actions{width:100%;flex-wrap:wrap}.workspace-hero-actions .btn{flex:1}.workspace-side-stack{grid-template-columns:1fr}.workspace-metrics{grid-template-columns:1fr 1fr}.workspace-data-row{grid-template-columns:minmax(0,1fr) auto}.workspace-data-row time{display:none}}@media(max-width:430px){.workspace-metrics{grid-template-columns:1fr}.workspace-logo{width:48px;height:48px}}

/* Create workspace modal */
body.modal-open{overflow:hidden;}.workspace-modal{display:flex;position:fixed;inset:0;background:rgba(12,11,18,.62);align-items:center;justify-content:center;z-index:1000;padding:20px;backdrop-filter:blur(5px);opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s;}.workspace-modal.open{opacity:1;visibility:visible;}.workspace-modal-dialog{width:100%;max-width:660px;max-height:min(88vh,760px);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 70px rgba(0,0,0,.3);transform:translateY(10px) scale(.985);transition:transform .2s ease;}.workspace-modal.open .workspace-modal-dialog{transform:translateY(0) scale(1);}
.workspace-modal-head{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 26px 18px;background:var(--card);border-bottom:1px solid var(--border-soft);flex-shrink:0;}.workspace-modal-head h2{font-size:21px;}.workspace-modal-close{width:34px;height:34px;border-radius:50%;border:1px solid var(--border);background:var(--paper-alt);color:var(--text-2);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:.15s ease;}.workspace-modal-close .icon{width:15px;height:15px}.workspace-modal-close:hover{background:var(--danger-tint);border-color:var(--danger);color:var(--danger);transform:rotate(4deg)}.workspace-modal-close:focus-visible{outline:2px solid var(--saffron);outline-offset:2px}.workspace-modal-form{padding:24px 26px 26px;overflow-y:auto;min-height:0;scrollbar-width:thin;scrollbar-color:var(--border) transparent;scrollbar-gutter:stable;}.workspace-modal-form::-webkit-scrollbar{width:4px}.workspace-modal-form::-webkit-scrollbar-track{background:transparent}.workspace-modal-form::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}.workspace-modal-form::-webkit-scrollbar-thumb:hover{background:var(--text-3)}@media(max-width:600px){.workspace-modal{padding:10px}.workspace-modal-dialog{max-height:94vh}.workspace-modal-head{padding:18px}.workspace-modal-form{padding:20px 18px}}

/* Global approvals */
.nav-count-badge{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--saffron);color:#241505;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center;}.admin-sidebar.collapsed .nav-count-badge{position:absolute;right:0;top:3px;min-width:14px;height:14px;font-size:7px;padding:0 3px;}
.approvals-page{max-width:1296px;width:100%;margin:0 auto;}.approvals-head{align-items:center}.approval-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px;}.approval-metrics>a{display:flex;align-items:center;gap:12px;padding:17px;text-decoration:none;color:var(--text-1);transition:.15s ease;}.approval-metrics>a:hover,.approval-metrics>a.active{border-color:var(--saffron);transform:translateY(-1px);}.approval-metric-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;}.approval-metric-icon .icon{width:17px;height:17px}.approval-metric-icon.pending{background:var(--saffron-tint);color:var(--saffron-dark)}.approval-metric-icon.approved{background:var(--emerald-tint);color:var(--emerald)}.approval-metric-icon.rejected{background:var(--danger-tint);color:var(--danger)}.approval-metrics strong,.approval-metrics div>span{display:block}.approval-metrics strong{font-family:var(--font-d);font-size:20px}.approval-metrics div>span{font-size:10.5px;color:var(--text-3);margin-top:1px}
.approvals-card{overflow:hidden;}.approvals-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 22px;border-bottom:1px solid var(--border-soft)}.approvals-toolbar h3{font-size:14px}.approvals-toolbar p{font-size:10px;color:var(--text-3);margin-top:2px}.approval-filters{display:flex;gap:8px}.approval-filters select{background:var(--paper-alt);color:var(--text-2);border:1px solid var(--border);border-radius:7px;padding:7px 28px 7px 9px;font:inherit;font-size:10.5px;outline:none}.approval-filters select:focus{border-color:var(--saffron)}.approvals-table th:first-child,.approvals-table td:first-child{padding-left:22px}.approvals-table th:last-child,.approvals-table td:last-child{padding-right:22px}.approval-file{display:flex;align-items:center;gap:10px;min-width:180px}.approval-file>span{width:34px;height:34px;border-radius:8px;background:var(--lapis-tint);color:var(--lapis);display:flex;align-items:center;justify-content:center}.approval-file .icon{width:15px;height:15px}.approval-file strong,.approval-file small,.approvals-table td>a,.approvals-table td>small{display:block}.approval-file strong{font-size:11.5px}.approval-file small,.approvals-table td>small{font-size:9.5px;color:var(--text-3);margin-top:2px}.approvals-table td>a{font-size:11px;color:var(--text-1);font-weight:650;text-decoration:none}.approval-date{font-size:10.5px;color:var(--text-3)}.approval-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:230px}.approval-actions form{display:flex;gap:6px}.approval-actions button,.approval-view{border:1px solid var(--border);border-radius:6px;background:var(--card);padding:6px 8px;font:inherit;font-size:9.5px;font-weight:700;cursor:pointer;text-decoration:none;white-space:nowrap}.approval-view{width:29px;height:29px;padding:0;color:var(--text-2);display:flex;align-items:center;justify-content:center}.approval-view .icon{width:13px;height:13px}.approval-actions .approve-btn{color:var(--emerald);border-color:var(--emerald);background:rgba(16,185,129,0.08);}.approval-actions .reject-btn{color:var(--danger);border-color:var(--danger);background:rgba(239,68,68,0.08);}.approval-actions .pending-btn{color:var(--text-2);border-color:var(--border);background:var(--card);}.approval-actions .pending-btn:hover{color:var(--saffron);border-color:var(--saffron);background:var(--paper-alt);}.approval-actions button:hover,.approval-view:hover{background:var(--paper-alt)}.approvals-empty{text-align:center;padding:62px 20px}.approvals-empty>span{width:44px;height:44px;border-radius:50%;margin:0 auto 11px;background:var(--emerald-tint);color:var(--emerald);display:flex;align-items:center;justify-content:center}.approvals-empty .icon{width:20px;height:20px}.approvals-empty strong,.approvals-empty p{display:block}.approvals-empty strong{font-size:13px}.approvals-empty p{font-size:10.5px;color:var(--text-3);margin:4px 0 14px}@media(max-width:760px){.approval-metrics{grid-template-columns:1fr}.approvals-toolbar{align-items:flex-start;flex-direction:column}.approval-filters{width:100%}.approval-filters select{flex:1;min-width:0}}

/* Global tasks */
.tasks-page{max-width:1296px;width:100%;margin:0 auto}.tasks-head{align-items:center}.task-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:18px}.task-summary{display:flex;align-items:center;gap:11px;padding:15px;text-decoration:none;color:var(--text-1);transition:.15s ease}.task-summary:hover,.task-summary.active{border-color:var(--saffron);transform:translateY(-1px)}.task-summary>span,.task-state-dot{width:9px;height:9px;border-radius:50%;background:var(--text-3);box-shadow:0 0 0 4px var(--paper-alt)}.task-summary.status-in-progress>span,.task-state-dot.status-in-progress{background:var(--lapis)}.task-summary.status-review>span,.task-state-dot.status-review{background:var(--saffron)}.task-summary.status-done>span,.task-state-dot.status-done{background:var(--emerald)}.task-summary strong,.task-summary small{display:block}.task-summary strong{font-family:var(--font-d);font-size:19px}.task-summary small{font-size:10px;color:var(--text-3)}.tasks-card{overflow:hidden}.tasks-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 20px;border-bottom:1px solid var(--border-soft)}.tasks-toolbar h3{font-size:14px}.tasks-toolbar p{font-size:10px;color:var(--text-3);margin-top:2px}.tasks-filters{display:flex;gap:7px}.task-search{display:flex;align-items:center;gap:6px;padding:0 9px;border:1px solid var(--border);border-radius:7px;background:var(--paper-alt)}.task-search .icon{width:13px;height:13px;color:var(--text-3)}.task-search input{width:150px;border:0;outline:0;background:none;color:var(--text-1);font:inherit;font-size:10.5px}.tasks-filters select,.task-status-form select{border:1px solid var(--border);border-radius:7px;background:var(--paper-alt);color:var(--text-2);padding:7px 25px 7px 8px;font:inherit;font-size:10px;outline:none}.task-list{padding:0 20px}.task-list-row{display:grid;grid-template-columns:12px minmax(180px,1fr) 180px 120px 42px;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--border-soft)}.task-list-row:last-child{border-bottom:0}.task-list-copy,.task-workspace{min-width:0}.task-list-copy strong,.task-list-copy span,.task-workspace b,.task-workspace span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-list-copy strong{font-size:11.5px}.task-list-copy span,.task-workspace span{font-size:9.5px;color:var(--text-3);margin-top:2px}.task-workspace{text-decoration:none;color:var(--text-1)}.task-workspace b{font-size:10.5px}.task-list-row time{font-size:9.5px;color:var(--text-3);text-align:right}.task-status-form select.status-in-progress{color:var(--lapis)}.task-status-form select.status-review{color:var(--saffron-dark)}.task-status-form select.status-done{color:var(--emerald)}.tasks-empty{text-align:center;padding:60px 20px}.tasks-empty>span{width:44px;height:44px;margin:0 auto 10px;border-radius:50%;background:var(--saffron-tint);color:var(--saffron-dark);display:flex;align-items:center;justify-content:center}.tasks-empty .icon{width:20px;height:20px}.tasks-empty strong,.tasks-empty p{display:block}.tasks-empty strong{font-size:13px}.tasks-empty p{font-size:10.5px;color:var(--text-3);margin:4px 0 14px}.task-modal-dialog{max-width:560px}.task-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}@media(max-width:900px){.task-summary-grid{grid-template-columns:repeat(2,1fr)}.tasks-toolbar{align-items:flex-start;flex-direction:column}.tasks-filters{width:100%;flex-wrap:wrap}.task-search{flex:1}.task-search input{width:100%}.task-list-row{grid-template-columns:12px minmax(160px,1fr) 140px 110px}.task-list-row time{display:none}}@media(max-width:620px){.task-summary-grid{grid-template-columns:1fr 1fr}.task-list-row{grid-template-columns:12px minmax(0,1fr) 110px}.task-workspace{display:none}.task-list{padding:0 14px}.tasks-filters select{flex:1;min-width:120px}}

/* Global invoices */
.invoices-page{max-width:1296px;width:100%;margin:0 auto}.invoices-head{align-items:center}.invoice-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.invoice-summary{display:flex;align-items:center;gap:12px;padding:17px;text-decoration:none;color:var(--text-1);transition:.15s ease}.invoice-summary:hover,.invoice-summary.active{border-color:var(--saffron);transform:translateY(-1px)}.invoice-summary-icon{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800}.invoice-summary-icon .icon{width:18px;height:18px}.invoice-summary-icon.total{background:var(--lapis-tint);color:var(--lapis)}.invoice-summary-icon.unpaid{background:var(--saffron-tint);color:var(--saffron-dark)}.invoice-summary-icon.paid{background:var(--emerald-tint);color:var(--emerald)}.invoice-summary small,.invoice-summary strong,.invoice-summary em{display:block}.invoice-summary small{font-size:9.5px;color:var(--text-3)}.invoice-summary strong{font-family:var(--font-d);font-size:18px;margin-top:1px}.invoice-summary em{font-style:normal;font-size:9px;color:var(--text-3);margin-top:1px}.invoices-card{overflow:hidden}.invoices-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 20px;border-bottom:1px solid var(--border-soft)}.invoices-toolbar h3{font-size:14px}.invoices-toolbar p{font-size:10px;color:var(--text-3);margin-top:2px}.invoice-filters{display:flex;gap:7px}.invoice-filters select,.invoice-status-form select{border:1px solid var(--border);border-radius:7px;background:var(--paper-alt);color:var(--text-2);padding:7px 25px 7px 8px;font:inherit;font-size:10px;outline:none}.invoice-table th:first-child,.invoice-table td:first-child{padding-left:20px}.invoice-table th:last-child,.invoice-table td:last-child{padding-right:20px}.invoice-cell{display:flex;align-items:center;gap:10px;min-width:190px}.invoice-cell>span{width:34px;height:34px;border-radius:8px;background:var(--saffron-tint);color:var(--saffron-dark);display:flex;align-items:center;justify-content:center}.invoice-cell .icon{width:15px;height:15px}.invoice-cell strong,.invoice-cell small,.invoice-table td>a,.invoice-table td>small{display:block}.invoice-cell strong{font-size:11.5px}.invoice-cell small,.invoice-table td>small{font-size:9px;color:var(--text-3);margin-top:2px}.invoice-table td>a{font-size:10.5px;color:var(--text-1);font-weight:650;text-decoration:none}.invoice-amount{font-size:11px;white-space:nowrap}.invoice-date{font-size:9.5px;color:var(--text-3);white-space:nowrap}.invoice-status-form select.status-unpaid{color:var(--saffron-dark)}.invoice-status-form select.status-paid{color:var(--emerald)}.invoice-status-form select.status-void{color:var(--danger)}.invoices-empty{text-align:center;padding:62px 20px}.invoices-empty>span{width:46px;height:46px;border-radius:50%;margin:0 auto 11px;background:var(--saffron-tint);color:var(--saffron-dark);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800}.invoices-empty strong,.invoices-empty p{display:block}.invoices-empty strong{font-size:13px}.invoices-empty p{font-size:10.5px;color:var(--text-3);margin:4px 0 14px}.invoice-modal-dialog{max-width:560px}.invoice-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}@media(max-width:850px){.invoices-toolbar{align-items:flex-start;flex-direction:column}.invoice-filters{width:100%;flex-wrap:wrap}.invoice-filters .task-search{flex:1}.invoice-filters .task-search input{width:100%}}@media(max-width:650px){.invoice-summary-grid{grid-template-columns:1fr}.invoice-filters select{flex:1;min-width:120px}}

.invoice-cell>span{flex:0 0 34px}.invoice-cell>div{min-width:0;flex:1}.invoice-cell .icon{width:16px;height:16px;flex-shrink:0}

/* Table */
.table-wrap{overflow-x:auto;}
table{width:100%; border-collapse:collapse; font-size:13.5px;}
thead th{
  text-align:left; font-size:11px; text-transform:uppercase; letter-spacing:.05em; color:var(--text-3);
  padding:12px 16px; border-bottom:1px solid var(--border); white-space:nowrap; font-weight:700;
}
tbody td{padding:14px 16px; border-bottom:1px solid var(--border-soft); vertical-align:middle;}
tbody tr:hover{background:var(--paper-alt);}
.cell-user{display:flex; align-items:center; gap:11px;}
.cell-user b{font-size:13.5px; display:block;}
.cell-user span{font-size:12px; color:var(--text-3);}
.row-actions{display:flex; gap:6px; opacity:.85;}

.toolbar{display:flex; align-items:center; gap:10px; margin-bottom:18px; flex-wrap:wrap;}
.toolbar .grow{flex:1; min-width:180px;}
.filter-chip{
  display:inline-flex; align-items:center; gap:6px; padding:8px 13px; border-radius:var(--r-pill);
  border:1px solid var(--border); font-size:12.5px; font-weight:600; color:var(--text-2); background:var(--card);
}
.filter-chip.active{background:var(--ink); color:var(--text-inv); border-color:var(--ink);}
.pagination{display:flex; align-items:center; justify-content:space-between; padding-top:16px; font-size:12.5px; color:var(--text-2);}
.pg-btns{display:flex; gap:6px;}
.pg-btns button{width:30px; height:30px; border-radius:var(--r-sm); border:1px solid var(--border); background:var(--card); color:var(--text-2); font-size:12.5px;}
.pg-btns button.active{background:var(--ink); color:#fff; border-color:var(--ink);}

/* ============================================================
   INBOX / MESSAGING UI (shared pattern, admin + client)
   ============================================================ */
.inbox-wrap{display:grid; grid-template-columns:210px 320px 1fr; gap:0; height:calc(100vh - 250px); min-height:560px; border:1px solid var(--border); border-radius:var(--r-md); overflow:hidden; background:var(--card);}
.inbox-folders{background:var(--paper-alt); border-right:1px solid var(--border); padding:18px 12px;}
.inbox-folders .btn{margin-bottom:16px;}
.folder-item{display:flex; align-items:center; gap:10px; padding:9px 10px; border-radius:var(--r-sm); font-size:13px; font-weight:500; color:var(--text-2); margin-bottom:2px;}
.folder-item.active{background:var(--card); color:var(--text-1); box-shadow:var(--shadow-1);}
.folder-item .count{margin-left:auto; font-size:11px; color:var(--text-3); font-weight:700;}
.inbox-list{border-right:1px solid var(--border); overflow-y:auto;}
.inbox-list-head{padding:14px 16px; border-bottom:1px solid var(--border);}
.inbox-search{display:flex; align-items:center; gap:8px; background:var(--paper-alt); border-radius:var(--r-pill); padding:8px 12px; border:1px solid var(--border); margin-bottom:10px;}
.inbox-search input{border:none; background:transparent; outline:none; font-size:13px; width:100%;}
.inbox-filters{display:flex; gap:6px; flex-wrap:wrap;}
.mini-chip{font-size:11px; font-weight:700; padding:4px 9px; border-radius:var(--r-pill); border:1px solid var(--border); color:var(--text-2);}
.mini-chip.active{background:var(--ink); color:#fff; border-color:var(--ink);}
.thread-item{display:flex; gap:11px; padding:13px 16px; border-bottom:1px solid var(--border-soft); position:relative;}
.thread-item:hover{background:var(--paper-alt); cursor:pointer;}
.thread-item.selected{background:var(--saffron-tint);}
.thread-item.unread::before{content:""; position:absolute; left:5px; top:22px; width:6px; height:6px; border-radius:50%; background:var(--lapis);}
.thread-item .meta{flex:1; min-width:0;}
.thread-item .row1{display:flex; justify-content:space-between; gap:6px;}
.thread-item .row1 b{font-size:13px;}
.thread-item .row1 span{font-size:11px; color:var(--text-3); flex-shrink:0;}
.thread-item p{font-size:12.5px; color:var(--text-2); margin-top:3px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.thread-item.unread p{color:var(--text-1); font-weight:600;}
.thread-tags{display:flex; gap:5px; margin-top:6px;}

.conversation{display:flex; flex-direction:column; min-width:0;}
.conv-head{display:flex; align-items:center; gap:12px; padding:14px 20px; border-bottom:1px solid var(--border);}
.conv-head .info b{font-size:14px; display:block;}
.conv-head .info span{font-size:11.5px; color:var(--text-3);}
.conv-head .acts{margin-left:auto; display:flex; gap:8px;}
.conv-body{flex:1; min-height:0; overflow-y:auto; padding:22px; background:var(--paper); display:flex; flex-direction:column; gap:16px;}
.msg{max-width:62%; display:flex; flex-direction:column; gap:5px;}
.msg.in{align-self:flex-start;}
.msg.out{align-self:flex-end; align-items:flex-end;}
.msg .bubble{padding:11px 14px; border-radius:14px; font-size:13.5px; line-height:1.55;}
.msg.in .bubble{background:#fff; border:1px solid var(--border); border-bottom-left-radius:3px;}
.msg.out .bubble{background:var(--ink); color:var(--text-inv); border-bottom-right-radius:3px;}
.msg .stamp{font-size:10.5px; color:var(--text-3); display:flex; align-items:center; gap:4px; padding:0 3px;}
.msg .stamp .status{display:flex; align-items:center;}
.attach-chip{
  display:flex; align-items:center; gap:10px; background:var(--card); border:1px solid var(--border);
  border-radius:var(--r-sm); padding:9px 12px; font-size:12.5px; max-width:260px;
}
.msg.out .attach-chip{background:var(--ink-soft); border-color:#34364a; color:var(--text-inv);}
.attach-chip .ic{width:30px; height:30px; border-radius:7px; background:var(--saffron-tint); color:var(--saffron-dark); display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.msg.out .attach-chip .ic{background:#34364a; color:var(--saffron);}
.attach-chip .meta small{display:block; color:var(--text-3); font-size:10.5px;}
.msg.out .attach-chip .meta small{color:var(--text-inv-soft);}
.day-sep{align-self:center; font-size:11px; color:var(--text-3); background:var(--paper-alt); padding:4px 12px; border-radius:var(--r-pill);}
.conv-compose{border-top:1px solid var(--border); padding:14px 18px; background:var(--card);}
.compose-attach-row{display:flex; gap:8px; margin-bottom:10px;}
.compose-box{display:flex; align-items:flex-end; gap:10px;}
.compose-box .textarea{flex:1; min-height:44px; max-height:120px;}
.compose-tools{display:flex; gap:6px;}
@media(max-width:960px){.inbox-wrap{grid-template-columns:1fr; height:auto;}
  .inbox-folders,.inbox-list{border-right:none; border-bottom:1px solid var(--border);}
  .inbox-folders{display:flex; gap:6px; overflow-x:auto; padding:12px;}
  .inbox-folders .btn{display:none;}
  .conversation{min-height:520px;}
}

/* Professional inbox */
.inbox-page{max-width:1296px;width:100%;margin:0 auto}.inbox-page-head{margin-bottom:17px}.professional-inbox{grid-template-columns:330px minmax(0,1fr);height:calc(100vh - 116px);min-height:570px}.professional-inbox .inbox-list-head{padding:14px}.professional-inbox .inbox-search{margin-bottom:12px}.professional-inbox .inbox-search .icon{width:14px;height:14px;color:var(--text-3)}.professional-inbox .inbox-search input{color:var(--text-1)}.inbox-list-meta{display:flex;justify-content:space-between;align-items:center;padding:0 3px}.inbox-list-meta strong{font-size:10.5px}.inbox-list-meta span{font-size:9.5px;color:var(--text-3)}.thread-list{overflow-y:auto}.thread-item{text-decoration:none;color:var(--text-1)}.thread-avatar{width:36px;height:36px;border-radius:10px;background:var(--lapis-tint);color:var(--lapis);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;flex-shrink:0}.thread-avatar.large{width:38px;height:38px}.thread-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:6px}.thread-bottom span{font-size:9px;color:var(--text-3)}.thread-bottom b{min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--lapis);color:#fff;display:flex;align-items:center;justify-content:center;font-size:8px}.thread-empty{text-align:center;padding:38px 15px}.thread-empty strong,.thread-empty span{display:block}.thread-empty strong{font-size:11.5px}.thread-empty span{font-size:9.5px;color:var(--text-3);margin-top:3px}.professional-inbox .conversation{height:100%;overflow:hidden}.professional-inbox .conv-head{min-height:67px}.inbox-mobile-back{display:none;width:30px;height:30px;border:1px solid var(--border);border-radius:50%;background:var(--paper-alt);color:var(--text-2);align-items:center;justify-content:center}.inbox-mobile-back .icon{width:14px;height:14px}.professional-inbox .conv-body{min-height:0;background:var(--paper-alt);scrollbar-width:thin;scrollbar-color:var(--border) transparent}.message-author{font-size:9px;color:var(--text-3);padding:0 3px}.professional-inbox .msg.in .bubble{background:var(--card);border-color:var(--border)}.professional-inbox .msg.out .bubble{background:var(--ink);color:var(--text-inv)}.professional-inbox .attach-chip{text-decoration:none;color:inherit}.professional-inbox .attach-chip b{font-size:10.5px}.conversation-empty{margin:auto;text-align:center;padding:35px 20px}.conversation-empty.full{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center}.conversation-empty>span{width:44px;height:44px;border-radius:50%;margin:0 auto 10px;background:var(--lapis-tint);color:var(--lapis);display:flex;align-items:center;justify-content:center}.conversation-empty .icon{width:20px;height:20px}.conversation-empty strong,.conversation-empty p{display:block}.conversation-empty strong{font-size:13px}.conversation-empty p{font-size:10.5px;color:var(--text-3);margin-top:4px}.professional-inbox .conv-compose{padding:12px 14px}.attachment-fields{display:none;grid-template-columns:1fr 180px;gap:8px;margin-bottom:8px}.attachment-fields.open{display:grid}.attachment-fields input{border:1px solid var(--border);border-radius:7px;background:var(--paper-alt);color:var(--text-1);padding:8px 10px;font-size:10.5px;outline:none}.compose-attach{width:38px;height:38px;border:1px solid var(--border);border-radius:8px;background:var(--paper-alt);color:var(--text-2);display:flex;align-items:center;justify-content:center;cursor:pointer;margin-bottom:3px}.compose-attach .icon{width:15px;height:15px}.professional-inbox .compose-box .textarea{min-height:42px;padding:10px 12px}.compose-send{height:42px;padding:0 14px}.compose-send .icon{width:14px;height:14px}
@media(max-width:760px){.professional-inbox{display:block;height:calc(100vh - 90px);min-height:520px}.professional-inbox .inbox-list{height:100%;border:0}.professional-inbox .conversation{display:none}.professional-inbox.mobile-thread .inbox-list{display:none}.professional-inbox.mobile-thread .conversation{display:flex}.inbox-mobile-back{display:flex}.professional-inbox .msg{max-width:82%}.attachment-fields{grid-template-columns:1fr}.compose-send span{display:none}.compose-send{width:42px;padding:0;}.inbox-page-head{display:none}}

/* compose full page */
.compose-modal{max-width:640px; margin:0 auto;}
.compose-field-row{display:flex; align-items:center; gap:10px; border-bottom:1px solid var(--border); padding:10px 0;}
.compose-field-row label{width:64px; font-size:12.5px; color:var(--text-3); font-weight:600;}
.compose-field-row .input{border:none; padding:4px 0; background:transparent;}

/* ============================================================
   NOTIFICATIONS
   ============================================================ */
.notif-tabs{display:flex; gap:8px; margin-bottom:18px;}
.notif-day{font-size:11.5px; text-transform:uppercase; letter-spacing:.06em; color:var(--text-3); font-weight:700; margin:22px 0 10px;}
.notif-item{display:flex; gap:13px; padding:15px; border-radius:var(--r-md); margin-bottom:8px; background:var(--card); border:1px solid var(--border);}
.notif-item.unread{background:var(--lapis-tint); border-color:#d7e3f3;}
.notif-item .ic{width:38px; height:38px; border-radius:10px; flex-shrink:0; display:flex; align-items:center; justify-content:center;}
.notif-item .body{flex:1;}
.notif-item .body b{font-size:13.5px;}
.notif-item .body p{font-size:12.5px; color:var(--text-2); margin-top:3px;}
.notif-item .body span{font-size:11px; color:var(--text-3); margin-top:6px; display:block;}
.notif-item .acts{display:flex; gap:6px; flex-shrink:0;}

/* ============================================================
   SETTINGS
   ============================================================ */
.settings-layout{display:grid; grid-template-columns:210px 1fr; gap:24px;}
.settings-nav .item{padding:10px 14px; border-radius:var(--r-sm); font-size:13.5px; font-weight:500; color:var(--text-2); margin-bottom:2px; display:flex; align-items:center; gap:10px;}
.settings-nav .item.active{background:var(--card); color:var(--text-1); box-shadow:var(--shadow-1); font-weight:600;}
.settings-panel{display:none;}
.settings-panel.active{display:block;}
.form-row{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
@media(max-width:960px){.settings-layout{grid-template-columns:1fr;} .settings-nav{display:flex; overflow-x:auto; gap:6px;} .form-row{grid-template-columns:1fr;}}
.swatches{display:flex; gap:10px;}
.swatch{width:36px; height:36px; border-radius:10px; border:2px solid transparent; cursor:pointer; position:relative;}
.swatch.selected{border-color:var(--ink);}
.toggle{width:42px; height:24px; border-radius:20px; background:var(--border); position:relative; flex-shrink:0; cursor:pointer;}
.toggle.on{background:var(--emerald);}
.toggle .knob{width:18px; height:18px; border-radius:50%; background:#fff; position:absolute; top:3px; left:3px; transition:left .15s; box-shadow:0 1px 3px rgba(0,0,0,.3);}
.toggle.on .knob{left:21px;}
.setting-row{display:flex; align-items:center; justify-content:space-between; padding:15px 0; border-bottom:1px solid var(--border-soft);}
.setting-row:last-child{border-bottom:none;}
.setting-row .txt b{font-size:13.5px; display:block;}
.setting-row .txt span{font-size:12px; color:var(--text-2);}
.upload-box{border:1.5px dashed var(--border); border-radius:var(--r-md); padding:26px; text-align:center; color:var(--text-2);}

/* ============================================================
   CLIENT PORTAL SHELL
   ============================================================ */
.client-shell{min-height:100vh; background:var(--paper-alt);}
.client-topnav{
  background:var(--card); border-bottom:1px solid var(--border); padding:0 28px; height:68px;
  display:flex; align-items:center; gap:26px; position:sticky; top:0; z-index:20;
}
.client-topnav .brand{display:flex; align-items:center; gap:10px;}
.client-topnav .brand .mark{width:30px; height:30px; border-radius:8px; background:var(--lapis); display:flex; align-items:center; justify-content:center; color:#fff; font-weight:800; font-size:13px;}
.client-topnav .brand b{font-family:var(--font-d); font-size:15.5px; font-weight:600;}
.client-topnav .links{display:flex; gap:6px; margin-left:10px;}
.client-topnav .links a{padding:9px 14px; border-radius:var(--r-pill); font-size:13px; font-weight:600; color:var(--text-2);}
.client-topnav .links a.active{background:var(--ink); color:#fff;}
.client-topnav .right{margin-left:auto; display:flex; align-items:center; gap:14px;}
.client-topnav .code-pill{
  font-family:var(--font-m); font-size:11.5px; background:var(--paper-alt); border:1px solid var(--border);
  padding:6px 11px; border-radius:var(--r-pill); color:var(--text-2);
}
.client-content{max-width:1080px; margin:0 auto; padding:32px 24px 60px;}
@media(max-width:860px){.client-topnav{padding:0 16px;} .client-topnav .links{display:none;}}
.client-mobile-tabbar{
  position:fixed; bottom:0; left:0; right:0; background:var(--card); border-top:1px solid var(--border);
  display:none; z-index:40;
}
@media(max-width:860px){.client-mobile-tabbar{display:flex;} .client-content{padding-bottom:90px;}}
.client-mobile-tabbar .t{flex:1; display:flex; flex-direction:column; align-items:center; gap:3px; padding:10px 0; font-size:10.5px; color:var(--text-3); font-weight:600;}
.client-mobile-tabbar .t.active{color:var(--ink);}

.client-hero{
  background:var(--ink); border-radius:var(--r-lg); padding:44px 40px; color:var(--text-inv);
  position:relative; overflow:hidden; margin-bottom:28px;
}
.client-hero .eyebrow{color:var(--saffron);}
.client-hero h1{color:#fff; font-size:30px; margin-top:12px; max-width:520px; font-weight:500;}
.client-hero p{color:var(--text-inv-soft); margin-top:12px; max-width:460px; font-size:13.5px; line-height:1.7;}
.access-entry{
  margin-top:24px; display:flex; gap:10px; max-width:420px; position:relative; z-index:2;
}
.access-entry input{
  flex:1; font-family:var(--font-m); letter-spacing:.14em; font-size:15px; text-transform:uppercase;
  padding:13px 16px; border-radius:var(--r-sm); border:1px solid #34364a; background:#1a1c27; color:#fff;
}
.access-entry input::placeholder{color:#565873; letter-spacing:.08em;}

.status-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:26px;}
@media(max-width:760px){.status-grid{grid-template-columns:1fr;}}
.project-card{padding:20px; display:flex; flex-direction:column; gap:12px;}
.project-card .head{display:flex; justify-content:space-between; align-items:flex-start;}
.project-card .name{font-weight:600; font-size:14.5px;}
.progress-track{height:6px; background:var(--paper-alt); border-radius:6px; overflow:hidden;}
.progress-track .fill{height:100%; background:var(--emerald); border-radius:6px;}
.project-card .foot{display:flex; justify-content:space-between; font-size:11.5px; color:var(--text-2);}

.info-list{display:flex; flex-direction:column; gap:10px;}
.info-item{display:flex; align-items:center; gap:14px; padding:15px 18px;}
.info-item .ic{width:40px; height:40px; border-radius:10px; flex-shrink:0; display:flex; align-items:center; justify-content:center;}
.info-item .body{flex:1;}
.info-item .body b{font-size:13.5px; display:block;}
.info-item .body span{font-size:12px; color:var(--text-2);}

/* profile screens */
.profile-head{display:flex; align-items:center; gap:20px; margin-bottom:24px; flex-wrap:wrap;}
.profile-head .avatar{width:76px; height:76px; font-size:26px;}
.profile-head h2{font-size:22px;}
.profile-head .sub{color:var(--text-2); font-size:13px; margin-top:4px;}
.profile-tabs{display:flex; gap:8px; border-bottom:1px solid var(--border); margin-bottom:22px;}
.profile-tabs .t{padding:11px 4px; font-size:13.5px; font-weight:600; color:var(--text-3); border-bottom:2px solid transparent; margin-right:22px;}
.profile-tabs .t.active{color:var(--text-1); border-color:var(--saffron);}

/* utility */
.flex{display:flex;} .items-center{align-items:center;} .gap-8{gap:8px;} .gap-12{gap:12px;}
.mt-8{margin-top:8px;} .mt-16{margin-top:16px;} .mt-24{margin-top:24px;}
.text-2{color:var(--text-2);} .text-3{color:var(--text-3);}
.w-full{width:100%;}

/* Custom Scrollbars */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: transparent;
  border-top-right-radius: var(--r-md);
  border-bottom-right-radius: var(--r-md);
}
::-webkit-scrollbar-thumb {
  background: var(--border);
  border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--text-3);
}



/* =============================================================
   CLIENT PORTAL STYLING (MATCHING THE HIGH-FIDELITY MOCKUP)
   ============================================================= */
.client-portal-shell {
  display: flex;
  min-height: 100vh;
  background: var(--paper-alt);
  color: var(--text-1);
}

.client-sidebar-left {
  width: 242px;
  background: #0a122c;
  color: var(--text-inv-soft);
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  transition: transform 0.3s ease;
}

.client-sidebar-left .brand {
  padding: 24px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.client-sidebar-left .brand .logo-img {
  width: 32px;
  height: 32px;
  border-radius: 8px;
}

.client-sidebar-left .brand span {
  font-family: var(--font-d);
  font-size: 16px;
  font-weight: 800;
  color: #fff;
}

.client-sidebar-left .brand .brand-accent {
  color: var(--saffron);
  font-weight: 500;
}

.client-sidebar-left .nav-group {
  padding: 20px 12px;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.client-sidebar-left .nav-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-radius: var(--r-sm);
  color: var(--text-inv-soft);
  font-weight: 500;
  font-size: 13.5px;
  transition: all 0.2s ease;
}

.client-sidebar-left .nav-item:hover,
.client-sidebar-left .nav-item.is-active {
  background: rgba(255, 255, 255, 0.05);
  color: #fff;
}

.client-sidebar-left .nav-item.is-active {
  background: var(--saffron-tint, rgba(232, 163, 61, 0.1));
  color: var(--saffron, #e8a33d);
}

.client-sidebar-left .nav-nested-group {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding-left: 16px;
  margin-top: 4px;
  margin-bottom: 8px;
}

.client-sidebar-left .nav-nested-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: var(--r-sm);
  font-size: 12.5px;
  color: rgba(255, 255, 255, 0.5);
  position: relative;
}

.client-sidebar-left .nav-nested-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
}

.client-sidebar-left .nav-nested-item:hover,
.client-sidebar-left .nav-nested-item.is-active {
  color: #fff;
}

.client-sidebar-left .nav-nested-item.is-active::before {
  background: var(--saffron, #e8a33d);
}

.client-main-container {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.client-topnav-new {
  height: 68px;
  background: var(--card);
  border-bottom: 1px solid var(--border);
  display: flex;
  align-items: center;
  padding: 0 28px;
  position: sticky;
  top: 0;
  z-index: 20;
}

.client-topnav-new .breadcrumb {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.client-topnav-new .breadcrumb small {
  font-size: 11px;
  color: var(--text-3);
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.05em;
}

.client-topnav-new .breadcrumb strong {
  font-size: 15px;
  color: var(--text-1);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-d);
}

.client-topnav-new .search-bar {
  margin-left: 60px;
  position: relative;
  max-width: 320px;
  width: 100%;
}

.client-topnav-new .search-bar input {
  width: 100%;
  background: var(--paper-alt);
  border: 1px solid var(--border);
  padding: 9px 16px 9px 36px;
  border-radius: var(--r-pill);
  font-size: 13.5px;
  color: var(--text-1);
  outline: none;
}

.client-topnav-new .search-bar svg {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--text-3);
  width: 16px;
  height: 16px;
}

.client-topnav-new .actions {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 20px;
}

.client-topnav-new .notif-btn {
  background: none;
  border: none;
  color: var(--text-2);
  display: flex;
  align-items: center;
  gap: 6px;
  font-weight: 600;
  font-size: 13.5px;
  cursor: pointer;
}

.client-topnav-new .notif-btn svg {
  width: 18px;
  height: 18px;
}

.client-topnav-new .profile-avatar-wrap {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

.client-topnav-new .profile-avatar-wrap img {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  object-fit: cover;
}

.client-topnav-new .profile-avatar-wrap span {
  font-weight: 600;
  font-size: 13.5px;
  color: var(--text-2);
}

.client-page-body {
  display: flex;
  flex: 1;
}

.client-content-area {
  flex: 1;
  padding: 32px 40px;
  min-width: 0;
}

.client-content-area .content-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 28px;
}

.client-content-area .content-header h2 {
  font-size: 26px;
  font-weight: 800;
  font-family: var(--font-d);
  color: var(--text-1);
}

.client-content-area .content-header p {
  color: var(--text-2);
  font-size: 13.5px;
  margin-top: 4px;
}

.client-content-area .content-header .actions {
  display: flex;
  gap: 8px;
}

.assets-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 20px;
  margin-bottom: 40px;
}

.asset-card {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--r-md);
  overflow: hidden;
  box-shadow: var(--shadow-1);
  transition: transform 0.2s, box-shadow 0.2s;
  cursor: pointer;
  display: flex;
  flex-direction: column;
}

.asset-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-2);
}

.asset-card .preview-box {
  height: 110px;
  background: #f8fafc;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid var(--border-soft);
  position: relative;
}

.asset-card .preview-box img {
  max-width: 70%;
  max-height: 70%;
  object-fit: contain;
}

.asset-card .preview-box .doc-icon {
  font-size: 38px;
  color: var(--text-3);
}

.asset-card .preview-box .status-badge {
  position: absolute;
  top: 10px;
  right: 10px;
}

.asset-card .meta-footer {
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.asset-card .meta-footer strong {
  font-size: 13px;
  color: var(--text-1);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.asset-card .meta-footer .row2 {
  display: flex;
  justify-content: space-between;
  font-size: 11.5px;
  color: var(--text-3);
  margin-top: 4px;
}

.folders-block {
  margin-bottom: 28px;
}

.folders-block h4 {
  font-size: 13px;
  text-transform: uppercase;
  color: var(--text-3);
  margin-bottom: 12px;
  letter-spacing: 0.05em;
  font-weight: 600;
}

.folders-list-row {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.folder-badge-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--r-sm);
  color: var(--text-2);
  font-weight: 600;
  font-size: 13px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.folder-badge-btn.is-active,
.folder-badge-btn:hover {
  background: var(--saffron-tint, rgba(232, 163, 61, 0.08));
  border-color: var(--saffron, #e8a33d);
  color: var(--saffron, #e8a33d);
}

.client-sidebar-right {
  width: 300px;
  background: #0d1631;
  color: var(--text-inv-soft);
  border-left: 1px solid rgba(255, 255, 255, 0.05);
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
}

.client-sidebar-right .feed-header {
  padding: 24px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.client-sidebar-right .feed-header h3 {
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  line-height: 1.3;
}

.client-sidebar-right .feed-list {
  flex: 1;
  overflow-y: auto;
  padding: 20px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.feed-item {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.feed-item .icon-wrap {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 11px;
}

.feed-item.approved .icon-wrap {
  background: var(--emerald-tint, rgba(46, 158, 107, 0.15));
  color: var(--emerald, #2e9e6b);
}

.feed-item.pending .icon-wrap {
  background: var(--saffron-tint, rgba(232, 163, 61, 0.15));
  color: var(--saffron, #e8a33d);
}

.feed-item.comment .icon-avatar {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--lapis);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 9px;
  flex-shrink: 0;
}

.feed-item .item-details {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.feed-item .item-details p {
  margin: 0;
  font-size: 12.5px;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.85);
}

.feed-item .item-details p strong {
  color: #fff;
}

.feed-item .item-details span {
  font-size: 11px;
  color: rgba(255, 255, 255, 0.4);
}

.client-feedback-box {
  margin: 24px;
  padding: 20px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: var(--r-md);
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.client-feedback-box h4 {
  font-size: 12px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.5);
  letter-spacing: 0.05em;
  margin: 0;
}

.client-feedback-box p {
  font-size: 13.5px;
  color: #fff;
  margin: 0;
}

.client-feedback-box .btn-block-white {
  width: 100%;
  background: #fff;
  color: #0c0b12;
  border: none;
  font-weight: 600;
  border-radius: var(--r-sm);
  padding: 10px;
  cursor: pointer;
  text-align: center;
  transition: background 0.2s;
}

.client-feedback-box .btn-block-white:hover {
  background: rgba(255, 255, 255, 0.9);
}

/* Gateway PIN Screen */
.pin-gateway-wrapper {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #0a0816;
  padding: 24px;
}

.pin-box {
  width: 100%;
  max-width: 360px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: var(--r-lg);
  padding: 32px 24px;
  text-align: center;
  backdrop-filter: blur(10px);
}

.pin-box .avatar-glow {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: var(--saffron-tint, rgba(232, 163, 61, 0.15));
  color: var(--saffron, #e8a33d);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  margin-bottom: 20px;
  box-shadow: 0 0 20px rgba(232, 163, 61, 0.2);
}

.pin-box h2 {
  font-family: var(--font-d);
  font-size: 20px;
  color: #fff;
  margin-bottom: 8px;
}

.pin-box p {
  font-size: 13.5px;
  color: var(--text-inv-soft);
  margin-bottom: 24px;
}

/* File Modal / Drawer */
.modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(12, 11, 18, 0.6);
  backdrop-filter: blur(4px);
  z-index: 1000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.modal-overlay.open {
  display: flex;
}

.file-modal {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--r-lg);
  width: 100%;
  max-width: 800px;
  max-height: 90vh;
  overflow: hidden;
  box-shadow: var(--shadow-2);
  display: flex;
  flex-direction: column;
}

.file-modal-head {
  padding: 20px 24px;
  border-bottom: 1px solid var(--border);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.file-modal-head h3 {
  font-size: 18px;
  font-family: var(--font-d);
  color: var(--text-1);
}

.file-modal-close {
  background: none;
  border: none;
  font-size: 24px;
  color: var(--text-3);
  cursor: pointer;
}

.file-modal-body {
  flex: 1;
  overflow-y: auto;
  padding: 24px;
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 24px;
}

@media(max-width: 768px) {
  .file-modal-body {
    grid-template-columns: 1fr;
  }
}

.file-modal-preview {
  background: #f8fafc;
  border: 1px solid var(--border-soft);
  border-radius: var(--r-md);
  padding: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 240px;
}

.file-modal-preview img {
  max-width: 100%;
  max-height: 300px;
  object-fit: contain;
}

.file-modal-details {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.file-comments-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 10px;
}

.comment-bubble {
  background: var(--paper-alt);
  padding: 10px 12px;
  border-radius: var(--r-sm);
  font-size: 13px;
}

.comment-bubble strong {
  display: block;
  font-size: 11px;
  color: var(--text-3);
  margin-bottom: 4px;
}

/* Mobile responsive hamburger overrides */
@media (max-width: 860px) {
  .client-sidebar-left {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: 200;
    transform: translateX(-100%);
  }
  
  .client-sidebar-left.open {
    transform: translateX(0);
  }
  
  .client-sidebar-right {
    display: none;
  }
  
  .client-page-body {
    flex-direction: column;
  }
}

/* Sharelimitless client portal theme */
.client-portal-shell{background:var(--paper-alt)}
.client-sidebar-left{width:250px;background:var(--ink);border-right:1px solid var(--ink-softer)}
.client-sidebar-left .brand{height:68px;padding:0 22px;border-bottom:1px solid rgba(255,255,255,.07)}
.client-sidebar-left .brand .logo-img{width:32px;height:32px;object-fit:cover;border-radius:8px}
.client-sidebar-left .nav-group{padding:16px 12px;gap:3px}
.client-sidebar-left .nav-item{padding:10px 12px;border-radius:8px;font-size:13px;position:relative}
.client-sidebar-left .nav-item:hover{background:var(--ink-soft)}
.client-sidebar-left .nav-item.is-active{background:rgba(232,163,61,.12);color:var(--saffron)}
.client-sidebar-left .nav-item.is-active::before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:3px;background:var(--saffron)}
.client-sidebar-left .nav-nested-group{border-left:1px solid var(--ink-softer);margin:3px 0 9px 19px;padding-left:10px}
.client-sidebar-left .nav-nested-item{padding:7px 10px;color:var(--text-inv-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.client-sidebar-left .nav-nested-item::before{display:none}.client-sidebar-left .nav-nested-item.is-active{color:var(--saffron);background:rgba(232,163,61,.08)}
.client-sidebar-left .nav-group>a:nth-of-type(7){display:none}
.client-sidebar-left>div:last-of-type{display:none}
.client-topnav-new{height:68px;padding:0 24px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}
.client-topnav-new .breadcrumb small{color:var(--saffron-dark);font-size:9px;font-weight:800;letter-spacing:.1em}
.client-topnav-new .search-bar input{height:38px;background:var(--paper-alt);border-color:var(--border)}
.client-topnav-new .notif-btn{width:36px;height:36px;border:1px solid var(--border);border-radius:50%;justify-content:center;background:var(--card)}
.client-topnav-new .notif-btn:hover{border-color:var(--saffron);background:var(--saffron-tint);color:var(--saffron-dark)}
.client-topnav-new .notif-btn{font-size:0}.client-topnav-new .profile-avatar-wrap>div{background:var(--saffron)!important;color:#241505!important}
.client-content-area{padding:30px 34px;max-width:1400px;margin:0 auto}.client-content-area .content-header{margin-bottom:22px}.client-content-area .content-header h2{font-size:24px}.client-content-area .content-header p{font-size:12px}
.client-content-area .content-header .btn-primary{box-shadow:0 6px 18px rgba(232,163,61,.2)}
.assets-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px;margin-bottom:32px}.asset-card{border-radius:12px}.asset-card:hover{border-color:var(--saffron);transform:translateY(-3px)}.asset-card .preview-box{height:118px;background:var(--paper-alt)}
.asset-card .preview-box .status-badge{top:9px;right:9px;font-size:9px;letter-spacing:.03em}.asset-card .meta-footer{padding:13px}.asset-card .meta-footer strong{font-size:12px}
.folder-badge-btn{padding:8px 13px;border-radius:var(--r-pill);text-decoration:none;font-size:11.5px}.folder-badge-btn .icon{width:14px;height:14px}
.client-sidebar-right{width:310px;background:var(--ink);border-left:1px solid var(--ink-softer)}.client-sidebar-right .feed-header{padding:20px;border-bottom-color:rgba(255,255,255,.08)}.client-sidebar-right .feed-list{padding:18px 20px;gap:18px}.client-feedback-box{margin:20px;border-color:rgba(255,255,255,.1);background:var(--ink-soft)}.client-feedback-box .btn-block-white{background:var(--saffron);color:#241505}.client-feedback-box .btn-block-white:hover{background:var(--saffron-dark)}
.file-modal{border-radius:16px}.file-modal-head{padding:17px 20px}.file-modal-preview{background:var(--paper-alt)}
.pin-gateway-wrapper{background:var(--ink)}.pin-box{background:var(--ink-soft);border-color:var(--ink-softer)}
.client-sidebar-left,.client-sidebar-right,.client-sidebar-left .nav-group,.client-sidebar-right .feed-list{scrollbar-width:thin;scrollbar-color:var(--saffron) transparent}
@media(max-width:1180px){.client-sidebar-right{display:none}.client-content-area{padding:26px}}
@media(max-width:860px){.client-content-area{padding:20px 16px}.client-topnav-new{padding:0 14px}.client-topnav-new .search-bar{margin-left:18px}.client-topnav-new .profile-avatar-wrap span,.client-content-area .content-header p{display:none}.client-content-area .content-header{gap:14px}.client-content-area .content-header .actions{flex-shrink:0}.assets-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(max-width:520px){.client-topnav-new .search-bar{display:none}.client-content-area .content-header{flex-direction:column}.assets-grid{grid-template-columns:1fr}.client-content-area .content-header h2{font-size:21px}}
.client-mobile-menu{display:none;width:36px;height:36px;border:1px solid var(--border);border-radius:9px;background:var(--paper-alt);color:var(--text-2);align-items:center;justify-content:center;margin-right:10px}.client-mobile-menu .icon{width:17px;height:17px}.client-sidebar-backdrop{display:none;position:fixed;inset:0;border:0;background:rgba(8,7,13,.58);backdrop-filter:blur(2px);z-index:190}.client-feed-empty{padding:24px 8px;text-align:center;color:rgba(255,255,255,.45);font-size:11px}
@media(max-width:860px){.client-mobile-menu{display:flex}.client-sidebar-backdrop.open{display:block}.client-sidebar-left.open{box-shadow:14px 0 40px rgba(0,0,0,.35)}}

/* Portal action dialogs and feedback */
.portal-dialog-backdrop{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(8,7,13,.68);backdrop-filter:blur(5px);opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s ease}.portal-dialog-backdrop.open{opacity:1;visibility:visible}.portal-dialog{position:relative;width:min(460px,100%);padding:28px;background:var(--card);border:1px solid var(--border);border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.28);transform:translateY(10px) scale(.98);transition:transform .18s ease}.portal-dialog-backdrop.open .portal-dialog{transform:none}.portal-dialog-close{position:absolute;right:16px;top:14px;width:34px;height:34px;border:1px solid var(--border);border-radius:50%;background:var(--paper-alt);color:var(--text-3);font-size:21px;line-height:1;cursor:pointer}.portal-dialog-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:18px;border-radius:13px;background:var(--success-tint);color:var(--success);font-size:20px;font-weight:800}.portal-dialog.is-reject .portal-dialog-icon{background:var(--danger-tint);color:var(--danger)}.portal-dialog h3{margin:0 0 7px;color:var(--text-1);font-family:var(--font-d);font-size:21px}.portal-dialog>p{margin:0 0 20px;color:var(--text-3);font-size:13px;line-height:1.55}.portal-dialog label{display:block;margin-bottom:7px;color:var(--text-2);font-size:12px;font-weight:700}.portal-dialog label span{color:var(--text-3);font-weight:500}.portal-dialog textarea{box-sizing:border-box;width:100%;min-height:105px;resize:vertical;padding:12px 13px;border:1px solid var(--border);border-radius:10px;background:var(--paper);color:var(--text-1);font:inherit;font-size:13px;outline:none}.portal-dialog textarea:focus{border-color:var(--saffron);box-shadow:0 0 0 3px rgba(232,163,61,.12)}.portal-dialog-error{min-height:18px;margin-top:7px;color:var(--danger);font-size:11.5px}.portal-dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}.portal-dialog.is-reject .portal-dialog-actions .btn-primary{background:var(--danger);border-color:var(--danger);color:#fff}.btn:disabled,.btn-block-white:disabled{cursor:not-allowed;opacity:.68}.btn.is-loading{pointer-events:none}.file-preview-glyph{font-size:64px;filter:grayscale(.15)}
.portal-toast-region{position:fixed;right:22px;bottom:22px;z-index:700;display:flex;width:min(380px,calc(100vw - 32px));flex-direction:column;gap:10px;pointer-events:none}.portal-toast{display:flex;align-items:center;gap:11px;padding:13px 15px;border:1px solid var(--border);border-radius:12px;background:var(--card);color:var(--text-1);box-shadow:0 14px 40px rgba(0,0,0,.2);font-size:13px;font-weight:600;opacity:0;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease}.portal-toast.show{opacity:1;transform:none}.portal-toast-icon{display:flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:var(--info-tint);color:var(--info);font-size:12px;font-weight:800}.portal-toast-success .portal-toast-icon{background:var(--success-tint);color:var(--success)}.portal-toast-error .portal-toast-icon{background:var(--danger-tint);color:var(--danger)}
.portal-message-toast{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:13px;align-items:center;width:100%;min-height:102px;padding:18px 38px 18px 17px;overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--card);color:var(--text-1);box-shadow:0 20px 55px rgba(15,18,28,.2),0 4px 12px rgba(15,18,28,.08);pointer-events:auto;opacity:0;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease}.portal-message-toast.show{opacity:1;transform:none}.portal-message-toast-avatar{display:flex;width:46px;height:46px;align-items:center;justify-content:center;border-radius:13px;background:var(--saffron-tint);color:var(--saffron-dark);font-size:16px;font-weight:800}.portal-message-toast-copy{display:block;min-width:0}.portal-message-toast-kicker{display:flex;align-items:center;gap:7px;margin-bottom:5px;color:var(--text-3);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.075em}.portal-message-toast-kicker i{width:7px;height:7px;border-radius:50%;background:var(--emerald);box-shadow:0 0 0 3px var(--emerald-tint)}.portal-message-toast-copy strong{display:block;margin-bottom:4px;font-size:13.5px;font-weight:780;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-message-toast-preview{display:block;color:var(--text-2);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-message-toast-open{padding:8px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2,var(--card));color:var(--text-1);font-size:11px;font-weight:750;cursor:pointer}.portal-message-toast-open:hover{border-color:var(--saffron);background:var(--saffron-tint);color:var(--saffron-dark)}.portal-message-toast-close{position:absolute;top:9px;right:9px;width:22px;height:22px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--text-3);font-size:16px;cursor:pointer}.portal-message-toast-close:hover{background:var(--surface-2);color:var(--text-1)}.portal-message-toast-progress{position:absolute;left:0;bottom:0;height:3px;background:var(--saffron);animation:portalMessageProgress 7s linear forwards}@keyframes portalMessageProgress{from{width:100%}to{width:0}}@media(max-width:520px){.portal-toast-region{right:16px;bottom:16px;width:calc(100vw - 32px)}.portal-message-toast{grid-template-columns:40px minmax(0,1fr) auto;gap:10px;min-height:94px;padding:15px 34px 15px 14px}.portal-message-toast-avatar{width:40px;height:40px}.portal-message-toast-open{padding:7px 9px}}
.client-conversation-header{display:flex;align-items:center;gap:11px;min-height:64px;padding:11px 16px;border-bottom:1px solid var(--border);background:var(--card);flex-shrink:0}.client-conversation-avatar{display:flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:11px;background:var(--saffron-tint);color:var(--saffron-dark);font-size:13px;font-weight:800}.client-conversation-heading{display:flex;min-width:0;flex:1;flex-direction:column}.client-conversation-heading strong{color:var(--text-1);font-size:12.5px;font-weight:760;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-conversation-heading span{margin-top:2px;color:var(--text-3);font-size:9.5px}.client-conversation-live{display:flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid var(--border-soft);border-radius:999px;background:var(--paper-alt);color:var(--text-3);font-size:9px;font-weight:700}.client-conversation-live i{width:6px;height:6px;border-radius:50%;background:var(--emerald);box-shadow:0 0 0 3px var(--emerald-tint)}
.client-profile-menu{position:relative}.client-profile-menu .profile-avatar-wrap{border:1px solid transparent;background:transparent;cursor:pointer}.client-profile-dropdown{position:absolute;right:0;top:calc(100% + 10px);z-index:850;width:292px;padding:8px;border:1px solid var(--border);border-radius:15px;background:var(--card);box-shadow:0 20px 55px rgba(15,18,28,.18),0 4px 12px rgba(15,18,28,.08);opacity:0;visibility:hidden;transform:translateY(-6px) scale(.98);transform-origin:top right;transition:.16s ease}.client-profile-menu.open .client-profile-dropdown{opacity:1;visibility:visible;transform:none}.client-profile-dropdown-head{display:flex;align-items:center;gap:11px;padding:10px}.client-profile-dropdown-head>div{display:flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:12px;background:var(--saffron);color:#241505;font-size:12px;font-weight:800}.client-profile-dropdown-head>span{display:flex;min-width:0;flex:1;flex-direction:column}.client-profile-dropdown-head strong{color:var(--text-1);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-profile-dropdown-head small{margin-top:2px;color:var(--text-3);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-profile-dropdown-context{margin:2px 4px 7px;padding:10px 11px;border-radius:10px;background:var(--paper-alt)}.client-profile-dropdown-context small,.client-profile-dropdown-context strong{display:block}.client-profile-dropdown-context small{margin-bottom:3px;color:var(--text-3);font-size:8px;text-transform:uppercase;letter-spacing:.08em}.client-profile-dropdown-context strong{color:var(--text-1);font-size:10px}.client-profile-dropdown nav{padding:5px 0;border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft)}.client-profile-dropdown nav a{display:flex;flex-direction:column;padding:9px 11px;border-radius:9px;text-decoration:none}.client-profile-dropdown nav a:hover{background:var(--paper-alt)}.client-profile-dropdown nav span{color:var(--text-1);font-size:10.5px;font-weight:700}.client-profile-dropdown nav small{margin-top:2px;color:var(--text-3);font-size:8.5px}.client-profile-dropdown form{margin:0;padding-top:5px}.client-profile-dropdown form button{width:100%;padding:9px 11px;border:0;border-radius:9px;background:transparent;color:var(--danger);font:inherit;font-size:10.5px;font-weight:700;text-align:left;cursor:pointer}.client-profile-dropdown form button:hover{background:var(--danger-tint)}@media(max-width:520px){.client-profile-dropdown{position:fixed;top:76px;right:12px;left:12px;width:auto}}
@media(max-width:520px){.portal-dialog{padding:24px 20px}.portal-dialog-actions{flex-direction:column-reverse}.portal-dialog-actions .btn{width:100%}.portal-toast-region{right:16px;bottom:16px}}

/* Professional file preview */
.file-modal-kicker{display:block;margin-bottom:3px;color:var(--saffron-dark);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.file-modal-preview{padding:0;overflow:hidden;min-height:330px;background:var(--paper-alt)}.file-modal-preview>img{width:100%;height:100%;min-height:330px;max-height:520px;object-fit:contain}.file-pdf-preview{display:block;width:100%;height:480px;border:0;background:#fff}.file-preview-navigation{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}.file-preview-navigation>span{color:var(--text-3);font-size:11px;font-weight:700}.file-metadata{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0;border:1px solid var(--border);border-radius:11px;overflow:hidden}.file-metadata>div{padding:10px 12px;border-bottom:1px solid var(--border-soft)}.file-metadata>div:nth-child(odd){border-right:1px solid var(--border-soft)}.file-metadata>div:last-child{grid-column:1/-1;border-bottom:0;border-right:0}.file-metadata dt{margin-bottom:3px;color:var(--text-3);font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.file-metadata dd{margin:0;color:var(--text-1);font-size:12px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-type-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:330px;color:var(--text-2)}.file-type-preview>strong{font-size:14px}.file-type-preview>span:last-child{color:var(--text-3);font-size:11px}.file-type-icon{display:flex;align-items:center;justify-content:center;width:74px;height:88px;border-radius:9px 9px 12px 12px;background:var(--paper);border:1px solid var(--border);box-shadow:var(--shadow-1);color:var(--text-2);font-family:var(--font-mono);font-size:16px;font-weight:800}.file-type-pdf .file-type-icon{background:#fff1f1;color:#d63838}.file-type-word .file-type-icon{background:#edf5ff;color:#2467c9}.file-type-excel .file-type-icon{background:#edf9f1;color:#198754}.file-type-powerpoint .file-type-icon{background:#fff3ec;color:#d15c29}.file-type-archive .file-type-icon{background:var(--saffron-tint);color:var(--saffron-dark)}
@media(max-width:768px){.file-modal-preview,.file-type-preview{min-height:260px}.file-modal-preview>img{min-height:260px}.file-pdf-preview{height:360px}}

/* Genuine client workspace */
.client-sidebar-right{display:none!important}.client-content-area{max-width:1180px;padding:38px 42px}.client-page-body{display:block}.client-real-overview{display:flex;flex-direction:column;gap:24px}.client-welcome-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:5px 0 3px}.client-eyebrow{display:block;margin-bottom:7px;color:var(--saffron-dark);font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.client-welcome-row h1{margin:0 0 8px;color:var(--text-1);font-family:var(--font-d);font-size:30px;letter-spacing:-.035em}.client-welcome-row p{max-width:680px;margin:0;color:var(--text-3);font-size:13px;line-height:1.6}.client-overview-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.client-stat-card{display:flex;min-height:130px;flex-direction:column;padding:20px;border:1px solid var(--border);border-radius:14px;background:var(--card);color:inherit;text-decoration:none;box-shadow:0 2px 8px rgba(12,14,20,.035);transition:transform .16s ease,border-color .16s ease}.client-stat-card:hover{transform:translateY(-2px);border-color:var(--saffron)}.client-stat-card>span{color:var(--text-3);font-size:11px;font-weight:700}.client-stat-card>strong{margin:9px 0 5px;color:var(--text-1);font-family:var(--font-d);font-size:30px}.client-stat-card>small{margin-top:auto;color:var(--text-3);font-size:10px}.client-stat-card.is-attention{background:linear-gradient(135deg,var(--card),var(--saffron-tint));border-color:rgba(232,163,61,.4)}.client-overview-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);gap:16px}.client-overview-panel{min-width:0;padding:20px;border:1px solid var(--border);border-radius:14px;background:var(--card);box-shadow:0 2px 8px rgba(12,14,20,.035)}.client-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.client-panel-head h2{margin:0;color:var(--text-1);font-size:16px}.client-panel-head a{color:var(--saffron-dark);font-size:11px;font-weight:750;text-decoration:none}.client-real-file-list,.client-task-list{display:flex;flex-direction:column}.client-real-file{display:flex;width:100%;align-items:center;gap:12px;padding:12px 4px;border:0;border-bottom:1px solid var(--border-soft);background:transparent;color:inherit;text-align:left;cursor:pointer}.client-real-file:last-child{border-bottom:0}.client-real-file:hover .client-file-copy strong{color:var(--saffron-dark)}.client-file-extension{display:flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:44px;border:1px solid var(--border);border-radius:8px;background:var(--paper-alt);color:var(--text-2);font-family:var(--font-mono);font-size:9px;font-weight:800}.client-file-copy{min-width:0;flex:1}.client-file-copy strong,.client-file-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-file-copy strong{color:var(--text-1);font-size:12px}.client-file-copy small{margin-top:4px;color:var(--text-3);font-size:9.5px}.client-task-row{display:flex;align-items:flex-start;gap:11px;padding:13px 3px;border-bottom:1px solid var(--border-soft)}.client-task-row:last-child{border-bottom:0}.client-task-row strong,.client-task-row small{display:block}.client-task-row strong{color:var(--text-1);font-size:12px}.client-task-row small{margin-top:4px;color:var(--text-3);font-size:9.5px}.client-task-state{flex:0 0 9px;width:9px;height:9px;margin-top:3px;border-radius:50%;background:var(--text-3)}.client-task-state.state-in_progress,.client-task-state.state-review{background:var(--saffron)}.client-task-state.state-done{background:var(--success)}.client-genuine-empty{padding:38px 12px;text-align:center}.client-genuine-empty strong{color:var(--text-1);font-size:13px}.client-genuine-empty p{margin:6px auto 0;color:var(--text-3);font-size:11px;line-height:1.5}.client-nav-count{margin-left:auto;padding:2px 7px;border-radius:10px;background:rgba(232,163,61,.16);color:var(--saffron);font-size:9px;font-weight:800}
@media(max-width:900px){.client-content-area{padding:28px 24px}.client-overview-grid{grid-template-columns:1fr}.client-overview-stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){.client-content-area{padding:22px 16px}.client-welcome-row{flex-direction:column}.client-welcome-row h1{font-size:25px}.client-overview-stats{grid-template-columns:1fr}.client-stat-card{min-height:112px}.client-real-file .data-status{display:none}}

/* Real file manager view */
.client-view-files .assets-grid,.client-view-approvals .assets-grid{display:flex;flex-direction:column;gap:0;margin:0;border:1px solid var(--border);border-radius:14px;background:var(--card);box-shadow:0 3px 12px rgba(12,14,20,.04);overflow:hidden}.client-view-files .asset-card,.client-view-approvals .asset-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:72px;border:0;border-bottom:1px solid var(--border-soft);border-radius:0;background:var(--card);box-shadow:none;transform:none}.client-view-files .asset-card:last-child,.client-view-approvals .asset-card:last-child{border-bottom:0}.client-view-files .asset-card:hover,.client-view-approvals .asset-card:hover{border-color:var(--border-soft);background:var(--paper-alt);transform:none}.client-view-files .asset-card .preview-box,.client-view-approvals .asset-card .preview-box{display:flex;align-items:center;justify-content:center;width:58px;height:72px;padding:0;background:transparent}.client-view-files .asset-card .preview-box .status-badge,.client-view-approvals .asset-card .preview-box .status-badge{position:absolute;right:18px;top:50%;transform:translateY(-50%)}.client-view-files .asset-card .meta-footer,.client-view-approvals .asset-card .meta-footer{min-width:0;padding:13px 105px 13px 0}.client-view-files .asset-card .meta-footer strong,.client-view-approvals .asset-card .meta-footer strong{display:block;overflow:hidden;color:var(--text-1);font-size:12.5px;text-overflow:ellipsis;white-space:nowrap}.client-view-files .asset-card .meta-footer .row2,.client-view-approvals .asset-card .meta-footer .row2{justify-content:flex-start;gap:8px;margin-top:5px}.client-view-files .asset-card .meta-footer .row2 span,.client-view-approvals .asset-card .meta-footer .row2 span{color:var(--text-3);font-size:10px}.client-view-files .folders-block,.client-view-approvals .folders-block{margin:22px 0 14px}.client-view-approvals .folders-block{display:none}.client-view-files .portal-secondary-files,.client-view-approvals .portal-secondary-files{display:none}.real-file-thumbnail{width:42px!important;height:42px!important;min-height:0!important;border-radius:8px;object-fit:cover!important;border:1px solid var(--border)}.real-file-type{display:flex;align-items:center;justify-content:center;width:38px;height:44px;border:1px solid var(--border);border-radius:7px;background:var(--paper-alt);color:var(--text-2);font-family:var(--font-mono);font-size:8px;font-weight:800;box-shadow:0 2px 5px rgba(12,14,20,.05)}.real-file-type-pdf{background:#fff1f1;color:#c83737}.real-file-type-word{background:#edf5ff;color:#2869bd}.real-file-type-excel{background:#edf9f1;color:#198754}.real-file-type-powerpoint{background:#fff3ec;color:#c65b2d}.real-file-type-archive{background:var(--saffron-tint);color:var(--saffron-dark)}
@media(max-width:620px){.client-view-files .asset-card,.client-view-approvals .asset-card{grid-template-columns:50px minmax(0,1fr)}.client-view-files .asset-card .preview-box,.client-view-approvals .asset-card .preview-box{width:50px}.client-view-files .asset-card .preview-box .status-badge,.client-view-approvals .asset-card .preview-box .status-badge{display:none}.client-view-files .asset-card .meta-footer,.client-view-approvals .asset-card .meta-footer{padding-right:12px}.folders-list-row{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px}}

/* File row alignment correction */
.client-view-files .asset-card,.client-view-approvals .asset-card{grid-template-columns:64px minmax(0,1fr) 130px;padding:0 18px}.client-view-files .asset-card .preview-box,.client-view-approvals .asset-card .preview-box{width:48px}.client-view-files .asset-card .meta-footer,.client-view-approvals .asset-card .meta-footer{padding:14px 0}.real-file-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px}.real-file-row-actions .status-badge{position:static!important;inset:auto!important;transform:none!important;min-width:72px;text-align:center}.real-file-chevron{color:var(--text-3);font-size:24px;font-weight:300;line-height:1}.client-view-files .asset-card:hover .real-file-chevron,.client-view-approvals .asset-card:hover .real-file-chevron{color:var(--saffron-dark)}
@media(max-width:620px){.client-view-files .asset-card,.client-view-approvals .asset-card{grid-template-columns:50px minmax(0,1fr);padding:0 12px}.real-file-row-actions{display:none}}

.file-modal-preview .file-type-preview{width:100%}.file-modal-preview .file-type-preview>span:last-child{max-width:260px;text-align:center;line-height:1.5}.file-modal-details .btn.is-disabled,.file-modal .btn.is-disabled{pointer-events:none;cursor:not-allowed;opacity:.5;background:var(--paper-alt);color:var(--text-3)}

/* Client messaging */
.client-notification-dot{position:absolute;right:-4px;top:-5px;display:flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 4px;border:2px solid var(--card);border-radius:9px;background:var(--danger);color:#fff;font-size:8px;font-weight:800}.client-topnav-new .notif-btn{position:relative;text-decoration:none}.client-messages-page{max-width:900px;margin:0 auto}.client-messages-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.client-messages-head h1{margin:0 0 6px;color:var(--text-1);font-family:var(--font-d);font-size:28px}.client-messages-head p{margin:0;color:var(--text-3);font-size:12px}.client-message-presence{display:flex;align-items:center;gap:7px;color:var(--text-3);font-size:10px;font-weight:650}.client-message-presence>span{width:7px;height:7px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px var(--success-tint)}.client-conversation-card{display:flex;height:calc(100vh - 180px);min-height:350px;flex-direction:column;border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:0 5px 20px rgba(12,14,20,.055);overflow:hidden}.client-conversation-body{flex:1;overflow-y:auto;padding:24px 26px}.client-message-day{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--text-3);font-size:9px;font-weight:700;text-align:center}.client-message-day::before,.client-message-day::after{content:"";height:1px;flex:1;background:var(--border-soft)}.client-message{display:flex;width:fit-content;max-width:min(72%,620px);align-items:flex-start;flex-direction:column;margin:8px 0}.client-message.from-client{align-items:flex-end;margin-left:auto}.client-message-author{margin:0 7px 4px;color:var(--text-3);font-size:9px;font-weight:700}.client-message-bubble{box-sizing:border-box;width:fit-content;max-width:100%;min-width:42px;padding:10px 13px;border:1px solid var(--border);border-radius:5px 14px 14px 14px;background:var(--paper-alt);color:var(--text-1);font-size:12px;line-height:1.5;overflow-wrap:anywhere;white-space:normal}.client-message.from-client .client-message-bubble{border-color:var(--saffron);border-radius:14px 5px 14px 14px;background:var(--saffron);color:#241505}.client-message time{align-self:flex-start;margin:4px 7px 0;color:var(--text-3);font-size:8.5px;line-height:1}.client-message.from-client time{align-self:flex-end}.client-message .msg-media-preview,.client-message .attach-chip{max-width:100%}.client-conversation-empty{display:flex;height:100%;align-items:center;justify-content:center;flex-direction:column;padding:40px;text-align:center}.client-conversation-empty>span{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:13px;border-radius:13px;background:var(--saffron-tint);color:var(--saffron-dark)}.client-conversation-empty strong{color:var(--text-1);font-size:14px}.client-conversation-empty p{max-width:340px;margin:7px 0 0;color:var(--text-3);font-size:11px;line-height:1.5}.client-message-composer{display:flex;align-items:flex-end;gap:10px;padding:14px;border-top:1px solid var(--border);background:var(--paper-alt)}.client-message-composer textarea{box-sizing:border-box;flex:1;min-height:42px;max-height:130px;resize:vertical;padding:11px 13px;border:1px solid var(--border);border-radius:10px;background:var(--card);color:var(--text-1);font:inherit;font-size:12px;outline:none}.client-message-composer textarea:focus{border-color:var(--saffron);box-shadow:0 0 0 3px rgba(232,163,61,.1)}@media(max-width:680px){.client-conversation-body{padding:18px 14px}.client-message{max-width:86%}}
@media(max-width:620px){.client-messages-head{align-items:flex-start;flex-direction:column}.client-message-presence{display:none}.client-conversation-card{height:calc(100vh - 220px);min-height:300px}.client-conversation-body{padding:16px}.client-message{max-width:88%}.client-message-composer{align-items:stretch;flex-direction:column}.client-message-composer .btn{width:100%}}

/* Client project progress */
.client-project-page{display:flex;flex-direction:column;gap:20px}.client-project-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:26px 28px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(135deg,var(--card) 60%,var(--saffron-tint));box-shadow:0 4px 16px rgba(12,14,20,.045)}.client-project-hero h1{margin:0 0 8px;color:var(--text-1);font-family:var(--font-d);font-size:28px;letter-spacing:-.025em}.client-project-hero p{max-width:650px;margin:0;color:var(--text-3);font-size:12px;line-height:1.6}.client-progress-ring{display:flex;align-items:center;justify-content:center;flex:0 0 106px;width:106px;height:106px;border-radius:50%;background:conic-gradient(var(--saffron) var(--project-progress),var(--border-soft) 0);box-shadow:inset 0 0 0 1px rgba(232,163,61,.1)}.client-progress-ring>div{display:flex;align-items:center;justify-content:center;width:82px;height:82px;flex-direction:column;border-radius:50%;background:var(--card)}.client-progress-ring strong{color:var(--text-1);font-family:var(--font-d);font-size:21px}.client-progress-ring span{color:var(--text-3);font-size:8px;text-transform:uppercase}.client-project-summary{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);border-radius:14px;background:var(--card);overflow:hidden}.client-project-summary>div{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-right:1px solid var(--border-soft)}.client-project-summary>div:last-child{border-right:0}.client-project-summary span{color:var(--text-3);font-size:10px;font-weight:700}.client-project-summary strong{color:var(--text-1);font-size:18px}.client-task-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:start}.client-task-column{min-width:0;padding:12px;border:1px solid var(--border);border-radius:13px;background:var(--paper-alt)}.client-task-column>header{display:flex;align-items:center;gap:7px;padding:2px 2px 12px}.client-task-column>header h2{margin:0;flex:1;color:var(--text-2);font-size:11px}.client-task-column>header b{display:flex;align-items:center;justify-content:center;width:21px;height:21px;border-radius:8px;background:var(--card);color:var(--text-3);font-size:9px}.client-stage-dot{width:7px;height:7px;border-radius:50%;background:var(--text-3)}.stage-in_progress .client-stage-dot{background:var(--info)}.stage-review .client-stage-dot{background:var(--saffron)}.stage-done .client-stage-dot{background:var(--success)}.client-stage-tasks{display:flex;flex-direction:column;gap:8px}.client-project-task{padding:13px;border:1px solid var(--border);border-radius:10px;background:var(--card);box-shadow:0 2px 7px rgba(12,14,20,.035)}.client-project-task>strong{display:block;color:var(--text-1);font-size:11.5px;line-height:1.4}.client-project-task>p{display:-webkit-box;margin:7px 0 0;overflow:hidden;color:var(--text-3);font-size:9.5px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:3}.client-project-task>footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:11px;padding-top:9px;border-top:1px solid var(--border-soft)}.client-project-task>footer span{color:var(--text-3);font-size:8px}.client-project-task>footer a{color:var(--saffron-dark);font-size:8px;font-weight:750;text-decoration:none}.client-stage-empty{padding:24px 8px;color:var(--text-3);font-size:9px;text-align:center}.client-project-empty{display:flex;align-items:center;justify-content:center;min-height:230px;flex-direction:column;border:1px dashed var(--border);border-radius:14px;background:var(--card);text-align:center}.client-project-empty>span{display:flex;align-items:center;justify-content:center;width:42px;height:42px;margin-bottom:12px;border-radius:13px;background:var(--success-tint);color:var(--success)}.client-project-empty strong{color:var(--text-1);font-size:13px}.client-project-empty p{margin:6px 0 0;color:var(--text-3);font-size:10px}.client-project-activity{padding:20px;border:1px solid var(--border);border-radius:14px;background:var(--card)}.client-timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}.client-timeline-item{display:flex;gap:11px;padding:12px 2px;border-bottom:1px solid var(--border-soft)}.client-timeline-item>span{flex:0 0 8px;width:8px;height:8px;margin-top:4px;border-radius:50%;background:var(--saffron);box-shadow:0 0 0 4px var(--saffron-tint)}.client-timeline-item strong{color:var(--text-1);font-size:10px}.client-timeline-item p{margin:3px 0;color:var(--text-2);font-size:9.5px;line-height:1.4}.client-timeline-item time{color:var(--text-3);font-size:8px}
@media(max-width:1050px){.client-task-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.client-project-hero{align-items:flex-start;padding:22px;flex-direction:column}.client-progress-ring{width:90px;height:90px;flex-basis:90px}.client-progress-ring>div{width:68px;height:68px}.client-project-summary{grid-template-columns:repeat(2,1fr)}.client-project-summary>div:nth-child(2){border-right:0}.client-project-summary>div:nth-child(-n+2){border-bottom:1px solid var(--border-soft)}.client-task-board,.client-timeline{grid-template-columns:1fr}}

/* Client invoices */
.client-invoices-page{display:flex;flex-direction:column;gap:18px}.client-invoices-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.client-invoices-heading h1{margin:0 0 6px;color:var(--text-1);font-family:var(--font-d);font-size:28px}.client-invoices-heading p{margin:0;color:var(--text-3);font-size:11px}.client-balance-card{display:flex;min-width:230px;flex-direction:column;padding:16px 18px;border:1px solid rgba(232,163,61,.38);border-radius:13px;background:linear-gradient(135deg,var(--card),var(--saffron-tint))}.client-balance-card span,.client-balance-card small{color:var(--text-3);font-size:9px;font-weight:650}.client-balance-card strong{margin:5px 0;color:var(--text-1);font-family:var(--font-d);font-size:21px}.client-invoice-filters{display:flex;gap:4px;padding:4px;border:1px solid var(--border);border-radius:10px;background:var(--card);align-self:flex-start}.client-invoice-filters a{padding:7px 13px;border-radius:7px;color:var(--text-3);font-size:10px;font-weight:700;text-decoration:none}.client-invoice-filters a:hover,.client-invoice-filters a.is-active{background:var(--saffron-tint);color:var(--saffron-dark)}.client-invoice-list{border:1px solid var(--border);border-radius:14px;background:var(--card);box-shadow:0 3px 14px rgba(12,14,20,.04);overflow:hidden}.client-invoice-table-head,.client-invoice-row{display:grid;grid-template-columns:minmax(260px,1.5fr) 130px 150px 110px 64px;align-items:center;gap:14px;padding:0 18px}.client-invoice-table-head{height:38px;border-bottom:1px solid var(--border);background:var(--paper-alt);color:var(--text-3);font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.client-invoice-row{min-height:76px;border-bottom:1px solid var(--border-soft)}.client-invoice-row:last-child{border-bottom:0}.client-invoice-title{display:flex;align-items:center;gap:12px;min-width:0}.client-invoice-title>span{display:flex;align-items:center;justify-content:center;flex:0 0 39px;width:39px;height:44px;border:1px solid var(--border);border-radius:8px;background:var(--paper-alt);color:var(--saffron-dark);font-family:var(--font-mono);font-size:8px;font-weight:800}.client-invoice-title>div{min-width:0}.client-invoice-title strong,.client-invoice-title small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-invoice-title strong{color:var(--text-1);font-size:11.5px}.client-invoice-title small,.client-invoice-row time{margin-top:4px;color:var(--text-3);font-size:9px}.client-invoice-amount{color:var(--text-1);font-size:12px}.client-invoice-status{display:inline-flex;width:max-content;padding:4px 9px;border-radius:12px;font-size:8.5px;font-weight:800}.client-invoice-status.status-unpaid{background:var(--saffron-tint);color:var(--saffron-dark)}.client-invoice-status.status-paid{background:var(--success-tint);color:var(--success)}.client-invoice-status.status-void{background:var(--paper-alt);color:var(--text-3)}.client-invoice-actions{text-align:right}.client-invoice-actions button{border:0;background:transparent;color:var(--saffron-dark);font-size:10px;font-weight:750;cursor:pointer}.client-invoice-empty{display:flex;align-items:center;justify-content:center;min-height:320px;flex-direction:column;border:1px dashed var(--border);border-radius:14px;background:var(--card);text-align:center}.client-invoice-empty>span{display:flex;align-items:center;justify-content:center;width:46px;height:46px;margin-bottom:13px;border-radius:14px;background:var(--saffron-tint);color:var(--saffron-dark);font-size:11px;font-weight:800}.client-invoice-empty strong{color:var(--text-1);font-size:14px}.client-invoice-empty p{margin:6px 0;color:var(--text-3);font-size:10px}.invoice-detail-card{width:min(620px,100%)}.invoice-detail-brand{display:flex;align-items:center;gap:9px;margin-bottom:28px;color:var(--text-1);font-size:12px;font-weight:800}.invoice-detail-brand img{width:28px;height:28px;border-radius:7px}.invoice-detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--border)}.invoice-detail-heading>div>span{color:var(--saffron-dark);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.invoice-detail-heading h2{margin:5px 0;color:var(--text-1);font-size:21px}.invoice-detail-heading small{color:var(--text-3);font-family:var(--font-mono);font-size:9px}.invoice-detail-meta{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}.invoice-detail-meta dt,.invoice-detail-line span,.invoice-detail-total span{margin-bottom:5px;color:var(--text-3);font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.invoice-detail-meta dd{margin:0;color:var(--text-1);font-size:11px;font-weight:700;line-height:1.5}.invoice-detail-meta dd span{color:var(--text-3);font-weight:500}.invoice-detail-line{display:grid;grid-template-columns:1fr auto;gap:20px;padding:15px;border-radius:10px;background:var(--paper-alt)}.invoice-detail-line span,.invoice-detail-line strong{display:block}.invoice-detail-line strong{color:var(--text-1);font-size:11px}.invoice-detail-total{display:flex;align-items:center;justify-content:flex-end;gap:30px;padding:18px 2px;border-bottom:1px solid var(--border)}.invoice-detail-total span{margin:0}.invoice-detail-total strong{color:var(--text-1);font-size:18px}.invoice-detail-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}.invoice-detail-actions>span{max-width:300px;color:var(--text-3);font-size:9px;line-height:1.4;text-align:right}
@media(max-width:900px){.client-invoice-table-head{display:none}.client-invoice-row{grid-template-columns:minmax(0,1fr) 120px 72px}.client-invoice-row>time,.client-invoice-row>.client-invoice-amount{display:none}}@media(max-width:620px){.client-invoices-heading{align-items:stretch;flex-direction:column}.client-balance-card{min-width:0}.client-invoice-filters{width:100%;overflow-x:auto}.client-invoice-filters a{flex:1;text-align:center}.client-invoice-row{grid-template-columns:minmax(0,1fr) auto;padding:0 13px}.client-invoice-row>.client-invoice-status{display:none}.invoice-detail-meta{grid-template-columns:1fr}.invoice-detail-actions{align-items:stretch;flex-direction:column}.invoice-detail-actions>span{text-align:left}}
@media print{body>*{display:none!important}.invoice-detail-backdrop{position:static!important;display:block!important;opacity:1!important;visibility:visible!important;background:#fff!important}.invoice-detail-card{display:block!important;width:100%!important;max-width:none!important;border:0!important;box-shadow:none!important}.invoice-detail-card .portal-dialog-close,.invoice-detail-actions{display:none!important}}
.client-overview-stats{grid-template-columns:repeat(4,1fr)}@media(max-width:1000px){.client-overview-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.client-overview-stats{grid-template-columns:1fr}}

/* Refined billing workspace */
.client-view-invoices{max-width:1120px}.client-invoices-page{gap:14px}.client-billing-hero{display:grid;grid-template-columns:minmax(270px,.8fr) minmax(480px,1.35fr);align-items:stretch;border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:0 4px 18px rgba(12,14,20,.045);overflow:hidden}.client-billing-hero .client-invoices-heading{display:block;padding:25px 26px;border-right:1px solid var(--border-soft);background:linear-gradient(145deg,var(--card),var(--paper-alt))}.client-billing-hero .client-invoices-heading h1{font-size:24px}.client-billing-metrics{display:grid;grid-template-columns:1.25fr .75fr .75fr;align-items:stretch}.client-billing-metrics>div{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:20px;border-right:1px solid var(--border-soft)}.client-billing-metrics>div:last-child{border-right:0}.client-billing-metrics>div.is-primary{background:var(--saffron-tint)}.client-billing-metrics span,.client-billing-metrics small{color:var(--text-3);font-size:8.5px;font-weight:700}.client-billing-metrics strong{margin:6px 0;color:var(--text-1);font-family:var(--font-d);font-size:19px;white-space:nowrap}.client-invoice-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px 10px 17px;border:1px solid var(--border);border-radius:12px;background:var(--card)}.client-invoice-toolbar>div>strong,.client-invoice-toolbar>div>span{display:block}.client-invoice-toolbar>div>strong{color:var(--text-1);font-size:11px}.client-invoice-toolbar>div>span{margin-top:2px;color:var(--text-3);font-size:8.5px}.client-invoice-toolbar .client-invoice-filters{margin:0;border:0;background:var(--paper-alt)}.client-invoice-empty{min-height:230px;padding:34px;border-style:solid;box-shadow:0 3px 14px rgba(12,14,20,.035)}.client-empty-receipt{position:relative;display:flex;width:46px;height:54px;box-sizing:border-box;flex-direction:column;gap:6px;margin-bottom:14px;padding:13px 10px;border:1px solid rgba(232,163,61,.35);border-radius:8px;background:var(--saffron-tint)}.client-empty-receipt::before{content:"Rs";position:absolute;right:-6px;top:-7px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:7px;background:var(--saffron);color:#241505;font-size:7px;font-weight:800}.client-empty-receipt span{height:2px;border-radius:2px;background:rgba(150,97,19,.35)}.client-empty-receipt span:nth-child(2){width:70%}.client-empty-receipt span:nth-child(3){width:45%}.client-invoice-empty p{max-width:420px;line-height:1.6}.client-invoice-empty>a{margin-top:10px;color:var(--saffron-dark);font-size:9.5px;font-weight:750;text-decoration:none}.client-invoice-empty>a:hover{text-decoration:underline}
@media(max-width:980px){.client-billing-hero{grid-template-columns:1fr}.client-billing-hero .client-invoices-heading{border-right:0;border-bottom:1px solid var(--border-soft)}}@media(max-width:650px){.client-billing-metrics{grid-template-columns:1fr}.client-billing-metrics>div{border-right:0;border-bottom:1px solid var(--border-soft)}.client-billing-metrics>div:last-child{border-bottom:0}.client-invoice-toolbar{align-items:stretch;flex-direction:column}.client-invoice-toolbar .client-invoice-filters{width:100%}}
.client-sidebar-left a[href*="view=invoices"]>.icon:not(.invoice-nav-icon){display:none}
.workspace-file-warning{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:16px 0;padding:15px 17px;border-color:rgba(232,163,61,.4);background:var(--saffron-tint)}.workspace-file-warning>div{display:flex;align-items:center;gap:11px}.workspace-file-warning>div>span{display:flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;height:32px;border-radius:10px;background:var(--saffron);color:#241505;font-weight:800}.workspace-file-warning strong,.workspace-file-warning p{display:block;margin:0}.workspace-file-warning strong{color:var(--text-1);font-size:11px}.workspace-file-warning p{margin-top:3px;color:var(--text-3);font-size:9px}@media(max-width:700px){.workspace-file-warning{align-items:stretch;flex-direction:column}.workspace-file-warning form .btn{width:100%}}

/* Client profile and settings */
.client-topnav-new .profile-avatar-wrap{text-decoration:none}.client-settings-page{max-width:1040px;margin:0 auto}.client-settings-heading{margin-bottom:20px}.client-settings-heading h1{margin:0 0 7px;color:var(--text-1);font-family:var(--font-d);font-size:27px}.client-settings-heading p{margin:0;color:var(--text-3);font-size:11px}.client-settings-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:16px;align-items:start}.client-settings-main{display:flex;min-width:0;flex-direction:column;gap:14px}.client-settings-card,.client-settings-aside>section,.client-support-link{border:1px solid var(--border);border-radius:14px;background:var(--card);box-shadow:0 3px 13px rgba(12,14,20,.035)}.client-settings-card{padding:20px}.client-settings-card>header{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--border-soft)}.client-profile-avatar-large,.client-settings-icon{display:flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:var(--saffron);color:#241505;font-size:11px;font-weight:800}.client-settings-icon{background:var(--saffron-tint);color:var(--saffron-dark);font-size:17px}.client-settings-card h2,.client-settings-card p{margin:0}.client-settings-card h2{color:var(--text-1);font-size:14px}.client-settings-card p{margin-top:4px;color:var(--text-3);font-size:9.5px}.client-settings-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.client-settings-fields label{display:flex;flex-direction:column;gap:6px}.client-settings-fields label.is-full{grid-column:1/-1}.client-settings-fields label>span{color:var(--text-2);font-size:9.5px;font-weight:750}.client-settings-fields input,.client-settings-fields textarea{box-sizing:border-box;width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:var(--paper-alt);color:var(--text-1);font:inherit;font-size:11px;outline:none}.client-settings-fields input:focus,.client-settings-fields textarea:focus{border-color:var(--saffron);box-shadow:0 0 0 3px rgba(232,163,61,.1)}.client-settings-fields textarea{resize:vertical}.client-preference-list{display:flex;flex-direction:column}.client-preference-list>label{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 2px;border-bottom:1px solid var(--border-soft);cursor:pointer}.client-preference-list>label:last-child{border-bottom:0}.client-preference-list strong,.client-preference-list span{display:block}.client-preference-list strong{color:var(--text-1);font-size:10.5px}.client-preference-list span{margin-top:3px;color:var(--text-3);font-size:8.5px}.client-preference-list input{position:absolute;opacity:0}.client-preference-list i{position:relative;flex:0 0 34px;width:34px;height:20px;border-radius:12px;background:var(--border);transition:.16s}.client-preference-list i::after{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:.16s}.client-preference-list input:checked+i{background:var(--saffron)}.client-preference-list input:checked+i::after{transform:translateX(14px)}.client-settings-save{display:flex;align-items:center;justify-content:flex-end;gap:14px}.client-settings-save>span{color:var(--success);font-size:9px}.client-settings-aside{display:flex;flex-direction:column;gap:14px}.client-settings-aside>section{padding:18px}.client-settings-aside h3{margin:0;color:var(--text-1);font-size:13px}.client-settings-aside dl{margin:16px 0 0}.client-settings-aside dl>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--border-soft)}.client-settings-aside dl>div:last-child{border-bottom:0}.client-settings-aside dt{color:var(--text-3);font-size:8.5px}.client-settings-aside dd{margin:0;color:var(--text-1);font-size:9px;font-weight:700;text-align:right}.client-security-card .client-settings-icon{margin-bottom:13px}.client-security-card p{margin:7px 0;color:var(--text-3);font-size:9.5px;line-height:1.55}.client-security-card small{color:var(--text-3);font-size:8px}.client-support-link{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;text-decoration:none}.client-support-link strong{color:var(--text-1);font-size:10px}.client-support-link span{color:var(--saffron-dark);font-size:8.5px;font-weight:700}
@media(max-width:850px){.client-settings-layout{grid-template-columns:1fr}.client-settings-aside{display:grid;grid-template-columns:1fr 1fr}.client-support-link{grid-column:1/-1}}@media(max-width:560px){.client-settings-fields,.client-settings-aside{grid-template-columns:1fr}.client-settings-fields label.is-full,.client-support-link{grid-column:auto}.client-settings-save{align-items:stretch;flex-direction:column}.client-settings-save .btn{width:100%}}

.client-theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.client-theme-options label{position:relative;display:flex;min-width:0;flex-direction:column;padding:10px;border:1px solid var(--border);border-radius:10px;cursor:pointer}.client-theme-options input{position:absolute;opacity:0}.client-theme-options label:has(input:checked){border-color:var(--saffron);box-shadow:0 0 0 3px rgba(232,163,61,.1)}.client-theme-options strong{margin-top:8px;color:var(--text-1);font-size:9.5px}.client-theme-options small{margin-top:2px;color:var(--text-3);font-size:7.5px}.client-theme-preview{display:grid;height:46px;grid-template-columns:12px 1fr;grid-template-rows:10px 1fr;gap:3px;padding:5px;border:1px solid #e3e6ea;border-radius:6px;background:#f3f4f6}.client-theme-preview i{display:block;border-radius:2px;background:#fff}.client-theme-preview i:first-child{grid-row:1/3;background:#171821}.client-theme-preview i:nth-child(2){grid-column:2}.client-theme-preview.theme-preview-dark{border-color:#353144;background:#11101a}.client-theme-preview.theme-preview-dark i{background:#242130}.client-theme-preview.theme-preview-dark i:first-child{background:#08070d}.client-theme-preview.theme-preview-system{background:linear-gradient(135deg,#f3f4f6 50%,#11101a 50%)}html[data-theme="dark"] .file-modal-preview{background:var(--paper-alt)}html[data-theme="dark"] .file-pdf-preview{color-scheme:dark}html[data-theme="dark"] .client-sidebar-left{border-color:rgba(255,255,255,.07)}html[data-theme="dark"] .client-topnav-new{background:rgba(27,25,38,.94)}
@media(max-width:560px){.client-theme-options{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Simplified client navigation */
.client-sidebar-left .nav-nested-group{display:none}.client-sidebar-left .nav-group>a{display:flex!important}.client-sidebar-left .nav-group>a[href*="view=overview"]{order:1}.client-sidebar-left .nav-group>a[href*="view=project"]{order:2}.client-sidebar-left .nav-group>a[href*="view=files"]{order:3}.client-sidebar-left .nav-group>a[href*="view=approvals"]{order:4}.client-sidebar-left .nav-group>a[href*="view=messages"]{order:5}.client-sidebar-left .nav-group>a[href*="view=invoices"]{order:6}.client-sidebar-left .nav-item{min-height:42px}.client-sidebar-left .nav-item .client-nav-count{margin-left:auto}.client-sidebar-left .nav-group{padding-top:18px}

/* Refined client header */
.client-topnav-new{height:68px;padding:0 24px;border-bottom-color:var(--border);background:rgba(255,255,255,.96)}.client-topnav-new .breadcrumb{position:relative;gap:1px;padding-left:14px}.client-topnav-new .breadcrumb::before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:3px;border-radius:3px;background:var(--saffron)}.client-topnav-new .breadcrumb small{max-width:240px;overflow:hidden;color:var(--text-3);font-size:8px;font-weight:750;letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap}.client-topnav-new .breadcrumb strong{font-size:14px;font-weight:700}.client-topnav-new .search-bar{max-width:360px;margin-left:48px}.client-topnav-new .actions{gap:10px}.client-topnav-new .notif-btn{width:36px;height:36px;box-sizing:border-box;border:1px solid var(--border);border-radius:10px;background:var(--paper-alt);font-size:0}.client-topnav-new .notif-btn:hover{border-color:var(--saffron);background:var(--saffron-tint)}.client-topnav-new .notif-btn svg{width:16px;height:16px}.client-topnav-new .profile-avatar-wrap{gap:9px;min-height:42px;padding:5px 7px 5px 5px;border:1px solid transparent;border-radius:11px}.client-topnav-new .profile-avatar-wrap:hover{border-color:var(--border);background:var(--paper-alt)}.client-topnav-new .profile-avatar-wrap>div{width:32px!important;height:32px!important;flex:0 0 32px}.client-profile-copy{display:flex!important;min-width:90px;flex-direction:column;gap:1px}.client-topnav-new .client-profile-copy strong{max-width:130px;overflow:hidden;color:var(--text-1);font-size:10px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.client-topnav-new .client-profile-copy small{color:var(--text-3);font-size:7.5px;font-weight:500;line-height:1.2}.client-notification-dot{right:-5px;top:-6px}
html[data-theme="dark"] .client-topnav-new{background:rgba(27,25,38,.96)}
@media(max-width:700px){.client-topnav-new{padding:0 13px}.client-topnav-new .breadcrumb{padding-left:10px}.client-topnav-new .breadcrumb small{max-width:140px}.client-topnav-new .search-bar{display:none}.client-profile-copy{display:none!important}.client-topnav-new .profile-avatar-wrap{padding:4px}.client-topnav-new .actions{gap:7px}}

/* Clear header actions */
.client-topnav-new .notif-btn{width:auto;min-width:98px;padding:0 12px;gap:7px;border-radius:10px;font-size:10px!important;font-weight:700;color:var(--text-2)}.client-topnav-new .client-header-action-label{display:inline!important;color:inherit;font-size:10px;font-weight:700}.client-topnav-new .profile-avatar-wrap{min-height:36px;padding:2px;border-color:transparent;border-radius:50%}.client-topnav-new .profile-avatar-wrap>div{width:34px!important;height:34px!important;flex-basis:34px}.client-topnav-new .profile-avatar-wrap:hover{border-color:var(--saffron);background:var(--saffron-tint)}
@media(max-width:540px){.client-topnav-new .notif-btn{width:36px;min-width:36px;padding:0}.client-topnav-new .client-header-action-label{display:none!important}}
.workspace-publish-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:16px 0;padding:15px 17px}.workspace-publish-bar>div strong,.workspace-publish-bar>div p{display:block;margin:0}.workspace-publish-bar>div strong{font-size:13.5px}.workspace-publish-bar>div p{margin-top:3px;color:var(--text-3);font-size:11.5px}.workspace-publish-bar form{display:flex;align-items:center;gap:8px}.workspace-publish-bar input[type="text"],.workspace-publish-bar select,.workspace-publish-bar input[type="file"]{max-width:180px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--paper-alt);color:var(--text-2);font-size:12.5px}@media(max-width:900px){.workspace-publish-bar{align-items:stretch;flex-direction:column}.workspace-publish-bar form{align-items:stretch;flex-wrap:wrap}.workspace-publish-bar input[type="text"],.workspace-publish-bar select,.workspace-publish-bar input[type="file"]{max-width:none;flex:1}}
.workspace-content-manager{margin:16px 0;padding:18px}.publish-legend{display:flex;gap:6px}.publish-legend span,.publish-state{display:inline-flex !important;align-items:center !important;justify-content:center !important;text-align:center !important;line-height:1 !important;padding:4px 10px;border-radius:10px;font-size:11.5px;font-weight:800}.publish-legend .published,.publish-state.published{background:var(--emerald-tint);color:var(--emerald)}.publish-legend .draft,.publish-state.draft{background:var(--paper-alt);color:var(--text-3)}.workspace-publish-list{border:1px solid var(--border);border-radius:10px;overflow:hidden}.workspace-publish-row{display:grid;grid-template-columns:55px minmax(0,1fr) 100px auto auto auto;align-items:center;gap:11px;min-height:58px;padding:8px 12px;border-bottom:1px solid var(--border-soft)}.workspace-publish-row:last-child{border-bottom:0}.workspace-publish-row>div strong,.workspace-publish-row>div small{display:block}.workspace-publish-row>div strong{font-size:13.5px}.workspace-publish-row>div small{margin-top:3px;color:var(--text-3);font-size:11.5px}.publish-kind{display:flex;align-items:center;justify-content:center;width:48px;height:38px;border-radius:8px;background:var(--lapis-tint);color:var(--lapis);font-family:var(--font-mono);font-size:10.5px;font-weight:800}.publish-kind.task{background:var(--saffron-tint);color:var(--saffron-dark)}.publish-toggle,.publish-archive{padding:8px 12px;border:1px solid var(--border);border-radius:7px;background:var(--card);color:var(--text-2);font-size:11.5px;font-weight:700}.publish-toggle:hover{border-color:var(--saffron);color:var(--saffron-dark)}.publish-archive{color:var(--danger)}@media(max-width:700px){.workspace-publish-row{grid-template-columns:50px minmax(0,1fr) auto}.workspace-publish-row form{grid-column:auto}.publish-state{display:none}}
.workspace-edit-manager,.workspace-archive-manager,.workspace-audit-log{margin:16px 0;padding:18px}.workspace-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.workspace-edit-grid details{border:1px solid var(--border);border-radius:9px;background:var(--paper-alt)}.workspace-edit-grid summary{padding:12px;cursor:pointer;font-size:13.5px;font-weight:700}.workspace-edit-grid summary span{margin-right:8px;color:var(--saffron-dark);font-size:10.5px}.workspace-edit-grid form{display:grid;grid-template-columns:1fr 1fr 130px auto;gap:8px;padding:12px;border-top:1px solid var(--border)}.workspace-edit-grid label{color:var(--text-3);font-size:11.5px}.workspace-edit-grid input,.workspace-edit-grid select{display:block;width:100%;margin-top:4px;padding:8px 10px;border:1px solid var(--border);border-radius:7px;background:var(--card);color:var(--text-1);font-size:12.5px}.archive-file-row{display:flex;align-items:center;justify-content:space-between;padding:10px 2px;border-bottom:1px solid var(--border-soft)}.archive-file-row strong,.archive-file-row small{display:block}.archive-file-row strong{font-size:13.5px}.archive-file-row small{color:var(--text-3);font-size:11.5px}.audit-log-list{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.audit-log-list>div{display:flex;gap:9px;padding:10px 2px;border-bottom:1px solid var(--border-soft)}.audit-kind{align-self:flex-start;padding:4px 8px;border-radius:7px;background:var(--paper-alt);font-size:10.5px;font-weight:800}.audit-log-list p{font-size:12.5px}.audit-log-list p small{display:block;margin-top:3px;color:var(--text-3);font-size:10.5px}@media(max-width:800px){.workspace-edit-grid,.audit-log-list{grid-template-columns:1fr}.workspace-edit-grid form{grid-template-columns:1fr 1fr}}

/* Responsive viewport-fitting inbox view */
body.inbox-body {
  overflow: hidden !important;
}
body.inbox-body .admin-shell {
  height: 100vh !important;
  height: 100dvh !important;
  overflow: hidden !important;
}
body.inbox-body .admin-main {
  height: 100vh !important;
  height: 100dvh !important;
  overflow: hidden !important;
}
body.inbox-body .admin-content {
  height: calc(100vh - 67px) !important;
  height: calc(100dvh - 67px) !important;
  overflow: hidden !important;
  padding: 24px !important;
  box-sizing: border-box !important;
}
body.inbox-body .inbox-page {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}
@media (min-width: 761px) {
  body.inbox-body .professional-inbox {
    display: grid !important;
    grid-template-columns: 330px minmax(0, 1fr) !important;
    grid-template-rows: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    flex: 1 !important;
  }
}

@media (max-width: 760px) {
  body.inbox-body .professional-inbox {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    min-height: 0 !important;
    flex: 1 !important;
  }
  body.inbox-body .professional-inbox .inbox-list,
  body.inbox-body .professional-inbox .conversation {
    flex: 1 !important;
    height: 100% !important;
    min-height: 0 !important;
  }
  .admin-content {
    padding: 12px !important;
  }
}

@media (max-width: 560px) {
  /* Header Resizing */
  .professional-inbox .conv-head {
    padding: 10px 12px !important;
    gap: 8px !important;
    min-height: 56px !important;
  }
  .professional-inbox .conv-head .thread-avatar.large {
    width: 34px !important;
    height: 34px !important;
    font-size: 13px !important;
  }
  .professional-inbox .conv-head .info b {
    font-size: 12.5px !important;
  }
  .professional-inbox .conv-head .info span {
    font-size: 10px !important;
  }
  .professional-inbox .conv-head .acts .btn {
    width: 30px !important;
    height: 30px !important;
    padding: 0 !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
  }
  .professional-inbox .conv-head .acts .btn .btn-text {
    display: none !important;
  }
  .professional-inbox .conv-head .acts .btn svg {
    margin: 0 !important;
    width: 13px;
    height: 13px;
  }
  .professional-inbox .inbox-mobile-back {
    width: 28px !important;
    height: 28px !important;
  }
  .professional-inbox .inbox-mobile-back svg {
    width: 13px !important;
    height: 13px !important;
  }

  /* Messages List Resizing */
  .professional-inbox .conv-body {
    padding: 12px 14px !important;
    gap: 10px !important;
  }
  .professional-inbox .msg {
    max-width: 82% !important;
  }
  .professional-inbox .msg .bubble {
    padding: 8px 12px !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
  }
  .professional-inbox .msg.in .bubble {
    border-radius: 12px 12px 12px 4px !important;
  }
  .professional-inbox .msg.out .bubble {
    border-radius: 12px 12px 4px 12px !important;
  }
  .professional-inbox .message-author {
    font-size: 9.5px !important;
    margin-bottom: 1px !important;
  }
  .professional-inbox .msg .stamp {
    font-size: 9px !important;
    margin-top: 1px !important;
  }
  .professional-inbox .day-sep {
    font-size: 9.5px !important;
    padding: 2px 8px !important;
    margin: 4px 0 !important;
  }

  /* File Attachments Resizing */
  .professional-inbox .attach-chip {
    padding: 8px 10px !important;
    gap: 10px !important;
    max-width: 240px !important;
  }
  .professional-inbox .attach-chip .ic {
    width: 28px !important;
    height: 28px !important;
  }
  .professional-inbox .attach-chip .ic svg {
    width: 13px !important;
    height: 13px !important;
  }
  .professional-inbox .attach-chip b {
    font-size: 11px !important;
  }
  .professional-inbox .attach-chip small {
    font-size: 9px !important;
  }

  /* Compose Area Resizing */
  .professional-inbox .conv-compose {
    padding: 10px 12px !important;
  }
  .professional-inbox .compose-box {
    padding: 6px 10px !important;
    border-radius: 10px !important;
  }
  .professional-inbox .compose-box .textarea {
    padding: 6px !important;
    font-size: 12px !important;
    min-height: 20px !important;
  }
  .professional-inbox .compose-attach {
    width: 30px !important;
    height: 30px !important;
  }
  .professional-inbox .compose-attach svg {
    width: 14px !important;
    height: 14px !important;
  }
  .professional-inbox .compose-send {
    width: 30px !important;
    height: 30px !important;
    border-radius: 6px !important;
  }
  .professional-inbox .compose-send svg {
    width: 13px !important;
    height: 13px !important;
  }
}

/* WhatsApp message read/unread ticks */
.ticks {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  margin-left: 5px;
  line-height: 1;
  letter-spacing: -1px;
  vertical-align: middle;
}
.ticks.sent {
  color: var(--text-3);
  opacity: 0.75;
}
.ticks.read {
  color: #34B7F1 !important; /* WhatsApp blue */
}
.client-message time {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 2px;
}
.client-message time .ticks {
  font-size: 11px;
  font-weight: 800;
  margin-left: 4px;
}

/* Professional Chat Textarea Adjustments */
.professional-inbox .compose-box .textarea {
  resize: none !important;
  border: 1px solid var(--border) !important;
  border-radius: 8px !important;
  background: var(--paper-alt) !important;
  color: var(--text-1) !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
  outline: none !important;
  box-sizing: border-box !important;
}
.professional-inbox .compose-box .textarea:focus {
  border-color: var(--saffron) !important;
  box-shadow: 0 0 0 3px rgba(232, 163, 61, 0.15) !important;
  background: var(--card) !important;
  outline: none !important;
}
.client-message-composer textarea {
  resize: none !important;
  outline: none !important;
}

.ticks.sending {
  color: var(--text-3);
  opacity: 0.6;
  animation: tick-pulse 1s infinite alternate;
}
@keyframes tick-pulse {
  from { opacity: 0.4; }
  to { opacity: 0.8; }
}

/* Autocomplete Dropdown Styles */
.file-autocomplete-dropdown {
  position: absolute;
  bottom: calc(100% - 10px);
  left: 14px;
  right: 14px;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 10px;
  box-shadow: var(--shadow-2);
  max-height: 180px;
  overflow-y: auto;
  z-index: 500;
  display: none;
  padding: 6px;
}
.file-autocomplete-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  cursor: pointer;
  font-size: 12px;
  color: var(--text-2);
  border-radius: 6px;
  text-align: left;
  transition: background 0.1s ease;
}
.file-autocomplete-item:hover,
.file-autocomplete-item.active {
  background: var(--paper-alt);
  color: var(--text-1);
}
.file-autocomplete-item svg {
  width: 14px;
  height: 14px;
  color: var(--text-3);
  flex-shrink: 0;
}
.file-autocomplete-empty {
  padding: 12px;
  text-align: center;
  font-size: 11.5px;
  color: var(--text-3);
}

/* Inline Image Previews */
.msg-media-preview {
  margin-top: 8px;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--border-soft);
  max-width: 280px;
  background: var(--paper-alt);
  position: relative;
}
.msg-media-preview img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 180px;
  object-fit: cover;
  transition: transform 0.2s ease;
}
.msg-media-preview img:hover {
  transform: scale(1.02);
}
.media-link {
  display: block;
  position: relative;
  text-decoration: none;
  overflow: hidden;
}
.media-overlay {
  padding: 6px 10px;
  background: rgba(12, 14, 20, 0.72);
  color: #fff;
  font-size: 10px;
  font-weight: 600;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}
.media-overlay span {
  display: block;
  text-overflow: ellipsis;
  overflow: hidden;
}

/* Image-message cards: keep the written caption visually attached to its image. */
.professional-inbox .msg:has(.msg-media-preview) .message-author{order:0}
.professional-inbox .msg:has(.msg-media-preview) .msg-media-preview{order:1;width:min(280px,100%);margin-top:3px;border-radius:12px 12px 0 0;border-bottom:0}
.professional-inbox .msg:has(.msg-media-preview) .bubble{box-sizing:border-box;order:2;width:min(280px,100%);margin:0;padding:9px 11px;border:1px solid var(--border-soft);border-radius:0 0 12px 12px!important;background:var(--card);color:var(--text-1)}
.professional-inbox .msg.out:has(.msg-media-preview) .bubble{border-color:rgba(255,255,255,.12);background:var(--ink);color:var(--text-inv)}
.professional-inbox .msg:has(.msg-media-preview) .stamp{order:3}
.client-message:has(.msg-media-preview) .client-message-author{order:0}
.client-message:has(.msg-media-preview) .msg-media-preview{order:1;width:min(280px,100%);margin-top:3px;border-radius:12px 12px 0 0;border-bottom:0}
.client-message:has(.msg-media-preview) .client-message-bubble{box-sizing:border-box;order:2;width:min(280px,100%);margin:0;border-radius:0 0 12px 12px!important}
.client-message:has(.msg-media-preview) time{order:3}

/* Position relative context for absolute autocomplete containers */
.conv-compose {
  position: relative !important;
}
.client-message-composer {
  position: relative !important;
}

/* Dynamic User Presence Styles */
.thread-avatar-wrap {
  position: relative;
  display: inline-block;
  flex-shrink: 0;
}
.thread-avatar-wrap .status-badge {
  position: absolute;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  bottom: 0px;
  right: 0px;
  border: 1.5px solid var(--card) !important;
  background: var(--text-3); /* Offline grey */
  box-shadow: 0 0 0 1px rgba(0,0,0,0.05);
  display: block !important;
}
.thread-avatar-wrap .status-badge.online {
  background: var(--success) !important;
  box-shadow: 0 0 0 2px var(--success-tint) !important;
}

/* Floating Scroll to Bottom Button */
.scroll-bottom-btn {
  position: absolute;
  bottom: 80px;
  right: 24px;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: var(--card);
  border: 1px solid var(--border);
  color: var(--text-2);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(12, 14, 20, 0.12);
  transition: transform 0.2s ease, opacity 0.2s ease, visibility 0.2s ease;
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
}
.scroll-bottom-btn:hover {
  color: var(--text-1);
  background: var(--paper-alt);
  transform: translateY(0) scale(1.05);
}
.scroll-bottom-btn.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.scroll-bottom-badge {
  position: absolute;
  top: -6px;
  right: -6px;
  background: var(--saffron);
  color: #241505;
  font-size: 9px;
  font-weight: 800;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: 8px;
  display: none;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 5px rgba(0,0,0,0.15);
}

/* Chat Auto-linked URLs */
.chat-link {
  text-decoration: underline;
  word-break: break-all;
  transition: color 0.1s ease;
}
.bubble .chat-link,
.msg.out .chat-link {
  color: var(--saffron) !important;
}
.msg.in .chat-link {
  color: var(--lapis) !important;
}
.client-message-bubble .chat-link,
.client-message.from-client .chat-link {
  color: #1a0f03 !important;
  font-weight: 600;
}
.client-message.from-agency .chat-link {
  color: var(--saffron-dark) !important;
}

/* Custom styled file upload trigger */
.custom-file-upload {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--paper-alt);
  color: var(--text-2);
  font-size: 12.5px;
  font-weight: 600;
  cursor: pointer;
  transition: border-color 0.15s, background 0.15s, color 0.15s;
  user-select: none;
  max-width: 200px;
  box-sizing: border-box;
}
.custom-file-upload input[type="file"] {
  display: none !important;
}
.custom-file-upload:hover {
  border-color: var(--saffron);
  background: var(--saffron-tint);
  color: var(--saffron-dark);
}
.custom-file-upload .upload-icon {
  font-size: 14px;
  line-height: 1;
}
.custom-file-upload #uploadFileName {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 1;
}

/* Client side composer alignment to match professional admin composer */
.client-message-composer {
  display: block !important;
  background: var(--card) !important;
  padding: 12px 14px !important;
}
.client-message-composer .compose-box {
  display: flex !important;
  align-items: flex-end !important;
  gap: 10px !important;
}
.client-message-composer .compose-box .textarea {
  flex: 1 !important;
  min-height: 42px !important;
  max-height: 120px !important;
  resize: none !important;
  border: 1px solid var(--border) !important;
  border-radius: 8px !important;
  background: var(--paper-alt) !important;
  color: var(--text-1) !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
  outline: none !important;
  box-sizing: border-box !important;
  padding: 10px 12px !important;
  font: inherit !important;
  font-size: 12.5px !important;
}
.client-message-composer .compose-box .textarea:focus {
  border-color: var(--saffron) !important;
  box-shadow: 0 0 0 3px rgba(232, 163, 61, 0.15) !important;
  background: var(--card) !important;
  outline: none !important;
}
.client-message-composer .compose-send {
  height: 42px !important;
  padding: 0 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
}
.client-message-composer .compose-send .icon {
  width: 14px !important;
  height: 14px !important;
}
@media(max-width:620px) {
  .client-message-composer .compose-send span {
    display: none !important;
  }
  .client-message-composer .compose-send {
    width: 42px !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
  }
  .client-message-composer .attachment-fields {
    grid-template-columns: 1fr !important;
  }
}
.client-profile-menu{position:relative;display:flex;align-items:center}.client-profile-menu .profile-avatar-wrap{display:flex!important;box-sizing:border-box!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;margin:0!important;padding:2px!important;align-items:center!important;justify-content:center!important;border:1px solid transparent!important;border-radius:50%!important;background:transparent!important;font:inherit!important;appearance:none!important;cursor:pointer}.client-profile-menu .profile-avatar-wrap:hover,.client-profile-menu.open .profile-avatar-wrap{border-color:var(--saffron)!important;background:var(--saffron-tint)!important}.client-profile-menu .profile-avatar-wrap>div{display:flex!important;width:34px!important;height:34px!important;flex:0 0 34px!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;background:var(--saffron)!important;color:#241505!important;font-size:11px!important;font-weight:800!important;line-height:1!important}
.client-conversation-body{padding-left:max(26px,calc((100% - 720px)/2));padding-right:max(26px,calc((100% - 720px)/2))}.client-conversation-intro{display:flex;align-items:flex-start;gap:10px;margin:4px auto 22px;padding:12px 14px;border:1px solid var(--border-soft);border-radius:12px;background:var(--paper-alt);color:var(--text-3)}.client-conversation-intro>span{display:flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:9px;background:var(--saffron-tint);font-size:12px}.client-conversation-intro strong{display:block;color:var(--text-2);font-size:10.5px}.client-conversation-intro p{margin:3px 0 0;font-size:9px;line-height:1.45}.client-message{max-width:min(78%,560px);margin-top:9px;margin-bottom:9px}.client-message.from-agency+.client-message.from-agency,.client-message.from-client+.client-message.from-client{margin-top:-4px}.client-message.from-agency+.client-message.from-agency .client-message-author,.client-message.from-client+.client-message.from-client .client-message-author{display:none}.client-message.from-agency:has(+.client-message.from-agency) time,.client-message.from-client:has(+.client-message.from-client) time{display:none}.client-message time{font-size:9px;margin-top:5px}.client-message-bubble{box-shadow:0 1px 2px rgba(16,20,30,.035)}.client-conversation-live.is-connecting i{background:var(--text-3);box-shadow:0 0 0 3px var(--border-soft);animation:clientStatusPulse 1.2s ease infinite}.client-conversation-live.is-live i{background:var(--emerald);box-shadow:0 0 0 3px var(--emerald-tint)}@keyframes clientStatusPulse{50%{opacity:.35}}@media(max-width:680px){.client-conversation-body{padding-left:14px;padding-right:14px}.client-conversation-intro{margin-bottom:16px}.client-message{max-width:88%}}
.client-conversation-body{padding:22px 26px}.client-message{width:fit-content;max-width:min(70%,620px);margin:9px 0}.client-message.from-agency+.client-message.from-agency,.client-message.from-client+.client-message.from-client{margin-top:9px}.client-message .client-message-author{display:block}.client-message.from-agency:has(+.client-message.from-agency) time,.client-message.from-client:has(+.client-message.from-client) time,.client-message time{display:block;font-size:9px;margin-top:5px}.client-message-bubble{min-width:42px;box-shadow:0 1px 2px rgba(16,20,30,.035)}@media(max-width:680px){.client-conversation-body{padding:18px 14px}.client-message{max-width:84%}}

/* Client Profile Theme Toggle styles */
.client-profile-dropdown .profile-section {
  padding: 13px 14px;
  border-bottom: 1px solid var(--border-soft);
}
.client-profile-dropdown .profile-section-label {
  display: block;
  font-size: 9.5px;
  color: var(--text-3);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .07em;
  margin: 0 2px 8px;
}
.client-profile-dropdown .theme-choice {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
}
.client-profile-dropdown .theme-choice button {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 8px 5px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--paper-alt);
  color: var(--text-2);
  font: inherit;
  font-size: 9.5px;
  font-weight: 650;
  cursor: pointer;
  transition: .12s ease;
}
.client-profile-dropdown .theme-choice button:hover {
  border-color: var(--saffron);
}
.client-profile-dropdown .theme-choice button.active {
  background: var(--saffron-tint);
  border-color: var(--saffron);
  color: var(--saffron-dark);
  box-shadow: 0 0 0 1px var(--saffron);
}
.client-profile-dropdown .theme-choice .icon {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Premium UI & Aesthetic Enhancements */

/* 1. Sticky & Glassmorphic Top Nav */
.client-topnav-new {
  position: sticky !important;
  top: 0 !important;
  z-index: 800 !important;
  background: rgba(255, 255, 255, 0.75) !important;
  backdrop-filter: blur(12px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(12px) saturate(180%) !important;
  border-bottom: 1px solid var(--border-soft) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02) !important;
}
html[data-theme="dark"] .client-topnav-new {
  background: rgba(27, 25, 38, 0.75) !important;
  border-bottom: 1px solid var(--border-soft) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
}

/* 2. Premium Chat Bubbles styling */
.client-message.from-client .client-message-bubble {
  background: linear-gradient(135deg, var(--saffron) 0%, var(--saffron-dark) 100%) !important;
  border: none !important;
  color: #1a0f03 !important;
  box-shadow: 0 4px 12px rgba(232, 163, 61, 0.16) !important;
}
html[data-theme="dark"] .client-message.from-client .client-message-bubble {
  box-shadow: 0 4px 16px rgba(232, 163, 61, 0.12) !important;
}

/* Translucent Glassmorphic Incoming Message (Dark Mode) */
html[data-theme="dark"] .client-message-bubble:not(.from-client .client-message-bubble) {
  background: rgba(255, 255, 255, 0.035) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border-color: rgba(255, 255, 255, 0.07) !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15) !important;
}

/* 3. Animated "Live" Pulsing Dot */
@keyframes live-indicator-glow {
  0% {
    box-shadow: 0 0 0 0 rgba(85, 201, 149, 0.5);
  }
  70% {
    box-shadow: 0 0 0 6px rgba(85, 201, 149, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(85, 201, 149, 0);
  }
}
.client-conversation-live.is-live i {
  background: var(--emerald) !important;
  animation: live-indicator-glow 2s infinite !important;
}

/* 4. Interactive Composer & Send Button Micro-Animations */
.client-message-composer .compose-send {
  background: var(--saffron) !important;
  color: #241505 !important;
  border: none !important;
  transition: transform 0.1s ease, background-color 0.2s ease, box-shadow 0.2s ease !important;
}
.client-message-composer .compose-send:hover {
  background: var(--saffron-dark) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(232, 163, 61, 0.2) !important;
}
.client-message-composer .compose-send:active {
  transform: translateY(1px) !important;
  box-shadow: none !important;
}

/* Unified Ticks color palette */
.ticks.read {
  color: var(--saffron) !important;
}

/* Ambient Radial Glow behind the central workspace card in dark mode */
html[data-theme="dark"] .client-main-container {
  background: radial-gradient(circle at 80% 8%, rgba(232, 163, 61, 0.035) 0%, transparent 50%), var(--paper-alt) !important;
}

/* Custom Scrollbar for chat messages */
.client-conversation-body::-webkit-scrollbar {
  width: 6px !important;
}
.client-conversation-body::-webkit-scrollbar-track {
  background: transparent !important;
}
.client-conversation-body::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.08) !important;
  border-radius: 99px !important;
}
.client-conversation-body::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.16) !important;
}

/* Date Divider Pill (Capsule Badge) */
.client-message-day {
  margin: 20px 0 !important;
}
.client-message-day span {
  display: inline-block;
  background: var(--paper-alt) !important;
  border: 1px solid var(--border-soft) !important;
  padding: 4px 12px !important;
  border-radius: 99px !important;
  color: var(--text-3) !important;
  font-size: 9.5px !important;
  font-weight: 700 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.12) !important;
}
html[data-theme="dark"] .client-message-day span {
  background: var(--ink-soft) !important;
  border-color: var(--border) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25) !important;
}

/* Interactive Composer Attachment Button */
.client-message-composer .compose-attach {
  border: 1px solid var(--border) !important;
  border-radius: 50% !important;
  background: var(--paper-alt) !important;
  color: var(--text-3) !important;
  width: 42px !important;
  height: 42px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: transform 0.12s ease, border-color 0.2s ease, color 0.2s ease !important;
}
.client-message-composer .compose-attach:hover {
  border-color: var(--saffron) !important;
  color: var(--saffron) !important;
  transform: scale(1.05) !important;
}
.client-message-composer .compose-attach:active {
  transform: scale(0.95) !important;
}
.client-message-composer .compose-attach svg {
  width: 16px !important;
  height: 16px !important;
}

/* Softer Border and Shadow for Central Conversation Card in Dark Mode */
html[data-theme="dark"] .client-conversation-card {
  border-color: rgba(255, 255, 255, 0.06) !important;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3) !important;
}

/* Explicit Signout Button styling */
.client-logout-form button {
  display: block !important;
  width: 100% !important;
  padding: 12px 16px !important;
  border: 1px solid rgba(255, 115, 115, 0.2) !important;
  border-radius: 10px !important;
  background: rgba(255, 115, 115, 0.06) !important;
  color: var(--danger) !important;
  font-family: var(--font-u) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  text-align: center !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.1s ease !important;
}
.client-logout-form button:hover {
  background: var(--danger) !important;
  border-color: var(--danger) !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}
.client-logout-form button:active {
  transform: translateY(1px) !important;
}

/* Fixed viewport-locked desktop sidebar so Settings button stays at screen bottom */
@media (min-width: 861px) {
  .client-sidebar-left {
    position: fixed !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 250px !important;
    height: 100vh !important;
    z-index: 100 !important;
  }
  .client-main-container {
    margin-left: 250px !important;
  }
}

/* Recent Activity Feed Icon Styling */
.activity-kind {
  transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease !important;
}
.workspace-activity-item:hover .activity-kind {
  transform: scale(1.08) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}

/* Icon Tints and Border outlines */
.activity-kind.task {
  background: rgba(232, 163, 61, 0.1) !important;
  color: var(--saffron) !important;
  border: 1px solid rgba(232, 163, 61, 0.15) !important;
}
.activity-kind.file {
  background: rgba(85, 201, 149, 0.1) !important;
  color: var(--emerald) !important;
  border: 1px solid rgba(85, 201, 149, 0.15) !important;
}
.activity-kind.message,
.activity-kind.message-agency {
  background: rgba(59, 130, 246, 0.1) !important;
  color: #5c93ff !important;
  border: 1px solid rgba(59, 130, 246, 0.15) !important;
}
.activity-kind.message-client {
  background: rgba(232, 163, 61, 0.1) !important;
  color: var(--saffron) !important;
  border: 1px solid rgba(232, 163, 61, 0.15) !important;
}
.activity-kind.invoice {
  background: rgba(255, 115, 115, 0.1) !important;
  color: var(--danger) !important;
  border: 1px solid rgba(255, 115, 115, 0.15) !important;
}

/* Interactive published/draft legend filters */
.publish-legend span {
  cursor: pointer !important;
  transition: transform 0.15s ease, opacity 0.15s ease, box-shadow 0.15s ease !important;
  user-select: none !important;
}
.publish-legend span:hover {
  transform: translateY(-1px) !important;
  opacity: 0.95 !important;
}
.publish-legend span:active {
  transform: translateY(0) !important;
}
.publish-legend span.active {
  box-shadow: 0 0 0 2px var(--card), 0 0 0 4px currentColor !important;
}
.publish-legend.has-active span:not(.active) {
  opacity: 0.45 !important;
}
.publish-legend.has-active span:not(.active):hover {
  opacity: 0.8 !important;
}

/* ── Comment toggle button ───────────────────────── */
.approval-comments-toggle {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px 8px;
  border-radius: var(--r-sm);
  border: 1px solid var(--border);
  background: transparent;
  color: var(--text-3);
  cursor: pointer;
  font-size: 12px;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
  position: relative;
}
.approval-comments-toggle:hover {
  background: var(--hover);
  color: var(--text-1);
}
.approval-comments-toggle.has-comments {
  color: var(--accent, #f5a623);
  border-color: rgba(245, 166, 35, 0.35);
}
.approval-comments-toggle.has-comments:hover {
  background: rgba(245, 166, 35, 0.08);
}
.approval-comments-toggle.open {
  background: var(--hover);
  color: var(--text-1);
}
.approval-comment-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  border-radius: 9px;
  background: var(--accent, #f5a623);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
}

/* ── Approvals table comment row ────────────────── */
/* ── Floating Approval Comments Modal ────────────────── */
.approval-comments-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  box-sizing: border-box;
}
.approval-comments-modal[hidden] {
  display: none !important;
}
.approval-comments-modal-backdrop {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.65);
  backdrop-filter: blur(4px);
  z-index: 1;
}
.approval-comments-modal-dialog {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 520px;
  max-height: min(600px, calc(100vh - 40px));
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 16px;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.5);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.approval-comments-modal-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-bottom: 1px solid var(--border-soft);
  background: var(--card);
  flex-shrink: 0;
}
.approval-comments-modal-head h3 {
  font-size: 15px;
  font-weight: 700;
  margin: 0;
  color: var(--text-1);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 400px;
}
.approval-comments-modal-head small {
  font-size: 11px;
  color: var(--text-3);
}
.approval-comments-modal-close {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 1px solid var(--border);
  background: var(--paper-alt);
  color: var(--text-2);
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.approval-comments-modal .approval-comments-thread {
  flex: 1;
  max-height: 380px;
  overflow-y: auto;
  padding: 18px 22px;
  background: var(--paper);
}
.approval-comments-modal .approval-comment-form {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 16px 20px !important;
  background: var(--card) !important;
  border-top: 1px solid var(--border-soft) !important;
  flex-shrink: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.approval-comments-modal .approval-comment-form input {
  flex: 1 !important;
  width: auto !important;
  min-width: 0 !important;
  height: 42px !important;
  padding: 0 16px !important;
  border: 1px solid var(--border) !important;
  border-radius: 10px !important;
  background: var(--paper-alt) !important;
  color: var(--text-1) !important;
  font-family: var(--font-m) !important;
  font-size: 13.5px !important;
  outline: none !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}
.approval-comments-modal .approval-comment-form input::placeholder {
  color: var(--text-3) !important;
}
.approval-comments-modal .approval-comment-form input:focus {
  border-color: var(--saffron) !important;
  box-shadow: 0 0 0 2px var(--saffron-tint) !important;
}
.approval-comments-modal .approval-comment-form button {
  height: 42px !important;
  padding: 0 22px !important;
  border-radius: 10px !important;
  background: var(--saffron) !important;
  color: #241505 !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  border: 0 !important;
  flex-shrink: 0 !important;
  width: auto !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: opacity 0.15s ease !important;
}
.approval-comments-modal .approval-comment-form button:hover {
  opacity: 0.9 !important;
}
.approval-comments-row td {
  padding: 0 !important;
  background: var(--surface, var(--bg-2));
}
.approval-comments-thread {
  padding: 14px 20px 16px;
  border-top: 1px solid var(--border);
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-height: 220px;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--saffron) transparent;
}
.approval-comments-thread::-webkit-scrollbar {
  width: 6px;
}
.approval-comments-thread::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: var(--saffron);
}
.approval-comments-row[hidden],
.approval-comments-thread[hidden] {
  display: none !important;
}

/* ── Workspace view comment thread ──────────────── */
.ws-comments-thread {
  padding: 12px 16px 14px;
  border-top: 1px dashed var(--border);
  display: flex;
  flex-direction: column;
  gap: 10px;
  background: var(--surface, var(--bg-2));
  border-radius: 0 0 var(--r-sm) var(--r-sm);
}
.ws-comments-thread[hidden] {
  display: none !important;
}

/* ── Shared comment item styles ─────────────────── */
.approval-comment-item {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}
.approval-comment-avatar {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--accent-muted, rgba(245,166,35,0.15));
  color: var(--accent, #f5a623);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
}
.approval-comment-item.is-agency .approval-comment-avatar {
  background: rgba(99,102,241,0.15);
  color: #818cf8;
}
.approval-comment-item > div {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.approval-comment-item > div strong {
  font-size: 12px;
  font-weight: 600;
  color: var(--text-1);
}
.approval-comment-item > div span {
  font-size: 11px;
  color: var(--text-3);
}
.approval-comment-item > div p {
  font-size: 13px;
  color: var(--text-2);
  margin: 4px 0 0;
  line-height: 1.5;
}
.approval-no-comments {
  font-size: 12px;
  color: var(--text-3);
  margin: 0;
  text-align: center;
  padding: 6px 0;
}

/* ── Inbox tab switcher ───────────────────────────── */
.inbox-tabs {
  display: flex;
  gap: 4px;
  padding: 10px 16px 0;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}
.inbox-tab {
  position: relative;
  padding: 8px 14px;
  border: none;
  background: transparent;
  color: var(--text-3);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  border-radius: var(--r-sm) var(--r-sm) 0 0;
  border-bottom: 2px solid transparent;
  transition: color 0.15s, border-color 0.15s;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.inbox-tab:hover { color: var(--text-1); }
.inbox-tab.active { color: var(--text-1); border-bottom-color: var(--saffron); }
.inbox-tab-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  border-radius: 9px;
  background: var(--saffron);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
}
.hidden-panel { display: none !important; }
.fc-panel {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.fc-body {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  background: var(--paper-alt, var(--bg-2));
  scrollbar-width: thin;
  scrollbar-color: var(--border) transparent;
}
.fc-compose {
  border-top: 1px solid var(--border);
  padding: 12px 14px;
  background: var(--card);
  flex-shrink: 0;
}
.fc-file-select-wrap {
  margin-bottom: 8px;
}
.fc-file-select {
  width: 100%;
  padding: 7px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--paper-alt);
  color: var(--text-2);
  font-size: 12px;
  font-weight: 600;
  outline: none;
  cursor: pointer;
}
.fc-file-select:focus { border-color: var(--saffron); }
.fc-file-group { border-bottom: 1px solid var(--border); }
.fc-file-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  background: var(--paper-alt, var(--bg-2));
  font-size: 12.5px;
  font-weight: 700;
  color: var(--text-2);
  position: sticky;
  top: 0;
  z-index: 1;
}
.fc-file-header .icon { width: 14px; height: 14px; color: var(--lapis); flex-shrink: 0; }
.fc-messages { padding: 10px 16px; display: flex; flex-direction: column; gap: 8px; }
.fc-msg { display: flex; flex-direction: column; max-width: 75%; }
.fc-msg.fc-in { align-self: flex-start; align-items: flex-start; }
.fc-msg.fc-out { align-self: flex-end; align-items: flex-end; }
.fc-author { font-size: 10.5px; font-weight: 600; color: var(--text-3); margin-bottom: 3px; }
.fc-bubble { padding: 9px 13px; border-radius: 12px; font-size: 13px; line-height: 1.5; word-break: break-word; }
.fc-in .fc-bubble { background: var(--paper-alt, var(--bg-2)); color: var(--text-1); border-radius: 4px 12px 12px 12px; }
.fc-out .fc-bubble { background: var(--saffron); color: #fff; border-radius: 12px 4px 12px 12px; }
.fc-msg.fc-event{align-self:stretch;max-width:none;align-items:stretch;margin:4px 0}.fc-event .fc-author{display:none}.fc-decision{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--paper-alt)}.fc-decision-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;border-radius:50%;font-size:14px;font-weight:800}.fc-decision>span:last-child{display:flex;min-width:0;flex-direction:column}.fc-decision strong{font-size:12px;color:var(--text-1)}.fc-decision small{margin-top:2px;color:var(--text-3);font-size:10px}.fc-approved .fc-decision{border-color:rgba(16,185,129,.25);background:var(--emerald-tint)}.fc-approved .fc-decision-icon{background:var(--emerald);color:#fff}
.fc-stamp { font-size: 10px; color: var(--text-3); margin-top: 3px; padding: 0 2px; }
.fc-reply-form { padding: 8px 14px 12px; }
.fc-reply-box {
  display: flex;
  align-items: center;
  gap: 8px;
  background: var(--paper-alt, var(--bg-2));
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 6px 8px 6px 12px;
  transition: border-color 0.15s;
}
.fc-reply-box:focus-within { border-color: var(--saffron); }
.fc-reply-input { flex: 1; border: none; background: transparent; color: var(--text-1); font-size: 13px; outline: none; padding: 4px 0; }
.fc-reply-input::placeholder { color: var(--text-3); }
.fc-reply-send {
  width: 32px; height: 32px; border-radius: 8px; border: none;
  background: var(--saffron); color: #fff;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; flex-shrink: 0;
  transition: background 0.15s, transform 0.1s;
}
.fc-reply-send:hover { background: var(--saffron-dark); transform: scale(1.05); }
.fc-reply-send:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }
.fc-reply-send .icon { width: 14px; height: 14px; }
.fc-empty {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  padding: 48px 24px; gap: 10px; color: var(--text-3); text-align: center;
}
.fc-empty .icon { width: 32px; height: 32px; opacity: 0.4; }
.fc-empty strong { font-size: 14px; color: var(--text-2); }
.fc-empty p { font-size: 12.5px; margin: 0; }
.client-file-breadcrumbs{display:flex;align-items:center;gap:7px;padding:10px 14px 0;color:var(--text-3);font-size:8.5px}.client-file-breadcrumbs a{color:var(--text-2);font-weight:700;text-decoration:none}.client-file-breadcrumbs a:hover{color:var(--saffron-dark)}.client-no-subfolders{display:flex;align-items:center;padding:10px;color:var(--text-3);font-size:8.5px;font-style:italic}
.client-file-manager-card{container-name:client-files;container-type:inline-size}.client-file-toolbar>*{min-width:0}.client-file-toolbar .btn{white-space:nowrap}@container client-files (max-width:720px){.client-file-toolbar{grid-template-columns:minmax(0,1fr) minmax(130px,170px)!important}.client-file-search,.client-file-toolbar .btn{grid-column:1/-1!important}.client-file-toolbar .btn{width:100%}}@container client-files (max-width:460px){.client-file-toolbar{grid-template-columns:minmax(0,1fr)!important}.client-file-search,.client-file-toolbar .btn{grid-column:auto!important}.client-file-toolbar select,.client-file-toolbar .btn{width:100%}.client-folder-browser{padding-inline:10px}.client-file-results-head{padding-inline:10px}}
.client-file-manager-card .client-file-toolbar{display:flex;box-sizing:border-box;width:100%;flex-wrap:wrap;align-items:center;overflow:visible}.client-file-manager-card .client-file-search{flex:1 0 100%;width:100%}.client-file-manager-card .client-file-toolbar select{min-width:0;flex:1 1 140px}.client-file-manager-card .client-file-toolbar .btn{min-width:110px;max-width:100%;flex:1 1 110px;justify-content:center}@media(max-width:420px){.client-file-manager-card .client-file-toolbar select,.client-file-manager-card .client-file-toolbar .btn{flex-basis:100%;width:100%}}
.agency-folder-breadcrumbs{display:flex;align-items:center;gap:7px;padding:0 16px 11px;color:var(--text-3);font-size:9px}.agency-folder-breadcrumbs a{color:var(--text-2);font-weight:700;text-decoration:none}.agency-folder-breadcrumbs a:hover{color:var(--saffron-dark)}.agency-folder-grid{display:flex;gap:8px;overflow-x:auto;padding:0 14px 13px}.agency-folder-grid>a{display:flex;min-width:145px;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--border);border-radius:9px;background:var(--paper-alt);color:var(--text-1);font-size:9.5px;text-decoration:none}.agency-folder-grid>a:hover{border-color:var(--saffron);background:var(--saffron-tint)}.agency-folder-grid>a>span{display:flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:7px;background:var(--card);color:var(--saffron-dark)}.agency-folder-grid .icon{width:14px;height:14px}.agency-bulk-bar{display:flex;align-items:center;gap:7px;margin:0 14px 12px;padding:9px 10px;border:1px solid var(--saffron);border-radius:10px;background:var(--saffron-tint)}.agency-bulk-bar[hidden]{display:none}.agency-bulk-bar strong{margin-right:auto;color:var(--text-1);font-size:9.5px}.agency-bulk-bar input{width:min(240px,35vw);height:32px;padding:0 9px;border:1px solid var(--border);border-radius:7px;background:var(--card);color:var(--text-1);font:inherit;font-size:9px;outline:none}.agency-file-table th:first-child,.agency-file-table td:first-child{width:28px;padding-right:0}.agency-file-table input[type=checkbox]{width:14px;height:14px;accent-color:var(--saffron)}.agency-file-table td:nth-child(3)>a{display:block;max-width:230px;color:var(--text-1);font-size:10.5px;font-weight:700;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agency-file-table td:nth-child(3)>small{display:block;margin-top:3px;color:var(--text-3);font-size:8.5px}.agency-drop-zone{position:relative;display:flex!important;min-height:120px;align-items:center;justify-content:center;flex-direction:column!important;gap:5px!important;border:1.5px dashed var(--border)!important;border-radius:11px;background:var(--paper-alt);text-align:center;cursor:pointer}.agency-drop-zone.dragging{border-color:var(--saffron)!important;background:var(--saffron-tint)}.agency-drop-zone input{position:absolute;inset:0;width:100%!important;height:100%!important;opacity:0;cursor:pointer}.agency-drop-zone>span{display:flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:9px;background:var(--saffron-tint);color:var(--saffron-dark)}.agency-drop-zone .icon{width:16px;height:16px}.agency-drop-zone strong{color:var(--text-1);font-size:10.5px}.agency-drop-zone small{color:var(--text-3);font-size:8.5px;font-weight:500}@media(max-width:650px){.agency-files-page .agency-file-table th:nth-child(4),.agency-files-page .agency-file-table td:nth-child(4),.agency-files-page .agency-file-table th:nth-child(5),.agency-files-page .agency-file-table td:nth-child(5),.agency-files-page .agency-file-table th:nth-child(6),.agency-files-page .agency-file-table td:nth-child(6){display:none}.agency-bulk-bar{align-items:stretch;flex-wrap:wrap}.agency-bulk-bar strong{width:100%}.agency-bulk-bar input{width:100%}}

/* Agency-wide file manager */
.client-file-manager{max-width:1100px;margin:0 auto}.client-file-manager-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}.client-file-manager-head h1{margin:4px 0 5px;color:var(--text-1);font-size:25px}.client-file-manager-head p{margin:0;color:var(--text-3);font-size:13px}.client-file-manager-head .btn{display:flex;align-items:center;gap:7px}.client-file-manager-head .icon{width:14px;height:14px}.client-file-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.client-file-metrics>div{display:flex;min-width:0;flex-direction:column;padding:14px 15px;border:1px solid var(--border);border-radius:12px;background:var(--card);box-shadow:var(--shadow-1)}.client-file-metrics span{color:var(--text-3);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.client-file-metrics strong{margin-top:7px;color:var(--text-1);font-size:21px}.client-file-metrics small{margin-top:3px;color:var(--text-3);font-size:11px}.client-file-manager-card{overflow:hidden;border:1px solid var(--border);border-radius:14px;background:var(--card);box-shadow:var(--shadow-1)}.client-file-toolbar{display:grid;grid-template-columns:minmax(230px,1fr) minmax(145px,auto) minmax(125px,auto) auto;gap:8px;padding:13px;border-bottom:1px solid var(--border)}.client-file-search{position:relative}.client-file-search .icon{position:absolute;left:11px;top:50%;width:14px;height:14px;transform:translateY(-50%);color:var(--text-3)}.client-file-search input,.client-file-toolbar select{box-sizing:border-box;width:100%;height:37px;border:1px solid var(--border);border-radius:9px;background:var(--paper-alt);color:var(--text-1);font:inherit;font-size:12px;outline:none}.client-file-search input{padding:0 10px 0 34px}.client-file-toolbar select{padding:0 28px 0 10px}.client-file-search input:focus,.client-file-toolbar select:focus{border-color:var(--saffron)}.client-folder-browser{padding:14px;border-bottom:1px solid var(--border)}.client-folder-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.client-folder-title strong{font-size:12px;text-transform:uppercase;letter-spacing:.05em}.client-folder-title span{color:var(--text-3);font-size:12px}.client-folder-list{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.client-folder-list>a{display:flex;min-width:150px;align-items:center;gap:9px;padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:var(--paper-alt);color:var(--text-2);text-decoration:none}.client-folder-list>a:hover,.client-folder-list>a.active{border-color:var(--saffron);background:var(--saffron-tint)}.client-folder-icon{display:flex;width:30px;height:30px;flex:0 0 30px;align-items:center;justify-content:center;border-radius:8px;background:var(--card);color:var(--saffron-dark)}.client-folder-icon .icon{width:14px;height:14px}.client-folder-list>a>span:last-child{display:flex;min-width:0;flex-direction:column}.client-folder-list strong{max-width:110px;color:var(--text-1);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-folder-list small{margin-top:2px;color:var(--text-3);font-size:11px}.client-file-results-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px}.client-file-results-head>div{display:flex;flex-direction:column}.client-file-results-head strong{font-size:14px}.client-file-results-head span{margin-top:2px;color:var(--text-3);font-size:12px}.client-file-results-head>a{color:var(--saffron-dark);font-size:12px;font-weight:700;text-decoration:none}.client-file-manager-list{border-top:1px solid var(--border-soft)}.client-managed-file{display:grid;width:100%;grid-template-columns:46px minmax(180px,1fr) auto 110px 16px;align-items:center;gap:11px;padding:12px 14px;border:0;border-bottom:1px solid var(--border-soft);background:transparent;color:var(--text-2);font:inherit;text-align:left;cursor:pointer}.client-managed-file:last-child{border-bottom:0}.client-managed-file:hover{background:var(--paper-alt)}.client-managed-preview{display:flex;width:42px;height:42px;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--paper-alt)}.client-managed-preview img{width:100%;height:100%;object-fit:cover}.client-managed-preview b{color:var(--text-2);font-family:var(--font-mono);font-size:11px;font-weight:700}.client-managed-copy{display:flex;min-width:0;flex-direction:column}.client-managed-copy strong{color:var(--text-1);font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-managed-copy small{margin-top:4px;color:var(--text-2);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-managed-source{display:inline-flex;padding:5px 9px;border-radius:999px;background:var(--paper-alt);color:var(--text-2);font-size:11px;font-weight:700;white-space:nowrap}.client-managed-source.source-deliverable{background:var(--saffron-tint);color:var(--saffron-dark)}.client-managed-source.source-message{background:var(--lapis-tint);color:var(--lapis)}.client-managed-source.source-reference,.client-managed-source.source-client_upload{background:var(--emerald-tint);color:var(--emerald)}.client-managed-file time{color:var(--text-2);font-size:12px;white-space:nowrap}.client-managed-arrow{color:var(--text-3);font-size:18px}.client-file-manager-empty{display:flex;min-height:250px;align-items:center;justify-content:center;flex-direction:column;border-top:1px solid var(--border-soft);text-align:center}.client-file-manager-empty>span{color:var(--text-3);font-size:28px}.client-file-manager-empty strong{margin-top:7px;font-size:13px}.client-file-manager-empty p{margin:5px 0 12px;color:var(--text-3);font-size:11px}@media(max-width:900px){.client-file-metrics{grid-template-columns:1fr 1fr}.client-file-toolbar{grid-template-columns:1fr 1fr}.client-file-search{grid-column:1/-1}.client-managed-file{grid-template-columns:46px minmax(150px,1fr) auto 16px}.client-managed-file time{display:none}}@media(max-width:600px){.client-file-manager-head{align-items:flex-start;flex-direction:column}.client-file-manager-head .btn{width:100%;justify-content:center}.client-file-metrics{grid-template-columns:1fr 1fr;gap:8px}.client-file-toolbar{grid-template-columns:1fr}.client-file-search{grid-column:auto}.client-managed-file{grid-template-columns:42px minmax(0,1fr) 16px}.client-managed-source{grid-column:2}.client-managed-preview{grid-row:1/3}.client-file-metrics>div{padding:12px}.client-file-metrics strong{font-size:18px}}
.agency-files-page{max-width:1400px}.agency-files-head{align-items:flex-end}.agency-storage-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-bottom:16px;overflow:hidden}.agency-storage-strip>div{display:flex;min-width:0;flex-direction:column;padding:16px 18px;border-right:1px solid var(--border)}.agency-storage-strip>div:last-child{border-right:0}.agency-storage-strip span{color:var(--text-3);font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.agency-storage-strip strong{margin-top:5px;color:var(--text-1);font-size:21px}.agency-storage-strip small{margin-top:3px;color:var(--text-3);font-size:9.5px}.agency-files-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:16px;align-items:start}.agency-file-scope{position:sticky;top:84px;padding:9px}.agency-file-scope-head{display:flex;align-items:center;justify-content:space-between;padding:10px 9px 12px;color:var(--text-1);font-size:11px}.agency-file-scope-head span{display:flex;min-width:20px;height:20px;align-items:center;justify-content:center;border-radius:10px;background:var(--paper-alt);color:var(--text-3);font-size:8px}.agency-file-scope>a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px;border-radius:9px;color:var(--text-2);text-decoration:none}.agency-file-scope>a:hover,.agency-file-scope>a.active{background:var(--saffron-tint);color:var(--text-1)}.agency-file-scope>a>span{display:flex;min-width:0;align-items:center;gap:8px;font-size:10px;font-weight:700}.agency-file-scope>a i{display:flex;width:28px;height:28px;flex:0 0 28px;align-items:center;justify-content:center;border-radius:8px;background:var(--paper-alt);color:var(--saffron-dark);font-style:normal;font-size:9px}.agency-file-scope>a em{display:flex;min-width:0;flex-direction:column;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agency-file-scope>a em small{margin-top:2px;color:var(--text-3);font-size:8px;font-weight:500}.agency-file-scope>a>b{color:var(--text-3);font-size:9px}.agency-files-card{min-width:0;overflow:hidden}.agency-files-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) repeat(4,minmax(125px,auto)) auto;gap:8px;padding:14px;border-bottom:1px solid var(--border)}.agency-file-search{position:relative;min-width:0}.agency-file-search .icon{position:absolute;left:11px;top:50%;width:14px;height:14px;transform:translateY(-50%);color:var(--text-3)}.agency-file-search input,.agency-files-toolbar select{box-sizing:border-box;width:100%;height:37px;border:1px solid var(--border);border-radius:9px;background:var(--paper-alt);color:var(--text-1);font:inherit;font-size:9.5px;outline:none}.agency-file-search input{padding:0 11px 0 34px}.agency-files-toolbar select{padding:0 27px 0 9px}.agency-file-search input:focus,.agency-files-toolbar select:focus{border-color:var(--saffron)}.agency-files-context{display:flex;align-items:center;justify-content:space-between;padding:13px 16px}.agency-files-context>div{display:flex;flex-direction:column}.agency-files-context strong{font-size:12px}.agency-files-context span{margin-top:2px;color:var(--text-3);font-size:9px}.agency-files-context>a{color:var(--saffron-dark);font-size:9px;font-weight:700;text-decoration:none}.agency-file-table-wrap{overflow-x:auto}.agency-file-table{width:100%;border-collapse:collapse}.agency-file-table th{padding:10px 13px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--text-3);font-size:8px;text-align:left;text-transform:uppercase;letter-spacing:.05em}.agency-file-table td{padding:11px 13px;border-bottom:1px solid var(--border-soft);color:var(--text-2);font-size:9.5px;vertical-align:middle}.agency-file-name{display:flex;min-width:210px;align-items:center;gap:10px}.agency-file-name>span{display:flex;width:38px;height:42px;flex:0 0 38px;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:var(--paper-alt);color:var(--text-3);font-family:var(--font-mono);font-size:7.5px;font-weight:700}.agency-file-name>div,.agency-file-table td:nth-child(2){display:table-cell}.agency-file-name strong,.agency-file-table td:nth-child(2)>a{display:block;max-width:230px;color:var(--text-1);font-size:10.5px;font-weight:700;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agency-file-name small,.agency-file-table td:nth-child(2)>small{display:block;margin-top:3px;color:var(--text-3);font-size:8.5px}.file-source{display:inline-flex;padding:5px 7px;border-radius:999px;background:var(--paper-alt);color:var(--text-2);font-size:8px;font-weight:700;white-space:nowrap}.file-source.source-deliverable{background:var(--saffron-tint);color:var(--saffron-dark)}.file-source.source-message{background:var(--lapis-tint);color:var(--lapis)}.file-source.source-reference{background:var(--emerald-tint);color:var(--emerald)}.agency-file-actions{display:flex;gap:5px;justify-content:flex-end}.agency-file-actions a,.agency-file-actions button{padding:6px 8px;border:1px solid var(--border);border-radius:7px;background:var(--card);color:var(--text-2);font:inherit;font-size:8.5px;font-weight:700;text-decoration:none;cursor:pointer}.agency-file-actions a:hover,.agency-file-actions button:hover{border-color:var(--saffron);color:var(--saffron-dark)}.agency-files-empty{display:flex;min-height:290px;align-items:center;justify-content:center;flex-direction:column;text-align:center}.agency-files-empty>span{font-size:28px;color:var(--text-3)}.agency-files-empty strong{margin-top:8px;font-size:13px}.agency-files-empty p{margin:5px 0 0;color:var(--text-3);font-size:10px}.agency-files-pagination{display:flex;align-items:center;justify-content:space-between;padding:12px 16px}.agency-files-pagination a{padding:7px 10px;border:1px solid var(--border);border-radius:8px;color:var(--text-2);font-size:9px;font-weight:700;text-decoration:none}.agency-files-pagination a.disabled{pointer-events:none;opacity:.4}.agency-files-pagination span{color:var(--text-3);font-size:9px}.agency-file-dialog{max-width:570px}.agency-file-dialog .workspace-modal-head p{margin:4px 0 0;color:var(--text-3);font-size:9px}.agency-file-dialog label{display:flex;flex-direction:column;gap:6px;color:var(--text-2);font-size:9px;font-weight:700}.agency-file-dialog input,.agency-file-dialog select{box-sizing:border-box;width:100%;height:40px;padding:0 11px;border:1px solid var(--border);border-radius:9px;background:var(--paper-alt);color:var(--text-1);font:inherit;font-size:10px}.agency-file-dialog input[type=file]{padding:8px}.agency-file-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.agency-archive-btn{margin-right:auto;color:var(--danger)!important}
@media(max-width:1180px){.agency-files-toolbar{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(130px,1fr))}.agency-files-toolbar select:nth-of-type(3),.agency-files-toolbar select:nth-of-type(4){grid-row:2}.agency-files-toolbar button{grid-row:2}}@media(max-width:900px){.agency-storage-strip{grid-template-columns:1fr}.agency-storage-strip>div{border-right:0;border-bottom:1px solid var(--border)}.agency-storage-strip>div:last-child{border-bottom:0}.agency-files-layout{grid-template-columns:1fr}.agency-file-scope{position:static;display:flex;overflow-x:auto}.agency-file-scope-head{display:none}.agency-file-scope>a{flex:0 0 auto}.agency-file-scope>a em small,.agency-file-scope>a>b{display:none}}@media(max-width:650px){.agency-files-head{align-items:flex-start;gap:12px}.agency-files-toolbar{grid-template-columns:1fr}.agency-files-toolbar>*{grid-row:auto!important}.agency-file-table th:nth-child(3),.agency-file-table td:nth-child(3),.agency-file-table th:nth-child(4),.agency-file-table td:nth-child(4),.agency-file-table th:nth-child(5),.agency-file-table td:nth-child(5){display:none}.agency-file-form-grid{grid-template-columns:1fr}}
.agency-files-card .agency-files-toolbar{display:flex;box-sizing:border-box;width:100%;flex-wrap:wrap;align-items:center;overflow:visible}.agency-files-card .agency-file-search{flex:1 0 100%;width:100%}.agency-files-card .agency-files-toolbar select{min-width:0;flex:1 1 125px}.agency-files-card .agency-files-toolbar .btn{min-width:90px;max-width:100%;flex:1 1 90px;justify-content:center;white-space:nowrap}@media(max-width:520px){.agency-files-card .agency-files-toolbar select,.agency-files-card .agency-files-toolbar .btn{flex-basis:100%;width:100%}}
.agency-files-head-actions{display:flex;align-items:center;gap:8px}.agency-files-head-actions .btn{white-space:nowrap}@media(max-width:600px){.agency-files-head-actions{width:100%}.agency-files-head-actions .btn{flex:1;justify-content:center}}
.data-status.status-shared{background:var(--lapis-tint);color:var(--lapis)}.file-decision-complete.is-shared{border-color:var(--border);background:var(--lapis-tint)}.file-decision-complete.is-shared>span{background:var(--lapis);color:#fff}.file-decision-complete.is-shared>span::after{content:'↗';font-size:12px}.file-decision-complete.is-shared>span{font-size:0}
.compose-image-selection{display:grid;grid-template-columns:42px minmax(0,1fr) 28px;align-items:center;gap:10px;margin:0 14px 8px;padding:8px 9px;border:1px solid var(--border);border-radius:10px;background:var(--paper-alt)}.compose-image-selection[hidden]{display:none}.compose-image-selection img{width:42px;height:42px;border-radius:8px;object-fit:cover;border:1px solid var(--border)}.compose-image-selection span{min-width:0;overflow:hidden;color:var(--text-2);font-size:11px;font-weight:650;white-space:nowrap;text-overflow:ellipsis}.compose-image-selection button{display:flex;width:28px;height:28px;align-items:center;justify-content:center;border:0;border-radius:7px;background:transparent;color:var(--text-3);font-size:18px;cursor:pointer}.compose-image-selection button:hover{background:var(--danger-tint);color:var(--danger)}

/* Compact the modal decision summary to leave more space for feedback. */
.file-modal-details .file-status-block h4 { margin-bottom:4px!important; font-size:11px!important; }
.file-modal-details .file-status-block .badge { padding:5px 9px; font-size:10px; }
.file-modal-details .file-metadata { border-radius:10px; }
.file-modal-details .file-metadata > div { padding:7px 10px!important; }
.file-modal-details .file-metadata dt { margin-bottom:2px; font-size:8px; }
.file-modal-details .file-metadata dd { font-size:11px; }
.file-modal-details #modalApprovalActions { margin-top:4px!important; }
.file-modal-details #modalApprovalActions .btn { min-height:36px; padding:8px 10px; font-size:11px; }
.file-modal-details #modalApprovalActions[hidden],.file-modal-details .file-decision-complete[hidden]{display:none!important}.file-decision-complete{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(16,185,129,.25);border-radius:10px;background:var(--emerald-tint)}.file-decision-complete>span{display:flex;width:28px;height:28px;flex:0 0 28px;align-items:center;justify-content:center;border-radius:50%;background:var(--emerald);color:#fff;font-size:14px;font-weight:800}.file-decision-complete>div{display:flex;min-width:0;flex-direction:column}.file-decision-complete strong{color:var(--text-1);font-size:11px}.file-decision-complete small{margin-top:2px;color:var(--text-3);font-size:9px}

/* Keep the composer visible and scroll only the comment history. */
@media (min-width:769px) {
  .file-modal-body .file-modal-details { display:flex; flex-direction:column; overflow:hidden; }
  .file-modal-details .file-feedback-panel { display:flex; flex:1 1 0; min-height:0; flex-direction:column; }
  .file-comments-list {
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overscroll-behavior:contain;
    padding-right:4px;
    scrollbar-width:thin;
    scrollbar-color:var(--saffron) transparent;
  }
  .file-comments-list::-webkit-scrollbar { width:5px; }
  .file-comments-list::-webkit-scrollbar-track { background:transparent; }
  .file-comments-list::-webkit-scrollbar-thumb { border-radius:999px; background:var(--saffron); }
  .file-comment-composer {
    position:relative;
    z-index:2;
    flex:0 0 auto;
    margin-top:10px!important;
    padding-top:10px;
    border-top:1px solid var(--border-soft);
    background:var(--card);
  }
}
.file-modal{height:min(90vh,760px);max-height:calc(100vh - 40px)}.file-modal-body{min-height:0;overflow:hidden;align-items:stretch}.file-modal-preview-column{display:flex;min-width:0;min-height:0;flex-direction:column;overflow:hidden}.file-modal-preview-column .file-modal-preview{flex:1;min-height:0;height:auto}.file-modal-preview-column .file-modal-preview>img{width:100%;height:100%;min-height:0;max-height:none;object-fit:contain}.file-modal-preview-column .file-pdf-preview{height:100%;min-height:0;flex:1}.file-modal-preview-column .file-type-preview{height:100%;min-height:0}.file-modal-details{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:10px;scrollbar-width:thin;scrollbar-color:var(--saffron) transparent}.file-modal-details::-webkit-scrollbar{width:6px}.file-modal-details::-webkit-scrollbar-track{background:transparent}.file-modal-details::-webkit-scrollbar-thumb{border-radius:999px;background:var(--saffron)}@media(max-width:768px){.file-modal{height:auto;max-height:calc(100vh - 24px)}.file-modal-body{overflow-y:auto;grid-template-columns:1fr}.file-modal-preview-column{overflow:visible;min-height:340px}.file-modal-preview-column .file-modal-preview{min-height:260px}.file-modal-details{overflow:visible;padding-right:0}}
.file-modal{max-width:980px}.file-modal-body{grid-template-columns:minmax(0,1.2fr) minmax(330px,.9fr)}.file-modal-details{height:100%;box-sizing:border-box;align-self:stretch}.file-modal-details>*{flex-shrink:0}.file-modal-details .file-metadata{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-auto-flow:row!important;grid-auto-rows:auto!important;width:100%;box-sizing:border-box}.file-modal-details .file-metadata>div{display:block!important;min-width:0!important;visibility:visible!important}.file-modal-details .file-metadata>div:nth-child(3),.file-modal-details .file-metadata>div:nth-child(4){border-bottom:1px solid var(--border-soft)}.file-modal-details .file-metadata>div:nth-child(5){display:block!important;grid-column:1/-1!important}@media(max-width:768px){.file-modal{max-width:100%}.file-modal-body{grid-template-columns:1fr}.file-modal-details{height:auto}}
.modal-overlay{box-sizing:border-box;padding:clamp(12px,2.5vw,24px)}.file-modal{width:min(980px,calc(100vw - 32px));height:min(760px,calc(100dvh - 32px));max-height:none}.file-modal-head{flex:0 0 auto;padding:clamp(14px,2vh,19px) clamp(16px,2.2vw,22px)}.file-modal-body{box-sizing:border-box;grid-template-columns:minmax(0,1.2fr) minmax(300px,.9fr);gap:clamp(14px,2vw,24px);padding:clamp(14px,2vw,24px)}.file-modal-preview-column{height:100%}.file-preview-navigation{flex:0 0 auto}.file-modal-preview-column>div:last-child{flex:0 0 auto}.file-modal-details #modalApprovalActions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.file-modal-details #modalApprovalActions .btn{min-width:0;white-space:nowrap}.file-modal-details>div:has(#modalCommentInput)>div:last-child{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center}.file-modal-details #modalCommentInput{box-sizing:border-box;width:100%;min-width:0}.file-modal-details #modalCommentInput+button{white-space:nowrap}@media(max-width:980px){.file-modal-body{grid-template-columns:minmax(0,1fr) minmax(290px,340px)}.file-modal-details #modalApprovalActions{grid-template-columns:1fr}.file-modal-details #modalApprovalActions .btn{width:100%}}@media(max-height:700px) and (min-width:769px){.file-modal{height:calc(100dvh - 20px)}.modal-overlay{padding:10px}.file-modal-body{padding:14px;gap:14px}.file-modal-head{padding:12px 18px}.file-preview-navigation{margin-top:7px}.file-modal-preview-column>div:last-child{margin-top:10px!important}.file-modal-details{gap:12px}}@media(max-width:768px){.file-modal{width:calc(100vw - 20px);height:auto;max-height:calc(100dvh - 20px)}.modal-overlay{padding:10px}.file-modal-body{display:block;overflow-y:auto}.file-modal-preview-column{height:auto;min-height:0;margin-bottom:20px}.file-modal-preview-column .file-modal-preview{height:clamp(240px,46vh,420px)}.file-modal-details{height:auto;overflow:visible}.file-modal-details #modalApprovalActions{grid-template-columns:1fr 1fr}}@media(max-width:520px){.file-modal-details #modalApprovalActions{grid-template-columns:1fr}.file-modal-details>div:has(#modalCommentInput)>div:last-child{grid-template-columns:1fr}.file-modal-details #modalCommentInput+button{width:100%;margin-top:8px}.file-metadata{grid-template-columns:1fr!important}.file-modal-details .file-metadata>div{grid-column:1/-1!important;border-right:0!important}}


/* Floating Bottom-Right Cookie Consent Banner */
.sl-cookie-banner {
  position: fixed;
  bottom: 24px;
  right: 24px;
  max-width: 380px;
  width: calc(100% - 48px);
  box-sizing: border-box;
  z-index: 150;
  background: var(--card, #ffffff);
  color: var(--text-1, #1b1c22);
  border: 1px solid var(--border, #e4e7eb);
  border-radius: 18px;
  padding: 18px 20px;
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.12), 0 4px 12px rgba(0, 0, 0, 0.06);
  font-family: var(--font-u, 'Inter', sans-serif);
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.25s ease;
}

body.mobile-sidebar-open .sl-cookie-banner,
body.mobile-nav-open .sl-cookie-banner {
  opacity: 0 !important;
  pointer-events: none !important;
  visibility: hidden !important;
}

html[data-theme="dark"] .sl-cookie-banner {
  background: #191724;
  color: #f7f5ef;
  border-color: #2e2a3e;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
}

.sl-cookie-banner.hidden {
  display: none !important;
}

.sl-cookie-fade-in {
  animation: slCookieSlideUp 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.sl-cookie-fade-out {
  opacity: 0 !important;
  transform: translateY(12px) scale(0.96) !important;
  pointer-events: none;
}

@keyframes slCookieSlideUp {
  from {
    opacity: 0;
    transform: translateY(24px) scale(0.95);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.sl-cookie-content {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.sl-cookie-text {
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--text-2, #555765);
  margin: 0;
}

html[data-theme="dark"] .sl-cookie-text {
  color: #b5b1c1;
}

.sl-cookie-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

.sl-cookie-btn {
  font-family: var(--font-u, 'Inter', sans-serif);
  font-size: 13px;
  font-weight: 600;
  padding: 8px 18px;
  border-radius: 999px;
  cursor: pointer;
  border: 1px solid transparent;
  transition: all 0.15s ease;
}

.sl-cookie-btn-refuse {
  background: var(--paper-alt, #f1f3f5);
  color: var(--text-1, #1b1c22);
  border-color: var(--border, #e4e7eb);
}

.sl-cookie-btn-refuse:hover {
  background: var(--border-soft, #e2e5e9);
}

html[data-theme="dark"] .sl-cookie-btn-refuse {
  background: #242132;
  color: #f7f5ef;
  border-color: #353146;
}

html[data-theme="dark"] .sl-cookie-btn-refuse:hover {
  background: #2f2b42;
}

.sl-cookie-btn-accept {
  background: #0b1c30;
  color: #ffffff;
}

.sl-cookie-btn-accept:hover {
  background: #142a46;
}

html[data-theme="dark"] .sl-cookie-btn-accept {
  background: var(--saffron, #e8a33d);
  color: #12131a;
}

html[data-theme="dark"] .sl-cookie-btn-accept:hover {
  background: #f0b04a;
}

/* Nexte-Inspired Dashboard Modernizations */
.date-chip-wrap {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: var(--emerald, #2e9e6b);
  margin-bottom: 6px;
}
.date-chip-wrap .date-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--emerald, #2e9e6b);
  box-shadow: 0 0 8px rgba(46, 158, 107, 0.4);
}
.dashboard-greeting {
  font-size: 24px;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--text-1, #1b1c22);
}

.nexte-spotlight-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 16px;
  margin-bottom: 24px;
}

@media(max-width: 900px) {
  .nexte-spotlight-grid {
    grid-template-columns: 1fr;
  }
}

.ai-spotlight-card {
  padding: 22px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 16px;
  background: linear-gradient(135deg, var(--card) 0%, var(--paper-alt) 100%);
  border-radius: 16px;
  position: relative;
  overflow: hidden;
}

.ai-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ai-badge {
  display: flex;
  align-items: center;
  gap: 8px;
}
.ai-orb {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: radial-gradient(circle at 30% 30%, #a78bfa, #6d28d9);
  box-shadow: 0 0 10px rgba(167, 139, 250, 0.6);
}
.ai-status-pill {
  font-size: 11px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 999px;
  background: rgba(109, 40, 217, 0.1);
  color: #7c3aed;
}
html[data-theme="dark"] .ai-status-pill {
  background: rgba(167, 139, 250, 0.15);
  color: #c4b5fd;
}
.ai-card-summary {
  font-size: 13.5px;
  line-height: 1.6;
  color: var(--text-2);
  margin: 0;
}
.ai-card-summary strong {
  color: var(--text-1);
}
.ai-input-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 10px 14px;
  cursor: pointer;
  color: var(--text-3);
  font-size: 13px;
  transition: all 0.2s ease;
}
.ai-input-bar:hover {
  border-color: var(--saffron);
  box-shadow: 0 4px 12px rgba(232, 163, 61, 0.12);
}
.ai-input-bar span {
  flex: 1;
}
.ai-input-bar kbd {
  font-size: 10px;
  font-weight: 700;
  background: var(--paper-alt);
  border: 1px solid var(--border);
  border-radius: 4px;
  padding: 2px 6px;
}

.activity-spotlight-card {
  padding: 22px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 16px;
  border-radius: 16px;
}
.activity-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.activity-label {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.1em;
  color: var(--text-3);
}
.activity-val {
  font-size: 28px;
  font-weight: 800;
  line-height: 1.1;
  color: var(--text-1);
  margin-top: 2px;
}
.activity-sub {
  font-size: 11.5px;
  color: var(--text-3);
}
.trend-badge.positive {
  font-size: 11px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 999px;
  background: var(--emerald-tint);
  color: var(--emerald);
}
.trend-badge.negative {
  font-size: 11px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 999px;
  background: rgba(225, 29, 72, 0.12);
  color: #f43f5e;
}
.activity-bars-graphic {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  height: 48px;
  padding-top: 8px;
}
.activity-bars-graphic .bar-col {
  flex: 1;
  background: var(--paper-alt);
  border-radius: 4px;
  transition: height 0.3s ease, background-color 0.2s ease;
}
html[data-theme="dark"] .activity-bars-graphic .bar-col {
  background: #252233;
}
.activity-bars-graphic .bar-col.active-col {
  background: var(--emerald, #2e9e6b);
}

/* Mobile Responsiveness Improvements for Narrow Displays (down to 300px) */
@media (max-width: 640px) {
  .dashboard-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .dashboard-greeting {
    font-size: 19px;
    line-height: 1.25;
    word-break: break-word;
  }
  .head-actions {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
  }
  .head-actions .btn {
    flex: 1;
    text-align: center;
    justify-content: center;
  }

  .ai-spotlight-card,
  .activity-spotlight-card {
    padding: 16px;
    gap: 14px;
  }
  .ai-card-summary {
    font-size: 12.5px;
  }
  .ai-input-bar {
    padding: 8px 12px;
    font-size: 12px;
  }
  .ai-input-bar kbd {
    display: none;
  }

  .activity-head {
    flex-wrap: wrap;
    gap: 8px;
  }
  .activity-val {
    font-size: 24px;
  }
  .activity-bars-graphic {
    gap: 5px;
    height: 40px;
  }

  .stat-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
  }
  .stat-card {
    padding: 14px;
    min-width: 0 !important;
  }
  .stat-card .val {
    font-size: 20px;
    margin-top: 6px;
  }
  .stat-card .lbl {
    font-size: 11.5px;
  }
  .stat-card .metric-foot {
    font-size: 10px;
  }
}

@media (max-width: 440px) {
  .stat-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 640px) {
  .sl-cookie-banner {
    bottom: 12px !important;
    right: 12px !important;
    left: 12px !important;
    width: auto !important;
    max-width: none !important;
    padding: 14px 16px !important;
    box-sizing: border-box !important;
  }
  .sl-cookie-text {
    font-size: 11.5px !important;
  }
  .sl-cookie-actions {
    gap: 8px !important;
  }
  .sl-cookie-btn {
    padding: 6px 14px !important;
    font-size: 12px !important;
  }
}

/* Notifications Page Responsive Styles */
.notification-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 18px 24px;
  border-bottom: 1px solid var(--border);
  background: transparent;
  transition: background 0.15s ease;
}
.notification-row.is-unread {
  background: rgba(232, 163, 61, 0.03);
}
.notification-main-content {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  min-width: 0;
  flex: 1;
  padding-right: 20px;
}
.notification-icon-badge {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--border);
  color: var(--text-soft);
  font-size: 15px;
}
.notification-row.is-unread .notification-icon-badge {
  background: var(--saffron-tint);
  color: var(--saffron);
}
.notification-text-wrap {
  min-width: 0;
  flex: 1;
}
.notification-title-head {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.notification-title-text {
  font-size: 14.5px;
  font-weight: 600;
  margin: 0;
  color: var(--text-1);
}
.notification-unread-tag {
  font-size: 10.5px;
  background: var(--saffron-tint);
  color: var(--saffron);
  padding: 1px 6px;
  border-radius: 4px;
  font-weight: 700;
  text-transform: uppercase;
}
.notification-body-text {
  font-size: 13px;
  color: var(--text-2);
  margin: 4px 0 6px;
  line-height: 1.4;
  word-break: break-word;
}
.notification-time-text {
  font-size: 11px;
  color: var(--text-soft);
}
.notification-actions-wrap {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-shrink: 0;
}

@media (max-width: 640px) {
  .notification-row {
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
    padding: 14px 16px;
  }
  .notification-main-content {
    padding-right: 0;
    gap: 12px;
  }
  .notification-actions-wrap {
    justify-content: flex-end;
    border-top: 1px solid var(--border-soft);
    padding-top: 10px;
    width: 100%;
  }
  .notification-actions-wrap .btn {
    flex: 1;
    text-align: center;
    justify-content: center;
  }
}
