:root{
  --work-silver:#b9bec6;
  --work-silver-deep:#8c939d;
  --work-silver-light:#e2e5e9;
  --work-charcoal:#171a1e;
  --work-panel:rgba(247,249,251,.96);
  --work-ink:#121417;
  --work-muted:#59636f;
  --work-border:rgba(18,20,23,.18);
  --work-soft-shadow:0 18px 46px rgba(14,18,24,.22);
}

html,body{min-height:100%}
body{margin:0}
.work-stage{
  min-height:100svh;
  background:linear-gradient(180deg,var(--hank-blue) 0%,var(--hank-blue) 34%,#c8ccd2 49%,var(--work-silver-deep) 100%);
  background-attachment:scroll;
}
.work-shell{width:min(1240px,calc(100% - 32px));margin:0 auto}
.work-root{width:100%;outline:none}
.work-root:focus{outline:none}
.work-shell>.hank-question:empty{display:none}

/* Work header: canonical H.A.N.K. logo plus a distinct professional metallic wordmark. */
.work-brand{
  box-sizing:border-box;
  width:auto;
  max-width:min(1120px,calc(100vw - 48px));
  margin:36px auto 26px;
  transform:none;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
}
.work-brand img{
  display:block;
  width:clamp(410px,43vw,650px);
  max-width:66vw;
  height:auto;
  flex:0 1 auto;
  margin-right:-44px;
}
.work-wordmark{
  flex:0 0 auto;
  font-family:"Aptos Display","Segoe UI Variable Display","Segoe UI",Arial,sans-serif;
  font-size:clamp(3rem,4.8vw,4.9rem);
  font-style:italic;
  font-weight:600;
  letter-spacing:.055em;
  line-height:1;
  color:#d4d8dd;
  background:linear-gradient(180deg,#f4f5f7 0%,#d5d9de 38%,#a9afb8 72%,#e0e3e7 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:0 2px 12px rgba(0,0,0,.23);
}

.work-page{display:grid;gap:18px;width:100%;padding-bottom:70px}
.work-toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.work-toolbar-main,.work-toolbar-meta{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.work-page .hank-button,.work-dialog .hank-button,.work-login .hank-button{
  color:#111!important;
  border-color:rgba(18,20,23,.30);
  background:rgba(246,248,250,.86);
}
.work-page .hank-button:hover,.work-page .hank-button:focus-visible,.work-dialog .hank-button:hover,.work-dialog .hank-button:focus-visible,.work-login .hank-button:hover,.work-login .hank-button:focus-visible{
  color:#111!important;
  background:#fff;
  border-color:rgba(18,20,23,.55);
}
.work-toolbar .hank-button[aria-current="page"]{background:#fff;border-color:#111;box-shadow:0 0 0 2px rgba(255,255,255,.32),var(--shadow-soft)}
.work-status-pill{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border-radius:999px;background:rgba(18,20,23,.74);color:#fff;font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.16)}

.work-panel{background:var(--work-panel);color:var(--work-ink);border:1px solid var(--work-border);border-radius:18px;box-shadow:var(--work-soft-shadow);padding:18px}
.work-panel h2,.work-panel h3{margin-top:0}
.work-muted{color:var(--work-muted)}
.work-fixture-banner{background:#fff5cd;border:1px solid #c4a03e;border-radius:12px;padding:10px 12px;color:#332b13}
.work-grid{display:grid;gap:14px}
.work-empty{padding:26px;text-align:center;border:1px dashed #697684;border-radius:14px;background:rgba(255,255,255,.55)}
.work-app-note{font-size:.82rem;color:#5d6875;line-height:1.45}

.work-login{max-width:620px;margin:12px auto 0;border:0;box-shadow:0 24px 58px rgba(12,17,24,.26)}
.work-login h2{font-weight:500;letter-spacing:.02em}
.work-login-actions{display:flex;gap:10px;flex-wrap:wrap}

/* Home calendar: a navigable two-week window, defaulting to this week and next. */
.work-calendar-panel{padding:20px}
.work-home-calendar{padding-bottom:16px}
.work-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.work-calendar-title{font-size:1.28rem;font-weight:760;letter-spacing:.01em}
.work-calendar-actions{display:flex;gap:8px;align-items:center}
.work-calendar-actions .hank-button{color:#111!important;min-width:52px;background:rgba(246,248,250,.94)}
.work-calendar-actions .hank-button[data-calendar-today]{min-width:78px}
.work-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-top:14px}
.work-day-name{text-align:center;font-size:.82rem;font-weight:800;color:#4f5a68;padding:5px}
.work-day{min-height:116px;background:#fff;border:1px solid #d3d9e0;border-radius:12px;padding:8px;overflow:hidden}
.work-day.today{outline:3px solid var(--hank-blue)}
.work-day-number{font-weight:800}
.work-event{display:block;width:100%;margin-top:6px;border:0;border-left:5px solid var(--hank-blue);border-radius:6px;background:#edf2f9;color:#111!important;padding:6px 7px;text-align:left;font-size:.78rem;cursor:pointer}
.work-event[data-provider="moodle"]{border-left-color:#8a5a21}
.work-event[data-provider="microsoft"]{border-left-color:#676c73}
.work-event[data-provider="work"]{border-left-color:#111}
.work-calendar-legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;font-size:.84rem}
.work-calendar-legend span{display:inline-flex;align-items:center;gap:6px}
.work-dot{width:10px;height:10px;border-radius:50%;background:#111}
.work-service-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.work-service-card{display:flex;min-height:132px;flex-direction:column;justify-content:space-between;gap:10px;text-align:left;background:#15171a;color:#fff;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px;cursor:pointer;box-shadow:0 12px 28px rgba(0,0,0,.14)}
.work-service-card small{color:#cbd1da}.work-service-card .status{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.work-service-card[data-status="expired"]{outline:3px solid #d28b36}.work-service-card[data-status="setup_required"]{outline:3px solid #6885b5}

.work-notes-layout{display:grid;grid-template-columns:220px 1fr;gap:14px}
.work-note-list{display:grid;align-content:start;gap:8px}.work-note-list button{width:100%;text-align:left}
.work-note-editor input,.work-note-editor textarea{width:100%;box-sizing:border-box}.work-note-editor textarea{min-height:310px;resize:vertical}.work-note-status{font-size:.8rem;color:#64707e}
.work-dialog{position:fixed;inset:0;display:grid;place-items:center;background:rgba(0,0,0,.54);z-index:30;padding:18px}.work-dialog[hidden]{display:none}.work-dialog-card{width:min(920px,100%);max-height:90vh;overflow:auto;background:#f5f7f9;color:#111;border-radius:18px;padding:18px;box-shadow:0 30px 90px rgba(0,0,0,.45)}.work-dialog-head{display:flex;justify-content:space-between;gap:12px;align-items:center}

/* Excalidraw-inspired embedded whiteboard surface. */
body.work-whiteboard-mode .work-shell{width:min(1640px,calc(100% - 24px))}
.work-whiteboard-page{min-height:calc(100svh - 175px);padding-bottom:36px;width:100%}
.work-board-panel{padding:14px;background:rgba(244,246,248,.97)}
.work-board-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.work-board-title{display:flex;align-items:baseline;gap:12px}.work-board-title h2{margin:0;font-weight:600}.work-board-title span{color:#626c77;font-size:.86rem}
.work-board-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
.work-board-tools .hank-button[data-active="true"]{background:#dce7f7;border-color:#285b9b;box-shadow:inset 0 0 0 1px #285b9b}
.work-width-control,.work-board-select-wrap,.work-zoom-controls{display:flex;align-items:center;gap:9px;min-height:46px;padding:0 12px;border:1px solid rgba(17,17,17,.24);border-radius:14px;background:#fff;color:#111}
.work-width-control input{width:120px}.work-width-value{min-width:38px;font-variant-numeric:tabular-nums;font-weight:700}.work-width-preview{display:inline-block;width:var(--preview-width,4px);height:var(--preview-width,4px);min-width:3px;min-height:3px;max-width:24px;max-height:24px;border-radius:50%;background:#111}
.work-board-select{min-height:34px;border:1px solid #aab1ba;border-radius:9px;background:#fff;color:#111;padding:4px 28px 4px 8px;font:inherit}
.work-zoom-controls{padding:4px 6px;gap:5px}.work-zoom-controls .hank-button{min-width:44px}.work-zoom-controls output{min-width:54px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}
.work-board-viewport{position:relative;height:clamp(620px,75vh,900px);min-height:560px;border:1px solid #9fa7b1;border-radius:14px;overflow:auto;background:#dfe2e6;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7);overscroll-behavior:contain}
.work-board-spacer{position:relative;min-width:100%;min-height:100%;padding:16px;box-sizing:border-box}
.work-board-canvas-shell{position:absolute;left:16px;top:16px;width:1600px;height:900px;transform-origin:0 0;background-color:#fff;box-shadow:0 6px 24px rgba(22,26,32,.18)}
.work-board-canvas-shell[data-background="grid"]{background-color:#fff;background-image:radial-gradient(circle,#d9dde2 1px,transparent 1px);background-size:22px 22px}
.work-board-canvas-shell[data-background="plain"]{background:#fff}
.work-board-canvas-shell[data-background="ruled"]{background-color:#fff;background-image:repeating-linear-gradient(180deg,transparent 0,transparent 37px,#d8e1eb 37px,#d8e1eb 38px)}
.work-board-canvas-shell[data-background="paper"]{background:#fbf6e9}
.work-board{width:1600px;height:900px;touch-action:none;display:block;cursor:crosshair;background:transparent}
.work-board[data-tool="eraser"]{cursor:cell}
.work-board-status{display:flex;align-items:center;gap:8px;color:#5a6470;font-size:.82rem}.work-board-status::before{content:"";width:8px;height:8px;border-radius:50%;background:#6baf78}

.work-agents-intro{margin:0 0 2px;color:#2d343d}
.work-agent-roster{display:grid;gap:16px}
.work-agent-category-row{display:grid;grid-template-columns:minmax(170px,210px) minmax(0,1fr);gap:16px;align-items:stretch;padding:16px;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:linear-gradient(135deg,rgba(27,31,37,.88),rgba(49,55,64,.90));box-shadow:0 16px 34px rgba(15,18,23,.20)}
.work-agent-category-title{display:flex;align-items:flex-start;padding:8px 6px;color:#d7dce2;font-size:1.16rem;font-weight:650;letter-spacing:.02em}
.work-agent-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.work-agent-tile{appearance:none;display:grid;justify-items:center;align-content:center;gap:8px;min-height:190px;padding:14px;border:2px solid rgba(223,228,234,.34);border-radius:16px;background:rgba(225,230,236,.12);color:#fff;font:inherit;cursor:pointer;box-shadow:0 10px 22px rgba(0,0,0,.12);transition:transform .14s ease,background .14s ease,border-color .14s ease}
.work-agent-tile:hover,.work-agent-tile:focus-visible{transform:translateY(-2px);background:rgba(225,230,236,.19);border-color:rgba(255,255,255,.72);outline:none}
.work-agent-initial{display:grid;place-items:center;width:76px;height:76px;border-radius:16px;background:rgba(213,219,227,.18);font-size:2rem;font-weight:300}
.work-agent-name{font-size:1.06rem;font-weight:700}.work-agent-alias{font-size:.84rem;color:#d1d6dd;text-align:center}

/* Connections: general connection entry points first; actual connected accounts are shown in-context below them. */
.work-connections-page{display:grid;gap:16px}
.work-connection-category-list{display:grid;gap:14px}
.work-connection-category{display:grid;grid-template-columns:minmax(170px,220px) minmax(0,1fr);gap:14px;align-items:stretch;padding:14px;border-radius:17px;background:rgba(24,27,31,.86);border:1px solid rgba(255,255,255,.22);box-shadow:0 14px 32px rgba(0,0,0,.16)}
.work-connection-category-head{display:grid;align-content:start;gap:7px;padding:8px;color:#fff}.work-connection-category-head h3{margin:0;font-size:1.06rem}.work-connection-category-head p{margin:0;color:#c8ced6;font-size:.82rem;line-height:1.35}
.work-connection-body{display:grid;gap:12px;min-width:0}
.work-connection-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}
.work-connection-option{appearance:none;min-height:100px;display:grid;align-content:space-between;gap:10px;padding:13px;border:1px solid rgba(255,255,255,.20);border-radius:14px;background:rgba(235,238,242,.12);color:#fff;text-align:left;font:inherit;cursor:pointer}.work-connection-option:hover,.work-connection-option:focus-visible{background:rgba(235,238,242,.20);border-color:rgba(255,255,255,.58);outline:none}
.work-connection-option strong{font-size:.95rem}.work-connection-option small{color:#cbd1d8;line-height:1.3}.work-connection-option-state{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:#dfe4ea}
.work-connection-current{display:grid;gap:7px;padding-top:2px}
.work-connection-current-label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#aeb7c2}
.work-connection-accounts{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}
.work-connected-account{appearance:none;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:10px 12px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(8,10,13,.32);color:#fff;text-align:left;font:inherit;cursor:pointer}.work-connected-account:hover,.work-connected-account:focus-visible{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.48);outline:none}.work-connected-account span:first-child{display:grid;gap:2px}.work-connected-account small{color:#c7cdd5;font-size:.78rem}.work-connected-account-state{flex:0 0 auto;font-size:.70rem;text-transform:uppercase;letter-spacing:.07em;color:#e2e6eb}.work-connected-account[data-status="expired"]{border-color:#b77a31}.work-connected-account[data-status="setup_required"]{border-color:#6d89b7}
.work-connection-none{padding:11px 12px;border:1px dashed rgba(255,255,255,.22);border-radius:11px;color:#aeb7c2;font-size:.82rem}
.work-connector-method{display:grid;gap:5px;padding:12px;border-radius:12px;background:#e8ecf0}.work-connector-method strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.work-connector-method span{font-size:.92rem}
.work-capabilities{display:flex;gap:6px;flex-wrap:wrap}.work-capability{padding:4px 7px;border-radius:999px;background:#e8ecf0;font-size:.77rem}.work-inline-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.work-source-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;font-size:.85rem}.work-source-detail div{background:#e8ecf0;padding:8px;border-radius:8px}.work-source-detail strong{display:block}

body.hank-chat-mode .work-brand,body.hank-chat-mode .hank-question{display:none}
body.hank-chat-mode .work-shell{width:100%;max-width:none;margin:0}
body.hank-chat-mode #tiles{width:100%;height:100%;min-height:0;margin:0;padding:0;display:block;overflow:hidden}
body.hank-chat-mode .work-root:focus{outline:none}

@media(max-width:1100px){
  .work-brand img{width:clamp(350px,48vw,520px);margin-right:-34px}.work-wordmark{font-size:clamp(2.6rem,5vw,4rem)}
  .work-agent-category-row,.work-connection-category{grid-template-columns:150px minmax(0,1fr)}
  .work-agent-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px){
  .work-calendar-grid{gap:4px}.work-day{min-height:105px;padding:5px}.work-notes-layout{grid-template-columns:180px 1fr}
  .work-brand{margin-top:28px}.work-brand img{margin-right:-26px}.work-board-viewport{height:68vh;min-height:500px}
}
@media(max-width:640px){
  .work-shell{width:min(100% - 16px,1240px)}body.work-whiteboard-mode .work-shell{width:calc(100% - 12px)}
  .work-brand{margin:24px auto 20px;max-width:calc(100vw - 20px)}
  .work-brand img{width:min(255px,60vw);max-width:60vw;margin-right:-14px}.work-wordmark{font-size:clamp(1.75rem,8vw,2.5rem);letter-spacing:.035em}
  .work-toolbar,.work-toolbar-main,.work-toolbar-meta{align-items:stretch}.work-toolbar-main,.work-toolbar-meta{width:100%}.work-toolbar .hank-button{flex:1 1 46%;min-height:48px}.work-status-pill{justify-content:center;flex:1 1 100%}
  .work-calendar-head{align-items:flex-start}.work-calendar-actions{width:100%;justify-content:flex-end}.work-calendar-grid{display:block}.work-day-name{display:none}.work-day{display:grid;grid-template-columns:48px 1fr;min-height:auto;margin-bottom:7px;gap:8px}.work-day-number{grid-row:1 / span 4}.work-event{margin:0 0 5px}.work-notes-layout{grid-template-columns:1fr}.work-note-list{grid-template-columns:repeat(2,minmax(0,1fr))}.work-note-editor textarea{min-height:240px}.work-source-detail{grid-template-columns:1fr}.work-dialog{padding:8px}.work-dialog-card{padding:12px}
  .work-agent-category-row,.work-connection-category{grid-template-columns:1fr;gap:10px}.work-agent-category-title,.work-connection-category-head{padding:2px 4px}.work-agent-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.work-agent-tile{min-height:150px}.work-agent-initial{width:58px;height:58px;font-size:1.55rem}
  .work-connection-options,.work-connection-accounts{grid-template-columns:1fr}.work-connection-option{min-height:92px;padding:10px}
  .work-board-topbar{align-items:flex-start}.work-board-tools{width:100%}.work-width-control,.work-board-select-wrap{width:100%;box-sizing:border-box}.work-width-control input{flex:1}.work-board-viewport{height:65vh;min-height:480px}.work-zoom-controls{flex:1 1 100%;justify-content:center}
}
@media(max-width:430px){.work-agent-tiles{grid-template-columns:1fr}.work-agent-tile{min-height:140px}.work-service-grid{grid-template-columns:1fr}}
