/* TheTask.One v2.4 – public icon dashboard. Legacy markup is preserved for JS-disabled visitors. */
body.tt-v240-public #app main > section:not(#tt-v240-home){display:none!important}
body.tt-v240-public #app main > #tt-hub-mobile{display:none!important}
body.tt-v240-public #partner-apply,body.tt-v240-public #contact{display:none}
body.tt-v240-public.tt-v240-partner #partner-apply,body.tt-v240-public.tt-v240-contact #contact{display:block!important}
body.tt-v240-public .tt-v240-shell,body.tt-v240-public .tt-v240-shell *{box-sizing:border-box}
.tt-v240-shell{max-width:1220px;margin:0 auto;padding:clamp(18px,3vw,44px) clamp(13px,3vw,30px) 56px;color:var(--text,#172a38);font-family:inherit}
.tt-v240-shell button,.tt-v240-shell select,.tt-v240-shell input{font-family:inherit}
.tt-v240-hero{border-radius:26px;padding:clamp(22px,4vw,46px);background:linear-gradient(115deg,var(--panel,#102c39),var(--raised,#264958));color:var(--heading,#fff);border:1px solid var(--stroke,#65828a);display:grid;grid-template-columns:1.4fr .8fr;align-items:center;gap:16px;overflow:hidden;position:relative}
.tt-v240-hero::after{content:"";position:absolute;right:-90px;top:-125px;width:380px;height:380px;border:65px solid var(--accent,#7ed9bf);border-radius:50%;opacity:.09;pointer-events:none}
.tt-v240-kicker{font-weight:800;letter-spacing:2.3px;text-transform:uppercase;font-size:11px;color:var(--accent,#84e5cc)}
.tt-v240-hero h1{font-size:clamp(29px,5vw,58px);line-height:1.08;letter-spacing:-1.7px;margin:13px 0 16px;color:var(--heading,#fff)}
.tt-v240-hero p{font-size:clamp(13px,1.2vw,16px);max-width:570px;line-height:1.75;color:var(--muted,#d0dfe2);margin:0}
.tt-v240-hero-art{display:grid;place-items:center;min-height:188px}
.tt-v240-orbit{height:170px;width:170px;border:1px solid var(--accent,#a9ede1);border-radius:50%;position:relative;display:grid;place-items:center;box-shadow:0 0 0 25px #8fdac619,0 0 0 50px #8fdac60c}
.tt-v240-orbit span{font-weight:800;font-size:56px;color:var(--accent,#91dbc3)}
.tt-v240-orbit::before,.tt-v240-orbit::after{content:"◆";position:absolute;color:var(--accent,#a1e9d1);font-size:30px;top:3px;left:-13px}.tt-v240-orbit::after{top:auto;bottom:5px;left:auto;right:-13px}
.tt-v240-section{margin-top:32px}
.tt-v240-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:16px}
.tt-v240-section-head h2{font-size:clamp(21px,2.6vw,31px);color:var(--heading,var(--text,#172a38));letter-spacing:-.65px;margin:0 0 5px}
.tt-v240-section-head p{font-size:13px;color:var(--muted,#516b77);margin:0;line-height:1.6}
.tt-v240-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.tt-v240-tile{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:120px;background:var(--panel,#fff);border:1px solid var(--stroke,#ccd7de);border-radius:21px;padding:16px 9px;box-shadow:0 8px 18px #0000000a;color:var(--text,#1b3c4a);cursor:pointer;transition:transform .2s,box-shadow .2s;touch-action:manipulation;text-align:center}
.tt-v240-tile:hover,.tt-v240-tile:focus-visible{transform:translateY(-4px);box-shadow:0 14px 25px #0002;outline:2px solid var(--accent,#268c87);outline-offset:1px}
.tt-v240-glyph{display:grid;place-items:center;height:48px;width:48px;border-radius:16px;background:var(--wash,#dceae6);color:var(--accent,#18595d);flex:none}
.tt-v240-glyph svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tt-v240-tile strong{font-size:12px;font-weight:760;line-height:1.35}
.tt-v240-micro{display:block;font-size:10px;color:var(--muted,#506671);line-height:1.35}
.tt-v240-banner{position:relative;overflow:hidden;min-height:310px;border-radius:24px;border:1px solid var(--stroke,#b3ccd0);background:#081921;box-shadow:0 20px 44px #0002}
.tt-v240-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.69)}
.tt-v240-banner::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#031923ee 0%,#03192355 67%,transparent)}
.tt-v240-banner-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:310px;max-width:510px;padding:28px 36px;color:#fff}
.tt-v240-banner-copy h3{color:#fff;font-size:clamp(22px,3.5vw,42px);line-height:1.16;margin:12px 0 11px}
.tt-v240-banner-copy p{color:#e5f3f4;font-size:13px;line-height:1.7;margin:0 0 17px}
.tt-v240-pill{font-size:10px;letter-spacing:1.2px;font-weight:800;text-transform:uppercase;color:#9de6d2}
.tt-v240-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;background:var(--accent,#257b76);color:var(--on-accent,#fff);padding:11px 16px;border:1px solid var(--accent,#257b76);border-radius:13px;font-size:12px;font-weight:800;cursor:pointer;text-decoration:none}
.tt-v240-button.alt{color:var(--text,#192b35);border-color:var(--stroke,#cbd4d4);background:var(--panel,#fff)}
.tt-v240-banner .tt-v240-button{background:#b7f4e1;color:#103336;border-color:#b7f4e1}
.tt-v240-banner-nav{position:absolute;z-index:3;right:14px;bottom:14px;display:flex;gap:7px}
.tt-v240-banner-nav button{width:40px;height:40px;border:1px solid #ffffff85;color:#fff;background:#081f26bb;border-radius:11px;cursor:pointer;font-size:19px}
.tt-v240-gallery-tools{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 16px}
.tt-v240-gallery-tools input,.tt-v240-gallery-tools select{min-width:0;min-height:43px;padding:10px 13px;border-radius:12px;border:1px solid var(--stroke,#becbcf);background:var(--panel,#fff);color:var(--text,#123);font-size:13px}
.tt-v240-gallery-tools input{flex:2;min-width:170px}.tt-v240-gallery-tools select{flex:1;min-width:160px}
.tt-v240-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.tt-v240-card{background:var(--panel,#fff);border:1px solid var(--stroke,#c1ced1);border-radius:18px;overflow:hidden;min-width:0;display:flex;flex-direction:column}
.tt-v240-card-img{display:block;aspect-ratio:16/9;overflow:hidden;cursor:pointer;border:0;padding:0;background:var(--raised,#d1e3e6);width:100%}
.tt-v240-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.tt-v240-card-img:hover img{transform:scale(1.05)}
.tt-v240-card-copy{padding:14px;display:flex;flex-direction:column;gap:9px;flex:1}
.tt-v240-card-copy small{font-size:10px;color:var(--muted,#54717b)}
.tt-v240-card-copy h3{font-size:15px;line-height:1.33;color:var(--heading,var(--text,#192a35));margin:0}
.tt-v240-card-copy p{font-size:12px;line-height:1.65;color:var(--muted,#46616b);margin:0;flex:1}
.tt-v240-card-actions{display:flex;gap:8px;flex-wrap:wrap}.tt-v240-card-actions .tt-v240-button{font-size:11px;min-height:37px;padding:7px 10px}
.tt-v240-mini-guide{background:var(--raised,var(--panel,#fff));border:1px solid var(--stroke,#d2d7d9);padding:19px;border-radius:18px;margin-top:20px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.tt-v240-mini-guide div{font-size:12px;line-height:1.55;color:var(--text,#162f39)}.tt-v240-mini-guide b{display:block;margin-bottom:5px;font-size:13px}
.tt-v240-form-screen{position:fixed!important;inset:0!important;z-index:120150!important;overflow:auto!important;background:var(--bg,#edf2f1)!important;padding:54px max(16px,calc((100vw - 920px)/2)) 30px!important;box-sizing:border-box}
.tt-v240-exit{position:fixed;z-index:120160;right:16px;top:16px;border:1px solid var(--stroke,#aaa);background:var(--panel,#fff);color:var(--text,#222);border-radius:12px;padding:9px 15px;min-height:42px;cursor:pointer}
body.tt-v240-public .tt-visitor-dock .tt-dock-button small{display:none}body.tt-v240-public .tt-visitor-dock{right:8px;gap:8px}body.tt-v240-public .tt-dock-button{width:46px;height:46px;border-radius:14px}body.tt-v240-public .tt-visitor-dock:not(.tt-dock-visible){pointer-events:none}
@media(max-width:950px){.tt-v240-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tt-v240-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.tt-v240-mini-guide{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.tt-v240-shell{padding:12px 12px 38px}.tt-v240-hero{grid-template-columns:1fr;border-radius:20px;padding:25px 20px}.tt-v240-hero-art{display:none}.tt-v240-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tt-v240-tile{min-height:98px;padding:10px 4px;border-radius:14px;gap:6px}.tt-v240-glyph{height:39px;width:39px;border-radius:12px}.tt-v240-glyph svg{width:23px;height:23px}.tt-v240-tile strong{font-size:10px}.tt-v240-micro{font-size:9px}.tt-v240-section{margin-top:25px}.tt-v240-banner,.tt-v240-banner-copy{min-height:280px}.tt-v240-banner-copy{padding:22px;max-width:90%}.tt-v240-banner-copy p{font-size:12px}.tt-v240-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.tt-v240-card-copy{padding:10px}.tt-v240-card-copy h3{font-size:12px}.tt-v240-card-copy p{font-size:10px}.tt-v240-card-actions .tt-v240-button{min-height:36px;font-size:10px}.tt-v240-mini-guide{gap:8px;padding:12px}.tt-v240-mini-guide div{font-size:10px}body.tt-v240-public .tt-visitor-dock{top:auto;bottom:85px;transform:translateX(130%);right:7px}body.tt-v240-public .tt-visitor-dock.tt-dock-visible{transform:translateX(0)}body.tt-v240-public .tt-visitor-dock .tt-dock-button{width:42px;height:42px}body.tt-v240-public .tt-visitor-dock .tt-dock-button svg{width:21px;height:21px}}
@media(max-width:370px){.tt-v240-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tt-v240-cards{grid-template-columns:1fr 1fr}.tt-v240-card-actions{flex-direction:column}}
@media(prefers-reduced-motion:reduce){.tt-v240-tile,.tt-v240-card-img img{transition:none!important;transform:none!important}}
@media print{.tt-v240-shell .tt-v240-banner-nav,.tt-v240-shell button{display:none}}

/* THETASK_BANNER_CONTRAST_FIX */

.tt-v240-banner {
  background: #102630 !important;
}

.tt-v240-banner::before {
  background: linear-gradient(
    90deg,
    rgba(5,20,29,.96) 0%,
    rgba(5,20,29,.80) 55%,
    rgba(5,20,29,.30) 100%
  ) !important;
}

.tt-v240-banner-copy,
.tt-v240-banner-copy h3 {
  color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: 0 2px 8px rgba(0,0,0,.35);
}

.tt-v240-banner-copy p {
  color: #f1f7fa !important;
  opacity: 1 !important;
}

.tt-v240-banner .tt-v240-button {
  background: #b7f4e1 !important;
  color: #103336 !important;
  border-color: #b7f4e1 !important;
}

@media (max-width:600px) {
  .tt-v240-banner::before {
    background: linear-gradient(
      90deg,
      rgba(5,20,29,.96),
      rgba(5,20,29,.64)
    ) !important;
  }
}

/* THETASK_V241_BANNER_CONTRAST_FIX */
body.tt-v240-public .tt-v240-banner{isolation:isolate;background:#061e2b!important}
body.tt-v240-public .tt-v240-banner>img{filter:brightness(.88) blur(1px)!important;object-fit:cover!important}
body.tt-v240-public .tt-v240-banner::before{background:linear-gradient(90deg,rgba(3,20,31,.93) 0%,rgba(3,20,31,.78) 37%,rgba(3,20,31,.18) 85%)!important;z-index:1!important}
body.tt-v240-public .tt-v240-banner .tt-v240-banner-copy{z-index:2!important;position:relative!important;color:#fff!important;background:linear-gradient(90deg,rgba(4,23,33,.92),rgba(4,23,33,.84) 78%,rgba(4,23,33,.14))!important;max-width:min(580px,64%)!important;border-radius:18px 0 0 18px!important}
body.tt-v240-public .tt-v240-banner .tt-v240-banner-copy h3{color:#fff!important;opacity:1!important;-webkit-text-fill-color:#fff!important;text-shadow:0 2px 5px #0007!important}
body.tt-v240-public .tt-v240-banner .tt-v240-banner-copy p{color:#eafaff!important;opacity:1!important;-webkit-text-fill-color:#eafaff!important}
body.tt-v240-public .tt-v240-banner .tt-v240-pill{color:#bdfde6!important;-webkit-text-fill-color:#bdfde6!important}
body.tt-v240-public .tt-v240-banner .tt-v240-button{color:#092c35!important;background:#b9f3e1!important;border-color:#b9f3e1!important;-webkit-text-fill-color:#092c35!important}
@media(max-width:600px){body.tt-v240-public .tt-v240-banner .tt-v240-banner-copy{max-width:100%!important;width:100%!important;padding:22px!important;background:linear-gradient(90deg,rgba(3,20,31,.94),rgba(3,20,31,.65))!important}body.tt-v240-public .tt-v240-banner .tt-v240-banner-copy h3{font-size:clamp(22px,6.5vw,30px)!important}}

/* THETASK_V242_SPLIT_BANNER — clear text panel, separate image preview. */
body.tt-v240-public .tt-v240-banner {
  display:grid!important;
  grid-template-columns:minmax(0, 43%) minmax(0, 57%)!important;
  grid-template-rows:minmax(320px,auto)!important;
  min-height:320px!important;
  background:#092431!important;
  isolation:isolate;
}
body.tt-v240-public .tt-v240-banner::before {display:none!important;content:none!important;}
body.tt-v240-public .tt-v240-banner > img {
  grid-column:2!important;grid-row:1!important;
  position:relative!important;inset:auto!important;
  display:block!important;align-self:stretch!important;
  width:100%!important;height:100%!important;min-height:320px!important;
  object-fit:contain!important;object-position:center!important;
  filter:none!important;opacity:1!important;
  background:#edf3f4!important;
  padding:12px!important;box-sizing:border-box!important;
}
body.tt-v240-public .tt-v240-banner .tt-v240-banner-copy {
  grid-column:1!important;grid-row:1!important;
  box-sizing:border-box!important;
  min-height:320px!important;max-width:none!important;width:100%!important;
  z-index:2!important;
  color:#fff!important;
  background:#092431!important;
  border-radius:0!important;
  padding:clamp(24px,3vw,40px)!important;
}
body.tt-v240-public .tt-v240-banner .tt-v240-banner-copy h3 {
  color:#ffffff!important;-webkit-text-fill-color:#fff!important;
  opacity:1!important;text-shadow:none!important;
  font-weight:800!important;
}
body.tt-v240-public .tt-v240-banner .tt-v240-banner-copy p {
  color:#e8f3f6!important;-webkit-text-fill-color:#e8f3f6!important;
  opacity:1!important;
}
body.tt-v240-public .tt-v240-banner .tt-v240-pill {
  color:#a9f3df!important;-webkit-text-fill-color:#a9f3df!important;
}
body.tt-v240-public .tt-v240-banner-nav {z-index:3!important;}
@media(max-width:700px) {
  body.tt-v240-public .tt-v240-banner {
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
  }
  body.tt-v240-public .tt-v240-banner .tt-v240-banner-copy {
    grid-column:1!important;grid-row:1!important;
    min-height:0!important;padding:22px 20px!important;
  }
  body.tt-v240-public .tt-v240-banner > img {
    grid-column:1!important;grid-row:2!important;
    min-height:0!important;height:auto!important;
    width:100%!important;aspect-ratio:1400/780!important;
    padding:10px!important;
  }
  body.tt-v240-public .tt-v240-banner-nav button {background:#092431!important;}
}

/* THETASK_V250_BANNER_LAYOUT */
/* THETASK_V250_BANNER_LAYOUT — high contrast text separated from illustrative graphics. */
body.tt-v240-public .tt-v240-banner{display:grid!important;grid-template-columns:minmax(0,44%) minmax(0,56%)!important;grid-template-rows:minmax(350px,auto)!important;min-height:350px!important;isolation:isolate!important;background:#092a36!important;align-items:stretch!important}
body.tt-v240-public .tt-v240-banner:before{display:none!important;content:none!important}
body.tt-v240-public .tt-v240-banner>img{grid-column:2!important;grid-row:1!important;display:block!important;position:relative!important;inset:auto!important;align-self:stretch!important;width:100%!important;height:100%!important;object-fit:contain!important;filter:contrast(var(--v250-contrast,1.05))!important;opacity:1!important;background:#ebf3f4!important;border:0!important;padding:10px!important}
body.tt-v240-public .tt-v240-banner-copy{grid-column:1!important;grid-row:1!important;z-index:2!important;background:#082934!important;min-height:350px!important;max-width:none!important;width:100%!important;padding:30px clamp(23px,3vw,43px)!important;color:#fff!important;border-radius:0!important}
body.tt-v240-public .tt-v240-banner-copy h3{color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:1!important;text-shadow:none!important;font-weight:800!important}
body.tt-v240-public .tt-v240-banner-copy p{color:#eff9fc!important;-webkit-text-fill-color:#eff9fc!important;opacity:1!important}
body.tt-v240-public .tt-v240-banner-copy .tt-v240-pill{color:#acffdf!important;-webkit-text-fill-color:#acffdf!important}
body.tt-v240-public .tt-v240-banner-nav{z-index:7!important;position:absolute!important;right:13px!important;bottom:12px!important}
body.tt-v240-public .tt-v250-banner-utilities{grid-column:2;grid-row:1;z-index:5;position:relative;align-self:end;justify-self:start;margin:0 90px 13px 15px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
body.tt-v240-public .tt-v250-banner-utilities label,body.tt-v240-public .tt-v250-counter,body.tt-v240-public .tt-v250-wa{display:flex;gap:8px;align-items:center;border-radius:30px;border:1px solid #acc6cc;color:#103b45!important;background:#fffffff2;padding:7px 11px;font-size:11px;font-weight:800;text-decoration:none}
body.tt-v240-public .tt-v250-banner-utilities input{width:70px;min-height:16px;padding:0;accent-color:#126c7b}
body.tt-v240-public .tt-v250-wa{background:#0e7b69;color:#fff!important;border-color:#0e7b69}
@media(max-width:740px){body.tt-v240-public .tt-v240-banner{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto!important}body.tt-v240-public .tt-v240-banner-copy{grid-column:1!important;grid-row:1!important;min-height:0!important;padding:24px 20px!important}body.tt-v240-public .tt-v240-banner>img{grid-column:1!important;grid-row:2!important;min-height:0!important;height:auto!important;aspect-ratio:1400/780!important}body.tt-v240-public .tt-v250-banner-utilities{grid-column:1;grid-row:2;align-self:end;margin:0 90px 10px 8px}body.tt-v240-public .tt-v250-banner-utilities label{display:none}}
@media(max-width:410px){body.tt-v240-public .tt-v250-banner-utilities{margin-right:75px}body.tt-v240-public .tt-v250-wa{padding:6px;font-size:10px}}
