/* CW Space UI. Pane-inspired neutral surfaces;
no Huddle source or assets. */ @font-face {
  font-family:Inter;
  src:url('/fonts/InterVariable.woff2') format('woff2');
  font-weight:100 900;
  font-display:optional;
}
:root {
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color-scheme:light;
  --bg:#e4e4e7;
  --panel:rgba(250,250,253,.79);
  --solid:#f8f8fb;
  --text:#111217;
  --muted:#646572;
  --line:rgba(255,255,255,.92);
  --divider:#d7d8e0;
  --input:#efeff4;
  --accent:#005bea;
  --shadow:0 20px 32px -18px rgba(31,42,83,.4),inset 0 1px 0 rgba(255,255,255,.8);
  --danger:#ac173c;
  --success:#116b3a;
  font-optical-sizing:auto;
}
:root[data-theme=dark] {
  color-scheme:dark;
  --bg:#232428;
  --panel:rgba(48,49,57,.85);
  --solid:#303139;
  --text:#f3f4f8;
  --muted:#b2b4c1;
  --line:rgba(255,255,255,.12);
  --divider:#494a54;
  --input:#3b3c45;
  --accent:#8cbcff;
  --shadow:0 20px 32px -18px rgba(0,0,0,.65),inset 0 1px 0 rgba(255,255,255,.06);
  --danger:#ff9eb4;
  --success:#9ae7b5;
}
* {
  box-sizing:border-box;
}
body {
  margin:0;
  background:var(--bg);
  color:var(--text);
  min-width:0;
}
.page-loader { display:none; position:fixed; inset:0; z-index:100; background:var(--bg); align-items:center; justify-content:center; flex-direction:column; gap:20px; padding:24px; }
.page-loading .page-loader { display:flex; }
.loader-illustration { width:min(320px,80vw); aspect-ratio:4/3; display:grid; place-items:center; border-radius:28px; overflow:hidden; background:#262827; }
:root[data-theme=light] .loader-illustration { background:#fff; aspect-ratio:1; width:min(260px,72vw); }
.loader-illustration img { display:block; width:100%; height:100%; object-fit:contain; grid-area:1/1; }
.loader-still { display:none; grid-area:1/1; }
.page-loader p { color:var(--text); text-align:center; font-size:14px; margin:0; max-width:340px; }
.loader-track { display:block; width:120px; height:3px; border-radius:8px; background:var(--divider); overflow:hidden; }
.loader-track>span { display:block; width:45%; height:100%; background:var(--accent); border-radius:8px; animation:loading-progress 1.25s ease-in-out infinite alternate; }
@keyframes loading-progress { from { transform:translateX(-100%); } to { transform:translateX(225%); } }
@media(prefers-reduced-motion:reduce) { .loader-illustration img { display:none; } .loader-still { display:grid; width:56px; height:56px; font-size:25px; } .loader-track>span { animation:none; margin:auto; } }
a {
  color:var(--accent);
  text-decoration:none;
}
a:hover {
  text-decoration:underline;
}
button,input {
  font:inherit;
}
button {
  cursor:pointer;
}
button:disabled {
  cursor:not-allowed;
  opacity:.65;
}
button,a,input {
  -webkit-tap-highlight-color:transparent;
}
button:focus-visible,a:focus-visible,input:focus-visible,[tabindex]:focus-visible {
  outline:3px solid var(--accent);
  outline-offset:4px;
}
h1,h2,p {
  margin-top:0;
}
h1,h2 {
  letter-spacing:-.015em;
}
h1 {
  font-size:clamp(32px,4vw,52px);
  line-height:1.08;
  font-weight:560;
}
h2 {
  font-size:23px;
  line-height:1.2;
  font-weight:550;
}
p {
  line-height:1.6;
  color:var(--muted);
}
.glass {
  background:var(--panel);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  border-radius:30px;
}
.site-header {
  height:88px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px 32px;
  gap:16px;
}
.brand {
  display:flex;
  gap:11px;
  align-items:center;
  color:var(--text);
  font-weight:660;
  font-size:21px;
  letter-spacing:-.04em;
  white-space:nowrap;
}
.brand:hover {
  text-decoration:none;
}
.brand-mark {
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  font-size:17px;
  background:linear-gradient(#6fa9f8,#0060ec);
  box-shadow:0 5px 9px #0054c93b,inset 0 1px 1px #ffffffbd;
  border-radius:12px;
  color:#fff;
  letter-spacing:-.09em;
  padding-right:2px;
}
.header-actions {
  display:flex;
  align-items:center;
  gap:15px;
}
.header-actions form {
  margin:0;
}
.locale {
  padding:3px;
  background:var(--input);
  border:1px solid var(--line);
  border-radius:22px;
  display:flex;
  gap:2px;
}
.locale button {
  border:0;
  color:var(--muted);
  background:none;
  font-size:12px;
  font-weight:600;
  padding:7px 10px;
  border-radius:18px;
  min-height:32px;
}
.locale [aria-pressed=true] {
  color:var(--text);
  background:var(--solid);
  box-shadow:0 2px 5px #1c2f5126;
}
.theme-button {
  border:0;
  background:transparent;
  color:var(--text);
  width:36px;
  height:36px;
  font-size:25px;
  border-radius:50%;
}
.text-button {
  border:0;
  color:var(--muted);
  background:transparent;
  padding:9px 2px;
  font-size:13px;
}
.skip {
  position:fixed;
  top:10px;
  left:10px;
  transform:translateY(-160%);
  z-index:10;
  padding:12px;
  background:var(--solid);
  border-radius:12px;
}
.skip:focus {
  transform:none;
}
.auth-shell {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:32px;
  padding:0 24px 24px;
  min-height:calc(100svh - 88px);
}
.auth-story {
  padding:36px 42px 24px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  background:linear-gradient(145deg,rgba(183,205,253,.45),transparent 58%),var(--panel);
}
.eyebrow {
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:650;
  color:var(--muted);
}
.story-copy {
  margin-top:44px;
  max-width:450px;
}
.story-copy h2 {
  font-size:clamp(34px,3.75vw,55px);
  margin-bottom:18px;
}
.story-copy>p {
  max-width:370px;
  font-size:15px;
}
.product-card {
  padding:22px 26px;
  margin:28px auto 22px;
  width:min(100%,420px);
  border-radius:22px;
  transform:rotate(-2deg);
  background:var(--solid);
}
.product-card h2 {
  margin:20px 0 6px;
  font-size:24px;
}
.product-card>p {
  font-size:12px;
  margin-bottom:17px;
}
.product-dot {
  display:inline-block;
  width:8px;
  height:8px;
  background:#74a9f5;
  border-radius:50%;
  margin-right:4px;
}
.product-dot.pink {
  background:#ed92b2;
}
.product-dot.green {
  background:#6fca9a;
}
.product-row {
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 0;
  border-top:1px solid var(--divider);
  font-size:12px;
}
.product-icon {
  font-size:9px;
  font-weight:700;
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:9px;
  flex:none;
}
.blue {
  background:#d8e6ff;
  color:#1859b7;
}
.violet {
  background:#e9dfff;
  color:#6a46bc;
}
.mint {
  background:#d3efde;
  color:#247444;
}
.row-tick {
  margin-left:auto;
  color:#28995c;
}
.story-foot {
  margin-top:auto;
  margin-bottom:0;
  font-size:11px;
}
.auth-main {
  display:flex;
  align-items:center;
  justify-content:center;
  padding:32px 24px 50px;
}
.auth-form {
  width:100%;
  max-width:370px;
}
.form-symbol {
  display:grid;
  place-items:center;
  background:var(--text);
  color:var(--solid);
  width:43px;
  height:43px;
  border-radius:14px;
  font-size:20px;
  font-weight:600;
  letter-spacing:-.09em;
  margin-bottom:22px;
  padding-right:2px;
}
.auth-form h1 {
  font-size:32px;
  line-height:1.13;
  margin-bottom:10px;
}
.form-intro {
  font-size:14px;
  margin-bottom:27px;
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:44px;
  padding:11px 19px;
  border:1px solid var(--line);
  border-radius:22px;
  background:var(--solid);
  color:var(--text);
  font-size:13px;
  font-weight:580;
  box-shadow:0 3px 6px #25325217;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
  text-align:center;
}
.button:hover {
  text-decoration:none;
  transform:translateY(-1px);
  box-shadow:0 7px 14px #25325225;
}
.button:active {
  transform:translateY(1px);
}
.primary {
  background:linear-gradient(#2a6ed0 0%,#0864de 65%,#0055cd);
  border-color:#5993e0;
  color:#fff;
  box-shadow:0 7px 12px #0052c330,inset 0 1px 0 #ffffff50;
}
.primary:hover {
  filter:brightness(1.05);
}
.full {
  width:100%;
}
.google {
  gap:13px;
}
.google>span {
  font-size:19px;
  font-weight:650;
}
.divider {
  display:flex;
  gap:14px;
  align-items:center;
  margin:24px 0;
  color:var(--muted);
  font-size:11px;
}
.divider:before,.divider:after {
  content:"";
  height:1px;
  flex:1;
  background:var(--divider);
}
label {
  display:block;
  font-size:12px;
  font-weight:570;
  margin:18px 0 8px;
}
input:not([type=checkbox]) {
  display:block;
  width:100%;
  min-height:46px;
  border-radius:12px;
  border:1px solid var(--divider);
  background:var(--input);
  color:var(--text);
  padding:12px 14px;
  font-size:14px;
}
input::placeholder {
  color:var(--muted);
  opacity:1;
}
input[aria-invalid=true] {
  border-color:var(--danger);
}
.password-field {
  position:relative;
}
.password-field input {
  padding-right:83px;
}
.password-field button {
  position:absolute;
  right:7px;
  top:4px;
  bottom:4px;
  border:0;
  border-radius:8px;
  padding:0 9px;
  background:none;
  color:var(--muted);
  font-size:11px;
}
.field-hint {
  font-size:11px;
  margin:8px 0 0;
  line-height:1.5;
}
.form-options {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin:18px 0 25px;
  font-size:11px;
}
.checkbox {
  display:flex;
  gap:7px;
  align-items:center;
  font-size:11px;
  font-weight:400;
  margin:0;
}
.checkbox input {
  accent-color:#0864de;
  width:16px;
  height:16px;
  margin:0;
  flex:none;
}
.submit-button {
  margin-top:24px;
}
.form-options+.submit-button {
  margin-top:0;
}
.form-switch {
  font-size:12px;
  text-align:center;
  margin:24px 0 0;
}
.form-switch a {
  font-weight:600;
  margin-left:4px;
}
.notice {
  font-size:12px;
  line-height:1.5;
  padding:15px 17px;
  border-radius:14px;
  border:1px solid currentColor;
  margin-bottom:20px;
}
.notice-error {
  color:var(--danger);
  background:color-mix(in srgb,var(--danger) 5%,transparent);
}
.notice-success {
  color:var(--success);
  background:color-mix(in srgb,var(--success) 5%,transparent);
}
.notice ul {
  margin:7px 0 0;
  padding-left:17px;
}
.muted {
  font-size:12px;
}
.company-page {
  max-width:1160px;
  margin:40px auto;
  padding:0 32px;
}
.page-heading {
  margin-bottom:32px;
}
.page-heading h1 {
  margin:12px 0;
}
.page-heading p {
  font-size:15px;
}
.company-grid {
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);
  gap:24px;
  align-items:start;
}
.company-list {
  display:grid;
  gap:16px;
}
.company-card {
  padding:24px;
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
}
.company-card h2 {
  font-size:20px;
  margin:0 0 4px;
}
.company-card p {
  font-size:12px;
  margin:0;
}
.company-card .button {
  margin-left:auto;
}
.company-initial,.avatar {
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:15px;
  background:linear-gradient(135deg,#c4d9ff,#f5e3fc);
  color:#33416a;
  font-weight:650;
  flex:none;
}
.empty-state {
  padding:38px;
}
.empty-state h2 {
  max-width:350px;
  font-size:28px;
  margin:26px 0 12px;
}
.empty-state p {
  font-size:14px;
  max-width:360px;
}
.empty-symbol {
  display:grid;
  place-items:center;
  background:var(--input);
  border-radius:15px;
  width:44px;
  height:44px;
  font-size:24px;
  color:var(--accent);
}
.create-company {
  padding:28px;
}
.create-company h2 {
  font-size:22px;
}
.workspace-shell {
  display:grid;
  grid-template-columns:230px minmax(0,1fr);
  padding:0 24px 24px;
  gap:28px;
  min-height:calc(100svh - 88px);
}
.sidebar {
  display:flex;
  flex-direction:column;
  padding:24px 15px;
}
.sidebar h2 {
  font-size:21px;
  margin:0 9px 8px;
  overflow-wrap:anywhere;
}
.sidebar .eyebrow {
  margin:0 9px 28px;
}
.sidebar>a {
  display:block;
  padding:13px 15px;
  border-radius:22px;
  color:var(--muted);
  font-size:13px;
  margin-bottom:5px;
}
.sidebar>a.nav-active {
  background:var(--solid);
  color:var(--text);
  box-shadow:0 4px 10px #25325220;
  border:1px solid var(--line);
}
.sidebar-user {
  margin-top:auto;
  padding:30px 9px 0;
  display:flex;
  flex-direction:column;
  gap:7px;
  font-size:12px;
  overflow-wrap:anywhere;
}
.sidebar-user span {
  font-size:10px;
  color:var(--muted);
}
.workspace-main {
  padding:12px 8px;
  max-width:1200px;
}
.workspace-main .page-heading h1 {
  font-size:clamp(30px,3.7vw,48px);
}
.foundation-card {
  padding:30px;
  margin-bottom:24px;
}
.foundation-card h2 {
  font-size:30px;
  margin:16px 0;
}
.foundation-card>p {
  font-size:14px;
  max-width:600px;
}
.foundation-card .button {
  margin-top:12px;
}
.members-card {
  padding:27px 30px;
}
.section-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:22px;
}
.section-heading h2 {
  font-size:20px;
  margin:0;
}
.section-heading>span {
  font-size:12px;
  color:var(--muted);
}
.member-row {
  display:flex;
  gap:15px;
  align-items:center;
  border-top:1px solid var(--divider);
  padding:17px 0;
}
.member-row p {
  margin:5px 0 0;
  font-size:11px;
}
.member-row strong {
  font-size:13px;
}
.badge {
  margin-left:auto;
  background:var(--input);
  border-radius:12px;
  font-size:10px;
  padding:5px 10px;
}
.avatar {
  width:38px;
  height:38px;
  border-radius:50%;
}
.error-page {
  max-width:650px;
  margin:12vh auto;
  padding:32px;
}
.error-page h1 {
  font-size:36px;
  margin:25px 0;
}
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
  .company-card:has(.button:hover) {
    transform:translateY(-2px);
    transition:transform .2s ease;
  }
  .auth-story {
    --px:50%;
    --py:50%;
    background:radial-gradient(ellipse at var(--px) var(--py),rgba(183,205,253,.4),transparent 70%),var(--panel);
  }
}
.auth-main {
  padding-top:20px;
  padding-bottom:28px;
}
.form-intro {
  margin-bottom:20px;
}
.divider {
  margin:18px 0;
}
.story-copy {
  margin-top:28px;
}
.product-card {
  margin-top:20px;
  margin-bottom:16px;
  padding:20px 24px;
}
.product-row {
  padding:10px 0;
}
.auth-story {
  padding-top:30px;
}
.story-copy>p {
  margin-bottom:10px;
}
.google img {
  object-fit:contain;
  background:white;
  border-radius:50%;
  padding:1px;
}
@media(min-width:1450px) {
  .auth-shell {
    max-width:1600px;
    margin:0 auto;
  }
  .story-copy {
    margin-top:70px;
  }
  .product-card {
    margin-top:48px;
  }
  .auth-story {
    padding:44px 60px;
  }
  .auth-form {
    max-width:395px;
  }
}
@media(max-width:900px) {
  .auth-shell {
    gap:12px;
    padding:0 16px 16px;
  }
  .auth-story {
    padding:28px 26px;
  }
  .story-copy {
    margin-top:35px;
  }
  .product-card {
    padding:18px;
  }
  .product-row {
    font-size:10px;
    gap:8px;
  }
  .auth-main {
    padding:24px 14px;
  }
  .auth-form h1 {
    font-size:28px;
  }
  .company-grid {
    grid-template-columns:1fr;
  }
  .workspace-shell {
    grid-template-columns:190px minmax(0,1fr);
    gap:18px;
    padding:0 16px 16px;
  }
  .foundation-card h2 {
    font-size:26px;
  }
}
@media(max-width:820px) {
  .auth-shell {
    display:block;
  }
  .auth-story {
    display:none;
  }
  .auth-main {
    padding:35px 20px 45px;
    min-height:calc(100svh - 112px);
  }
  .auth-form {
    max-width:390px;
  }
}
@media(max-width:640px) {
  .site-header {
    height:76px;
    padding:14px 20px;
  }
  .brand {
    font-size:18px;
  }
  .brand-mark {
    width:31px;
    height:31px;
    font-size:15px;
    border-radius:10px;
  }
  .header-actions {
    gap:7px;
  }
  .text-button {
    font-size:11px;
  }
  .auth-shell {
    min-height:calc(100svh - 76px);
  }
  .auth-main {
    padding:35px 12px 50px;
    min-height:calc(100svh - 104px);
    align-items:flex-start;
  }
  .auth-form h1 {
    font-size:32px;
  }
  .company-page {
    margin-top:20px;
    padding:0 20px;
  }
  .company-card {
    padding:22px;
  }
  .company-card .button {
    width:100%;
    margin:8px 0 0;
  }
  .company-initial {
    width:38px;
    height:38px;
    border-radius:12px;
  }
  .empty-state {
    padding:27px;
  }
  .workspace-shell {
    display:block;
  }
  .sidebar {
    padding:20px;
    margin-bottom:25px;
    display:grid;
    grid-template-columns:1fr 1fr;
    border-radius:23px;
  }
  .sidebar h2 {
    grid-column:1/-1;
    margin:0 0 10px;
  }
  .sidebar .eyebrow {
    grid-column:1/-1;
    margin:0 0 15px;
  }
  .sidebar-user {
    display:none;
  }
  .sidebar>a {
    padding:11px 13px;
    margin:0;
    font-size:12px;
  }
  .foundation-card,.members-card {
    padding:24px;
  }
  .section-heading {
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }
  .workspace-main .page-heading h1 {
    font-size:34px;
  }
  .workspace-main {
    padding:0 4px;
  }
  .theme-button {
    width:30px;
  }
  .error-page h1 {
    font-size:28px;
  }
}
@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after {
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important;
  }
  .product-card {
    transform:none;
  }
}
@media(min-width:821px) and (max-height:800px) {
  .auth-story { padding:26px 36px 18px; }
  .story-copy { margin-top:20px; }
  .story-copy h2 { font-size:clamp(34px,3.4vw,46px); line-height:1.08; }
  .product-card { padding:18px 22px; margin-top:18px; }
  .product-card h2 { margin-top:14px; }
  .product-row { padding:8px 0; }
}
.company-card>div,.member-row>div {
  min-width:0;
  flex:1;
}
.company-card h2,.member-row strong {
  overflow-wrap:anywhere;
}
@media(max-width:420px) {
  .site-header {
    padding-inline:16px;
    gap:8px;
  }
  .brand {
    font-size:16px;
    gap:7px;
  }
  .brand-mark {
    width:28px;
    height:28px;
  }
  .header-actions {
    gap:5px;
  }
  .locale button {
    padding:6px 7px;
  }
  .locale {
    padding:2px;
  }
  .theme-button {
    width:26px;
  }
  .text-button {
    font-size:10px;
  }
}

/* Working projects and tasks share the Pane surface system. */
html { background:var(--bg); }
select,textarea { font:inherit; width:100%; border:1px solid var(--divider); background:var(--input); color:var(--text); border-radius:12px; padding:11px 12px; min-height:44px; font-size:13px; }
textarea { resize:vertical; min-height:100px; line-height:1.55; }
select:focus-visible,textarea:focus-visible,summary:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
[hidden] { display:none!important; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.work-shell { gap:28px; }
.work-shell .sidebar { position:sticky; top:16px; min-height:calc(100svh - 112px); align-self:start; }
.sidebar>a>span { display:inline-block; width:23px; margin-right:7px; font-size:18px; vertical-align:-1px; }
.sidebar-divider { height:1px; background:var(--divider); margin:17px 13px; }
.work-main { max-width:none; min-width:0; }
.work-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; margin:0 0 28px; }
.work-heading h1 { margin:8px 0 10px; font-size:clamp(32px,3.2vw,48px); overflow-wrap:anywhere; }
.work-heading p { font-size:14px; margin-bottom:0; max-width:650px; }
.work-heading .eyebrow { font-size:11px; }
.work-heading>.button { flex:none; }
.work-stats { display:flex; flex-wrap:wrap; gap:14px; margin:0 0 32px; }
.stat { border-radius:20px; padding:15px 22px; min-width:135px; display:flex; flex-direction:column; gap:6px; }
.stat span { color:var(--muted); font-size:12px; }
.stat strong { font-size:29px; letter-spacing:-.04em; }
.work-section { margin-bottom:32px; }
.work-section .section-heading>a { font-size:13px; }
.task-grid,.project-grid,.team-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.task-card,.project-card { padding:23px; border-radius:26px; display:flex; flex-direction:column; min-height:235px; overflow:hidden; }
.task-card h2,.project-card h2 { font-size:19px; line-height:1.35; letter-spacing:-.025em; margin:18px 0 9px; overflow-wrap:anywhere; }
.task-card h2>a,.project-card h2>a { color:var(--text); }
.card-tags { display:flex; justify-content:space-between; flex-wrap:wrap; gap:6px; }
.status-pill,.priority-pill,.category-pill,.person-pill { display:inline-flex; align-items:center; padding:4px 9px; border-radius:12px; font-size:10px; line-height:1.4; background:var(--input); color:var(--text); max-width:100%; overflow-wrap:anywhere; }
.status-in_progress { background:#3477dd22; color:var(--accent); }
.status-review { background:#986bdb22; color:var(--text); }
.status-blocked,.priority-critical { background:#ee486d20; color:var(--danger); }
.status-done { background:#1fa45f20; color:var(--success); }
.priority-high { background:#f2993426; }
.category-pill { align-self:start; margin:0 0 12px; }
.task-context,.project-card>p { font-size:12px; line-height:1.6; margin-bottom:17px; overflow-wrap:anywhere; }
.card-assignees { display:flex; flex-wrap:wrap; gap:5px; margin:auto 0 17px; padding-top:8px; color:var(--muted); font-size:11px; }
.card-foot { display:flex; justify-content:space-between; align-items:center; gap:10px; border-top:1px solid var(--divider); padding-top:13px; margin-top:auto; color:var(--muted); font-size:11px; }
.card-foot>a { font-size:19px; min-width:28px; text-align:right; }
.late { color:var(--danger); }
.project-card { min-height:220px; }
.project-card h2 { margin-top:14px; }
.team-grid { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
.team-card { padding:25px; border-radius:26px; min-width:0; }
.team-card>p { font-size:12px; white-space:pre-wrap; overflow-wrap:anywhere; }
.team-card .section-heading h2 { overflow-wrap:anywhere; }
.create-panel { padding:22px 26px; margin:0 0 24px; border-radius:24px; }
.create-panel>summary { cursor:pointer; font-size:14px; font-weight:600; }
.work-form { max-width:760px; }
.work-form>.button { margin-top:22px; }
.work-form label { font-size:12px; }
.work-form input { font-size:13px; }
.inline-settings { padding-top:20px; margin-top:15px; border-top:1px solid var(--divider); }
.inline-settings>summary { cursor:pointer; font-size:12px; color:var(--accent); }
.inline-settings h3,.create-panel h3 { font-size:14px; margin:28px 0 12px; }
.access-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(120px,1.1fr); gap:8px; align-items:center; padding:13px 0; border-bottom:1px solid var(--divider); }
.access-row label { margin:0; overflow-wrap:anywhere; }
.access-row .button { grid-column:2; min-height:36px; padding:8px 12px; font-size:11px; }
.count-label { font-size:12px; color:var(--muted); margin:0 0 18px; }
.task-filters { padding:20px; border-radius:24px; display:flex; flex-wrap:wrap; gap:13px; align-items:end; margin-bottom:22px; }
.task-filters>div { flex:1 1 120px; min-width:0; }
.task-filters>.filter-search { flex-basis:220px; }
.task-filters label { margin:0 0 7px; font-size:10px; }
.task-filters>.checkbox { align-self:center; flex-basis:100%; margin:0; font-size:11px; }
.task-filters .button { min-height:38px; padding:9px 17px; }
.filter-reset { font-size:11px; align-self:center; }
.task-table-wrap { position:relative; border-radius:24px; overflow:auto; }
.task-table { width:100%; border-collapse:collapse; text-align:left; min-width:660px; font-size:12px; }
.task-table th { padding:18px; color:var(--muted); font-weight:550; font-size:11px; white-space:nowrap; }
.task-table td { padding:17px 18px; border-top:1px solid var(--divider); vertical-align:middle; }
.task-table td:nth-child(2) { min-width:200px; max-width:400px; overflow-wrap:anywhere; }
.task-table td:nth-child(2)>a { color:var(--text); font-weight:570; }
.task-table small { display:block; color:var(--muted); margin-top:5px; font-size:10px; }
.task-table .person-pill { margin:2px; }
.quick-status { display:flex; gap:5px; align-items:center; }
.quick-status select { min-width:130px; min-height:36px; font-size:11px; }
.quick-status .button { min-height:34px; padding:7px 10px; border-radius:10px; }
.work-pagination { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:16px; margin:28px 0; font-size:12px; color:var(--muted); }
.editor-card { padding:30px; border-radius:28px; max-width:900px; }
.location-picker { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; padding-bottom:24px; border-bottom:1px solid var(--divider); }
.location-picker label { grid-column:1/-1; margin:0; }
.field-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 20px; }
.assignee-picker { padding:16px; margin:24px 0 0; border:1px solid var(--divider); border-radius:16px; display:flex; flex-wrap:wrap; gap:12px 18px; }
.assignee-picker legend { padding:0 6px; color:var(--muted); font-size:12px; }
.assignee-picker label { margin:0; font-size:12px; }
.task-dialog { width:min(860px,calc(100% - 40px)); max-height:90svh; padding:0; color:var(--text); background:var(--solid); }
.task-dialog::backdrop { background:#11121c70; backdrop-filter:blur(6px); }
.task-dialog [data-dialog-content] { min-height:130px; }
.task-panel-header { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:25px 28px; border-bottom:1px solid var(--divider); position:sticky; top:0; background:var(--solid); z-index:1; }
.task-panel-header h2 { margin:9px 0 0; font-size:24px; letter-spacing:-.03em; overflow-wrap:anywhere; }
.task-panel-header .button { font-size:22px; width:40px; height:40px; padding:3px; flex:none; }
.task-panel-body { padding:24px 28px 30px; }
.task-panel-tools { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:20px; }
.task-panel-tools .button { min-height:34px; font-size:11px; padding:8px 13px; }
.panel-page-link { margin-left:auto; font-size:11px; }
.panel-feedback { color:var(--success); font-size:12px; margin-bottom:12px; }
.panel-feedback:empty { display:none; }
.task-page { padding:0; overflow:hidden; }
.task-page [data-close-panel],.task-page .panel-page-link { display:none; }
.task-page .task-panel-header { position:static; background:transparent; }
.task-back { margin:0 0 20px; font-size:12px; }
.task-description { white-space:pre-wrap; overflow-wrap:anywhere; font-size:14px; }
.read-properties { display:grid; grid-template-columns:120px 1fr; gap:12px; font-size:12px; }
.read-properties dt { color:var(--muted); }
.read-properties dd { margin:0; overflow-wrap:anywhere; }
.task-checklists { margin-top:30px; padding-top:24px; border-top:1px solid var(--divider); }
.task-checklists h3 { font-size:16px; margin:0 0 16px; }
.checklist-block { padding:20px; border:1px solid var(--divider); border-radius:20px; margin:0 0 18px; }
.checklist-block .section-heading { margin-bottom:12px; }
.checklist-block h3 { font-size:14px; margin:0; }
.checklist-row { display:flex; align-items:center; gap:12px; padding:8px 0; font-size:13px; overflow-wrap:anywhere; }
.checklist-row form { flex:none; }
.check-button { display:grid; place-items:center; width:30px; height:30px; font-size:22px; color:var(--muted); background:transparent; border:1px solid var(--divider); border-radius:50%; }
.check-button[aria-pressed=true] { color:var(--success); }
.item-done { text-decoration:line-through; color:var(--muted); }
.add-item { display:flex; gap:10px; margin-top:17px; align-items:center; }
.add-item .button { flex:none; font-size:11px; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) { .task-card:has(a:hover),.project-card:has(a:hover) { transform:translateY(-3px); box-shadow:0 22px 36px -18px #25325260; } .task-card,.project-card { transition:transform .2s ease,box-shadow .2s ease; } }
@media(max-width:1350px) { .task-grid,.project-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .work-shell { gap:20px; grid-template-columns:210px minmax(0,1fr); } .team-grid { grid-template-columns:1fr; } }
@media(max-width:900px) { .work-shell { grid-template-columns:175px minmax(0,1fr); gap:16px; } .work-heading { flex-wrap:wrap; gap:15px; } .work-heading h1 { font-size:34px; } .sidebar>a { font-size:12px; padding-inline:10px; } .task-card,.project-card { padding:18px; } .task-grid,.project-grid { gap:13px; } }
@media(max-width:700px) { .task-grid,.project-grid { grid-template-columns:1fr; } .field-grid { grid-template-columns:1fr; } .stat { padding:14px 17px; min-width:110px; } .work-stats { gap:10px; } }
@media(max-width:640px) { .work-shell { display:block; } .work-shell .sidebar { position:static; min-height:0; display:flex; flex-direction:row; flex-wrap:wrap; gap:3px; padding:14px; margin-bottom:22px; } .sidebar h2 { flex-basis:100%; margin:0 0 5px; font-size:18px; } .sidebar .eyebrow,.sidebar-divider,.work-shell .sidebar-user { display:none; } .sidebar>a { padding:9px 11px; font-size:11px; margin:0; } .sidebar>a>span { display:none; } .work-heading { margin-bottom:23px; } .work-heading h1 { font-size:32px; } .work-heading p { font-size:13px; } .task-grid,.project-grid { grid-template-columns:1fr; } .task-card { min-height:210px; } .work-main { padding:0; } .editor-card { padding:23px; } .task-page { padding:0; } .task-dialog { width:calc(100% - 16px); max-height:95svh; border-radius:22px; } .task-panel-header { padding:20px; } .task-panel-body { padding:20px; } .task-panel-header h2 { font-size:22px; } .add-item { flex-wrap:wrap; } .add-item .button { margin-left:auto; } .task-filters { padding:16px; } .work-section .section-heading { flex-direction:row; } .team-card { padding:21px; } .location-picker { grid-template-columns:1fr; } .location-picker .button { justify-self:start; } .create-panel { padding:20px; } }

.people-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; align-items:start; }
.people-panel { padding:28px; border-radius:26px; min-width:0; }
.people-panel>h2 { margin:0 0 22px; font-size:20px; }
.person-access { padding:20px 0; border-top:1px solid var(--divider); overflow-wrap:anywhere; }
.person-access:first-of-type { border-top:0; padding-top:0; }
.person-access p { color:var(--muted); font-size:13px; }
.person-access .member-row { align-items:start; }
.person-access .access-row { flex-wrap:wrap; }
.person-access .access-row select { min-width:140px; flex:1; }
.invitation-actions { display:flex; gap:12px; align-items:center; flex-wrap:wrap; margin-top:16px; }
.invitation-actions form { margin:0; }
.roles-panel { margin-top:24px; }
.roles-panel summary { cursor:pointer; font-weight:600; }
.roles-panel dl,.invitation-card dl { display:grid; grid-template-columns:180px minmax(0,1fr); gap:12px 20px; }
.roles-panel dd,.invitation-card dd { margin:0; color:var(--muted); overflow-wrap:anywhere; }
.invitation-card { max-width:760px; margin:24px auto; }
.invitation-card h1 { font-size:34px; letter-spacing:-.04em; }
.invitation-later { margin-top:28px; padding-top:20px; border-top:1px solid var(--divider); }
.button.danger { color:var(--danger); }
@media(max-width:1100px) { .people-grid { grid-template-columns:1fr; } }
@media(max-width:640px) { .people-panel { padding:22px; } .roles-panel dl,.invitation-card dl { grid-template-columns:1fr; gap:6px; } .roles-panel dd,.invitation-card dd { margin-bottom:14px; } .invitation-card h1 { font-size:28px; } }


/* Commercial workspace: compact work surfaces, account settings and platform management. */
html { scrollbar-gutter:stable; font-synthesis:none; }
body { font-weight:400; letter-spacing:0; line-height:1.5; }
strong { font-weight:580; }
html[lang=ru] h1,html[lang=ru] h2,html[lang=ru] h3 { letter-spacing:0; }
h1 { font-weight:560; line-height:1.2; }
h2 { font-weight:550; line-height:1.35; }
.work-heading h1 { font-size:clamp(28px,2.7vw,39px); font-weight:550; margin:2px 0 8px; }
.work-heading { gap:18px; margin-bottom:22px; }
.work-heading p { font-size:14px; line-height:1.6; }
.brand { width:166px; height:37px; flex:none; }
.brand img { display:block; width:166px; height:37px; object-fit:contain; }
.brand .brand-for-dark { display:none; }
:root[data-theme=dark] .brand .brand-for-light { display:none; }
:root[data-theme=dark] .brand .brand-for-dark { display:block; }
.icon { display:inline-block; width:20px; height:20px; flex:none; background:currentColor; mask-size:contain; mask-repeat:no-repeat; mask-position:center; vertical-align:middle; }
.icon-arrow { mask-image:url("/icons/arrow.svg"); }
.icon-board { mask-image:url("/icons/board.svg"); }
.icon-check { mask-image:url("/icons/check.svg"); }
.icon-close { mask-image:url("/icons/close.svg"); }
.icon-down { mask-image:url("/icons/down.svg"); }
.icon-filter { mask-image:url("/icons/filter.svg"); }
.icon-folder { mask-image:url("/icons/folder.svg"); }
.icon-gear { mask-image:url("/icons/gear.svg"); }
.icon-grid { mask-image:url("/icons/grid.svg"); }
.icon-home { mask-image:url("/icons/home.svg"); }
.icon-list { mask-image:url("/icons/list.svg"); }
.icon-logout { mask-image:url("/icons/logout.svg"); }
.icon-mail { mask-image:url("/icons/mail.svg"); }
.icon-moon { mask-image:url("/icons/moon.svg"); }
.icon-plus { mask-image:url("/icons/plus.svg"); }
.icon-search { mask-image:url("/icons/search.svg"); }
.icon-shield { mask-image:url("/icons/shield.svg"); }
.icon-star { mask-image:url("/icons/star.svg"); }
.icon-sun { mask-image:url("/icons/sun.svg"); }
.icon-tasks { mask-image:url("/icons/tasks.svg"); }
.icon-user { mask-image:url("/icons/user.svg"); }
.icon-users { mask-image:url("/icons/users.svg"); }
.icon-button { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; padding:10px; border:1px solid var(--divider); background:var(--panel); color:var(--muted); border-radius:14px; flex:none; text-decoration:none; }
.icon-button:hover { color:var(--text); background:var(--solid); text-decoration:none; }
.theme-button { border-color:transparent; background:transparent; }
.heading-actions { display:flex; align-items:center; gap:10px; flex:none; }
.sidebar>a { display:flex; align-items:center; gap:11px; font-size:13px; line-height:1.5; padding:12px; }
.sidebar>a>.icon { width:18px; height:18px; margin:0; }
.sidebar h2 { font-weight:550; letter-spacing:0; }
.work-shell .sidebar { height:calc(100svh - 112px); min-height:0; }
.sidebar-nav { min-height:0; overflow-y:auto; overscroll-behavior:contain; flex:1; padding:1px 2px 8px; }
.sidebar-nav>a { display:flex; align-items:center; gap:11px; color:var(--muted); font-size:13px; line-height:1.5; padding:11px; margin-bottom:4px; border:1px solid transparent; border-radius:20px; }
.sidebar-nav>a>.icon { width:18px; height:18px; margin:0; }
.sidebar-nav>a.nav-active { background:var(--solid); color:var(--text); border-color:var(--line); box-shadow:0 4px 10px #25325220; }
.sidebar-nav>a:hover { color:var(--text); text-decoration:none; }
.account-menu { position:relative; margin:24px 0 0; margin-top:auto; padding-top:24px; }
.account-menu>summary { display:flex; align-items:center; gap:9px; list-style:none; cursor:pointer; min-height:52px; padding:7px; border-radius:16px; }
.account-menu>summary::-webkit-details-marker { display:none; }
.account-menu>summary:hover,.account-menu[open]>summary { background:var(--input); }
.account-label { display:flex; flex-direction:column; min-width:0; flex:1; gap:2px; }
.account-label strong { font-size:12px; font-weight:540; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.account-label small { font-size:10px; color:var(--muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.account-menu summary>.icon { width:16px; height:16px; }
.account-menu-panel { position:absolute; z-index:6; left:0; bottom:calc(100% - 18px); width:245px; padding:8px; border-radius:18px; background:var(--solid); }
.account-menu-panel>a,.account-menu-panel button { display:flex; gap:10px; align-items:center; width:100%; padding:12px; font-size:13px; color:var(--text); text-align:left; border-radius:10px; }
.account-menu-panel>a:hover,.account-menu-panel button:hover { background:var(--input); text-decoration:none; }
.avatar { width:36px; height:36px; flex:none; overflow:hidden; }
.avatar img { display:block; width:100%; height:100%; object-fit:cover; border-radius:inherit; }
.task-toolbar { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:20px; }
.task-toolbar-left { min-width:0; flex:1; display:flex; gap:14px; align-items:center; flex-wrap:wrap; }
.task-toolbar-left>.count-label { font-size:12px; padding:10px 0; margin:0; white-space:nowrap; }
.filter-disclosure { position:relative; max-width:100%; }
.filter-disclosure>summary { display:flex; gap:9px; align-items:center; min-height:44px; padding:10px 13px; border:1px solid var(--divider); background:var(--panel); border-radius:13px; cursor:pointer; font-size:13px; list-style:none; }
.filter-disclosure>summary::-webkit-details-marker { display:none; }
.filter-disclosure[open]>summary { color:var(--accent); }
.filter-count,.column-count { font-size:11px; padding:1px 7px; border-radius:20px; background:var(--input); color:var(--text); }
.filter-disclosure .task-filters { position:absolute; z-index:5; width:min(680px,calc(100vw - 80px)); left:0; top:calc(100% + 8px); background:var(--solid); padding:20px; margin:0; border-radius:20px; box-shadow:0 18px 40px #0003; }
.task-filters label { font-size:12px; }
.task-filters>.checkbox { flex-basis:100%; font-size:12px; }
.view-switch { display:flex; align-items:center; flex:none; gap:3px; padding:3px; background:var(--input); border-radius:15px; }
.view-switch>a { display:flex; align-items:center; justify-content:center; gap:7px; min-height:38px; padding:8px 11px; color:var(--muted); font-size:12px; border-radius:12px; white-space:nowrap; }
.view-switch>a[aria-current=page] { background:var(--solid); color:var(--text); box-shadow:0 3px 7px #20253e1a; }
.view-switch>a:hover { color:var(--text); text-decoration:none; }
.view-switch .icon { width:17px; height:17px; }
.task-grid,.project-grid { grid-template-columns:repeat(auto-fill,minmax(min(270px,100%),1fr)); gap:14px; }
.task-card,.project-card { position:relative; padding:16px; min-height:0; border-radius:20px; gap:8px; }
.task-card { min-height:166px; }
.task-card h2,.project-card h2 { font-size:16px; font-weight:550; letter-spacing:0; line-height:1.45; margin:2px 0; }
.task-card .task-context,.project-card>p { margin:0; font-size:12px; line-height:1.55; }
.task-card .category-pill { margin:0; font-size:10px; }
.card-assignees { margin:0; padding:0; font-size:11px; gap:4px; }
.card-foot { padding-top:9px; margin-top:auto; font-size:11px; }
.card-arrow { color:var(--muted); font-size:17px; line-height:1; }
.card-open { color:var(--text); }
.card-open::after { content:''; position:absolute; inset:0; border-radius:inherit; z-index:1; }
.card-open:focus-visible { outline:0; }
.task-card:focus-within,.project-card:focus-within { outline:3px solid var(--accent); outline-offset:3px; }
.task-card:hover .card-arrow,.project-card:hover .card-arrow { color:var(--accent); }
.status-pill,.priority-pill { font-size:10px; padding:3px 8px; }
.project-card { min-height:160px; }
.task-table td { padding:12px 14px; }
.task-table th { padding:13px 14px; font-size:12px; }
.task-table { font-size:13px; }
.settings-dialog { width:min(760px,calc(100% - 32px)); max-height:88svh; padding:0; color:var(--text); background:var(--solid); border-radius:24px; }
.settings-dialog::backdrop { background:#12131c88; backdrop-filter:blur(4px); }
.settings-dialog-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 24px; border-bottom:1px solid var(--divider); }
.settings-dialog-header h2 { margin:0; font-size:22px; }
.settings-dialog-body { padding:0 24px 24px; }
.settings-dialog-body h3 { margin-top:30px; font-size:16px; }
.settings-dialog-body .access-row { grid-template-columns:minmax(90px,1fr) minmax(140px,2fr) auto; }
.settings-dialog-body .access-row .button { grid-column:auto; }
.kanban-board { display:grid; grid-template-columns:repeat(5,minmax(245px,1fr)); gap:14px; overflow-x:auto; padding:3px 3px 20px; align-items:start; }
.kanban-column { min-height:260px; padding:12px; background:var(--input); border-radius:22px; }
.kanban-column-header { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:3px 3px 14px; }
.kanban-column-header h2 { font-size:13px; margin:0; }
.kanban-column-tasks { display:flex; flex-direction:column; gap:12px; }
.kanban-column .task-card { background:var(--solid); min-height:150px; padding:14px; border-radius:16px; }
.kanban-column .status-pill { display:none; }
.kanban-column .priority-pill { margin-left:auto; }
.kanban-item { min-width:0; }
.kanban-status { margin:5px 3px 0; display:flex; gap:6px; }
.kanban-status select { min-width:0; width:100%; flex:1; min-height:36px; font-size:11px; padding:7px; }
.kanban-status .button { padding:5px 9px; min-height:36px; }
.kanban-empty { color:var(--muted); padding:20px 4px; font-size:12px; text-align:center; }
.profile-page { max-width:840px; }
.profile-card { padding:28px; border-radius:26px; }
.profile-identity { display:flex; align-items:center; gap:18px; margin:0 0 26px; }
.profile-identity p { font-size:13px; margin:5px 0 0; overflow-wrap:anywhere; }
.profile-avatar { width:88px; height:88px; object-fit:cover; border-radius:26px; font-size:30px; }
.team-avatar { width:48px; height:48px; object-fit:cover; border-radius:15px; flex:none; }
.team-identity { display:flex; align-items:center; gap:12px; min-width:0; }
.team-identity h2 { margin:0; font-size:20px; }
.team-image-form { margin-top:22px; padding-bottom:22px; border-bottom:1px solid var(--divider); }
input[type=file] { padding:10px; max-width:100%; font-size:12px; }
.team-settings { margin:0; padding:0; border:0; position:static; }
.team-settings>summary { list-style:none; display:flex; }
.team-settings>summary::-webkit-details-marker { display:none; }
.team-settings .team-settings-body { margin-top:15px; padding-top:6px; border-top:1px solid var(--divider); }
.team-card { padding:22px; }
.team-card { position:relative; }
.team-heading { padding-right:50px; }
.team-settings>summary { position:absolute; top:18px; right:18px; }
.team-card .member-row { margin-block:8px; }
.admin-main>.page-heading { margin-bottom:24px; }
.admin-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:22px; }
.admin-stat { display:flex; flex-direction:column; gap:8px; padding:20px; border-radius:20px; color:var(--text); }
.admin-stat span { font-size:13px; color:var(--muted); }
.admin-stat strong { font-size:30px; font-weight:550; }
.admin-filter { display:flex; gap:12px; align-items:center; flex-wrap:wrap; padding:16px; border-radius:20px; margin-bottom:22px; }
.admin-filter label { margin:0; font-size:12px; }
.admin-filter input { flex:1; min-width:160px; width:auto; }
.admin-filter select { width:auto; max-width:210px; }
.admin-table-panel { padding:0; overflow:hidden; }
.table-scroll { overflow:auto; }
.admin-table { border-collapse:collapse; text-align:left; width:100%; min-width:720px; font-size:13px; }
.admin-table th { color:var(--muted); font-weight:500; padding:18px; border-bottom:1px solid var(--divider); }
.admin-table td { padding:16px 18px; border-bottom:1px solid var(--divider); vertical-align:top; }
.admin-table td:first-child { min-width:210px; }
.admin-table .field-hint { display:block; margin-top:5px; font-size:11px; }
.admin-table .inline-form { display:flex; gap:7px; align-items:center; min-width:240px; }
.admin-table .inline-form select { flex:1; min-width:150px; font-size:12px; }
.admin-table .inline-form .button { padding:10px 12px; font-size:12px; }
.admin-main>.people-panel { margin-bottom:22px; }
.admin-permissions { display:grid; grid-template-columns:minmax(140px,1fr) 3fr; gap:14px; font-size:13px; }
.admin-permissions dd { margin:0; color:var(--muted); line-height:1.7; }
.admin-events { padding-left:20px; color:var(--muted); font-size:12px; }
.admin-events li { margin:10px 0; }
.admin-settings { max-width:660px; }
.admin-settings .button { margin-top:18px; }
.account-waiting h1 { font-weight:530; line-height:1.3; }
.account-waiting .eyebrow { display:inline-block; color:var(--accent); margin-bottom:14px; }
.account-waiting .button { margin-top:8px; }
.loader-still img { display:block; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) { .task-card:hover,.project-card:hover { transform:translateY(-2px); box-shadow:0 15px 25px -15px #19244266; } }
@media(max-width:1050px) { .view-switch>a>span:not(.icon) { display:none; } .view-switch>a { min-width:38px; } .admin-filter select { max-width:100%; } }
@media(max-width:700px) { .task-grid,.project-grid { grid-template-columns:repeat(auto-fill,minmax(min(245px,100%),1fr)); } .heading-actions { margin-left:auto; } .task-toolbar { gap:10px; } .task-toolbar-left { gap:8px; } .filter-disclosure>summary { font-size:12px; padding:10px; } .filter-disclosure .task-filters { width:min(520px,calc(100vw - 36px)); } .profile-card { padding:22px; } .admin-summary { gap:8px; } .admin-stat { padding:14px; } .admin-stat span { font-size:11px; } }
@media(max-width:640px) { .brand,.brand img { width:130px; height:30px; } .site-header { padding:14px 16px; } .header-actions { gap:4px; } .header-profile,.header-actions>form:last-child { display:none; } .theme-button { width:36px; height:36px; } .work-shell .sidebar { gap:3px; } .sidebar>a>.icon { display:inline-block; width:16px; height:16px; } .sidebar>a { padding:8px 10px; gap:7px; } .work-shell .account-menu { display:block; margin-top:8px; padding-top:10px; border-top:1px solid var(--divider); flex-basis:100%; } .account-menu-panel { bottom:auto; top:calc(100% + 8px); } .account-menu>summary { min-height:44px; } .work-heading h1 { font-size:30px; } .task-toolbar { flex-wrap:wrap; } .task-toolbar-left { flex-basis:100%; } .view-switch { margin-left:auto; } .view-switch>a>span:not(.icon) { display:inline; } .task-card { min-height:160px; } .task-grid,.project-grid { grid-template-columns:1fr; } .settings-dialog { width:calc(100% - 16px); border-radius:20px; } .settings-dialog-header { padding:16px; } .settings-dialog-header h2 { font-size:18px; } .settings-dialog-body { padding:0 16px 20px; } .settings-dialog-body .access-row { display:flex; flex-wrap:wrap; } .settings-dialog-body .access-row select { flex:1; min-width:140px; } .profile-identity { gap:12px; } .profile-identity p { font-size:12px; } .admin-permissions { grid-template-columns:1fr; gap:6px; } .admin-permissions dd { margin-bottom:12px; } }

@media(max-width:640px) { .work-shell .sidebar { height:auto; max-height:none; } .sidebar-nav { display:flex; flex-wrap:wrap; gap:3px; flex:1 0 100%; overflow:visible; padding:0; } .sidebar-nav>a { padding:8px 10px; font-size:12px; gap:7px; margin:0; } .sidebar-nav>a>.icon { width:16px; height:16px; } .sidebar-nav .sidebar-divider { display:none; } }

/* Daily teamwork: keep dense data readable without widening the task dialog. */
.task-section-nav { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0 24px; }
.task-section-nav a { font-size:12px; padding:7px 11px; border-radius:10px; background:var(--input); }
.task-tables,.task-collaboration,.task-attachments,.task-history { margin-top:30px; padding-top:22px; border-top:1px solid var(--divider); scroll-margin-top:22px; }
.task-panel-body h3 { font-size:17px; font-weight:550; }
.typed-table-block { min-width:0; padding:16px; background:var(--input); border-radius:18px; margin:16px 0; }
.typed-table-block h4 { font-size:15px; margin:0; font-weight:550; overflow-wrap:anywhere; }
.typed-table-scroll { position:relative; overflow:auto; margin:14px 0; border:1px solid var(--divider); border-radius:12px; }
.typed-table { width:100%; border-collapse:collapse; font-size:12px; text-align:left; }
.typed-table th,.typed-table td { padding:9px; min-width:145px; vertical-align:top; border-bottom:1px solid var(--divider); }

.typed-table th { font-weight:500; background:var(--solid); }
.typed-table th small { display:block; margin-top:4px; font-weight:400; }
.typed-table td input,.typed-table td textarea,.typed-table td select { min-width:125px; width:100%; padding:8px; font-size:12px; }
.typed-table td textarea { resize:vertical; min-height:58px; height:58px; }
.task-dialog .task-tables,.task-dialog .task-collaboration,.task-dialog .task-attachments,.task-dialog .task-history { scroll-margin-top:135px; }
.task-dialog #task-tables-title { scroll-margin-top:145px; }
.typed-cell-text { white-space:pre-wrap; overflow-wrap:anywhere; }
.typed-table-settings>summary,.typed-column-settings>summary,.typed-table-create>summary,.typed-row-actions summary { font-size:12px; cursor:pointer; padding:7px; }
.typed-table-settings-body { padding:14px; margin-top:10px; background:var(--solid); border:1px solid var(--divider); border-radius:14px; }
.typed-table-settings-body .work-form { margin-top:12px; }
.typed-column-settings { margin:12px 0; padding:9px; border:1px solid var(--divider); border-radius:10px; }
.typed-column-settings .button { margin-top:9px; }
.typed-row-actions .button { padding:8px 10px; font-size:11px; }
.typed-row-actions .check-label { white-space:normal; }
.typed-table-create .work-form { margin-top:14px; }

/* Task workspace: properties first, reusable materials below, overview alongside. */
.task-dialog { width:min(1160px,calc(100% - 32px)); }
.task-workspace-grid { display:grid; grid-template-columns:minmax(0,1fr) 210px; gap:24px; align-items:start; }
.task-main { min-width:0; }
.task-properties>summary { display:flex; align-items:center; gap:8px; cursor:pointer; font-size:14px; font-weight:500; padding:8px 0 15px; }
.task-main .work-form { gap:9px; }
.task-main .field-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.task-main .work-form .field-grid label { display:block; margin-bottom:6px; }
.task-main .work-form input,.task-main .work-form select,.task-main .work-form textarea { padding:10px 12px; }
.task-main #task-description { min-height:94px; height:94px; }
.task-main .assignee-picker { padding:10px 0; }
.task-save-row { display:flex; align-items:center; gap:14px; flex-wrap:wrap; padding-top:7px; }
.task-save-row time { font-size:11px; }
.task-summary { display:flex; flex-direction:column; gap:12px; min-width:0; }
.task-summary-card { display:block; padding:15px; border:1px solid var(--divider); background:var(--input); border-radius:16px; color:var(--text); }
.task-summary-card>span { font-size:11px; color:var(--muted); display:block; margin-bottom:7px; }
.task-summary-card>strong { display:block; font-size:24px; font-weight:550; line-height:1.2; }
.task-summary-card small { font-size:14px; color:var(--muted); font-weight:400; }
.task-summary progress,.checklist-progress { appearance:none; border:0; width:100%; height:5px; display:block; margin-top:13px; border-radius:8px; overflow:hidden; background:var(--divider); }
progress::-webkit-progress-bar { background:var(--divider); border-radius:8px; }
progress::-webkit-progress-value { background:var(--success); border-radius:8px; }
progress::-moz-progress-bar { background:var(--success); border-radius:8px; }
.task-summary .task-personal-tools { display:flex; flex-direction:column; gap:10px; align-items:stretch; }
.task-summary .reminder-panel { flex:0 1 auto; }
.task-summary .task-personal-tools .button { width:100%; justify-content:center; font-size:12px; }
.task-summary .reminder-settings { width:100%; position:static; padding:12px; margin-top:10px; }
.task-summary .reminder-settings select,.task-summary .reminder-settings input:not([type=checkbox]) { width:100%; max-width:100%; min-width:0; }
.task-summary .reminder-presets { flex-wrap:wrap; }
.task-summary .reminder-presets .button { width:auto; }
.task-summary .text-button { text-align:center; }
.task-materials { border-top:1px solid var(--divider); padding-top:22px; margin-top:24px; scroll-margin-top:115px; }
.task-materials>.section-heading { margin-bottom:18px; gap:12px; }
.material-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-left:auto; }
.material-actions .button,.workspace-menu>summary.button { font-size:12px; min-height:36px; padding:8px 12px; }
.material-empty { padding:22px; border:1px dashed var(--divider); border-radius:15px; color:var(--muted); font-size:13px; line-height:1.6; }
.task-materials .task-checklists,.task-materials .task-tables { margin:0; padding:0; border:0; }
.checklist-block { padding:16px; margin:16px 0; border-radius:17px; background:var(--input); }
.checklist-block h4 { margin:0; font-size:15px; font-weight:550; overflow-wrap:anywhere; }
.checklist-progress { margin:12px 0; }
.checklist-row { align-items:center; gap:10px; min-height:42px; }
.check-button { display:inline-flex; align-items:center; justify-content:center; padding:0; line-height:1; width:32px; min-width:32px; height:32px; min-height:32px; flex-shrink:0; }
.check-button .icon { width:20px; height:20px; flex:none; margin:0; }
.checklist-block .add-item { margin-top:12px; gap:10px; }
.checklist-block .add-item input { min-width:120px; padding:10px 12px; }
.workspace-menu { position:relative; }
.workspace-menu>summary { display:flex; align-items:center; gap:6px; cursor:pointer; list-style:none; }
.workspace-menu>summary::-webkit-details-marker { display:none; }
.workspace-menu-panel { position:absolute; right:0; top:calc(100% + 7px); z-index:8; width:260px; max-width:calc(100vw - 50px); background:var(--solid); border:1px solid var(--divider); border-radius:15px; padding:12px; box-shadow:var(--shadow); }
.workspace-menu-panel>button { width:100%; background:transparent; border:0; color:var(--text); padding:10px; text-align:left; font:inherit; cursor:pointer; border-radius:8px; }
.workspace-menu-panel>button:hover { background:var(--input); }
.workspace-menu-panel form { display:grid; gap:12px; padding-top:12px; border-top:1px solid var(--divider); margin-top:6px; }
.workspace-menu-panel label { display:block; margin-bottom:9px; font-size:12px; }
.workspace-menu-panel input:not([type=checkbox]),.workspace-menu-panel select { width:100%; padding:9px; margin-top:6px; }
.workspace-menu-panel .checkbox { display:flex; align-items:flex-start; gap:8px; }
.workspace-dialog { color:var(--text); background:var(--solid); border:1px solid var(--divider); border-radius:22px; width:min(540px,calc(100vw - 32px)); max-height:88svh; overflow:auto; padding:24px; box-shadow:var(--shadow); }
.workspace-dialog::backdrop { background:rgb(12 15 27 / .32); backdrop-filter:blur(3px); }
.workspace-dialog>header { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:20px; }
.workspace-dialog h3 { margin:0; font-size:20px; }
.workspace-dialog .work-form { display:grid; gap:16px; }
.workspace-dialog .work-form>label { display:grid; gap:8px; }
.workspace-dialog .work-form>label.checkbox { display:flex; align-items:flex-start; }
.workspace-dialog .work-form input:not([type=checkbox]),.workspace-dialog select,.workspace-dialog textarea { width:100%; max-width:100%; }
.dialog-actions { display:flex; justify-content:flex-end; gap:10px; margin-top:15px; }
.template-library { width:min(660px,calc(100vw - 32px)); }
.template-card { padding:16px; margin:12px 0; border:1px solid var(--divider); border-radius:15px; }
.template-card h4 { margin:0; font-size:15px; }
.template-card ul { font-size:12px; color:var(--muted); line-height:1.7; padding-left:20px; }
.template-card details { margin-top:10px; font-size:12px; }
.table-view-toolbar { display:flex; gap:14px; align-items:center; flex-wrap:wrap; font-size:11px; margin:14px 0; }
.table-view-toolbar>button,.table-view-toolbar summary { min-height:34px; }
.table-view-toolbar .workspace-menu-panel { left:0; right:auto; }
.table-view-toolbar .table-reset { margin-left:auto; font-size:11px; }
.table-column-button { display:flex; justify-content:space-between; align-items:center; gap:12px; border:0; background:transparent; color:var(--text); padding:0; width:100%; font:inherit; text-align:left; cursor:pointer; }
.table-column-button .icon { width:14px; height:14px; }
.task-materials .typed-table th,.task-materials .typed-table td { padding:8px; vertical-align:middle; }
.task-materials .typed-table td textarea { min-height:40px; height:40px; }
.task-materials .typed-table td input,.task-materials .typed-table td select,.task-materials .typed-table td textarea { border:1px solid transparent; border-radius:6px; background:transparent; padding:7px; box-shadow:none; }
.task-materials .typed-table td input:hover,.task-materials .typed-table td textarea:hover,.task-materials .typed-table td select:hover { border-color:var(--divider); }
.task-materials .typed-table td input:focus,.task-materials .typed-table td textarea:focus,.task-materials .typed-table td select:focus { background:var(--solid); border-color:var(--accent); }
.typed-row-actions .text-button { display:block; font-size:10px; padding:5px 0; }
.table-add-row { display:flex; align-items:center; gap:8px; min-height:36px; font-size:12px; }
.task-history>summary { cursor:pointer; display:flex; align-items:center; gap:12px; font-size:13px; padding:5px 0; }
.task-history>summary::before { content:''; width:14px; height:14px; background:currentColor; mask:url('/icons/down.svg') center/contain no-repeat; transform:rotate(-90deg); }
.task-history[open]>summary::before { transform:none; }
.removed-materials { margin-top:20px; font-size:12px; }
.restore-material,.trash-list>li { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px 0; }
.trash-list { padding:20px; border-radius:20px; }
.trash-list h2 { font-size:16px; margin:0; }
.task-workspace-grid [hidden] { display:none!important; }
@media(max-width:850px) { .task-workspace-grid { grid-template-columns:minmax(0,1fr); } .task-summary { position:static; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--divider); padding-top:20px; } .task-summary>.task-reminder,.task-summary>button,.task-summary>.field-hint { grid-column:1/-1; } .task-summary .task-personal-tools { flex-direction:row; flex-wrap:wrap; } .task-summary .reminder-panel { flex:1; } .task-main .field-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:540px) { .task-dialog { width:calc(100% - 12px); } .task-panel-body { padding:15px; } .task-materials>.section-heading { align-items:flex-start; flex-wrap:wrap; } .material-actions { gap:6px; } .task-main .field-grid { grid-template-columns:1fr; } .task-summary-card { padding:12px; } .task-summary-card>strong { font-size:20px; } .task-summary-card>span { font-size:10px; } .check-button { width:40px; min-width:40px; height:40px; min-height:40px; } .workspace-dialog { padding:18px; } .dialog-actions { flex-wrap:wrap; } .table-view-toolbar { gap:10px; } .table-view-toolbar .table-reset { margin-left:0; } }
.collaboration-list { list-style:none; padding:0; margin:18px 0 0; }
.collaboration-list>li { padding:16px 0; border-bottom:1px solid var(--divider); }
.collaboration-list .section-heading { gap:12px; align-items:baseline; }
.collaboration-list .section-heading strong { font-size:13px; font-weight:550; }
.collaboration-list time { font-size:11px; color:var(--muted); white-space:nowrap; }
.comment-body,.history-changes dd { white-space:pre-wrap; overflow-wrap:anywhere; font-size:13px; line-height:1.7; }
.collaboration-actions,.attachment-entry { display:flex; gap:14px; justify-content:space-between; align-items:start; }
.collaboration-actions { justify-content:start; font-size:12px; }
.comment-edit { flex:1; }
.comment-edit summary,.history-details summary { font-size:12px; cursor:pointer; padding-block:5px; }
.comment-edit .work-form { margin-top:10px; }
.attachment-entry>div { min-width:0; }
.attachment-entry a { overflow-wrap:anywhere; }
.attachment-entry .field-hint { margin:5px 0; font-size:11px; }
.attachment-entry .text-button { white-space:nowrap; font-size:12px; }
.history-list .section-heading { flex-wrap:wrap; font-size:12px; }
.history-changes { margin:10px 0; }
.history-changes dt { margin-top:10px; font-size:11px; color:var(--muted); }
.history-changes dd { margin:4px 0; max-height:240px; overflow:auto; padding:8px; background:var(--input); border-radius:8px; }
.history-changes del { color:var(--muted); }
.history-changes ins { text-decoration:none; }
.notification-count { font-size:10px; padding:3px 6px; background:#005bea; color:white; border-radius:8px; margin-left:auto; }
.notifications-settings { padding:20px; border-radius:20px; margin-bottom:20px; }
.notifications-settings .work-form { margin-top:14px; }
.notifications-list { list-style:none; margin:0; padding:0; }
.notifications-list>li { padding:20px; border-radius:18px; margin:12px 0; background:var(--solid); border:1px solid var(--divider); }
.notifications-list .notification-unread,.notification-unread { border-left:3px solid var(--accent); }
.task-selectable { position:relative; min-width:0; }
.task-select { position:absolute; right:6px; top:4px; z-index:3; margin:0; min-width:32px; min-height:32px; display:flex; align-items:center; justify-content:center; cursor:pointer; }
.task-select input,.selection-cell input { width:16px; height:16px; margin:0; accent-color:var(--accent); }
.selection-cell input { width:24px; height:24px; }
.task-selectable .task-card { height:100%; padding-top:42px; }
.task-table .selection-cell { width:40px; }
.bulk-disclosure { padding:12px; margin-bottom:14px; border-radius:16px; background:var(--input); }
.bulk-disclosure>summary { cursor:pointer; font-size:12px; }
.bulk-task-form { display:flex; gap:10px; flex-wrap:wrap; align-items:end; margin-top:12px; }
.bulk-task-form label { font-size:12px; margin:0; }
.bulk-task-form>label { flex:1; min-width:140px; }
.bulk-task-form .button { margin-bottom:0; }
.saved-views { position:relative; }
.saved-views>summary { cursor:pointer; font-size:12px; list-style:none; }
.saved-views-panel { position:absolute; z-index:8; width:min(360px,calc(100vw - 40px)); top:calc(100% + 8px); left:0; padding:16px; border-radius:18px; background:var(--solid); border:1px solid var(--divider); box-shadow:0 15px 30px -12px #0a102466; }
.saved-view-row { display:flex; gap:12px; align-items:center; justify-content:space-between; padding:10px 0; border-bottom:1px solid var(--divider); font-size:12px; }
.saved-view-row a { overflow-wrap:anywhere; }
.saved-views-panel .work-form { margin-top:12px; }
.filter-disclosure .task-filters,.saved-views-panel { max-height:min(65svh,540px); overflow:auto; overscroll-behavior:contain; }
@media(max-width:700px) { .task-toolbar-left { position:relative; } .saved-views { position:static; } }
.kanban-column[data-drop-active] { outline:2px solid var(--accent); outline-offset:-2px; }
[data-draggable-task][aria-busy=true] { opacity:.55; pointer-events:none; }
[data-draggable-task] { cursor:grab; }
[data-draggable-task].is-dragging { opacity:.5; }
@media(max-width:700px) { .collaboration-list .section-heading { flex-wrap:wrap; } .task-panel-body { padding-inline:16px; } .typed-table-block { padding:11px; } .attachment-entry { flex-wrap:wrap; } .bulk-task-form { display:grid; grid-template-columns:1fr; } .saved-views-panel { left:0; } }

/* Acceptance: keep work and account controls in reach on small screens. */
.sidebar-heading { min-width:0; }
.sidebar-heading h2 { overflow-wrap:anywhere; }
.mobile-nav-toggle { display:none; }
.kanban-board:focus-visible,.task-table-wrap:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
@media(max-width:640px) {
  .sidebar-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; }
  .sidebar-heading h2 { margin:0; flex:1; font-size:16px; }
  [data-navigation-ready] .mobile-nav-toggle { display:inline-flex; min-height:44px; padding:8px 12px; gap:6px; flex:none; }
  [data-workspace-navigation][data-navigation-ready]:not([data-navigation-open]) .sidebar-nav { display:none; }
  .work-shell .sidebar { margin-bottom:18px; }
  .task-list-heading { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:8px 12px; margin-bottom:18px; }
  .task-list-heading>div:first-child { display:contents; }
  .task-list-heading h1 { grid-column:1; grid-row:1; margin:0; font-size:26px; }
  .task-list-heading p { grid-column:1 / -1; grid-row:2; margin:0; }
  .task-list-heading .heading-actions { grid-column:2; grid-row:1; }
  .task-toolbar { margin-bottom:12px; }
  .task-toolbar-left>.count-label { margin:0; }
  .sidebar-nav>a { min-height:44px; }
  .task-select { min-width:44px; min-height:44px; right:0; top:0; }
  .view-switch>a { min-height:44px; }
  .quick-status .button { min-width:44px; min-height:44px; }
  .quick-status select { min-height:44px; }
  .task-section-nav a { min-height:36px; display:inline-flex; align-items:center; }
  .task-dialog,.settings-dialog { max-width:calc(100% - 16px); }
}
@media(max-width:360px) {
  .brand,.brand img { width:110px; height:26px; }
  .site-header { gap:8px; }
  .header-admin { display:none; }
  .sidebar-heading { flex-wrap:wrap; }
  .sidebar-heading h2 { flex-basis:100%; }
  [data-navigation-ready] .mobile-nav-toggle { margin-left:auto; }
  .view-switch { width:100%; }
  .view-switch>a { flex:1; padding-inline:6px; gap:5px; }
}

/* Personal reminders and user-controlled delivery. */
.task-reminder { margin:16px 0; }
.task-personal-tools,.reminder-presets { display:flex; gap:8px; flex-wrap:wrap; align-items:flex-start; }
.task-personal-tools>form { margin:0; }
.reminder-panel { min-width:0; flex:1 1 240px; }
.reminder-panel>summary { list-style:none; width:max-content; max-width:100%; cursor:pointer; }
.reminder-settings { margin-top:12px; border:1px solid var(--divider); border-radius:16px; padding:16px; }
.reminder-settings fieldset,.notifications-settings fieldset { border:1px solid var(--divider); border-radius:12px; min-width:0; padding:12px; }
.notifications-settings { padding:20px; margin-bottom:14px; }
.notifications-settings>summary { cursor:pointer; font-weight:550; }
.notifications-settings[open]>summary { margin-bottom:16px; }
.notification-events,.notification-connections { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.notification-connections section { min-width:0; }
.quiet-hours { display:flex; gap:16px; }
.quiet-hours label { flex:1; min-width:0; }
.access-options { min-width:0; }
.access-options small { display:block; margin-top:6px; }
[data-notification-badge][hidden] { display:none; }
@media(max-width:640px) { .notification-events,.notification-connections { grid-template-columns:1fr; } .task-personal-tools .button { min-height:44px; } .task-personal-tools { align-items:stretch; } }
