  :root{
    --bg:#dfe6ee;
    --bg2:#e7edf4;
    --card:#e6edf5;

    --ink:#2a6f78;
    --ink-soft:#4f7f86;
    --gold:#8b6b1f;

    --shadow-dark: rgba(130, 146, 166, .30);
    --shadow-dark-2: rgba(130, 146, 166, .20);
    --shadow-light: rgba(255,255,255,.78); /* reduced brightness */
    --shadow-light-2: rgba(255,255,255,.62); /* reduced brightness */

    --hero-left-a:#edf4f8;
    --hero-left-b:#dde8ee;
    --hero-left-line:rgba(67,107,117,.14);
    --hero-left-title:#254c54;
    --hero-left-sub:#5a7077;
    --hero-left-accent:#2b9ba3;

    --icon-tl-a:#8f7226;
    --icon-tl-b:#775d1b;
    --icon-doc-a:#2b9ba3;
    --icon-doc-b:#2a7e88;
    --icon-tab-a:#2b9ba3;
    --icon-tab-b:#2a7e88;
    --icon-wf-a:#8f7226;
    --icon-wf-b:#775d1b;
    --icon-cad-a:#8f7226;
    --icon-cad-b:#775d1b;
    --icon-file-a:#2b9ba3;
    --icon-file-b:#2a7e88;
    --icon-for-a:#2b9ba3;
    --icon-for-b:#2a7e88;
    --icon-space-a:#355f86;
    --icon-space-b:#274766;
    --icon-help-a:#3b8491;
    --icon-help-b:#2b6572;

    --radius-xl: 24px;
    --radius-lg: 18px;
    --radius-md: 14px;
    --radius-sm: 10px;
  }

  html.palette-studio,
  body.palette-studio{
    --hero-left-a:#edf4f8;
    --hero-left-b:#dde8ee;
    --hero-left-line:rgba(67,107,117,.14);
    --hero-left-title:#254c54;
    --hero-left-sub:#5a7077;
    --hero-left-accent:#2b9ba3;
    --icon-tl-a:#8f7226;
    --icon-tl-b:#775d1b;
    --icon-doc-a:#2b9ba3;
    --icon-doc-b:#2a7e88;
    --icon-tab-a:#2b9ba3;
    --icon-tab-b:#2a7e88;
    --icon-wf-a:#8f7226;
    --icon-wf-b:#775d1b;
    --icon-cad-a:#8f7226;
    --icon-cad-b:#775d1b;
    --icon-file-a:#2b9ba3;
    --icon-file-b:#2a7e88;
    --icon-for-a:#2b9ba3;
    --icon-for-b:#2a7e88;
    --icon-space-a:#355f86;
    --icon-space-b:#274766;
    --icon-help-a:#3b8491;
    --icon-help-b:#2b6572;
  }

  html.palette-harbor,
  body.palette-harbor{
    --hero-left-a:#edf4f8;
    --hero-left-b:#dde8ee;
    --hero-left-line:rgba(67,107,117,.14);
    --hero-left-title:#254c54;
    --hero-left-sub:#5a7077;
    --hero-left-accent:#2b9ba3;
    --icon-tl-a:#b58735;
    --icon-tl-b:#8f6723;
    --icon-doc-a:#3198b2;
    --icon-doc-b:#267484;
    --icon-tab-a:#3f8fc2;
    --icon-tab-b:#316e97;
    --icon-wf-a:#76883f;
    --icon-wf-b:#5c6930;
    --icon-cad-a:#4b8597;
    --icon-cad-b:#375f6f;
    --icon-file-a:#597bb5;
    --icon-file-b:#435e8f;
    --icon-for-a:#3f9a88;
    --icon-for-b:#2f7868;
    --icon-space-a:#446a9b;
    --icon-space-b:#31507a;
    --icon-help-a:#5a95a9;
    --icon-help-b:#437486;
  }

  html.palette-verdant,
  body.palette-verdant{
    --hero-left-a:#edf4f8;
    --hero-left-b:#dde8ee;
    --hero-left-line:rgba(67,107,117,.14);
    --hero-left-title:#254c54;
    --hero-left-sub:#5a7077;
    --hero-left-accent:#2b9ba3;
    --icon-tl-a:#9d8332;
    --icon-tl-b:#7b6625;
    --icon-doc-a:#2f8d78;
    --icon-doc-b:#236a59;
    --icon-tab-a:#3b9b73;
    --icon-tab-b:#2d7958;
    --icon-wf-a:#74883b;
    --icon-wf-b:#58682d;
    --icon-cad-a:#478979;
    --icon-cad-b:#35675b;
    --icon-file-a:#4a7f86;
    --icon-file-b:#366067;
    --icon-for-a:#5a9177;
    --icon-for-b:#436f5a;
    --icon-space-a:#326b72;
    --icon-space-b:#255055;
    --icon-help-a:#6a9978;
    --icon-help-b:#50725b;
  }

  html.palette-slate,
  body.palette-slate{
    --hero-left-a:#edf4f8;
    --hero-left-b:#dde8ee;
    --hero-left-line:rgba(67,107,117,.14);
    --hero-left-title:#254c54;
    --hero-left-sub:#5a7077;
    --hero-left-accent:#2b9ba3;
    --icon-tl-a:#a07a54;
    --icon-tl-b:#7b5d40;
    --icon-doc-a:#4f80a7;
    --icon-doc-b:#3b627f;
    --icon-tab-a:#5b90a1;
    --icon-tab-b:#446f7d;
    --icon-wf-a:#7a7451;
    --icon-wf-b:#5d583e;
    --icon-cad-a:#607da0;
    --icon-cad-b:#49627d;
    --icon-file-a:#616da8;
    --icon-file-b:#4a5684;
    --icon-for-a:#5b8b8b;
    --icon-for-b:#456a6b;
    --icon-space-a:#465e7c;
    --icon-space-b:#33475e;
    --icon-help-a:#708ca4;
    --icon-help-b:#557089;
  }

  html.palette-sunrise,
  body.palette-sunrise{
    --hero-left-a:#edf4f8;
    --hero-left-b:#dde8ee;
    --hero-left-line:rgba(67,107,117,.14);
    --hero-left-title:#254c54;
    --hero-left-sub:#5a7077;
    --hero-left-accent:#2b9ba3;
    --icon-tl-a:#c48a36;
    --icon-tl-b:#9c6625;
    --icon-doc-a:#cb7760;
    --icon-doc-b:#a45a46;
    --icon-tab-a:#d38670;
    --icon-tab-b:#b06652;
    --icon-wf-a:#b99242;
    --icon-wf-b:#916d2f;
    --icon-cad-a:#c57e72;
    --icon-cad-b:#a25f57;
    --icon-file-a:#bc7d4f;
    --icon-file-b:#955f39;
    --icon-for-a:#c55f67;
    --icon-for-b:#9b474e;
    --icon-space-a:#9471a0;
    --icon-space-b:#77577f;
    --icon-help-a:#bf915f;
    --icon-help-b:#9a6f49;
  }

  *{ box-sizing:border-box; }
  html,body{ min-height:100%; }
  html{ background-color:#e7edf4; }
  body{
    margin:0;
    min-height:100vh;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    color:#23343a;
    background-color: var(--bg2);
    background:
      radial-gradient(1200px 600px at 15% -10%, #eef4fa 0%, transparent 65%),
      radial-gradient(1000px 500px at 110% 10%, #dbe8ef 0%, transparent 55%),
      linear-gradient(180deg,var(--bg),var(--bg2));
    background-attachment:fixed,fixed,fixed;
  }
  body.theme-bright,
  html.theme-bright body{
    --bg:#f3f2ee;
    --bg2:#faf9f6;
    --card:#f7f5f1;
    --shadow-dark: rgba(154, 146, 132, .18);
    --shadow-dark-2: rgba(154, 146, 132, .12);
    --shadow-light: rgba(255,255,255,.78);
    --shadow-light-2: rgba(255,255,255,.64);
    background-color: var(--bg2);
    background:
      radial-gradient(1200px 600px at 15% -10%, #ffffff 0%, transparent 65%),
      radial-gradient(1000px 500px at 110% 10%, #f3eee5 0%, transparent 55%),
      linear-gradient(180deg,var(--bg),var(--bg2));
    background-attachment:fixed,fixed,fixed;
  }
  body.theme-workspace,
  html.theme-workspace body{
    --bg:#edf2f7;
    --bg2:#d6e0e8;
    --card:#f2f5f8;
    --shadow-dark: rgba(23, 48, 66, .12);
    --shadow-dark-2: rgba(23, 48, 66, .08);
    --shadow-light: rgba(255,255,255,.82);
    --shadow-light-2: rgba(255,255,255,.72);
    background-color: var(--bg2);
    background:
      radial-gradient(circle at top left, rgba(255,255,255,0.8), transparent 30%),
      radial-gradient(circle at top right, rgba(212,230,242,0.74), transparent 34%),
      linear-gradient(180deg, #edf2f7 0%, #dde7f0 42%, #d6e0e8 100%);
    background-attachment:fixed,fixed,fixed;
  }

  .wrap{
    max-width: 1180px;
    margin: 0 auto;
    padding: 22px;
  }

  .neo{
    background: var(--card);
    border-radius: var(--radius-xl);
    box-shadow:
      12px 12px 24px var(--shadow-dark),
      -12px -12px 24px var(--shadow-light);
  }

  .neo-soft{
    background: var(--card);
    border-radius: var(--radius-lg);
    box-shadow:
      8px 8px 18px var(--shadow-dark-2),
      -8px -8px 18px var(--shadow-light);
  }

  .topbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:16px 18px;
    margin-bottom:18px;
    background: var(--card);
    border-radius: var(--radius-xl);
    box-shadow:none;
  }

  .brand-mini{
    display:flex;
    align-items:center;
    gap:9px;
    min-width:0;
    flex-wrap:wrap;
  }
  .brand-home{
    display:inline-flex;
    align-items:center;
    gap:9px;
    min-width:0;
    flex-wrap:wrap;
    color:inherit;
    text-decoration:none;
  }
  .brand-home:hover{
    text-decoration:none;
  }
  .brand-logo-mini{
    width:auto;
    height:92px;
    object-fit:contain;
    display:block;
    max-width:170px;
    flex:0 0 auto;
    border-radius:0;
    box-shadow:none;
    background:transparent;
    padding:0;
  }
  .brand-copy{
    min-width:0;
  }
  .brand-text{
    font-weight:800;
    color:var(--ink);
    letter-spacing:.2px;
    line-height:1.05;
  }
  .brand-note{
    margin-top:2px;
    color:#60757b;
    font-size:12px;
    line-height:1.2;
  }
  .brand-pills{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
  }
  .pill{
    font-size:12px;
    font-weight:800;
    padding:5px 10px;
    border-radius:999px;
    background: var(--card);
    box-shadow: inset 3px 3px 7px var(--shadow-dark-2), inset -3px -3px 7px var(--shadow-light);
    white-space:nowrap;
  }
  .pill.beta{ color:var(--gold); }
  .pill.founder{ color:#1f6c74; }

  .top-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    justify-content:flex-end;
  }

  .btn{
    border:0;
    border-radius: 12px;
    padding: 10px 14px;
    cursor:pointer;
    font-weight:700;
    color:#264f57;
    background: var(--card);
    /* reduced “too bright” */
    box-shadow:
      6px 6px 12px var(--shadow-dark-2),
      -6px -6px 12px var(--shadow-light-2);
    transition: transform .12s ease, box-shadow .12s ease, filter .12s ease;
  }
  .btn:hover{ transform: translateY(-1px); filter: saturate(1.02); }
  .btn:active{
    transform: translateY(0);
    box-shadow:
      inset 4px 4px 10px var(--shadow-dark-2),
      inset -4px -4px 10px var(--shadow-light-2);
  }
  .btn.is-selected{
    box-shadow:
      inset 4px 4px 10px rgba(130,146,166,.20),
      inset -4px -4px 10px rgba(255,255,255,.58);
    outline:1px solid rgba(42,111,120,.24);
  }
  .btn.primary{
    color:#fff;
    background: linear-gradient(135deg, #247580, #206571);
    box-shadow:
      10px 10px 18px rgba(42,126,136,.22),
      -6px -6px 12px rgba(255,255,255,.45);
  }
  .btn.gold{
    color:#fff;
    background: linear-gradient(135deg, #9b7a29, #82631c);
    box-shadow:
      10px 10px 18px rgba(139,107,31,.16),
      -6px -6px 12px rgba(255,255,255,.45);
  }
  .btn.danger{
    color:#fff;
    background: linear-gradient(135deg,#b64545,#8f2828);
    box-shadow:
      10px 10px 18px rgba(166,45,45,.16),
      -6px -6px 12px rgba(255,255,255,.45);
  }
  .btn.ghost{
    color: var(--ink-soft);
  }
  .btn.admin{
    color:#3b3218;
    background: linear-gradient(135deg,#f0c94d,#dcaa2a);
    box-shadow:
      10px 10px 18px rgba(181,144,33,.18),
      -6px -6px 12px rgba(255,255,255,.45);
  }

  .hero{
    display:grid;
    grid-template-columns: 1.1fr .9fr;
    gap:18px;
    margin-bottom:18px;
  }

  .launch-intro{
    padding:22px;
    margin-bottom:18px;
    position:relative;
    overflow:hidden;
    border:1px solid var(--hero-left-line);
    background:
      radial-gradient(circle at top left, rgba(255,255,255,.88), transparent 44%),
      linear-gradient(135deg, var(--hero-left-a), var(--hero-left-b));
  }
  .launch-intro::before{
    content:"";
    position:absolute;
    inset:auto -8% -26% auto;
    width:240px;
    height:240px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(255,255,255,.72), rgba(255,255,255,0));
    pointer-events:none;
  }
  .launch-intro::after{
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:8px;
    background:linear-gradient(180deg, var(--hero-left-accent), rgba(255,255,255,0));
    opacity:.92;
    pointer-events:none;
  }
  .launch-copy{
    position:relative;
    z-index:1;
    display:grid;
    gap:10px;
    max-width:none;
  }
  .launch-copy p{
    margin:0;
    color:var(--hero-left-sub);
    font-size:15px;
    line-height:1.5;
  }
  .launch-facts{
    position:relative;
    z-index:1;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:14px;
  }
  .launch-fact{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 11px;
    border-radius:999px;
    font-size:12px;
    font-weight:700;
    color:#355868;
    background:rgba(255,255,255,.7);
    border:1px solid rgba(67,107,117,.12);
    box-shadow:0 8px 18px rgba(23,48,66,.08);
  }

  .hero-left{
    padding:22px;
    min-height: 220px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    position:relative;
    overflow:hidden;
    border:1px solid var(--hero-left-line);
    background:
      radial-gradient(circle at top left, rgba(255,255,255,.88), transparent 44%),
      linear-gradient(135deg, var(--hero-left-a), var(--hero-left-b));
  }
  .hero-left::before{
    content:"";
    position:absolute;
    inset:auto -10% -24% auto;
    width:240px;
    height:240px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(255,255,255,.70), rgba(255,255,255,0));
    pointer-events:none;
  }
  .hero-left::after{
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:8px;
    background:linear-gradient(180deg, var(--hero-left-accent), rgba(255,255,255,0));
    opacity:.92;
    pointer-events:none;
  }

  .hero-title{
    margin: 0 0 6px;
    font-size: clamp(25px, 3vw, 33px);
    line-height:1.05;
    color: var(--hero-left-title);
    letter-spacing:.2px;
    position:relative;
    z-index:1;
  }
  .hero-sub{
    margin:0;
    color:var(--hero-left-sub);
    font-size:15px;
    line-height:1.45;
    max-width: 70ch;
    position:relative;
    z-index:1;
  }
  .hero-use-grid{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:16px;
  }
  .hero-use-card{
    padding:12px 13px;
    border-radius:14px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(67,107,117,.12);
    box-shadow:0 10px 20px rgba(23,48,66,.08);
  }
  .hero-use-card strong{
    display:block;
    margin:0 0 4px;
    font-size:13px;
    color:#264f57;
  }
  .hero-use-card span{
    display:block;
    font-size:12px;
    line-height:1.45;
    color:#5b727a;
  }

  .hero-right{
    padding:18px;
    display:flex;
    flex-direction:column;
    gap:14px;
  }

  .status-card{
    padding:16px;
    border-radius:16px;
    background: var(--card);
    box-shadow:
      inset 4px 4px 10px rgba(130,146,166,.14),
      inset -4px -4px 10px rgba(255,255,255,.82);
  }
  .status-card h3{
    margin:0 0 8px;
    color:var(--ink);
    font-size:15px;
  }
  .status-card p{
    margin:0;
    color:#5a6e74;
    font-size:14px;
    line-height:1.4;
  }

  .status-list{
    margin:10px 0 0;
    padding:0;
    list-style:none;
    display:grid;
    gap:8px;
  }
  .status-list li{
    display:grid;
    grid-template-columns: 10px 1fr;
    align-items:start;
    gap:10px;
    font-size:14px;
    color:#40565d;
    line-height:1.35;
  }
  .status-copy{
    display:block;
    min-width:0;
  }
  .phase-name{
    display:block;
    margin-bottom:2px;
    color:#254f57;
  }
  .dot{
    width:10px;height:10px;border-radius:50%;
    flex:0 0 10px;
    margin-top:3px;
    box-shadow: 0 0 0 2px rgba(255,255,255,.45), 0 0 0 4px rgba(0,0,0,.02);
  }
  .dot.ok{ background: #33a06f; }
  .dot.wait{ background: #c89a31; }
  .dot.info{ background: #2b9ba3; }

  .apps{
    padding:18px;
    margin-bottom:18px;
  }

  .apps-head{
    display:flex;
    justify-content:flex-start;
    align-items:flex-end;
    gap:10px;
    margin-bottom:14px;
    flex-wrap:wrap;
  }
  .apps-head h2{
    margin:0;
    color:var(--ink);
    font-size:20px;
  }
  .grid{
    display:grid;
    grid-template-columns: repeat(12, minmax(0,1fr));
    gap:14px;
  }

  .app-card{
    position:relative;
    padding:16px;
    border-radius:16px;
    background: var(--card);
    box-shadow:
      7px 7px 16px rgba(130,146,166,.20),
      -7px -7px 16px rgba(255,255,255,.80);
    display:flex;
    flex-direction:column;
    gap:10px;
    min-height: 180px;
    grid-column:span 4;
    cursor:pointer;
    transition:transform .12s ease, box-shadow .12s ease;
  }
  .app-card-half,
  .app-card.is-compact{
    grid-column:span 3;
    min-height:156px;
  }
  .app-card:hover{
    transform:translateY(-1px);
    box-shadow:
      9px 9px 18px rgba(130,146,166,.22),
      -9px -9px 18px rgba(255,255,255,.82);
  }
  .app-card.is-disabled{
    cursor:default;
  }
  .app-card.is-disabled:hover{
    transform:none;
    box-shadow:
      7px 7px 16px rgba(130,146,166,.20),
      -7px -7px 16px rgba(255,255,255,.80);
  }
  .app-top{
    display:flex;
    align-items:center;
    gap:10px;
  }
  .app-top > div:not(.app-icon){
    min-width:0;
    flex:1;
    padding-right:32px;
  }
  .app-icon{
    width:57px;height:57px;border-radius:12px;
    display:grid;place-items:center;
    font-weight:900;
    font-size:14px;
    letter-spacing:.3px;
    color:#fff;
    box-shadow: inset 1px 1px 2px rgba(255,255,255,.22);
  }
  .i-tl{
    background: linear-gradient(135deg,var(--icon-tl-a),var(--icon-tl-b));
  }
  .i-doc{ background: linear-gradient(135deg,var(--icon-doc-a),var(--icon-doc-b)); }
  .i-tab{ background: linear-gradient(135deg,var(--icon-tab-a),var(--icon-tab-b)); }
  .i-task{ background: linear-gradient(135deg,var(--icon-tab-a),var(--icon-tab-b)); }
  .i-wf{ background: linear-gradient(135deg,var(--icon-wf-a),var(--icon-wf-b)); }
  .i-cad{ background: linear-gradient(135deg,var(--icon-cad-a),var(--icon-cad-b)); }
  .i-file{ background: linear-gradient(135deg,var(--icon-file-a),var(--icon-file-b)); }
  .i-for{ background: linear-gradient(135deg,var(--icon-for-a),var(--icon-for-b)); }
  .i-space{ background: linear-gradient(135deg,var(--icon-space-a),var(--icon-space-b)); }
  .i-help{ background: linear-gradient(135deg,var(--icon-help-a),var(--icon-help-b)); }
  .i-records{ background:linear-gradient(145deg,#287f83,#205665); }
  .records-app-glyph{
    position:relative;
    width:30px;
    height:34px;
    border:2px solid rgba(255,255,255,.92);
    border-radius:5px;
    background:rgba(255,255,255,.08);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
  }
  .records-app-glyph::before,
  .records-app-glyph::after{
    content:"";
    position:absolute;
    display:block;
  }
  .records-app-glyph::before{
    left:5px;
    top:7px;
    width:4px;
    height:4px;
    border-radius:1px;
    background:#f0c96a;
    box-shadow:0 8px 0 #f0c96a,0 16px 0 #f0c96a;
  }
  .records-app-glyph::after{
    left:12px;
    top:8px;
    width:12px;
    height:2px;
    border-radius:2px;
    background:#fff;
    box-shadow:0 8px 0 #fff,0 16px 0 #fff;
  }

  .records-app-card{
    grid-column:1 / -1;
    min-height:134px;
    display:grid;
    grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);
    align-items:center;
    column-gap:28px;
  }
  .records-app-card .app-desc{
    max-width:76ch;
    padding-right:232px;
  }
  .records-app-card > .app-top,
  .records-app-card > .app-desc{
    position:relative;
    z-index:2;
  }
  .records-app-card .app-about-btn{
    z-index:3;
  }
  .records-app-owl{
    position:absolute;
    z-index:1;
    top:-36px;
    right:30px;
    width:196px;
    height:214px;
    background:url("/arteff/workstudio-404-owl.png") center 34% / cover no-repeat;
    opacity:.15;
    filter:saturate(.78) contrast(.92);
    -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 30%, #000 100%);
    mask-image:linear-gradient(90deg, transparent 0, #000 30%, #000 100%);
    pointer-events:none;
  }

  .app-name{
    font-weight:800;
    font-size:19px;
    color:#274f57;
    margin:0;
    line-height:1.1;
  }
  .app-tag{
    margin:2px 0 0;
    color:#6a7e84;
    font-size:14px;
  }
  .app-version{
    margin:2px 0 0;
    color:#4f6770;
    font-size:13px;
    font-weight:800;
  }

  .app-desc{
    margin:2px 0 0;
    color:#556b72;
    font-size:17px;
    line-height:1.4;
    flex:1;
    padding-right:32px;
  }
  .app-card-half .app-name,
  .app-card.is-compact .app-name{
    font-size:17px;
  }
  .app-card-half .app-tag,
  .app-card.is-compact .app-tag{
    font-size:13px;
  }
  .app-card-half .app-version,
  .app-card.is-compact .app-version{
    font-size:12px;
  }
  .app-card-half .app-desc,
  .app-card.is-compact .app-desc{
    font-size:14px;
    line-height:1.35;
  }
  .app-card-half .app-top > div:not(.app-icon),
  .app-card.is-compact .app-top > div:not(.app-icon){
    padding-right:36px;
  }
  .app-card-stack .app-top{
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
  }
  .app-card-stack .app-top > div:not(.app-icon){
    width:100%;
    padding-right:0;
  }
  .app-card-stack .app-name{
    font-size:16px;
  }
  .app-card-stack .app-tag{
    font-size:12px;
    line-height:1.25;
  }
  .app-card-stack .app-desc{
    padding-right:0;
  }
  body.theme-workspace .app-card,
  html.theme-workspace .app-card,
  .launch-apps-surface .app-card{
    isolation:isolate;
    overflow:hidden;
    gap:14px;
    min-height:188px;
    padding:18px;
    border:1px solid rgba(194,209,221,.96);
    border-radius:22px;
    color:#173145;
    background:
      linear-gradient(160deg, rgba(255,255,255,0.98), rgba(242,247,251,0.92)),
      linear-gradient(135deg, rgba(213,226,236,0.46), rgba(255,255,255,0.14));
    box-shadow:
      0 18px 38px rgba(26,53,72,.12),
      inset 0 1px 0 rgba(255,255,255,.80);
  }
  body.theme-workspace .app-card::before,
  html.theme-workspace .app-card::before,
  .launch-apps-surface .app-card::before{
    content:"";
    position:absolute;
    inset:auto -25% -20% auto;
    width:180px;
    height:180px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(255,255,255,0.92), rgba(255,255,255,0));
    opacity:.52;
    pointer-events:none;
  }
  body.theme-workspace .app-card::after,
  html.theme-workspace .app-card::after,
  .launch-apps-surface .app-card::after{
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:6px;
    background:linear-gradient(180deg, var(--pane-accent, #2b5c7f), rgba(255,255,255,0));
    opacity:.94;
    pointer-events:none;
  }
  body.theme-workspace .app-card:hover,
  html.theme-workspace .app-card:hover,
  .launch-apps-surface .app-card:hover{
    transform:translateY(-2px);
    box-shadow:
      0 22px 42px rgba(18,40,58,.14),
      inset 0 1px 0 rgba(255,255,255,.86);
  }
  body.theme-workspace .app-card.is-disabled:hover,
  html.theme-workspace .app-card.is-disabled:hover,
  .launch-apps-surface .app-card.is-disabled:hover{
    transform:none;
    box-shadow:
      0 18px 38px rgba(26,53,72,.12),
      inset 0 1px 0 rgba(255,255,255,.80);
  }
  body.theme-workspace .app-top,
  html.theme-workspace .app-top,
  .launch-apps-surface .app-top{
    align-items:flex-start;
  }
  body.theme-workspace .app-card.is-compact,
  html.theme-workspace .app-card.is-compact,
  .launch-apps-surface .app-card.is-compact{
    min-height:152px;
    padding:16px;
    gap:10px;
  }
  body.theme-workspace .app-top > div:not(.app-icon),
  html.theme-workspace .app-top > div:not(.app-icon),
  .launch-apps-surface .app-top > div:not(.app-icon){
    padding-right:34px;
  }
  body.theme-workspace .app-icon,
  html.theme-workspace .app-icon,
  .launch-apps-surface .app-icon{
    width:56px;
    height:56px;
    border-radius:18px;
    font-size:16px;
    letter-spacing:.04em;
    background:linear-gradient(145deg, var(--pane-accent, #2b5c7f), var(--pane-accent-dark, #21445d));
    box-shadow:0 10px 22px rgba(25,56,79,.22);
  }
  body.theme-workspace .app-name,
  html.theme-workspace .app-name,
  .launch-apps-surface .app-name{
    font-size:18px;
    font-weight:700;
    letter-spacing:-.02em;
    color:#18344b;
  }
  body.theme-workspace .app-tag,
  html.theme-workspace .app-tag,
  .launch-apps-surface .app-tag{
    margin:0;
    font-size:11px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:#607a90;
  }
  body.theme-workspace .app-desc,
  html.theme-workspace .app-desc,
  .launch-apps-surface .app-desc{
    margin:0;
    max-width:44ch;
    font-size:13px;
    line-height:1.5;
    color:#537183;
  }
  body.theme-workspace .app-card.is-compact .app-name,
  html.theme-workspace .app-card.is-compact .app-name,
  .launch-apps-surface .app-card.is-compact .app-name{
    font-size:16px;
  }
  body.theme-workspace .app-card.is-compact .app-tag,
  html.theme-workspace .app-card.is-compact .app-tag,
  .launch-apps-surface .app-card.is-compact .app-tag{
    font-size:10px;
  }
  body.theme-workspace .app-card.is-compact .app-desc,
  html.theme-workspace .app-card.is-compact .app-desc,
  .launch-apps-surface .app-card.is-compact .app-desc{
    font-size:12px;
    line-height:1.42;
  }
  body.theme-workspace .app-about-btn,
  html.theme-workspace .app-about-btn,
  .launch-apps-surface .app-about-btn{
    background:rgba(255,255,255,.88);
    color:#4c697e;
    box-shadow:0 8px 16px rgba(23,48,66,.10);
  }
  body.theme-workspace .app-card[data-app-open="timeline"],
  html.theme-workspace .app-card[data-app-open="timeline"],
  .launch-apps-surface .app-card[data-app-open="timeline"]{ --pane-accent:var(--icon-tl-a); --pane-accent-dark:var(--icon-tl-b); }
  body.theme-workspace .app-card[data-app-open="docstudio"],
  html.theme-workspace .app-card[data-app-open="docstudio"],
  .launch-apps-surface .app-card[data-app-open="docstudio"]{ --pane-accent:var(--icon-doc-a); --pane-accent-dark:var(--icon-doc-b); }
  body.theme-workspace .app-card[data-app-open="tablestudio"],
  html.theme-workspace .app-card[data-app-open="tablestudio"],
  .launch-apps-surface .app-card[data-app-open="tablestudio"]{ --pane-accent:var(--icon-tab-a); --pane-accent-dark:var(--icon-tab-b); }
  body.theme-workspace .app-card[data-app-open="taskboard"],
  html.theme-workspace .app-card[data-app-open="taskboard"],
  .launch-apps-surface .app-card[data-app-open="taskboard"]{ --pane-accent:var(--icon-tab-a); --pane-accent-dark:var(--icon-tab-b); }
  body.theme-workspace .app-card[data-app-open="workflow"],
  html.theme-workspace .app-card[data-app-open="workflow"],
  .launch-apps-surface .app-card[data-app-open="workflow"]{ --pane-accent:var(--icon-wf-a); --pane-accent-dark:var(--icon-wf-b); }
  body.theme-workspace .app-card[data-app-open="cadstudio"],
  html.theme-workspace .app-card[data-app-open="cadstudio"],
  .launch-apps-surface .app-card[data-app-open="cadstudio"]{ --pane-accent:var(--icon-cad-a); --pane-accent-dark:var(--icon-cad-b); }
  body.theme-workspace .app-card[data-app-open="filestudio"],
  html.theme-workspace .app-card[data-app-open="filestudio"],
  .launch-apps-surface .app-card[data-app-open="filestudio"]{ --pane-accent:var(--icon-file-a); --pane-accent-dark:var(--icon-file-b); }
  body.theme-workspace .app-card[data-app-open="forum"],
  html.theme-workspace .app-card[data-app-open="forum"],
  .launch-apps-surface .app-card[data-app-open="forum"]{ --pane-accent:var(--icon-for-a); --pane-accent-dark:var(--icon-for-b); }
  body.theme-workspace .app-card[data-app-open="workspace"],
  html.theme-workspace .app-card[data-app-open="workspace"],
  .launch-apps-surface .app-card[data-app-open="workspace"]{ --pane-accent:var(--icon-space-a); --pane-accent-dark:var(--icon-space-b); }
  body.theme-workspace .app-card[data-app-open="help"],
  html.theme-workspace .app-card[data-app-open="help"],
  .launch-apps-surface .app-card[data-app-open="help"]{ --pane-accent:var(--icon-help-a); --pane-accent-dark:var(--icon-help-b); }
  body.theme-workspace .app-card[data-app-open="records"],
  html.theme-workspace .app-card[data-app-open="records"],
  .launch-apps-surface .app-card[data-app-open="records"]{ --pane-accent:#287f83; --pane-accent-dark:#205665; }
  body.theme-workspace .records-app-card,
  html.theme-workspace .records-app-card,
  .launch-apps-surface .records-app-card{
    grid-column:1 / -1;
    min-height:134px;
    display:grid;
    grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);
    align-items:center;
    column-gap:28px;
  }
  body.theme-workspace .records-app-card .app-desc,
  html.theme-workspace .records-app-card .app-desc,
  .launch-apps-surface .records-app-card .app-desc{
    max-width:76ch;
    padding-right:232px;
  }
  .app-about-btn{
    position:absolute;
    top:10px;
    right:10px;
    width:24px;
    height:24px;
    border-radius:999px;
    border:1px solid rgba(130,146,166,.28);
    background:rgba(255,255,255,.52);
    color:#2f6770;
    font-size:13px;
    font-weight:900;
    line-height:1;
    display:grid;
    place-items:center;
    cursor:pointer;
    box-shadow:3px 3px 8px rgba(130,146,166,.18),-3px -3px 8px rgba(255,255,255,.78);
  }
  .app-about-btn:hover{
    filter:saturate(1.05);
  }
  .app-about-btn:active{
    box-shadow:inset 2px 2px 5px rgba(130,146,166,.18),inset -2px -2px 5px rgba(255,255,255,.78);
  }

  .btn-mini{
    border:0;
    border-radius:9px;
    padding:6px 8px;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
    background: var(--card);
    color:#365960;
    box-shadow:
      5px 5px 10px rgba(130,146,166,.18),
      -5px -5px 10px rgba(255,255,255,.78);
  }
  .btn-mini:active{
    box-shadow:
      inset 4px 4px 8px rgba(130,146,166,.18),
      inset -4px -4px 8px rgba(255,255,255,.78);
  }

  .footer-note{
    padding:14px 16px;
    color:#5c7278;
    font-size:13px;
    line-height:1.45;
  }
  .section-lead{
    margin:2px 0 0;
    color:#5c7278;
    font-size:14px;
    line-height:1.4;
  }
  .plans{
    padding:18px;
    margin-bottom:18px;
  }
  .plan-grid{
    margin-top:14px;
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(220px,1fr));
    gap:14px;
  }
  .plan-card{
    padding:16px;
    border-radius:16px;
    background: var(--card);
    box-shadow:
      inset 4px 4px 10px rgba(130,146,166,.12),
      inset -4px -4px 10px rgba(255,255,255,.78);
    display:flex;
    flex-direction:column;
    gap:10px;
    min-height: 228px;
  }
  .plan-card.current{
    outline:1px solid rgba(42,111,120,.28);
    box-shadow:
      inset 4px 4px 10px rgba(130,146,166,.12),
      inset -4px -4px 10px rgba(255,255,255,.78),
      0 10px 20px rgba(42,111,120,.12);
  }
  .plan-card.coming{
    opacity:.94;
  }
  .plan-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:10px;
  }
  .plan-name{
    margin:0;
    color:#274f57;
    font-size:18px;
    font-weight:800;
    line-height:1.1;
  }
  .plan-price{
    margin:3px 0 0;
    color:#60757b;
    font-size:13px;
    font-weight:700;
  }
  .plan-tag{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:6px 10px;
    border-radius:999px;
    font-size:11px;
    font-weight:900;
    letter-spacing:.02em;
    color:#2c5c65;
    background: rgba(255,255,255,.55);
    border:1px solid rgba(130,146,166,.18);
    text-align:center;
  }
  .plan-tag.live{
    color:#1f6a50;
    background:rgba(226,246,236,.96);
    border-color:rgba(51,160,111,.22);
  }
  .plan-tag.soon{
    color:#7d5d1e;
    background:rgba(250,241,217,.96);
    border-color:rgba(200,154,49,.24);
  }
  .plan-tag.target{
    color:#295b7a;
    background:rgba(226,239,251,.96);
    border-color:rgba(87,132,178,.22);
  }
  .plan-tag.later{
    color:#6a5b79;
    background:rgba(239,233,247,.96);
    border-color:rgba(143,121,168,.22);
  }
  .plan-copy{
    margin:0;
    color:#5a6f75;
    font-size:14px;
    line-height:1.42;
  }
  .plan-list{
    margin:0;
    padding:0;
    list-style:none;
    display:grid;
    gap:7px;
  }
  .plan-list li{
    display:grid;
    grid-template-columns: 10px 1fr;
    gap:10px;
    font-size:13px;
    color:#40565d;
    line-height:1.35;
  }
  .plan-banner{
    margin-top:14px;
    padding:12px 14px;
    border-radius:14px;
    background:rgba(255,255,255,.42);
    box-shadow: inset 2px 2px 6px rgba(130,146,166,.10);
    color:#536970;
    font-size:13px;
    line-height:1.45;
  }
  .plan-actions{
    margin-top:14px;
    padding:14px;
    border-radius:16px;
    background:rgba(255,255,255,.46);
    box-shadow: inset 2px 2px 6px rgba(130,146,166,.10);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
  }
  .plan-actions-copy{
    flex:1 1 auto;
    color:#536970;
    font-size:13px;
    line-height:1.45;
  }
  .plan-actions-copy strong{
    color:#274f57;
  }
  .plan-comparison-wrap{
    overflow-x:auto;
    border-radius:16px;
    background:rgba(255,255,255,.54);
    box-shadow:
      inset 3px 3px 8px rgba(130,146,166,.11),
      inset -3px -3px 8px rgba(255,255,255,.74);
  }
  .plan-comparison-table{
    width:100%;
    min-width:1100px;
    border-collapse:separate;
    border-spacing:0;
    color:#3e535a;
  }
  .plan-comparison-table th,
  .plan-comparison-table td{
    padding:12px;
    border-right:1px solid rgba(130,146,166,.18);
    border-bottom:1px solid rgba(130,146,166,.18);
    text-align:left;
    vertical-align:top;
    font-size:13px;
    line-height:1.38;
  }
  .plan-comparison-table th:last-child,
  .plan-comparison-table td:last-child{
    border-right:0;
  }
  .plan-comparison-table tr:last-child th,
  .plan-comparison-table tr:last-child td{
    border-bottom:0;
  }
  .plan-comparison-table thead th{
    background:rgba(255,255,255,.74);
    color:#274f57;
  }
  .plan-comparison-table tbody th{
    width:160px;
    min-width:160px;
    color:#274f57;
    font-weight:800;
    background:rgba(255,255,255,.64);
  }
  .plan-comparison-table thead th:first-child,
  .plan-comparison-table tbody th{
    position:sticky;
    left:0;
    z-index:2;
    box-shadow:8px 0 12px rgba(130,146,166,.08);
  }
  .plan-comparison-table thead th:first-child{
    z-index:3;
  }
  .plan-comparison-plan{
    display:grid;
    gap:5px;
    min-width:0;
  }
  .plan-comparison-name{
    color:#274f57;
    font-size:15px;
    font-weight:800;
    line-height:1.15;
  }
  .plan-comparison-price{
    color:#60757b;
    font-size:12px;
    font-weight:800;
  }
  .plan-comparison-table .plan-tag{
    justify-self:flex-start;
    white-space:nowrap;
  }
  .plan-detail-section{
    margin-top:18px;
  }
  .plan-detail-section h4{
    margin:0 0 8px;
    color:#274f57;
    font-size:16px;
  }
  .plan-addon-grid{
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(220px,1fr));
    gap:12px;
  }
  .plan-addon-card{
    padding:14px;
    border-radius:16px;
    background:rgba(255,255,255,.52);
    box-shadow:
      inset 3px 3px 8px rgba(130,146,166,.11),
      inset -3px -3px 8px rgba(255,255,255,.74);
    display:flex;
    flex-direction:column;
    gap:8px;
  }
  .plan-addon-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:10px;
  }
  .plan-note-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:24px;
    padding:4px 8px;
    border-radius:999px;
    font-size:11px;
    font-weight:800;
    color:#5d6673;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(130,146,166,.18);
  }
  .plan-addon-copy{
    margin:0;
    color:#566b72;
    font-size:13px;
    line-height:1.45;
  }
  .legal-cols{
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid rgba(130,146,166,.20);
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
  }
  .legal-col{min-width:0;}
  .legal-col h4{
    margin:0 0 6px;
    font-size:11px;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#5e747a;
    font-weight:800;
  }
  .col-links{display:flex;flex-direction:column;gap:3px;align-items:flex-start;}
  .col-links .tiny-link{
    font-size:12.5px;
    line-height:1.5;
    font-weight:400;
    padding:0;
    border:0;
    background:transparent;
    color:var(--ink);
    text-decoration:none;
    text-align:left;
  }
  .col-links .tiny-link:hover{text-decoration:underline;}
  .anpc-sal-pictogram-link{
    display:block;
    width:250px;
    height:50px;
    margin-top:6px;
    line-height:0;
    border-radius:6px;
    overflow:hidden;
  }
  .anpc-sal-pictogram-link img{
    display:block;
    width:250px;
    height:50px;
    border:0;
  }
  .legal-base{
    margin-top:12px;
    padding-top:10px;
    border-top:1px solid rgba(130,146,166,.20);
    display:flex;
    gap:8px 16px;
    flex-wrap:wrap;
    align-items:center;
    font-size:12px;
    color:#5e747a;
  }
  .legal-base .tiny-link{
    border:0;
    background:transparent;
    padding:0;
    font-size:12px;
    font-weight:400;
    color:var(--ink);
  }
  @media(max-width:720px){
    .legal-cols{grid-template-columns:1fr;}
  }
  .reveal-email{
    color:#3f5b62;
    font-weight:700;
    word-break:break-all;
  }

  /* ---------- MODALS ---------- */
  .overlay{
    position:fixed;
    inset:0;
    background: rgba(16, 29, 33, .35);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    opacity:0;
    visibility:hidden;
    transition: opacity .18s ease, visibility .18s ease;
    z-index:900;
  }
  .overlay.show{ opacity:1; visibility:visible; }

  .modal{
    position:fixed;
    inset:0;
    display:grid;
    place-items:center;
    padding:16px;
    z-index:901;
    pointer-events:none;
    overflow-y:auto;
  }
  .modal.is-submodal-active{
    pointer-events:auto;
    background:rgba(20,48,55,.16);
    backdrop-filter:blur(1px);
  }

  /* reduced bright shadow */
  .modal-card{
    width:min(460px, 100%);
    max-height:min(calc(100vh - 32px), 920px);
    background: var(--card);
    border-radius:22px;
    box-shadow:
      16px 16px 28px rgba(86,104,124,.26),
      -8px -8px 16px rgba(255,255,255,.40);
    border:1px solid rgba(255,255,255,.34);
    transform: translateY(10px) scale(.985);
    opacity:0;
    transition: transform .18s ease, opacity .18s ease;
    pointer-events:auto;
    display:none;
    flex-direction:column;
    overflow:hidden;
  }
  .modal-card.show{
    display:flex;
    opacity:1;
    transform: translateY(0) scale(1);
  }

  .modal-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:16px 16px 10px;
  }
  .modal-head-actions{
    display:flex;
    align-items:center;
    gap:8px;
    margin-left:auto;
  }
  .modal-head h3{
    margin:0;
    color:var(--ink);
    font-size:18px;
  }
  .hidden{
    display:none !important;
  }

  .icon-btn{
    border:0;
    width:34px;height:34px;
    border-radius:10px;
    cursor:pointer;
    background: var(--card);
    color:#5f7278;
    box-shadow:
      5px 5px 10px rgba(130,146,166,.18),
      -5px -5px 10px rgba(255,255,255,.78);
    font-size:18px;
    line-height:1;
  }
  .icon-btn:active{
    box-shadow:
      inset 4px 4px 8px rgba(130,146,166,.18),
      inset -4px -4px 8px rgba(255,255,255,.78);
  }

  .modal-body{
    padding: 0 16px 16px;
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overscroll-behavior:contain;
  }

  .help-text{
    margin:0 0 12px;
    color:#62767c;
    font-size:13px;
    line-height:1.4;
  }
  .help-text.note{
    margin-top:-2px;
    color:#667c82;
  }

  .field{ margin-bottom:10px; }
  .field label{
    display:block;
    margin-bottom:6px;
    font-size:13px;
    color:#4f6770;
    font-weight:800;
  }
  .field input,
  .field textarea,
  .field select{
    width:100%;
    border:1px solid rgba(130,146,166,.26);
    outline:none;
    border-radius:12px;
    padding:11px 12px;
    background: var(--card);
    color:#27434a;
    font:inherit;
    box-shadow:
      inset 5px 5px 10px rgba(130,146,166,.16),
      inset -5px -5px 10px rgba(255,255,255,.82);
  }
  .field textarea{
    min-height:88px;
    resize:vertical;
  }
  .field input::placeholder,
  .field textarea::placeholder{ color:#8a9ca3; }
  .field input.is-valid,
  .field textarea.is-valid,
  .field select.is-valid{
    border-color: rgba(51,160,111,.8);
    background: #edf9f3;
  }
  .field input.is-invalid,
  .field textarea.is-invalid,
  .field select.is-invalid{
    border-color: rgba(200,81,93,.95);
    background: #fff0f2;
  }
  .field-note{
    margin-top:6px;
    font-size:12px;
    line-height:1.35;
    color:#677b82;
  }
  .field-note.err{ color:#b13f4b; }
  .field-note.ok{ color:#2a825c; }
  #restoreDrillSnapshotName.is-invalid,
  #restoreDrillAccountId.is-invalid,
  #restoreDrillWorkspaceId.is-invalid,
  #restoreDrillProjectId.is-invalid{
    color:#b42318;
    font-weight:800;
  }
  .restore-drill-copy-source{
    position:absolute;
    left:-10000px;
    width:1px;
    height:1px;
    opacity:0;
    pointer-events:none;
  }
  .restore-drill-command-preview{
    width:100%;
    min-height:380px;
    max-height:520px;
    overflow:auto;
    white-space:pre-wrap;
    word-break:break-word;
    margin:0;
    padding:12px;
    border:1px solid var(--line);
    border-radius:14px;
    background:rgba(255,255,255,.92);
    color:var(--text);
    font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  }
  .restore-drill-command-preview.console-evidence{
    min-height:180px;
    max-height:420px;
  }
  .restore-drill-token-warn{
    display:inline-block;
    padding:0 2px;
    border:1px solid rgba(180,35,24,.28);
    border-radius:4px;
    background:rgba(180,35,24,.1);
    color:#b42318;
    font-weight:800;
  }
  .restore-drill-step-copies{
    display:grid;
    gap:12px;
    margin:14px 0;
  }
  .restore-drill-copy-card{
    padding:12px;
    border:1px solid rgba(34,110,145,.24);
    border-radius:14px;
    background:rgba(246,251,253,.9);
  }
  .restore-drill-copy-card-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:8px;
  }
  .restore-drill-copy-card-title{
    color:#27434a;
    font-size:13px;
    font-weight:900;
    line-height:1.4;
  }
  .restore-drill-copy-card-context{
    display:block;
    margin-top:2px;
    color:#64777e;
    font-size:11px;
    font-weight:700;
  }
  .restore-drill-copy-card pre{
    max-height:260px;
    margin:0;
    padding:10px;
    overflow:auto;
    white-space:pre;
    border:1px solid var(--line);
    border-radius:10px;
    background:#fff;
    font:11px/1.45 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  }
  .restore-drill-copy-warning{
    margin:12px 0;
    padding:11px 12px;
    border:1px solid rgba(180,35,24,.28);
    border-radius:12px;
    background:rgba(255,240,242,.9);
    color:#8f2731;
    font-size:13px;
    font-weight:800;
    line-height:1.45;
  }
  .restore-drill-steps{
    margin:14px 0;
    padding:14px;
    border:1px solid var(--line);
    border-radius:14px;
    background:rgba(255,255,255,.72);
  }
  .restore-drill-steps h4{
    margin:0 0 8px;
    font-size:15px;
  }
  .restore-drill-steps ol{
    margin:0;
    padding-left:22px;
  }
  .restore-drill-steps li{
    margin:0 0 10px;
    padding-left:4px;
    line-height:1.45;
  }
  .restore-drill-steps li:last-child{ margin-bottom:0; }
  .restore-drill-step-evidence{
    display:block;
    margin-top:3px;
    color:#64777e;
    font-size:12px;
  }
  .restore-drill-scope-guidance{
    margin:0 0 10px;
    color:#40565e;
    font-size:13px;
    line-height:1.45;
  }
  .restore-drill-full-guide{
    margin:14px 0;
    padding:14px;
    border:1px solid rgba(34,110,145,.28);
    border-radius:14px;
    background:rgba(236,248,253,.78);
  }
  .restore-drill-full-guide h4{
    margin:0 0 8px;
    font-size:15px;
  }
  .restore-drill-full-guide p{
    margin:7px 0;
    color:#40565e;
    font-size:13px;
    line-height:1.5;
  }
  .restore-drill-full-guide ol,
  .restore-drill-full-guide ul{
    margin:8px 0;
    padding-left:22px;
  }
  .restore-drill-full-guide li{
    margin:0 0 8px;
    line-height:1.45;
  }
  .restore-drill-lookup-command{
    margin:10px 0;
    padding:10px;
    overflow:auto;
    white-space:pre-wrap;
    word-break:break-word;
    border:1px solid var(--line);
    border-radius:10px;
    background:rgba(255,255,255,.92);
    color:var(--text);
    font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  }
  .restore-drill-readiness{
    margin-top:10px;
    padding:10px;
    border:1px solid var(--line);
    border-radius:10px;
    background:rgba(255,255,255,.76);
    font-size:13px;
    line-height:1.45;
  }
  .restore-drill-readiness ul{
    margin:6px 0 0;
    padding-left:20px;
  }
  .restore-drill-readiness .ready{ color:#247252; }
  .restore-drill-readiness .blocked{ color:#a53b46; }
  .restore-drill-console-links{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:10px 0;
  }
  .restore-drill-console-plan{
    margin:10px 0;
    padding:10px;
    border:1px solid var(--line);
    border-radius:10px;
    background:rgba(255,255,255,.76);
    color:#40565e;
    font-size:13px;
    line-height:1.45;
  }
  .restore-drill-console-plan ul{
    margin:6px 0 0;
    padding-left:20px;
  }
  .restore-drill-console-commands{
    display:grid;
    gap:10px;
    margin-top:12px;
  }
  .restore-drill-console-command{
    padding:10px;
    border:1px solid rgba(34,110,145,.22);
    border-radius:10px;
    background:rgba(255,255,255,.88);
  }
  .restore-drill-console-command pre{
    max-height:180px;
    margin:8px 0;
    padding:9px;
    overflow:auto;
    white-space:pre-wrap;
    word-break:break-word;
    border:1px solid var(--line);
    border-radius:8px;
    background:#fff;
    color:var(--text);
    font:12px/1.45 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  }

  .row-2{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
  }

  .row-between{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    margin:10px 0 12px;
  }

  .tiny-link{
    border:0;
    background:transparent;
    color:var(--ink);
    cursor:pointer;
    font-size:13px;
    padding:0;
    font-weight:800;
  }

  .chk{
    display:flex;
    align-items:center;
    gap:8px;
    color:#5f7278;
    font-size:13px;
  }
  .chk.invalid{
    color:#b13f4b;
  }
  .chk.invalid input[type="checkbox"]{
    accent-color:#b13f4b;
    outline:2px solid rgba(177,63,75,.32);
    outline-offset:1px;
    border-radius:3px;
  }
  .chk.invalid a{
    color:#b13f4b;
  }
  .chk.invalid .tiny-link{
    color:#b13f4b;
  }

  .msg-placeholder{
    margin-top:10px;
    padding:10px 12px;
    border-radius:12px;
    font-size:13px;
    color:#6b7f86;
    background: rgba(255,255,255,.42);
    box-shadow: inset 2px 2px 6px rgba(130,146,166,.10);
  }
  .msg-placeholder.is-error{
    color:#8f2433;
    background:#ffe8ec;
    border:1px solid rgba(177,63,75,.38);
    box-shadow:
      inset 2px 2px 6px rgba(177,63,75,.14),
      0 0 0 1px rgba(255,255,255,.3);
  }
  .msg-placeholder.is-success{
    color:#2a825c;
    background:#eaf8f0;
    border:1px solid rgba(51,160,111,.30);
  }
  .msg-placeholder.is-info{
    color:#4f6670;
  }

  .modal-foot{
    margin-top:12px;
    display:flex;
    gap:8px;
    flex-wrap:wrap;
  }
  .modal-foot .btn{ flex:1; }
  .btn.warn{
    color:#fff;
    background: linear-gradient(135deg,#b77829,#955e1f);
    box-shadow:
      10px 10px 18px rgba(145,97,32,.16),
      -6px -6px 12px rgba(255,255,255,.45);
  }
  .btn:disabled,
  .btn-mini:disabled{
    opacity:.55;
    cursor:not-allowed;
    box-shadow:none;
  }

  .app-modal-summary{
    margin:0 0 10px;
    color:#4f646b;
    line-height:1.42;
    font-size:14px;
  }
  #appCard{
    width:min(560px,100%);
  }
  .app-modal-head{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:4px;
  }
  .app-modal-title{
    margin:0;
    color:#2a4f58;
    font-size:18px;
    font-weight:800;
    line-height:1.2;
  }
  .app-modal-icon{
    width:87px;
    height:87px;
    border-radius:12px;
    display:grid;
    place-items:center;
    color:#fff;
    font-weight:900;
    font-size:24px;
    letter-spacing:.3px;
    border:1px solid rgba(130,146,166,.24);
    background:linear-gradient(135deg,#2b9ba3,#2a7e88);
  }
  .app-modal-version{
    margin:0;
    color:#4f6770;
    font-size:12px;
    font-weight:800;
  }
  .app-version-help{
    margin:10px 0 0;
    color:#5e7279;
    font-size:12px;
    line-height:1.35;
  }
  .app-points{
    margin:0;
    padding:0;
    list-style:none;
    display:grid;
    gap:8px;
  }
  .app-points li{
    display:grid;
    grid-template-columns: 10px 1fr;
    align-items:start;
    gap:10px;
    font-size:14px;
    color:#40565d;
    line-height:1.35;
  }
  .app-points .dot{
    margin-top:4px;
  }
  .account-row{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap:10px;
  }
  .account-meta{
    margin:8px 0 0;
    font-size:13px;
    color:#5e7279;
  }
  .account-context-initials{
    display:grid;
    gap:6px;
    margin-top:8px;
  }
  .account-initials-launch{
    width:100%;
    min-height:46px;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    padding:8px 10px;
    border:1px solid rgba(87,124,134,.28);
    border-radius:9px;
    background:rgba(255,255,255,.42);
    color:#294d56;
    text-align:left;
    cursor:pointer;
  }
  .account-initials-launch:hover{
    border-color:rgba(43,155,163,.62);
    background:rgba(255,255,255,.7);
  }
  .account-initials-launch-icon{
    width:29px;
    height:29px;
    display:grid;
    place-items:center;
    border-radius:7px;
    background:#e5f2f3;
    color:#236d75;
    font-size:12px;
    font-weight:900;
  }
  .account-initials-launch-copy{
    min-width:0;
    display:grid;
    gap:2px;
  }
  .account-initials-launch-copy strong{
    font-size:13px;
  }
  .account-initials-launch-copy small{
    overflow:hidden;
    color:#667b82;
    font-size:11px;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .account-initials-launch-action{
    color:#2a7179;
    font-size:11px;
    font-weight:900;
  }
  .account-initials-personal{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    gap:10px;
  }
  .account-initials-personal .field{
    margin:0;
  }
  .account-initials-personal .btn{
    min-height:39px;
  }
  .account-context-initial-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto;
    align-items:center;
    gap:4px 12px;
    padding:8px 10px;
    border:1px solid rgba(130,146,166,.2);
    border-radius:8px;
    background:rgba(255,255,255,.34);
  }
  .account-context-initial-row strong{
    min-width:0;
    color:#294d56;
    font-size:13px;
    overflow-wrap:anywhere;
  }
  .account-context-initial-row > span,
  .account-context-initial-row > input{
    grid-row:1 / span 2;
    grid-column:2;
    min-width:42px;
    width:72px;
    padding:4px 7px;
    border:1px solid #c5dadd;
    border-radius:6px;
    background:#edf5f6;
    color:#244c55;
    font-size:13px;
    font-weight:900;
    text-align:center;
  }
  .account-context-initial-row > input:focus{
    outline:2px solid rgba(39,135,145,.2);
    border-color:#4f9ca3;
  }
  .account-context-initial-row > button{
    grid-row:1 / span 2;
    grid-column:3;
    white-space:nowrap;
  }
  .account-context-initial-row small{
    color:#667b82;
    font-size:11px;
  }
  .account-initials-note{
    margin:10px 0 0;
    color:#667b82;
    font-size:11px;
    line-height:1.4;
  }
  .account-plan-summary{
    margin-bottom:14px;
    padding:14px;
    border-radius:16px;
    background:rgba(255,255,255,.42);
    box-shadow: inset 2px 2px 6px rgba(130,146,166,.10);
  }
  #accountCard{
    width:min(1040px,100%);
  }
  .account-tabs{
    display:flex;
    gap:8px;
    margin:-2px 0 16px;
    padding:4px;
    overflow-x:auto;
    border-radius:14px;
    background:rgba(224,236,240,.72);
  }
  .account-tab{
    flex:1 0 auto;
    min-height:42px;
    padding:8px 13px;
    border:1px solid transparent;
    border-radius:11px;
    background:transparent;
    color:#49636b;
    font:inherit;
    font-size:13px;
    font-weight:850;
    cursor:pointer;
  }
  .account-tab[aria-selected="true"]{
    border-color:rgba(42,126,136,.22);
    background:rgba(255,255,255,.86);
    color:#1e626c;
    box-shadow:0 4px 12px rgba(73,98,112,.10);
  }
  .account-tab:focus-visible{
    outline:3px solid rgba(43,155,163,.25);
    outline-offset:1px;
  }
  .account-tab-panel[hidden]{
    display:none !important;
  }
  .account-tab-intro{
    margin:0 0 14px;
    color:#5b7178;
    font-size:13px;
    line-height:1.5;
  }
  .account-plan-actions,
  .account-quick-access-list{
    display:grid;
    gap:10px;
    margin-top:14px;
  }
  .account-plan-action-card,
  .account-quick-access-card{
    padding:13px;
    border:1px solid rgba(42,126,136,.16);
    border-radius:14px;
    background:rgba(255,255,255,.5);
  }
  .account-plan-action-card strong,
  .account-quick-access-card strong{
    color:#284f57;
  }
  .account-plan-action-card p,
  .account-quick-access-card p{
    margin:5px 0 0;
    color:#60757b;
    font-size:12px;
    line-height:1.45;
  }
  .account-quick-access-form{
    display:grid;
    grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) minmax(180px,1.25fr);
    gap:10px;
    align-items:end;
  }
  .account-quick-access-form .field{
    margin:0;
  }
  .account-quick-access-destination{
    display:grid;
    gap:10px;
    margin-top:12px;
    padding:13px;
    border:1px solid rgba(42,126,136,.2);
    border-radius:14px;
    background:rgba(236,248,249,.72);
  }
  .account-quick-access-destination[hidden],
  .account-quick-access-destination [hidden]{
    display:none !important;
  }
  .account-quick-access-destination-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    align-items:end;
  }
  .account-quick-access-destination-grid .field{
    margin:0;
  }
  .account-quick-access-destination-note{
    margin:0;
    color:#60757b;
    font-size:11px;
    line-height:1.45;
  }
  .account-quick-access-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:10px;
  }
  @media (max-width:760px){
    .account-quick-access-form,
    .account-quick-access-destination-grid{
      grid-template-columns:1fr;
    }
  }
  .account-section{
    margin-top:16px;
    padding-top:14px;
    border-top:1px solid rgba(130,146,166,.16);
  }
  .account-section h4{
    margin:0 0 6px;
    color:#284f57;
    font-size:15px;
  }
  .account-section-copy{
    margin:0 0 10px;
    font-size:13px;
    color:#60757b;
    line-height:1.45;
  }
  .account-mfa-status{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    margin:8px 0 12px;
    font-size:13px;
    color:#5e7279;
  }
  .account-mfa-qr{
    display:grid;
    gap:10px;
    justify-items:center;
    padding:14px;
    border-radius:16px;
    background:rgba(255,255,255,.36);
    box-shadow: inset 2px 2px 6px rgba(130,146,166,.10);
  }
  .account-mfa-qr-box{
    width:220px;
    min-height:220px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:#fff;
    box-shadow: inset 0 0 0 1px rgba(130,146,166,.18);
    overflow:hidden;
  }
  .account-mfa-manual{
    margin:0;
    font-size:12px;
    color:#60757b;
    word-break:break-word;
    text-align:center;
  }
  .account-recovery-box{
    width:100%;
    min-height:120px;
    font-family:ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size:12px;
    line-height:1.45;
  }
  .status-pill{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:4px 10px;
    border-radius:999px;
    font-size:11px;
    font-weight:700;
    letter-spacing:.04em;
    text-transform:uppercase;
  }
  .status-pill.on{
    color:#115841;
    background:rgba(17,88,65,.12);
  }
  .status-pill.off{
    color:#8a5032;
    background:rgba(138,80,50,.12);
  }
  .status-pill.warn{
    color:#8a5d16;
    background:rgba(138,93,22,.12);
  }
  .account-plan-title{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:10px;
    margin-bottom:8px;
  }
  .account-plan-title h4{
    margin:0;
    color:#284f57;
    font-size:16px;
  }
  .account-plan-title p{
    margin:4px 0 0;
    color:#60757b;
    font-size:13px;
  }
  .account-plan-copy{
    margin:0 0 10px;
    color:#546a71;
    font-size:13px;
    line-height:1.4;
  }
  .account-storage-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    margin-bottom:6px;
    color:#365960;
    font-size:12px;
    font-weight:800;
  }
  .account-storage-track{
    width:100%;
    height:12px;
    border-radius:999px;
    overflow:hidden;
    background:rgba(255,255,255,.62);
    box-shadow: inset 2px 2px 6px rgba(130,146,166,.12);
  }
  .account-storage-fill{
    display:block;
    height:100%;
    width:0;
    border-radius:999px;
    background:linear-gradient(135deg,#2b9ba3,#2a7e88);
  }
  .account-storage-meta{
    margin-top:7px;
    color:#5d7279;
    font-size:12px;
    line-height:1.35;
  }
  .account-plan-meta{
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:10px;
    color:#4f666d;
    font-size:12px;
    line-height:1.35;
  }
  .account-ai-summary{
    margin-top:12px;
    padding:14px;
    border-radius:16px;
    background:rgba(247,251,252,.74);
    border:1px solid rgba(42,126,136,.12);
    display:grid;
    gap:10px;
  }
  .btn-head-action{
    padding:8px 12px;
    font-size:12px;
    line-height:1.1;
  }
  .account-ai-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:12px;
  }
  .account-ai-head h4{
    margin:0;
    color:#244c54;
    font-size:15px;
  }
  .account-ai-head p{
    margin:4px 0 0;
    color:#5c7278;
    font-size:12px;
    line-height:1.35;
  }
  .account-ai-model{
    align-self:flex-start;
    padding:5px 10px;
    border-radius:999px;
    background:rgba(255,255,255,.82);
    border:1px solid rgba(42,126,136,.16);
    color:#2a6f78;
    font-size:11px;
    font-weight:900;
    letter-spacing:.02em;
    white-space:nowrap;
  }
  .account-ai-grid{
    display:grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap:8px;
  }
  .account-ai-card{
    padding:10px 12px;
    border-radius:14px;
    background:rgba(255,255,255,.72);
    box-shadow: inset 2px 2px 6px rgba(130,146,166,.08);
    display:grid;
    gap:4px;
  }
  .account-ai-label{
    color:#5d7279;
    font-size:11px;
    font-weight:800;
    letter-spacing:.03em;
    text-transform:uppercase;
  }
  .account-ai-value{
    color:#20464e;
    font-size:18px;
    font-weight:900;
    line-height:1.1;
  }
  .account-ai-meta{
    color:#61777d;
    font-size:12px;
    line-height:1.35;
  }
  .account-alert-stack{
    position:fixed;
    z-index:85;
    right:18px;
    bottom:18px;
    width:min(430px,calc(100vw - 36px));
    display:grid;
    gap:10px;
  }
  .workspace-invite-banner{
    padding:14px;
    border-radius:18px;
    background:linear-gradient(135deg,#fffaf0,#eef9f5);
    border:1px solid rgba(42,126,136,.22);
    box-shadow:0 18px 40px rgba(22,48,58,.18);
    color:#254952;
    display:grid;
    gap:10px;
  }
  .workspace-invite-banner.dpa-required{
    background:linear-gradient(135deg,#fff4ec,#fffaf0);
    border-color:rgba(173,86,42,.32);
  }
  .workspace-invite-banner.data-export-job{
    background:linear-gradient(135deg,#eef9ff,#eef9f5);
    border-color:rgba(42,126,136,.28);
  }
  .workspace-invite-banner.hidden{
    display:none;
  }
  .workspace-invite-banner strong,
  .account-invite-card strong{
    color:#193d45;
  }
  .workspace-invite-actions,
  .account-invite-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }
  .data-export-progress-row{
    display:flex;
    align-items:center;
    gap:10px;
  }
  .data-export-spinner{
    width:18px;
    height:18px;
    flex:0 0 auto;
    border-radius:50%;
    border:3px solid rgba(42,126,136,.18);
    border-top-color:#2a7e88;
    animation:data-export-spin .85s linear infinite;
  }
  .data-export-progress-track{
    height:8px;
    flex:1 1 auto;
    min-width:100px;
    overflow:hidden;
    border-radius:999px;
    background:rgba(42,126,136,.13);
  }
  .data-export-progress-fill{
    width:0;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg,#2a7e88,#48a97c);
    transition:width .35s ease;
  }
  .data-export-ready-summary{
    display:grid;
    gap:10px;
    padding:14px;
    border-radius:16px;
    border:1px solid rgba(42,126,136,.2);
    background:rgba(238,249,245,.72);
  }
  .account-data-export-jobs{
    display:grid;
    gap:10px;
    margin-top:12px;
  }
  .account-data-export-job{
    display:grid;
    gap:8px;
    padding:12px;
    border-radius:14px;
    border:1px solid rgba(42,126,136,.18);
    background:rgba(255,255,255,.48);
  }
  .account-data-export-job-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
  }
  .account-data-export-job-status{
    flex:0 0 auto;
    color:#41646b;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
  }
  @keyframes data-export-spin{
    to{ transform:rotate(360deg); }
  }
  @media (prefers-reduced-motion: reduce){
    .data-export-spinner{ animation-duration:1.8s; }
    .data-export-progress-fill{ transition:none; }
  }
  .account-invites{
    margin-top:12px;
    padding:14px;
    border-radius:16px;
    background:rgba(255,250,240,.76);
    border:1px solid rgba(183,133,55,.22);
    display:grid;
    gap:10px;
  }
  .account-invite-card{
    padding:12px;
    border-radius:14px;
    background:rgba(255,255,255,.8);
    border:1px solid rgba(42,126,136,.14);
    display:grid;
    gap:8px;
  }
  .account-invite-meta{
    color:#61777d;
    font-size:12px;
    line-height:1.4;
  }
  .account-invite-list{
    margin:8px 0 0;
    padding-left:18px;
    color:#455a60;
    font-size:12px;
    line-height:1.45;
  }
  .account-invite-btn{
    background:#b91c1c;
    border-color:#9f1717;
    color:#fff;
  }
  .account-invite-btn.hidden{
    display:none;
  }
  .member-invite-intro{
    margin:0 0 12px;
    color:#4f666d;
    font-size:13px;
    line-height:1.45;
  }
  .member-invite-list{
    display:grid;
    gap:12px;
  }
  .member-invite-card{
    border:1px solid rgba(185,28,28,.18);
    border-radius:18px;
    padding:14px;
    background:linear-gradient(135deg,rgba(255,250,240,.94),rgba(255,255,255,.88));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
    display:grid;
    gap:10px;
  }
  .member-invite-title{
    margin:0;
    color:#193d45;
    font-size:16px;
    font-weight:900;
  }
  .member-invite-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .member-invite-fact{
    padding:9px 10px;
    border-radius:12px;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(42,126,136,.12);
    color:#526b73;
    font-size:12px;
    line-height:1.35;
  }
  .member-invite-fact strong{
    display:block;
    color:#21484f;
    font-size:11px;
    letter-spacing:.03em;
    text-transform:uppercase;
    margin-bottom:2px;
  }
  .member-invite-share{
    border-radius:12px;
    padding:10px;
    background:rgba(185,28,28,.07);
    color:#5b3c3c;
    font-size:12px;
    line-height:1.45;
  }
	  .contacts-shell{
	    display:grid;
	    grid-template-rows:minmax(0,1fr) auto;
	    gap:12px;
	    height:100%;
	    min-height:0;
	  }
	  #contactCard{
	    height:min(874px,calc(100vh - 24px));
	  }
	  #contactCard .modal-body{
	    overflow:hidden;
	    display:flex;
	    flex-direction:column;
	  }
	  .btn.contacts-has-unread{
	    position:relative;
	  }
	  .btn.contacts-has-unread::after{
	    content:"";
	    position:absolute;
	    top:5px;
	    right:5px;
	    width:9px;
	    height:9px;
	    border-radius:999px;
	    background:#d24a35;
	    box-shadow:0 0 0 3px rgba(255,255,255,.86);
	  }
	  .contacts-send-row{
	    display:grid;
	    grid-template-columns:minmax(0,1fr) 150px;
	    gap:10px;
	    align-items:start;
	  }
	  .contacts-send-row .btn{
	    height:42px;
	    margin-top:24px;
	  }
	  .contacts-grid{
	    display:grid;
	    gap:10px;
	    align-content:start;
	    overflow:hidden;
	    padding-right:4px;
		  }
		  .contacts-layout{
		    display:grid;
		    grid-template-columns:minmax(210px,.45fr) minmax(520px,1.55fr);
		    gap:14px;
		    align-items:start;
		    min-height:0;
		    height:100%;
		  }
	  .contacts-chat-list,
	  .contacts-grid{
	    min-width:0;
	  }
		  .contacts-section{
		    padding:8px;
		    border-radius:16px;
		    background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(244,249,248,.72));
		    border:1px solid rgba(42,126,136,.14);
		    display:grid;
		    gap:6px;
		    box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
		  }
		  .contacts-section-title{
		    margin:0;
		    padding:0 4px;
		    color:#21484f;
		    font-size:12px;
		    font-weight:800;
		    letter-spacing:.04em;
		    text-transform:uppercase;
		  }
  .contacts-list{
    display:grid;
    gap:5px;
  }
		  .contacts-card,
		  .contacts-list-item{
		    width:100%;
		    text-align:left;
		    font:inherit;
		    color:inherit;
		    padding:9px 10px;
		    border-radius:12px;
		    background:rgba(255,255,255,.84);
		    border:1px solid rgba(42,126,136,.12);
		    display:grid;
		    gap:2px;
		    cursor:pointer;
		    transition:transform .16s ease, border-color .16s ease, box-shadow .16s ease;
		  }
		  .contacts-card.is-active,
		  .contacts-list-item.is-active{
		    border-color:rgba(42,126,136,.42);
		    box-shadow:0 8px 18px rgba(42,126,136,.1);
		  }
		  .contacts-card.has-unread,
		  .contacts-list-item.has-unread{
		    background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(255,246,226,.9));
		    border-color:rgba(183,133,55,.34);
		  }
	  .contacts-peer-head{
	    display:flex;
	    justify-content:space-between;
	    gap:10px;
	    align-items:flex-start;
	  }
		  .contacts-card strong,
		  .contacts-list-item strong{
		    color:#193d45;
		    font-size:13px;
		    line-height:1.2;
		  }
	  .contacts-unread-badge{
	    display:inline-flex;
	    align-items:center;
	    justify-content:center;
	    min-width:22px;
	    height:22px;
	    padding:0 7px;
	    border-radius:999px;
	    background:#d24a35;
	    color:#fff;
	    font-size:11px;
	    font-weight:900;
	    box-shadow:0 8px 18px rgba(210,74,53,.18);
	  }
	  .contacts-meta{
	    color:#61777d;
	    font-size:12px;
    line-height:1.45;
  }
	  .contacts-actions{
	    display:flex;
	    flex-wrap:wrap;
	    gap:8px;
	  }
	  .contacts-detail-panel{
	    padding:16px;
	    display:grid;
	    gap:12px;
	  }
	  .contacts-detail-spacer{
	    min-height:240px;
	  }
	  .contacts-action-footer{
	    grid-column:1/-1;
	    display:flex;
	    flex-wrap:wrap;
	    justify-content:flex-start;
	    gap:8px;
	    align-items:center;
	    padding-top:8px;
	    border-top:1px solid rgba(42,126,136,.1);
	  }
	  .contacts-action-footer .contacts-meta{
	    margin-right:auto;
	  }
	  .contacts-empty{
	    color:#61777d;
	    font-size:13px;
	    line-height:1.45;
	  }
	  .contacts-message-panel{
	    padding:0;
	    border-radius:20px;
	    background:linear-gradient(180deg,rgba(249,253,252,.94),rgba(232,242,241,.88));
	    border:1px solid rgba(42,126,136,.14);
	    display:grid;
	    grid-template-rows:auto minmax(0,1fr) auto;
	    overflow:hidden;
	    min-height:0;
	    height:100%;
	    box-shadow:0 16px 36px rgba(42,126,136,.1), inset 0 1px 0 rgba(255,255,255,.9);
	  }
	  .contacts-message-head{
	    display:flex;
	    justify-content:space-between;
	    gap:10px;
	    align-items:center;
	    padding:14px 16px;
	    background:rgba(255,255,255,.78);
	    border-bottom:1px solid rgba(42,126,136,.1);
	  }
	  .contacts-message-head-actions{
	    display:flex;
	    align-items:center;
	    justify-content:flex-end;
	    gap:8px;
	    flex-wrap:wrap;
	  }
	  .contacts-thread{
	    position:relative;
	    display:flex;
	    flex-direction:column;
	    gap:8px;
	    min-height:0;
	    overflow:auto;
	    padding:16px;
	    background:
	      radial-gradient(circle at 8px 8px,rgba(42,126,136,.08) 1px,transparent 1.4px) 0 0/22px 22px,
	      linear-gradient(180deg,rgba(255,255,255,.48),rgba(255,255,255,.16));
	  }
	  .contacts-reply-lines{
	    position:absolute;
	    top:0;
	    left:0;
	    width:100%;
	    min-height:100%;
	    pointer-events:none;
	    z-index:0;
	    overflow:visible;
	  }
	  .contacts-reply-path{
	    stroke:rgba(42,126,136,.075);
	    stroke-width:2;
	    stroke-dasharray:4 7;
	    stroke-linecap:round;
	    stroke-linejoin:round;
	    transition:stroke .14s ease, stroke-dasharray .14s ease;
	  }
	  .contacts-reply-path.is-active{
	    stroke:rgba(42,126,136,.24);
	    stroke-dasharray:none;
	  }
	  .contacts-reply-start-dot{
	    fill:rgba(42,126,136,.16);
	    transition:fill .14s ease;
	  }
	  .contacts-reply-start-dot.is-active{
	    fill:rgba(42,126,136,.34);
	  }
	  .contacts-message{
	    position:relative;
	    z-index:1;
	    width:fit-content;
	    max-width:min(82%,520px);
	    padding:10px 12px;
	    border-radius:16px 16px 16px 5px;
	    background:#ffffff;
	    border:1px solid rgba(42,126,136,.12);
	    color:#21484f;
	    font-size:13px;
	    line-height:1.45;
	    white-space:pre-wrap;
	    box-shadow:0 8px 18px rgba(33,72,79,.06);
	    cursor:pointer;
	  }
	  .contacts-message.is-detail-open{
	    border-color:rgba(42,126,136,.34);
	    box-shadow:0 10px 24px rgba(33,72,79,.1);
	  }
	  .contacts-message.is-outgoing{
	    align-self:flex-end;
	    background:#fff4dc;
	    border-color:rgba(183,133,55,.22);
	    border-radius:16px 16px 5px 16px;
	  }
	  .contacts-message-meta{
	    color:#6a7d82;
	    font-size:11px;
	    margin-top:6px;
	    display:flex;
	    flex-wrap:wrap;
	    gap:6px;
	    align-items:center;
	  }
	  .contacts-message-meta.is-compact{
	    font-size:10px;
	    font-style:italic;
	    justify-content:flex-end;
	    opacity:.78;
	  }
	  .contacts-message-reply-link{
	    width:100%;
	    display:grid;
	    gap:2px;
	    margin:0 0 7px;
	    padding:7px 9px;
	    border:1px solid rgba(42,126,136,.16);
	    border-left:3px solid rgba(42,126,136,.46);
	    border-radius:11px;
	    background:rgba(235,247,247,.72);
	    color:#315d65;
	    text-align:left;
	    cursor:pointer;
	    font:inherit;
	    white-space:normal;
	  }
	  .contacts-message.is-outgoing .contacts-message-reply-link{
	    border-color:rgba(183,133,55,.22);
	    border-left-color:rgba(183,133,55,.62);
	    background:rgba(255,255,255,.54);
	  }
	  .contacts-message-reply-link span{
	    font-size:11px;
	    font-weight:800;
	  }
	  .contacts-message-reply-link em{
	    color:#6a7d82;
	    font-size:11px;
	    font-style:italic;
	    overflow:hidden;
	    text-overflow:ellipsis;
	    white-space:nowrap;
	  }
	  .contacts-message-edit{
	    display:flex;
	    gap:6px;
	    justify-content:flex-end;
	    margin-top:6px;
	  }
	  .contact-share-bubble{
	    display:grid;
	    grid-template-columns:auto minmax(0,1fr);
	    gap:10px;
	    align-items:center;
	    margin:0 0 8px;
	    padding:10px;
	    border-radius:14px;
	    background:rgba(235,247,247,.9);
	    border:1px solid rgba(42,126,136,.18);
	    white-space:normal;
	  }
	  .contact-share-bubble.is-accepted{
	    background:rgba(232,247,238,.95);
	    border-color:rgba(45,132,82,.34);
	  }
	  .contact-share-bubble.is-rejected{
	    background:rgba(255,238,238,.95);
	    border-color:rgba(177,67,67,.34);
	  }
	  .contacts-message.is-outgoing .contact-share-bubble{
	    background:rgba(255,255,255,.62);
	    border-color:rgba(183,133,55,.22);
	  }
	  .contacts-message.is-outgoing .contact-share-bubble.is-accepted{
	    background:rgba(232,247,238,.8);
	    border-color:rgba(45,132,82,.3);
	  }
	  .contacts-message.is-outgoing .contact-share-bubble.is-rejected{
	    background:rgba(255,238,238,.82);
	    border-color:rgba(177,67,67,.3);
	  }
	  .contact-share-icon{
	    width:38px;
	    height:38px;
	    border-radius:13px;
	    display:grid;
	    place-items:center;
	    background:#2a7e88;
	    color:#fff;
	    font-size:9.5px;
	    font-weight:950;
	    letter-spacing:.02em;
	    text-transform:uppercase;
	  }
	  .contact-share-bubble.is-handled .contact-share-icon{
	    background:#a3afb2;
	    color:#f8fbfb;
	  }
	  .contact-share-title{
	    font-weight:900;
	    color:#193d45;
	    overflow:hidden;
	    text-overflow:ellipsis;
	  }
	  .contact-share-meta{
	    color:#61777d;
	    font-size:11px;
	    line-height:1.35;
	  }
	  .contact-share-status{
	    display:inline-flex;
	    width:max-content;
	    margin-top:5px;
	    padding:3px 7px;
	    border-radius:999px;
	    font-size:10px;
	    font-weight:900;
	    letter-spacing:.03em;
	    text-transform:uppercase;
	  }
	  .contact-share-status.is-accepted{
	    color:#1f6f43;
	    background:rgba(45,132,82,.14);
	    border:1px solid rgba(45,132,82,.25);
	  }
	  .contact-share-status.is-rejected{
	    color:#a23c3c;
	    background:rgba(177,67,67,.13);
	    border:1px solid rgba(177,67,67,.25);
	  }
	  .contact-share-actions{
	    grid-column:1/-1;
	    display:flex;
	    justify-content:flex-end;
	    gap:8px;
	    margin-top:2px;
	  }
	  .contact-pending-share{
	    grid-column:1/-1;
	    display:grid;
	    grid-template-columns:minmax(0,1fr) auto;
	    gap:8px;
	    align-items:center;
	    padding:9px 10px;
	    border-radius:14px;
	    background:rgba(235,247,247,.92);
	    border:1px solid rgba(42,126,136,.2);
	  }
	  .contacts-message-detail{
	    margin-top:8px;
	    padding:8px 9px;
	    border-radius:12px;
	    background:rgba(255,255,255,.72);
	    border:1px solid rgba(42,126,136,.12);
	    color:#587077;
	    font-size:11px;
	    line-height:1.45;
	    white-space:normal;
	    display:grid;
	    gap:4px;
	  }
	  .contacts-message-detail-actions{
	    display:flex;
	    justify-content:flex-end;
	    margin-top:3px;
	  }
	  .contacts-message-send{
	    display:grid;
	    grid-template-columns:auto minmax(0,1fr) auto;
	    gap:8px;
	    align-items:stretch;
	    padding:12px;
	    background:rgba(255,255,255,.82);
	    border-top:1px solid rgba(42,126,136,.1);
	  }
	  .contacts-message-send textarea{
	    grid-column:2;
	    min-height:58px;
	    height:58px;
	    resize:vertical;
	    border-radius:18px;
	    border:1px solid rgba(42,126,136,.24);
	    background:rgba(255,255,255,.9);
	    box-shadow:inset 0 1px 2px rgba(33,72,79,.05);
	    outline:none;
	    padding:10px 12px;
	  }
	  .contacts-message-send textarea:focus{
	    border-color:rgba(42,126,136,.28);
	    box-shadow:0 0 0 3px rgba(42,126,136,.08), inset 0 1px 2px rgba(33,72,79,.05);
	  }
	  .contacts-message-send > .btn{
	    min-height:58px;
	  }
	  .contacts-share-btn{
	    border-color:rgba(42,126,136,.28);
	    background:linear-gradient(180deg,rgba(235,247,247,.98),rgba(207,231,231,.94));
	    color:#1f5962;
	    font-weight:850;
	    box-shadow:0 8px 18px rgba(42,126,136,.11), inset 0 1px 0 rgba(255,255,255,.82);
	  }
	  .contacts-share-btn:hover{
	    transform:translateY(-1px);
	    border-color:rgba(42,126,136,.42);
	    box-shadow:0 12px 22px rgba(42,126,136,.16), inset 0 1px 0 rgba(255,255,255,.9);
	  }
	  .contacts-message-send > .btn.primary{
	    grid-column:3;
	    justify-self:end;
	  }
	  .contacts-message-send .contacts-action-footer{
	    grid-column:1 / -1;
	    grid-row:auto;
	    border-top:0;
	    padding-top:0;
	    align-self:center;
	  }
	  .contacts-action-footer.is-chat-footer{
	    display:grid;
	    grid-template-columns:minmax(0,1fr) auto;
	    gap:8px 12px;
	    align-items:start;
	  }
	  .contacts-action-buttons{
	    display:flex;
	    flex-wrap:wrap;
	    gap:8px;
	    justify-content:flex-start;
	  }
	  .contacts-accepted-date{
	    justify-self:end;
	    text-align:right;
	    font-size:11px;
	    font-style:italic;
	    color:#6a7d82;
	    max-width:220px;
	  }
	  .contacts-editing-note{
	    grid-column:1/-1;
	    display:flex;
	    justify-content:space-between;
	    gap:10px;
	    align-items:center;
	    padding:8px 10px;
	    border-radius:12px;
	    background:rgba(255,244,220,.92);
	    border:1px solid rgba(183,133,55,.18);
	    color:#6b5427;
	    font-size:12px;
	  }
	  .contacts-replying-note{
	    grid-column:1/-1;
	    display:flex;
	    justify-content:space-between;
	    gap:10px;
	    align-items:center;
	    padding:8px 10px;
	    border-radius:12px;
	    background:rgba(235,247,247,.92);
	    border:1px solid rgba(42,126,136,.16);
	    color:#315d65;
	    font-size:12px;
	  }
	  .contact-message-detail-card,
	  .contact-share-file-card{
	    width:min(720px,100%);
	  }
	  .contact-message-detail-view,
	  .contact-share-file-view{
	    display:grid;
	    gap:12px;
	  }
	  .contact-detail-message{
	    padding:14px;
	    border-radius:16px;
	    background:rgba(255,255,255,.9);
	    border:1px solid rgba(42,126,136,.14);
	    box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
	  }
	  .contact-detail-body{
	    margin:0 0 10px;
	    color:#21484f;
	    font-size:14px;
	    line-height:1.5;
	    white-space:pre-wrap;
	  }
	  .contact-detail-grid{
	    display:grid;
	    gap:5px;
	    color:#61777d;
	    font-size:12px;
	  }
	  .contact-share-detail{
	    display:grid;
	    gap:8px;
	    margin:10px 0;
	    padding:10px;
	    border-radius:13px;
	    background:rgba(235,247,247,.68);
	    border:1px solid rgba(42,126,136,.14);
	  }
	  .contact-share-detail-title{
	    color:#21484f;
	    font-size:12px;
	    font-weight:900;
	    text-transform:uppercase;
	    letter-spacing:.04em;
	  }
	  .contact-linked-list{
	    display:grid;
	    gap:8px;
	    max-height:260px;
	    overflow:auto;
	    padding-right:3px;
	  }
	  .contact-linked-card{
	    padding:10px;
	    border-radius:14px;
	    background:rgba(244,249,248,.86);
	    border:1px solid rgba(42,126,136,.12);
	  }
	  .contact-linked-relation{
	    margin-bottom:5px;
	    color:#2a7e88;
	    font-size:11px;
	    font-weight:900;
	    text-transform:uppercase;
	    letter-spacing:.04em;
	  }
	  .contact-detail-actions{
	    display:flex;
	    flex-wrap:wrap;
	    gap:8px;
	    justify-content:flex-end;
	  }
	  .contact-share-file-view{
	    grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);
	  }
	  .contact-share-results{
	    min-height:260px;
	    max-height:360px;
	    overflow:auto;
	    display:grid;
	    align-content:start;
	    gap:8px;
	    padding:8px;
	    border-radius:16px;
	    background:rgba(244,249,248,.78);
	    border:1px solid rgba(42,126,136,.12);
	  }
	  .contact-share-result{
	    width:100%;
	    text-align:left;
	    border:1px solid rgba(42,126,136,.12);
	    border-radius:13px;
	    background:rgba(255,255,255,.9);
	    padding:10px;
	    cursor:pointer;
	    color:#21484f;
	  }
	  .contact-share-result strong{
	    display:block;
	    font-size:13px;
	    margin-bottom:3px;
	  }
	  .contact-share-warning{
	    padding:9px 10px;
	    border-radius:13px;
	    background:rgba(183,133,55,.13);
	    border:1px solid rgba(183,133,55,.22);
	    color:#6b5427;
	    font-size:12px;
	    line-height:1.45;
	  }
  @media(max-width:640px){
    .member-invite-grid{
      grid-template-columns:1fr;
    }
	    .contacts-send-row{
	      grid-template-columns:1fr;
	    }
	    .contacts-send-row .btn{
	      margin-top:0;
	      width:100%;
	    }
		    .contacts-layout{
		      grid-template-columns:1fr;
		    }
	    .contacts-message-panel{
	      min-height:420px;
	    }
	    .contacts-message-send{
	      grid-template-columns:1fr;
	    }
	    .contacts-message-send textarea,
	    .contacts-message-send > .btn,
	    .contacts-message-send > .btn.primary,
	    .contacts-message-send .contacts-action-footer{
	      grid-column:1;
	    }
	    .contact-share-file-view{
	      grid-template-columns:1fr;
	    }
	    .contacts-action-footer.is-chat-footer{
	      grid-template-columns:1fr;
	    }
	    .contacts-accepted-date{
	      justify-self:start;
	      text-align:left;
	    }
  }
  .plan-info-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:20px;
    height:20px;
    border:1px solid rgba(42,126,136,.28);
    border-radius:999px;
    background:rgba(255,255,255,.78);
    color:#2b7680;
    font-size:12px;
    font-weight:900;
    line-height:1;
    cursor:pointer;
    transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
  }
  .plan-info-btn.inline{
    margin-left:4px;
  }
  .plan-info-btn:hover,
  .plan-info-btn:focus-visible{
    outline:none;
    transform:translateY(-1px);
    border-color:rgba(42,126,136,.48);
    box-shadow:0 6px 14px rgba(42,126,136,.14);
  }
  .ai-help-pop{
    position:fixed;
    top:12px;
    left:12px;
    z-index:1400;
    display:none;
    width:min(320px,calc(100vw - 24px));
    padding:14px 14px 12px;
    border-radius:18px;
    background:rgba(247,251,252,.98);
    border:1px solid rgba(42,126,136,.18);
    box-shadow:0 18px 40px rgba(29,69,75,.24);
    backdrop-filter:blur(10px);
  }
  .ai-help-pop.show{
    display:block;
  }
  .ai-help-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-bottom:8px;
  }
  .ai-help-head strong{
    color:#244c54;
    font-size:14px;
  }
  .ai-help-close{
    border:none;
    background:transparent;
    color:#658087;
    font-size:18px;
    line-height:1;
    cursor:pointer;
    padding:0;
  }
  .ai-help-body{
    color:#546c73;
    font-size:13px;
    line-height:1.45;
  }
  .ai-help-body p{
    margin:0 0 8px;
  }
  .ai-help-body p:last-child{
    margin-bottom:0;
  }
  .badge-pill{
    display:inline-flex;
    align-items:center;
    gap:4px;
    margin-left:6px;
    font-size:11px;
    font-weight:900;
    padding:4px 10px;
    border-radius:999px;
    vertical-align:middle;
    line-height:1;
  }
  .badge-pill.rank{
    color:#fff;
    background:linear-gradient(135deg,#2f9aa2,#246f78);
    border:1px solid rgba(27,84,92,.28);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.24), 0 4px 10px rgba(27,84,92,.26);
    text-shadow:0 1px 0 rgba(0,0,0,.24);
  }
  .rank-new{background:linear-gradient(135deg,#8ea3ad,#667e88);}
  .rank-starter{background:linear-gradient(135deg,#2f9aa2,#246f78);}
  .rank-contributor{background:linear-gradient(135deg,#2f8f68,#246e50);}
  .rank-builder{background:linear-gradient(135deg,#3a8eb1,#2c6e89);}
  .rank-architect{background:linear-gradient(135deg,#8f7b2a,#6f5f20);}
  .rank-mentor{background:linear-gradient(135deg,#8d5a2a,#6f451f);}
  .rank-publisher{background:linear-gradient(135deg,#a44e5d,#7f3645);}
  .rank-admin{background:linear-gradient(135deg,#3e4f74,#2e3d5f);}
  .tos-frame{
    width:100%;
    height:min(68vh, 640px);
    border:1px solid rgba(130,146,166,.28);
    border-radius:12px;
    background:#fff;
  }
  .admin-stats{
    display:grid;
    grid-template-columns: repeat(6,minmax(0,1fr));
    gap:8px;
  }
  .admin-stat{
    border-radius:12px;
    padding:10px;
    background: rgba(255,255,255,.46);
    box-shadow: inset 2px 2px 6px rgba(130,146,166,.10);
  }
  .admin-stat .n{
    font-size:22px;
    font-weight:800;
    color:#2a6f78;
    line-height:1;
  }
  .admin-stat .t{
    margin-top:4px;
    font-size:12px;
    color:#5b7178;
  }
  .theme-tools{
    margin-top:10px;
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    align-items:center;
  }
  .theme-tools label{
    font-size:13px;
    font-weight:800;
    color:#486069;
  }
  .theme-tools select{
    border:1px solid rgba(130,146,166,.26);
    border-radius:10px;
    padding:8px 10px;
    background:var(--card);
    color:#2b4a52;
    font-size:13px;
    box-shadow:inset 3px 3px 7px rgba(130,146,166,.14), inset -3px -3px 7px rgba(255,255,255,.74);
  }
  .admin-ai-tools{
    margin-top:10px;
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    align-items:center;
  }
  .admin-ai-tools label{
    font-size:13px;
    font-weight:800;
    color:#486069;
  }
  .admin-ai-tools select{
    min-width:220px;
    border:1px solid rgba(130,146,166,.26);
    border-radius:10px;
    padding:8px 10px;
    background:var(--card);
    color:#2b4a52;
    font-size:13px;
    box-shadow:inset 3px 3px 7px rgba(130,146,166,.14), inset -3px -3px 7px rgba(255,255,255,.74);
  }
  .admin-menu-group{
    position:relative;
    display:inline-flex;
  }
  .admin-inline-menu{
    position:absolute;
    top:calc(100% + 6px);
    left:0;
    z-index:6;
    min-width:220px;
    display:grid;
    gap:6px;
    padding:10px;
    border-radius:14px;
    border:1px solid rgba(130,146,166,.22);
    background:rgba(255,255,255,.96);
    box-shadow:0 12px 28px rgba(37,56,79,.18);
  }
  .admin-inline-menu.hidden{
    display:none;
  }
  .admin-inline-menu .btn{
    justify-content:flex-start;
    width:100%;
  }
  .admin-ai-summary{
    margin-top:12px;
    display:grid;
    gap:10px;
  }
  .admin-ai-grid{
    display:grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap:8px;
  }
  .admin-ai-card{
    border-radius:12px;
    padding:10px;
    background:rgba(255,255,255,.4);
    border:1px solid rgba(130,146,166,.18);
    box-shadow: inset 2px 2px 6px rgba(130,146,166,.08);
  }
  .admin-ai-label{
    font-size:12px;
    color:#5b7178;
  }
  .admin-ai-value{
    margin-top:4px;
    font-size:20px;
    line-height:1.1;
    font-weight:800;
    color:#2a6f78;
  }
  .admin-ai-meta{
    margin-top:4px;
    font-size:11px;
    color:#5f7279;
  }
  .admin-ai-table-wrap{
    border-radius:12px;
    border:1px solid rgba(130,146,166,.22);
    background:rgba(255,255,255,.36);
    overflow:auto;
    max-height:280px;
  }
  .admin-ai-table{
    width:100%;
    border-collapse:collapse;
    font-size:12px;
    color:#3f565d;
  }
  .admin-ai-table th,
  .admin-ai-table td{
    padding:8px 9px;
    border-bottom:1px solid rgba(130,146,166,.16);
    text-align:left;
    vertical-align:top;
  }
  .admin-ai-table th{
    position:sticky;
    top:0;
    background:#eaf1f8;
    z-index:1;
  }
  .admin-ai-empty{
    padding:12px;
    color:#60757c;
    font-size:12px;
    border-radius:12px;
    border:1px solid rgba(130,146,166,.18);
    background:rgba(255,255,255,.34);
  }
  .admin-deploy-shell{
    display:grid;
    gap:14px;
  }
  .admin-deploy-upload{
    display:grid;
    gap:10px;
    padding:13px;
    border-radius:14px;
    border:1px solid rgba(130,146,166,.22);
    background:rgba(255,255,255,.40);
  }
  .admin-deploy-upload-row{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px;
  }
  .admin-deploy-upload-row input[type="file"]{
    flex:1 1 360px;
    min-width:0;
  }
  .admin-deploy-summary{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(155px,1fr));
    gap:9px;
  }
  .admin-deploy-summary-card{
    min-width:0;
    padding:10px 11px;
    border-radius:12px;
    border:1px solid rgba(130,146,166,.18);
    background:rgba(255,255,255,.48);
  }
  .admin-deploy-summary-card span{
    display:block;
    color:#60757c;
    font-size:10px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
  }
  .admin-deploy-summary-card strong{
    display:block;
    margin-top:4px;
    color:#294f58;
    font-size:13px;
    overflow-wrap:anywhere;
  }
  .admin-deploy-path{
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
    font-size:11px;
    overflow-wrap:anywhere;
  }
  .admin-deploy-warning{
    padding:11px 12px;
    border-radius:12px;
    border:1px solid rgba(205,151,43,.38);
    background:rgba(255,238,188,.42);
    color:#6d571f;
    font-size:12px;
    line-height:1.5;
  }
  .admin-deploy-confirm{
    display:grid;
    grid-template-columns:minmax(220px,360px) auto;
    align-items:end;
    gap:10px;
  }
  .admin-deploy-confirm label{
    display:grid;
    gap:5px;
    color:#48626c;
    font-size:12px;
    font-weight:700;
  }
  .admin-deploy-confirm input{
    width:100%;
  }
  @media (max-width:680px){
    .admin-deploy-confirm{grid-template-columns:1fr;}
  }
  .admin-ai-section{
    display:grid;
    gap:10px;
  }
  .admin-ai-section-title{
    margin:2px 0 0;
    color:#284b53;
    font-size:14px;
    font-weight:800;
  }
  .admin-ai-credit-form{
    display:grid;
    grid-template-columns:minmax(220px,2fr) minmax(120px,.7fr) minmax(220px,2fr) auto auto;
    gap:8px;
    align-items:end;
  }
  .admin-ai-credit-field{
    display:grid;
    gap:5px;
    min-width:0;
  }
  .admin-ai-credit-field label{
    color:#5b7178;
    font-size:12px;
    font-weight:800;
  }
  .admin-ai-credit-field select,
  .admin-ai-credit-field input{
    width:100%;
    min-width:0;
  }
  .admin-access-note{
    padding:16px;
    display:grid;
    gap:10px;
  }
  .admin-kms-warning{
    margin:0;
    padding:12px 14px;
    border:1px solid rgba(177,63,75,.24);
    border-radius:12px;
    background:rgba(177,63,75,.08);
    color:#6f3540;
    line-height:1.45;
  }
  .admin-kms-grid,
  .admin-kms-results{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:12px;
  }
  .admin-kms-panel,
  .admin-kms-result{
    min-width:0;
    padding:14px;
    border:1px solid rgba(130,146,166,.24);
    border-radius:12px;
    background:rgba(255,255,255,.34);
  }
  .admin-kms-panel h4,
  .admin-kms-result h4{
    margin:0 0 8px;
    color:#284b53;
    font-size:14px;
  }
  .admin-kms-panel p,
  .admin-kms-result p{
    margin:0;
    color:#5b7178;
    font-size:12px;
    line-height:1.45;
  }
  .admin-kms-code{
    font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    overflow-wrap:anywhere;
  }
  .admin-kms-key-field{
    min-height:150px;
    font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size:12px;
    resize:vertical;
  }
  .admin-kms-results{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
  .admin-kms-result.is-pass{
    border-color:rgba(42,130,92,.34);
    background:rgba(42,130,92,.08);
  }
  .admin-kms-result.is-fail{
    border-color:rgba(177,63,75,.34);
    background:rgba(177,63,75,.08);
  }
  .admin-kms-result.is-wait{
    border-color:rgba(139,107,31,.30);
    background:rgba(139,107,31,.08);
  }
  @media (max-width: 760px){
    .admin-kms-grid,
    .admin-kms-results{
      grid-template-columns:1fr;
    }
  }
  .admin-users-wrap{
    margin-top:10px;
    max-height:min(62vh, 620px);
    overflow:auto;
    border-radius:12px;
    border:1px solid rgba(130,146,166,.22);
    background: rgba(255,255,255,.36);
  }
  @media (max-width: 820px){
    .account-ai-grid{
      grid-template-columns: repeat(2, minmax(0,1fr));
    }
    .admin-ai-grid{
      grid-template-columns: repeat(2, minmax(0,1fr));
    }
    .admin-ai-credit-form{
      grid-template-columns:1fr 1fr;
    }
  }
  @media (max-width: 640px){
    .account-row{
      grid-template-columns: 1fr;
    }
    .account-ai-grid{
      grid-template-columns: 1fr;
    }
    .admin-ai-grid{
      grid-template-columns: 1fr;
    }
    .admin-ai-credit-form{
      grid-template-columns:1fr;
    }
    .account-ai-head{
      flex-direction:column;
      align-items:flex-start;
    }
  }
  .admin-activity-wrap{
    margin-top:10px;
    max-height:min(62vh, 620px);
    overflow:auto;
    border-radius:12px;
    border:1px solid rgba(130,146,166,.22);
    background: rgba(255,255,255,.36);
  }
  .admin-csp-report-box{
    width:100%;
    min-height:190px;
    resize:vertical;
    box-sizing:border-box;
    padding:10px 12px;
    border-radius:12px;
    border:1px solid rgba(130,146,166,.22);
    background:rgba(255,255,255,.74);
    color:#314d55;
    font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size:11px;
    line-height:1.45;
  }
  .admin-csp-uri{
    max-width:360px;
    word-break:break-all;
  }
  .admin-change-register{
    display:grid;
    gap:12px;
    padding:10px;
  }
  .admin-change-toolbar{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
  }
  .admin-change-layout{
    display:grid;
    grid-template-columns:minmax(280px, .9fr) minmax(360px, 1.1fr);
    gap:12px;
    align-items:start;
  }
  .admin-change-layout.is-view{
    grid-template-columns:1fr;
  }
  .admin-change-list,
  .admin-change-editor{
    border:1px solid rgba(130,146,166,.22);
    border-radius:14px;
    background:rgba(255,255,255,.46);
    padding:12px;
    display:grid;
    gap:10px;
  }
  .admin-change-table{
    width:100%;
    border-collapse:collapse;
    font-size:12px;
  }
  .admin-change-table th,
  .admin-change-table td{
    padding:8px;
    border-bottom:1px solid rgba(130,146,166,.16);
    text-align:left;
    vertical-align:top;
  }
  .admin-change-table th{
    color:#60757c;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.05em;
  }
  .admin-change-table tr.is-selected{
    background:rgba(47,154,162,.10);
  }
  .admin-change-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .admin-change-grid .wide{
    grid-column:1 / -1;
  }
  .admin-change-editor label{
    display:grid;
    gap:5px;
    color:#405a62;
    font-size:12px;
    font-weight:800;
  }
  .admin-change-editor input,
  .admin-change-editor select,
  .admin-change-editor textarea{
    width:100%;
    box-sizing:border-box;
    border:1px solid rgba(130,146,166,.26);
    border-radius:10px;
    padding:8px 10px;
    background:rgba(255,255,255,.78);
    color:#2f4b53;
    font:13px/1.4 inherit;
  }
  .admin-change-editor textarea{
    min-height:74px;
    resize:vertical;
  }
  .admin-change-pill{
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:3px 8px;
    background:#e8f3f4;
    color:#315d66;
    font-size:11px;
    font-weight:800;
  }
  .admin-change-filter{
    border:1px solid rgba(130,146,166,.18);
    cursor:pointer;
    font:inherit;
  }
  .admin-change-filter.is-selected{
    background:#2f9aa2;
    border-color:#2f9aa2;
    color:#fff;
  }
  .admin-change-entry{
    display:grid;
    gap:8px;
    padding:14px 2px;
  }
  .admin-change-entry + .admin-change-entry{
    border-top:1px solid rgba(130,146,166,.22);
  }
  .admin-change-entry-head{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    gap:8px;
    align-items:flex-start;
  }
  .admin-change-entry-title{
    display:grid;
    gap:3px;
    min-width:min(100%, 360px);
  }
  .admin-change-entry-title strong{
    color:#233f47;
    font-size:15px;
  }
  .admin-change-entry-meta{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
  }
  .admin-change-entry-text{
    display:grid;
    gap:6px;
    color:#344f57;
    font-size:13px;
    line-height:1.45;
  }
  .admin-change-entry-text div{
    white-space:pre-wrap;
  }
  .admin-change-entry-actions{
    display:flex;
    justify-content:flex-start;
    gap:8px;
  }
  .admin-validation-upload{
    border:1px dashed rgba(130,146,166,.38);
    border-radius:14px;
    padding:12px;
    background:rgba(255,255,255,.42);
    display:grid;
    gap:8px;
  }
  .admin-validation-checklist{
    display:grid;
    gap:7px;
  }
  .admin-validation-check{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:8px;
    align-items:start;
    padding:8px 10px;
    border:1px solid rgba(130,146,166,.18);
    border-radius:10px;
    background:rgba(255,255,255,.52);
    color:#344f57;
    font-size:13px;
  }
  .admin-validation-check input{
    margin-top:2px;
  }
  .admin-validation-meta{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
    color:#5d737b;
    font-size:12px;
  }
  .admin-validation-meta div{
    border:1px solid rgba(130,146,166,.16);
    border-radius:10px;
    padding:6px 8px;
    background:rgba(255,255,255,.44);
  }
  .admin-validation-notes{
    min-height:90px;
    resize:vertical;
  }
  @media (max-width: 900px){
    .admin-change-layout{
      grid-template-columns:1fr;
    }
    .admin-change-grid{
      grid-template-columns:1fr;
    }
    .admin-validation-meta{
      grid-template-columns:1fr;
    }
  }
  .monthly-evidence-row.is-danger{
    background:rgba(198,60,76,.08);
  }
  .monthly-evidence-row.is-warn{
    background:rgba(220,144,53,.08);
  }
  .monthly-evidence-editor{
    display:grid;
    gap:8px;
    min-width:240px;
  }
  .monthly-evidence-editor textarea{
    min-height:62px;
    resize:vertical;
  }
  .admin-checkline{
    display:flex;
    align-items:flex-start;
    gap:8px;
    margin:0 0 8px;
    color:#24454e;
    font-size:12px;
    font-weight:700;
    line-height:1.35;
  }
  .admin-checkline input{
    margin-top:2px;
  }
  .admin-input{
    width:100%;
    min-height:58px;
    border:1px solid #c9d8de;
    border-radius:10px;
    padding:8px 10px;
    background:#fff;
    color:#17313a;
    font:inherit;
    resize:vertical;
    box-sizing:border-box;
  }
  .monthly-evidence-files{
    display:grid;
    gap:4px;
    font-size:11px;
    color:#5f747b;
  }
  .monthly-evidence-file{
    word-break:break-word;
  }
  .monthly-evidence-actions{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin:0 0 6px;
  }
  .monthly-evidence-actions .monthly-procedure-open{
    margin:0;
  }
  .monthly-owner-actions{
    scroll-margin-top:18px;
  }
  .monthly-owner-summary{
    grid-template-columns:repeat(auto-fit,minmax(130px,1fr));
  }
  .monthly-owner-source-health{
    display:grid;
    gap:6px;
  }
  .monthly-owner-source-row{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
    padding:8px 10px;
    border:1px solid rgba(130,146,166,.18);
    border-radius:10px;
    background:rgba(255,255,255,.46);
    color:#425a62;
    font-size:11px;
    line-height:1.4;
  }
  .monthly-owner-groups{
    display:grid;
    gap:12px;
  }
  .monthly-owner-group{
    display:grid;
    gap:8px;
    padding:12px;
    border:1px solid rgba(130,146,166,.18);
    border-radius:14px;
    background:rgba(255,255,255,.30);
  }
  .monthly-owner-group-title{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin:0;
    color:#315862;
    font-size:13px;
    font-weight:900;
  }
  .monthly-owner-group-count{
    color:#687d84;
    font-size:10px;
    font-weight:800;
    letter-spacing:.04em;
    text-transform:uppercase;
  }
  .monthly-owner-items{
    display:grid;
    gap:8px;
  }
  .monthly-owner-item{
    display:grid;
    gap:9px;
    padding:11px 12px;
    border:1px solid rgba(130,146,166,.20);
    border-left:4px solid #b9c8cd;
    border-radius:12px;
    background:rgba(255,255,255,.72);
    scroll-margin-top:18px;
  }
  .monthly-owner-item.is-needs-action,
  .monthly-owner-item.is-unavailable{
    border-left-color:#c63c4c;
    background:rgba(198,60,76,.055);
  }
  .monthly-owner-item.is-follow-up{
    border-left-color:#dc9035;
    background:rgba(220,144,53,.055);
  }
  .monthly-owner-item.is-upcoming{
    border-left-color:#d1ad58;
    background:rgba(225,188,101,.055);
  }
  .monthly-owner-item.is-completed{
    border-left-color:#60b785;
    padding-top:9px;
    padding-bottom:9px;
    background:rgba(96,183,133,.045);
  }
  .monthly-owner-item-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
  }
  .monthly-owner-item-title{
    display:grid;
    gap:3px;
    min-width:0;
  }
  .monthly-owner-item-title strong{
    color:#294f58;
    font-size:13px;
    line-height:1.35;
  }
  .monthly-owner-item-meta{
    color:#687d84;
    font-size:10px;
    font-weight:800;
    letter-spacing:.04em;
    text-transform:uppercase;
  }
  .monthly-owner-statuses{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:5px;
  }
  .monthly-owner-status{
    display:inline-flex;
    align-items:center;
    padding:3px 8px;
    border:1px solid rgba(130,146,166,.24);
    border-radius:999px;
    background:rgba(247,250,248,.84);
    color:#4f676f;
    font-size:10px;
    font-weight:900;
    white-space:nowrap;
  }
  .monthly-owner-status.is-danger{
    border-color:rgba(198,60,76,.34);
    background:rgba(198,60,76,.10);
    color:#8b2431;
  }
  .monthly-owner-status.is-warn{
    border-color:rgba(220,144,53,.34);
    background:rgba(220,144,53,.10);
    color:#7a5219;
  }
  .monthly-owner-status.is-ok{
    border-color:rgba(96,183,133,.34);
    background:rgba(96,183,133,.11);
    color:#1f6a46;
  }
  .monthly-owner-detail-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px 12px;
  }
  .monthly-owner-detail{
    min-width:0;
    color:#425a62;
    font-size:11px;
    line-height:1.45;
    overflow-wrap:anywhere;
  }
  .monthly-owner-detail strong{
    display:block;
    margin-bottom:2px;
    color:#365761;
    font-size:10px;
    letter-spacing:.045em;
    text-transform:uppercase;
  }
  .monthly-owner-detail.is-wide{
    grid-column:1 / -1;
  }
  .monthly-owner-steps{
    margin:0;
    padding-left:18px;
  }
  .monthly-owner-steps li{
    margin:2px 0;
  }
  .monthly-owner-actions-row{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:7px;
  }
  .monthly-owner-note{
    color:#5e7279;
    font-size:11px;
    line-height:1.45;
  }
  @media (max-width:720px){
    .monthly-owner-detail-grid{
      grid-template-columns:1fr;
    }
    .monthly-owner-detail.is-wide{
      grid-column:auto;
    }
    .monthly-owner-item-head{
      display:grid;
    }
    .monthly-owner-statuses{
      justify-content:flex-start;
    }
  }
  .monthly-access-verification-toolbar{
    display:flex;
    flex-wrap:wrap;
    align-items:end;
    gap:8px;
    margin:10px 0;
  }
  .monthly-access-verification-toolbar label{
    display:grid;
    gap:5px;
    min-width:min(100%, 360px);
    color:#365761;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
  }
  .monthly-access-verification-toolbar select{
    min-height:34px;
  }
  .monthly-access-verification-results-label{
    display:block;
    margin:12px 0 6px;
    color:#365761;
    font-size:12px;
    font-weight:800;
  }
  #monthlyAccessVerificationResults{
    min-height:240px;
  }
  .monthly-procedure-open{
    margin:0 0 6px;
    justify-self:start;
  }
  .monthly-procedure-content{
    margin:10px 0 0;
    padding:14px;
    border-radius:14px;
    border:1px solid rgba(130,146,166,.24);
    background:rgba(255,255,255,.76);
    color:#2f4850;
    white-space:pre-wrap;
    word-break:break-word;
    font:12px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  }
  .admin-access-mfa-review{
    display:grid;
    gap:12px;
  }
  .admin-access-mfa-summary{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
    gap:10px;
  }
  .admin-access-mfa-list{
    display:grid;
    gap:10px;
    max-height:56vh;
    overflow:auto;
    padding-right:4px;
  }
  .admin-access-mfa-row{
    border:1px solid rgba(130,146,166,.22);
    border-radius:16px;
    padding:12px;
    background:rgba(255,255,255,.78);
  }
  .admin-access-mfa-row.is-finding{
    border-color:rgba(198,60,76,.38);
    background:rgba(198,60,76,.08);
  }
  .admin-access-mfa-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
  }
  .admin-access-mfa-check{
    display:flex;
    gap:8px;
    align-items:flex-start;
    font-weight:800;
    color:#2f4850;
  }
  .admin-access-mfa-check input{
    margin-top:2px;
  }
  .admin-access-mfa-meta,
  .admin-access-mfa-assignments{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:8px;
  }
  .admin-access-mfa-pill{
    border:1px solid rgba(130,146,166,.24);
    border-radius:999px;
    padding:4px 8px;
    background:rgba(247,250,248,.84);
    color:#445e66;
    font-size:11px;
    font-weight:700;
  }
  .admin-access-mfa-finding{
    margin-top:8px;
    color:#9d2f3d;
    font-size:12px;
    font-weight:800;
  }
  .admin-activity-toolbar{
    display:flex;
    flex-wrap:wrap;
    gap:10px 14px;
    align-items:flex-end;
    margin-top:10px;
    padding:12px;
    border-radius:12px;
    border:1px solid rgba(130,146,166,.18);
    background:rgba(255,255,255,.32);
  }
  .admin-activity-toolbar.hidden{
    display:none;
  }
  .admin-activity-toolbar label{
    display:grid;
    gap:5px;
    color:#48626c;
    font-size:12px;
    font-weight:700;
  }
  .admin-activity-toolbar input[type="text"]{
    min-width:min(320px, 72vw);
    padding:8px 10px;
    border-radius:10px;
    border:1px solid rgba(130,146,166,.24);
    background:rgba(255,255,255,.82);
    color:#2f4d56;
  }
  .admin-activity-check{
    display:inline-flex !important;
    align-items:center;
    gap:8px;
  }
  .admin-activity-check input{
    margin:0;
  }
  .admin-summary{
    margin-top:10px;
    border-radius:12px;
    border:1px solid rgba(130,146,166,.22);
    background: rgba(255,255,255,.36);
    overflow:auto;
  }
  .admin-summary-shell{
    display:grid;
    gap:12px;
    padding:12px;
  }
  .admin-summary-title{
    padding:8px 10px;
    font-size:12px;
    font-weight:800;
    color:#4b646d;
    border-bottom:1px solid rgba(130,146,166,.14);
  }
  .admin-summary-subtitle{
    margin:0;
    font-size:13px;
    font-weight:800;
    color:#425b63;
  }
  .admin-overview-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
  }
  .admin-overview-card{
    padding:12px;
    border-radius:14px;
    background:rgba(255,255,255,.52);
    border:1px solid rgba(130,146,166,.16);
    box-shadow:inset 2px 2px 6px rgba(130,146,166,.08);
  }
  .admin-overview-label{
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#677d84;
  }
  .admin-overview-value{
    margin-top:5px;
    font-size:24px;
    font-weight:900;
    line-height:1.05;
    color:#214a54;
  }
  .admin-overview-meta{
    margin-top:5px;
    font-size:12px;
    line-height:1.4;
    color:#5c727a;
  }
  .admin-overview-lists{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
  }
  .admin-chart-panel{
    padding:12px;
    border-radius:14px;
    background:rgba(255,255,255,.46);
    border:1px solid rgba(130,146,166,.16);
    display:grid;
    gap:10px;
  }
  .admin-chart-head{
    display:flex;
    flex-wrap:wrap;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px 14px;
  }
  .admin-chart-copy{
    display:grid;
    gap:4px;
  }
  .admin-chart-note{
    font-size:12px;
    line-height:1.45;
    color:#5c727a;
  }
  .admin-chart-legend{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    justify-content:flex-end;
  }
  .admin-chart-chip{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:6px 10px;
    border-radius:999px;
    background:rgba(255,255,255,.62);
    border:1px solid rgba(130,146,166,.18);
    font-size:11px;
    font-weight:700;
    color:#46606a;
  }
  .admin-chart-chip::before{
    content:'';
    width:10px;
    height:10px;
    border-radius:50%;
    background:var(--chip-color,#5a7a84);
    box-shadow:0 0 0 2px rgba(255,255,255,.75);
  }
  .admin-chart-wrap{
    min-height:390px;
    border-radius:14px;
    border:1px solid rgba(130,146,166,.16);
    background:rgba(255,255,255,.58);
    overflow:hidden;
  }
  .admin-chart-canvas{
    width:100%;
    height:390px;
  }
  .admin-chart-empty{
    min-height:180px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:18px;
    text-align:center;
    color:#60757c;
    font-size:12px;
    line-height:1.5;
  }
  .admin-overview-panel{
    padding:12px;
    border-radius:14px;
    background:rgba(255,255,255,.46);
    border:1px solid rgba(130,146,166,.16);
  }
  .admin-overview-list{
    margin:10px 0 0;
    padding:0;
    list-style:none;
    display:grid;
    gap:7px;
  }
  .admin-overview-list li{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
    font-size:12px;
    color:#425a62;
  }
  .admin-overview-list strong{
    font-weight:700;
  }
  .admin-overview-count{
    flex:0 0 auto;
    font-weight:800;
    color:#294f58;
  }
  .admin-diagnostic-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:10px;
  }
  .admin-diagnostic-card{
    padding:12px;
    border-radius:14px;
    background:rgba(255,255,255,.46);
    border:1px solid rgba(130,146,166,.16);
  }
  .admin-diagnostic-path{
    margin-top:6px;
    color:#5d7279;
    font-size:11px;
    line-height:1.45;
    word-break:break-word;
  }
  .admin-diagnostic-list{
    margin:10px 0 0;
    padding:0;
    list-style:none;
    display:grid;
    gap:6px;
  }
  .admin-diagnostic-list li{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    font-size:12px;
    color:#425a62;
  }
  .admin-status-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:58px;
    padding:3px 9px;
    border-radius:999px;
    font-size:11px;
    font-weight:800;
    letter-spacing:.01em;
  }
  .admin-status-pill.ok{
    color:#1f6a46;
    background:rgba(96, 196, 143, .22);
    border:1px solid rgba(96, 196, 143, .38);
  }
  .admin-status-pill.fail{
    color:#8b3a47;
    background:rgba(210, 110, 131, .18);
    border:1px solid rgba(210, 110, 131, .34);
  }
  .admin-status-pill.wait{
    color:#7a5a16;
    background:rgba(225, 188, 101, .20);
    border:1px solid rgba(225, 188, 101, .34);
  }
  .admin-review-alert{
    display:grid;
    gap:5px;
    padding:11px 12px;
    border-radius:12px;
    border:1px solid rgba(130,146,166,.22);
    background:rgba(255,255,255,.54);
    color:#425a62;
    font-size:12px;
    line-height:1.45;
  }
  .admin-review-alert strong{
    font-size:12px;
    font-weight:900;
  }
  .admin-review-alert.is-danger{
    border-color:rgba(198,60,76,.42);
    background:rgba(198,60,76,.12);
    color:#8b2431;
  }
  .admin-review-alert.is-danger strong{
    color:#7d1e2b;
  }
  .admin-summary-section{
    display:grid;
    gap:10px;
  }
  .admin-summary-table{
    width:100%;
    border-collapse:collapse;
    font-size:12px;
    color:#3f565d;
  }
  .admin-cron-table{
    min-width:760px;
  }
  .admin-cron-code{
    display:block;
    margin-top:3px;
    font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size:11px;
    line-height:1.4;
    color:#5c727a;
    overflow-wrap:anywhere;
  }
  .admin-org-section{
    margin-top:12px;
    display:grid;
    gap:10px;
  }
  .admin-org-grid{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    gap:10px;
  }
  .admin-org-card{
    padding:12px;
    border-radius:14px;
    background:rgba(255,255,255,.34);
    border:1px solid rgba(130,146,166,.18);
    box-shadow:inset 2px 2px 6px rgba(130,146,166,.08);
  }
  .admin-org-card h4{
    margin:0 0 10px;
    font-size:14px;
    color:#40565d;
  }
  .admin-org-wrap{
    border-radius:12px;
    border:1px solid rgba(130,146,166,.22);
    background:rgba(255,255,255,.36);
    overflow:auto;
    max-height:min(62vh, 620px);
  }
  .admin-org-list{
    border-top:1px solid rgba(130,146,166,.16);
  }
  .admin-org-list:first-child{
    border-top:0;
  }
  .admin-org-table{
    width:100%;
    border-collapse:collapse;
    font-size:12px;
    color:#3f565d;
  }
  .admin-org-table th,
  .admin-org-table td{
    padding:8px 9px;
    border-bottom:1px solid rgba(130,146,166,.16);
    text-align:left;
    vertical-align:top;
  }
  .admin-org-table th{
    position:sticky;
    top:0;
    background:#eaf1f8;
    z-index:1;
  }
  .admin-org-note{
    display:block;
    margin-top:3px;
    font-size:11px;
    color:#667b82;
    line-height:1.35;
  }
  .admin-org-actions{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:7px;
  }
  .admin-org-metric{
    display:block;
    margin-top:3px;
    font-size:11px;
    color:#5b7077;
    line-height:1.35;
  }
  .admin-org-empty{
    padding:12px;
    color:#60757c;
    font-size:12px;
  }
  .admin-storage-wrap{
    margin-top:10px;
    max-height:340px;
    overflow:auto;
    border-radius:12px;
    border:1px solid rgba(130,146,166,.22);
    background:rgba(255,255,255,.36);
  }
  .admin-storage-wrap.is-disk-space{
    max-height:min(68vh,720px);
  }
  .admin-export-section{
    padding:14px 12px 16px;
    border-top:1px solid rgba(130,146,166,.22);
  }
  .admin-export-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
    margin-bottom:10px;
  }
  .admin-export-head h4{
    margin:0;
    color:#315862;
    font-size:15px;
  }
  .admin-export-head p{
    margin:4px 0 0;
    color:#60757c;
    font-size:11px;
    line-height:1.45;
  }
  .admin-export-actions{
    display:flex;
    gap:7px;
    flex-wrap:wrap;
  }
  .admin-export-summary{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
    margin-bottom:12px;
  }
  .admin-export-summary .admin-storage-stat{
    padding:10px;
  }
  .admin-export-alert{
    margin:8px 0 12px;
    padding:9px 10px;
    border-radius:10px;
    border:1px solid #d3a54e;
    background:#fff8e5;
    color:#705019;
    font-size:11px;
    line-height:1.45;
  }
  .admin-export-alert.is-danger{
    border-color:#d67b86;
    background:#fff0f2;
    color:#8b2431;
  }
  .admin-export-ref{
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    font-size:11px;
  }
  .admin-export-meta{
    display:block;
    margin-top:3px;
    color:#6a7e84;
    font-size:10px;
    line-height:1.35;
  }
  .sr-only{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    padding:0 !important;
    margin:-1px !important;
    overflow:hidden !important;
    clip:rect(0,0,0,0) !important;
    white-space:nowrap !important;
    border:0 !important;
  }
  .admin-storage-stats{
    margin-top:10px;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
  }
  .admin-storage-stat{
    padding:12px;
    border-radius:14px;
    background:rgba(255,255,255,.34);
    border:1px solid rgba(130,146,166,.18);
    box-shadow:inset 2px 2px 6px rgba(130,146,166,.08);
  }
  .admin-storage-stat .n{
    font-size:18px;
    font-weight:900;
    color:#2c5660;
    line-height:1.1;
  }
  .admin-storage-stat .t{
    margin-top:4px;
    font-size:12px;
    color:#5d7279;
  }
  .admin-storage-path{
    margin:10px 0 0;
    color:#5d7279;
    font-size:12px;
    line-height:1.45;
    word-break:break-word;
  }
  .admin-storage-table{
    width:100%;
    border-collapse:collapse;
    font-size:12px;
    color:#3f565d;
  }
  .admin-storage-table th,
  .admin-storage-table td{
    padding:8px 9px;
    border-bottom:1px solid rgba(130,146,166,.16);
    text-align:left;
    vertical-align:top;
  }
  .admin-storage-table th{
    position:sticky;
    top:0;
    background:#eaf1f8;
    z-index:1;
  }
  .admin-storage-empty{
    padding:12px;
    color:#60757c;
    font-size:12px;
  }
  .admin-summary-table th,.admin-summary-table td{
    padding:8px 9px;
    border-bottom:1px solid rgba(130,146,166,.16);
    text-align:left;
    vertical-align:top;
  }
  @media (max-width:980px){
    .admin-chart-head{
      display:grid;
    }
    .admin-chart-legend{
      justify-content:flex-start;
    }
    .admin-chart-canvas{
      height:350px;
    }
  }
  .admin-users{
    width:100%;
    border-collapse:collapse;
    font-size:12px;
    color:#3f565d;
  }
  .admin-activity{
    width:100%;
    border-collapse:collapse;
    font-size:12px;
    color:#3f565d;
  }
  .admin-users th,.admin-users td{
    padding:8px 9px;
    border-bottom:1px solid rgba(130,146,166,.16);
    text-align:left;
    vertical-align:top;
  }
  .admin-activity th,.admin-activity td{
    padding:8px 9px;
    border-bottom:1px solid rgba(130,146,166,.16);
    text-align:left;
    vertical-align:top;
  }
  .admin-users th{
    position:sticky;
    top:0;
    background:#eaf1f8;
    z-index:1;
  }
  .admin-user-actions{
    display:flex;
    gap:6px;
    flex-wrap:wrap;
  }
  .admin-test-plan-summary,
  .owner-plan-onboarding-summary{
    padding:12px 14px;
    border:1px solid rgba(82,118,128,.22);
    border-radius:14px;
    background:rgba(255,255,255,.38);
    color:#4d646c;
    line-height:1.5;
  }
  .admin-test-plan-contexts{
    margin-top:6px;
    font-size:12px;
    color:#647980;
  }
  .admin-test-plan-warning{
    margin-top:12px;
    padding:12px 14px;
    border:1px solid rgba(176,117,37,.35);
    border-radius:14px;
    background:rgba(255,239,202,.55);
    color:#75551f;
    line-height:1.5;
  }
  .owner-plan-onboarding-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:12px;
  }
  .owner-plan-onboarding-fact{
    padding:10px 12px;
    border-radius:12px;
    background:rgba(255,255,255,.35);
    box-shadow:inset 1px 1px 4px rgba(80,105,115,.10);
  }
  .owner-plan-onboarding-fact strong{
    display:block;
    margin-bottom:3px;
    color:#31545d;
  }
  @media (max-width:640px){
    .owner-plan-onboarding-grid{grid-template-columns:1fr;}
  }
  .admin-user-files-row td{
    padding:0;
    background:rgba(255,255,255,.18);
  }
  .admin-user-files-panel{
    padding:10px 12px 12px;
  }
  .admin-user-files-meta{
    margin:0 0 8px;
    font-size:12px;
    color:#536971;
    display:flex;
    gap:10px;
    flex-wrap:wrap;
  }
  .admin-user-files-empty{
    padding:8px 0 2px;
    color:#60757c;
    font-size:12px;
  }
  .admin-members-target{
    margin:0 0 12px;
    color:#566c73;
    font-size:13px;
    line-height:1.4;
  }
  .admin-members-wrap{
    margin-top:10px;
    border-radius:12px;
    border:1px solid rgba(130,146,166,.22);
    background:rgba(255,255,255,.36);
    overflow:auto;
    max-height:300px;
  }
  #accountApprovalsWrap{
    max-height:460px;
  }
  .admin-members-table{
    width:100%;
    border-collapse:collapse;
    font-size:12px;
    color:#3f565d;
  }
  .admin-members-table th,
  .admin-members-table td{
    padding:8px 9px;
    border-bottom:1px solid rgba(130,146,166,.16);
    text-align:left;
    vertical-align:top;
  }
  .admin-members-table th{
    position:sticky;
    top:0;
    background:#eaf1f8;
    z-index:1;
  }
  .admin-members-actions{
    display:flex;
    gap:6px;
    flex-wrap:wrap;
  }
  .admin-members-empty{
    padding:12px;
    color:#60757c;
    font-size:12px;
  }
  .admin-members-empty.warn{
    color:#9a3412;
    background:#fff7ed;
    border:1px solid #fed7aa;
    border-radius:12px;
  }
  .admin-members-auth{
    display:flex;
    flex-direction:column;
    gap:4px;
  }
  .admin-status-pill{
    display:inline-flex;
    align-items:center;
    width:max-content;
    border-radius:999px;
    padding:3px 8px;
    font-size:11px;
    font-weight:800;
    letter-spacing:.01em;
    border:1px solid transparent;
  }
  .admin-status-accepted{
    color:#146b3a;
    background:rgba(24,154,82,.14);
    border-color:rgba(24,154,82,.28);
  }
  .admin-status-pending{
    color:#9a5a00;
    background:rgba(245,158,11,.16);
    border-color:rgba(245,158,11,.3);
  }
  .admin-status-rejected,
  .admin-status-reported,
  .admin-status-canceled{
    color:#a11d1d;
    background:rgba(220,38,38,.13);
    border-color:rgba(220,38,38,.28);
  }
  .admin-access-wrap{
    margin-top:10px;
    display:grid;
    gap:14px;
  }
  .access-members-callout, .admin-members-toolbar{
    display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
    margin:14px 0;padding:14px 16px;border:1px solid rgba(42,118,129,.25);border-radius:14px;background:rgba(222,242,242,.6);
  }
  .access-members-callout strong,.access-members-callout span{display:block;}
  .access-members-callout span,.admin-members-toolbar>span{font-size:12px;color:#526d75;line-height:1.5;}
  .access-members-callout .btn{flex-shrink:0;min-height:42px;}
  .access-rights-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:8px;border:1px solid rgba(92,127,140,.22);border-radius:14px;background:rgba(233,241,245,.7);}
  .access-rights-tabs [role="tab"]{appearance:none;flex:0 0 auto;width:auto;min-height:40px;padding:9px 13px;border:1px solid transparent;border-radius:9px;background:transparent;box-shadow:none;color:#36535e;font:inherit;font-size:12px;font-weight:700;cursor:pointer;}
  .access-rights-tabs [role="tab"][aria-selected="true"]{background:#275f6e;border-color:#275f6e;color:white;box-shadow:0 2px 5px rgba(30,66,78,.15);}
  .access-rights-tabs [role="tab"]:focus-visible{outline:3px solid #4b9dac;outline-offset:2px;}
  #accessRightsWrap [data-access-rights-panel][hidden]{display:none !important;}
  #accessRightsWrap [data-access-rights-panel]{min-width:0;}
  #memberDetailModal{z-index:905;}
  #memberDetailModal.is-submodal-active{background:rgba(14,33,43,.32);}
  #memberDetailCard .modal-body{overflow-y:auto;}
  #memberDetailCard .field-note{line-height:1.55;}
  #memberDetailCard .field>label.chk{display:flex;align-items:flex-start;gap:8px;}
  #memberDetailCard .field>label.chk input[type="checkbox"]{width:16px;height:16px;flex:0 0 16px;box-shadow:none;margin-top:2px;}
  .admin-member-name-button{appearance:none;border:0;padding:0;background:none;color:#225d70;font:inherit;font-weight:750;text-align:left;cursor:pointer;box-shadow:none;}
  .admin-member-name-button:hover{text-decoration:underline;}
  .admin-members-table tr[data-member-open]{cursor:pointer;}
  .admin-members-table tr[data-member-open]:hover{background:rgba(231,243,246,.8);}
  @media(max-width:640px){
    .access-rights-tabs{gap:4px;padding:5px;}
    .access-rights-tabs [role="tab"]{flex:1 0 calc(50% - 4px);font-size:11px;padding:8px;}
    .access-members-callout .btn,.admin-members-toolbar .btn{width:100%;}
    #memberDetailCard .row-2{grid-template-columns:1fr;}
  }
  .admin-access-hidden{
    display:none !important;
  }
  .access-section{
    border-radius:16px;
    border:1px solid rgba(130,146,166,.2);
    background:rgba(255,255,255,.34);
    padding:14px;
  }
  .access-section-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    margin-bottom:10px;
  }
  .access-section-title{
    margin:0;
    font-size:14px;
    font-weight:800;
    color:#375159;
  }
  .access-section-note{
    margin:0;
    color:#61767d;
    font-size:12px;
  }
  .access-deny-note{
    border:1px solid rgba(176,108,46,.24);
    border-radius:14px;
    background:rgba(255,247,237,.76);
    color:#7a4a1b;
    font-size:12px;
    font-weight:700;
    line-height:1.45;
    padding:10px 12px;
  }
  .access-card-list{
    display:grid;
    gap:10px;
  }
  .access-split{
    display:grid;
    grid-template-columns:minmax(240px,300px) minmax(0,1fr);
    gap:12px;
    align-items:start;
  }
  .access-list-shell{
    display:grid;
    gap:8px;
  }
  .access-list-search{
    margin:0;
  }
  .access-list-search input{
    width:100%;
  }
  .access-list{
    display:grid;
    gap:8px;
    max-height:420px;
    overflow:auto;
    padding-right:2px;
  }
  .access-list-item{
    width:100%;
    border:1px solid rgba(130,146,166,.18);
    border-radius:14px;
    background:rgba(255,255,255,.42);
    padding:10px 12px;
    text-align:left;
    cursor:pointer;
    display:grid;
    gap:4px;
    color:#324f57;
    box-shadow:
      inset 2px 2px 5px rgba(255,255,255,.4),
      0 4px 10px rgba(130,146,166,.08);
  }
  .access-list-item.active{
    border-color:rgba(43,155,163,.38);
    background:rgba(232,247,248,.92);
    box-shadow:
      inset 2px 2px 5px rgba(255,255,255,.48),
      0 8px 18px rgba(43,155,163,.14);
  }
  .access-list-title{
    margin:0;
    font-size:13px;
    font-weight:800;
    color:#35535b;
  }
  .access-list-meta{
    margin:0;
    font-size:12px;
    color:#61767d;
    line-height:1.35;
  }
  .access-detail{
    min-height:160px;
    border-radius:14px;
    border:1px solid rgba(130,146,166,.18);
    background:rgba(255,255,255,.42);
    padding:12px;
  }
  .access-card{
    border-radius:14px;
    border:1px solid rgba(130,146,166,.18);
    background:rgba(255,255,255,.42);
    padding:12px;
  }
  .access-card-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    margin-bottom:10px;
  }
  .access-card-title{
    margin:0;
    font-size:13px;
    font-weight:800;
    color:#415a62;
  }
  .access-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px 12px;
  }
  .access-grid.compact{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .access-grid.wide{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .access-grid .field{
    margin-bottom:0;
  }
  .access-multi{
    min-height:96px;
  }
  .access-check-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px 12px;
    margin-top:8px;
  }
  .access-check{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:12px;
    color:#486067;
  }
  .access-check.is-disabled{
    opacity:.6;
  }
  :is([data-access-kind="catalog-editor"], [data-access-kind="catalog_create-editor"], [data-access-kind="catalog_write-editor"]) .field > label.access-check{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:4px;
  }
  :is([data-access-kind="catalog-editor"], [data-access-kind="catalog_create-editor"], [data-access-kind="catalog_write-editor"]) .field > label.access-check > input[type="checkbox"]{
    width:16px;
    height:16px;
    min-width:16px;
    flex:0 0 16px;
    margin:0;
    padding:0;
    border-radius:3px;
    background:transparent;
    box-shadow:none;
  }
  :is([data-access-kind="catalog-editor"], [data-access-kind="catalog_create-editor"], [data-access-kind="catalog_write-editor"]) .field > label.access-check > span{
    min-width:0;
  }
  .access-check input:disabled + span{
    color:#7a8e94;
  }
  .access-picker{
    position:relative;
  }
  .access-picker-trigger{
    width:100%;
    border:1px solid rgba(130,146,166,.26);
    outline:none;
    border-radius:12px;
    padding:11px 12px;
    background: var(--card);
    color:#27434a;
    font:inherit;
    text-align:left;
    cursor:pointer;
    box-shadow:
      inset 5px 5px 10px rgba(130,146,166,.16),
      inset -5px -5px 10px rgba(255,255,255,.82);
  }
  .access-picker-trigger-copy{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    min-height:18px;
  }
  .access-picker-trigger-copy::after{
    content:"▾";
    color:#6b8086;
    font-size:12px;
    flex:0 0 auto;
  }
  .access-picker-panel{
    position:absolute;
    top:calc(100% + 6px);
    left:0;
    right:0;
    z-index:40;
    display:grid;
    gap:8px;
    padding:10px;
    border-radius:14px;
    border:1px solid rgba(130,146,166,.24);
    background:rgba(250,252,252,.98);
    box-shadow:0 16px 28px rgba(86,104,124,.18);
  }
  .access-picker-modebar{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
  }
  .access-picker-mode{
    border:1px solid rgba(130,146,166,.18);
    border-radius:999px;
    background:#fff;
    color:#425960;
    padding:6px 10px;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
  }
  .access-picker-mode.is-selected{
    border-color:rgba(43,155,163,.38);
    background:rgba(232,247,248,.96);
    color:#235d66;
  }
  .access-picker-split{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);
    gap:10px;
    align-items:start;
  }
  .access-picker-col{
    display:grid;
    gap:8px;
    min-width:0;
  }
  .access-picker-col-title{
    margin:0;
    font-size:11px;
    font-weight:800;
    color:#61767d;
    text-transform:uppercase;
    letter-spacing:.04em;
  }
  .access-picked-list{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    min-height:44px;
    align-content:flex-start;
    padding:2px;
  }
  .access-picked-pill{
    display:inline-flex;
    align-items:center;
    gap:6px;
    border:1px solid rgba(43,155,163,.24);
    border-radius:999px;
    background:rgba(232,247,248,.96);
    color:#235d66;
    padding:6px 10px;
    font-size:12px;
    font-weight:700;
  }
  .access-picked-pill button{
    border:none;
    background:transparent;
    color:inherit;
    font:inherit;
    font-weight:900;
    cursor:pointer;
    padding:0;
    line-height:1;
  }
  .access-picked-state{
    display:inline-flex;
    align-items:center;
    padding:6px 10px;
    border-radius:999px;
    background:rgba(83,124,132,.12);
    color:#4b666d;
    font-size:12px;
    font-weight:700;
  }
  .access-picker-empty{
    padding:8px 10px;
    border-radius:10px;
    background:rgba(83,124,132,.08);
    color:#61767d;
    font-size:12px;
  }
  .access-picker-search{
    width:100%;
    border:1px solid rgba(130,146,166,.22);
    border-radius:10px;
    padding:9px 10px;
    background:#fff;
    color:#27434a;
    font:inherit;
  }
  .access-picker-list{
    display:grid;
    gap:6px;
    max-height:220px;
    overflow:auto;
    padding-right:2px;
  }
  .access-picker-option{
    width:100%;
    border:1px solid rgba(130,146,166,.18);
    border-radius:10px;
    background:#fff;
    color:#425960;
    padding:8px 10px;
    text-align:left;
    font-size:12px;
    font-weight:700;
    cursor:pointer;
  }
  .access-picker-option.is-selected{
    border-color:rgba(43,155,163,.38);
    background:rgba(232,247,248,.96);
    color:#235d66;
  }
  .access-picker-option[data-access-choice-mode="all"],
  .access-picker-option[data-access-choice-mode="none"]{
    font-weight:800;
  }
  .access-toggle-list{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    min-height:44px;
  }
  .access-toggle{
    border:1px solid rgba(130,146,166,.2);
    border-radius:999px;
    background:rgba(255,255,255,.76);
    color:#496168;
    padding:7px 10px;
    font-size:12px;
    font-weight:700;
    cursor:pointer;
  }
  .access-toggle.is-selected{
    border-color:rgba(43,155,163,.38);
    background:rgba(232,247,248,.96);
    color:#235d66;
  }
  .access-choice-box{
    display:grid;
    gap:8px;
  }
  .access-choice-toolbar{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }
  .access-choice-mode{
    border:1px solid rgba(130,146,166,.2);
    border-radius:999px;
    background:rgba(255,255,255,.76);
    color:#496168;
    padding:7px 10px;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
  }
  .access-choice-mode.is-selected{
    border-color:rgba(43,155,163,.38);
    background:rgba(232,247,248,.96);
    color:#235d66;
  }
  .access-choice-values{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    min-height:44px;
  }
  .access-choice-value{
    border:1px solid rgba(130,146,166,.2);
    border-radius:999px;
    background:rgba(255,255,255,.76);
    color:#496168;
    padding:7px 10px;
    font-size:12px;
    font-weight:700;
    cursor:pointer;
  }
  .access-choice-value.is-selected{
    border-color:rgba(43,155,163,.38);
    background:rgba(232,247,248,.96);
    color:#235d66;
  }
  .access-choice-note{
    margin:0;
    color:#61767d;
    font-size:11px;
  }
  .access-audit-list{
    display:grid;
    gap:10px;
  }
  .access-audit-card{
    border:1px solid rgba(130,146,166,.18);
    border-radius:14px;
    background:rgba(255,255,255,.56);
    padding:12px;
    display:grid;
    gap:8px;
  }
  .access-audit-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:10px;
    flex-wrap:wrap;
  }
  .access-audit-title{
    margin:0;
    font-size:13px;
    font-weight:800;
    color:#375159;
  }
  .access-audit-meta{
    margin:0;
    font-size:12px;
    color:#61767d;
  }
  .access-audit-changes{
    margin:0;
    padding-left:18px;
    color:#45616a;
    font-size:12px;
    line-height:1.45;
  }
  .access-chip-list{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:8px;
  }
  .access-chip{
    display:inline-flex;
    align-items:center;
    padding:4px 8px;
    border-radius:999px;
    background:rgba(83,124,132,.12);
    color:#4b666d;
    font-size:11px;
    font-weight:700;
  }
  .access-empty{
    padding:12px 0 4px;
    color:#60757c;
    font-size:12px;
  }
  .access-scope{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:6px 0 0;
  }
  .access-scope .access-chip{
    background:rgba(43,155,163,.12);
    color:#2a6971;
  }
  .admin-scope-note{
    margin:0 0 12px;
    color:#556b72;
    font-size:13px;
    line-height:1.45;
  }
  @media (max-width: 920px){
    .access-split{
      grid-template-columns:1fr;
    }
    .access-picker-split{
      grid-template-columns:1fr;
    }
    .access-grid.compact,
    .access-grid.wide{
      grid-template-columns:1fr;
    }
    .access-list{
      max-height:none;
    }
  }
  .admin-user-files-table{
    width:100%;
    border-collapse:collapse;
    font-size:12px;
    color:#40565d;
  }
  .admin-user-files-table th,
  .admin-user-files-table td{
    padding:7px 8px;
    border-top:1px solid rgba(130,146,166,.14);
    text-align:left;
    vertical-align:top;
  }
  .admin-user-files-table th{
    color:#50666e;
    font-weight:800;
    background:rgba(255,255,255,.32);
  }
  .admin-folder-note{
    display:block;
    margin-top:3px;
    font-size:11px;
    color:#6f848a;
  }
  .admin-activity th{
    position:sticky;
    top:0;
    background:#eaf1f8;
    z-index:1;
  }
  .btn-mini.danger{
    color:#fff;
    background: linear-gradient(135deg,#ba4f5a,#a13f49);
    box-shadow:
      5px 5px 10px rgba(130,80,86,.22),
      -5px -5px 10px rgba(255,255,255,.66);
  }

  @media (max-width: 980px){
    .hero{ grid-template-columns:1fr; }
    .hero-use-grid{ grid-template-columns:1fr 1fr; }
    .grid{ grid-template-columns: repeat(4, minmax(0,1fr)); }
    .app-card{ grid-column:span 2; }
    .app-card.is-compact{ grid-column:span 2; }
    .records-app-card{ grid-column:1 / -1; }
    .plan-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
    .admin-stats{ grid-template-columns:1fr; }
    .admin-org-grid{ grid-template-columns:1fr; }
    .admin-storage-stats{ grid-template-columns:1fr 1fr; }
    .admin-export-summary{ grid-template-columns:1fr 1fr; }
    .admin-overview-grid{ grid-template-columns:1fr 1fr; }
    .admin-overview-lists{ grid-template-columns:1fr; }
  }
  @media (max-width: 900px){
    .records-app-owl{ display:none; }
    .records-app-card .app-desc,
    body.theme-workspace .records-app-card .app-desc,
    html.theme-workspace .records-app-card .app-desc,
    .launch-apps-surface .records-app-card .app-desc{
      padding-right:42px;
    }
  }
  @media (max-width: 640px){
    .wrap{ padding:14px; }
    .topbar{ padding:12px; }
    .brand-logo-mini{
      width:auto;
      height:78px;
      max-width:144px;
      flex-basis:auto;
    }
    .brand-copy{ flex:1 1 auto; }
    .brand-text{ font-size:16px; }
    .brand-note{ font-size:11px; }
    .brand-pills{
      flex-basis:100%;
      padding-left:34px;
    }
    .pill{
      font-size:11px;
      padding:4px 8px;
    }
    .launch-intro, .hero-left, .hero-right, .apps{ padding:14px; }
    .grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
    .app-card{ grid-column:span 2; }
    .app-card.is-compact{ grid-column:span 1; }
    .records-app-card,
    body.theme-workspace .records-app-card,
    html.theme-workspace .records-app-card,
    .launch-apps-surface .records-app-card{
      grid-column:1 / -1;
      min-height:150px;
      grid-template-columns:1fr;
      align-items:start;
      gap:8px;
    }
    .records-app-card .app-desc,
    body.theme-workspace .records-app-card .app-desc,
    html.theme-workspace .records-app-card .app-desc,
    .launch-apps-surface .records-app-card .app-desc{
      max-width:none;
      padding-right:30px;
    }
    .plans{ padding:14px; }
    .plan-grid{ grid-template-columns: 1fr; }
    .plan-actions{
      flex-direction:column;
      align-items:stretch;
    }
    .row-2{ grid-template-columns:1fr; }
    .hero-use-grid{ grid-template-columns:1fr; }
    .admin-activity-toolbar{
      flex-direction:column;
      align-items:stretch;
    }
    .admin-activity-toolbar input[type="text"]{
      min-width:0;
      width:100%;
    }
  }

  html.embed-auth{
    background: transparent !important;
  }
  body.embed-auth{
    margin:0;
    background: transparent !important;
    overflow: hidden;
  }
  body.embed-auth .wrap{
    display:none;
  }
  body.embed-auth .overlay{
    display:none !important;
  }
  body.embed-auth .modal{
    position: static;
    inset: auto;
    display: block;
    place-items: initial;
    padding: 0;
    pointer-events: auto;
  }
  body.embed-auth .modal-card{
    margin: 0 auto;
    max-height: calc(100vh - 20px);
  }
  body.embed-auth .modal-card.show{
    display:flex;
  }
  /* Company is a deliberately smaller teaser after Coordination Team. */
  .plans-variant-2 .company-plan-teaser{
    grid-column:1 / -1;
    width:min(760px,100%);
    min-height:0;
    justify-self:center;
    display:grid;
    grid-template-columns:minmax(150px,.75fr) minmax(260px,1.6fr) auto;
    align-items:center;
    gap:14px;
    padding:12px 14px;
    border:1px solid rgba(91,79,119,.20);
    background:linear-gradient(145deg,rgba(239,233,247,.68),rgba(230,237,245,.9));
  }
  .plans-variant-2 .company-plan-teaser .plan-head{
    display:block;
  }
  .plans-variant-2 .company-plan-teaser .plan-tag{
    margin-top:7px;
  }
  .plans-variant-2 .company-teaser-copy{
    margin:0;
    color:#536970;
    font-size:13px;
    line-height:1.42;
  }
  .plans-variant-2 .company-teaser-copy strong{
    color:#274f57;
  }
  @media (max-width:760px){
    .plans-variant-2 .company-plan-teaser{
      grid-template-columns:1fr;
      align-items:start;
    }
    .plans-variant-2 .company-plan-teaser .btn-mini{
      justify-self:start;
    }
  }

  .legal-base .ooc-company-link{display:inline-flex;align-items:center;gap:7px;vertical-align:middle;text-decoration:none;}
  .legal-base .ooc-company-link img{display:block;flex:none;width:26px;height:26px;}
  .legal-base .ooc-company-link:hover{text-decoration:underline;}
  /* Keep keyboard navigation visible across the homepage palettes. */
  .skip-link{
    position:fixed; top:8px; left:8px; z-index:1000;
    padding:12px 18px; border-radius:8px;
    color:#fff; background:#163f4a; font-weight:700;
    transform:translateY(calc(-100% - 16px));
  }
  .skip-link:focus{ transform:translateY(0); }
  body :is(a, button, input, select, textarea, [tabindex]):focus-visible{
    outline:3px solid #124e66; outline-offset:3px;
  }
  #main-content:focus-visible{ outline:3px solid #124e66; outline-offset:4px; }

/* Native app/help navigation and touch-friendly public controls. */
.app-open-link { color:inherit; text-decoration:none; display:flex; flex:1; flex-direction:column; gap:10px; min-width:0; }
.app-open-link::after { content:""; position:absolute; inset:0; border-radius:inherit; z-index:1; }
.app-card:has(.app-open-link:focus-visible) { outline:3px solid #226875; outline-offset:4px; }
.app-help-link { position:relative; z-index:2; display:inline-flex; align-items:center; min-height:24px; width:fit-content; margin-top:2px; color:#265e6c; font-size:13px; line-height:1.4; font-weight:600; text-decoration:underline; text-underline-offset:3px; }
.app-card .app-top { padding-right:28px; }
.app-card .app-about-btn { z-index:3; width:24px; height:24px; }
.plan-info-btn { width:24px; height:24px; min-width:24px; min-height:24px; flex:0 0 24px; }
.app-about-btn:focus-visible, .app-help-link:focus-visible, .top-actions a:focus-visible, .tiny-link:focus-visible, .home-faq summary:focus-visible { outline:3px solid #226875; outline-offset:3px; }
.top-actions a.btn { display:inline-flex; align-items:center; text-decoration:none; }
.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; }
.home-faq { margin-top:24px; padding:24px; }
.home-faq h2 { margin:0 0 14px; }
.home-faq details { border-top:1px solid #c4d3da; padding:6px 0; }
.home-faq summary { cursor:pointer; padding:14px 6px; font-weight:700; min-height:44px; box-sizing:border-box; }
.home-faq p { line-height:1.65; color:#385361; max-width:90ch; }
.home-faq a { color:#245d6b; text-decoration:underline; text-underline-offset:3px; }
.hosting-note { margin-top:20px; padding-top:18px; border-top:1px solid #c4d3da; }

.app-help-link{gap:4px}

.records-app-card .app-open-link{display:grid;grid-column:1/-1;grid-template-columns:subgrid;column-gap:inherit;align-items:center}
.app-card .app-top > div:not(.app-icon){padding-right:0}
.records-app-card[data-records-pane="deep"] .app-help-link{color:#fff}

@media(max-width:640px){.grid .app-card.is-compact{grid-column:1/-1}}

/* Content grows with zoom and custom text spacing; artwork alone stays clipped. */
#main-content:focus:not(:focus-visible){outline:none}
a.pill.founder{text-decoration:none}
a.pill.founder:hover{text-decoration:underline}
.launch-apps-surface .app-card{height:auto;max-height:none;overflow:visible}
.launch-apps-surface .app-card:not(.records-app-card)::before{inset:0;width:auto;height:auto;border-radius:inherit;background:radial-gradient(circle at bottom right,rgba(255,255,255,.92),transparent 60%)}
.launch-apps-surface .app-card:not(.records-app-card)::after{top:18px;bottom:18px;border-radius:6px}
.launch-apps-surface .app-desc,.launch-apps-surface .app-name,.launch-apps-surface .app-tag{overflow-wrap:anywhere;max-height:none;white-space:normal}
@media(max-width:640px),(any-pointer:coarse){
  .app-card .app-about-btn{width:44px;height:44px}
  .app-card .app-top{padding-right:46px}
  .plan-info-btn{width:44px;height:44px;min-width:44px;min-height:44px;flex-basis:44px}
  .app-help-link{min-height:44px}
}
