/* Shared workspace frame. All selectors are scoped to the opted-in pages. */
body.guru-shell-page{--guru-sidebar-width:244px;--guru-accent:#126b66;background:#f5f6fa;max-width:none;padding:0;margin:0}
.guru-shell-page,.guru-shell-page *,.guru-shell-page *::before,.guru-shell-page *::after{box-sizing:border-box}
.guru-shell-page>main{margin:24px 24px 24px calc(var(--guru-sidebar-width) + 24px);max-width:none;min-width:0;padding:0 12px 48px}
.guru-workspace-sidebar{position:fixed;inset:0 auto 0 0;width:244px;overflow-y:auto;background:#fff;border-right:1px solid #dce2e9;padding:22px 14px;z-index:10;color:#253747}
.guru-workspace-sidebar .guru-workspace-brand{display:block;font-size:23px;font-weight:750;text-decoration:none;padding:0 12px 12px;color:#173f3e;overflow-wrap:anywhere}
.guru-workspace-brand small{display:block;font-size:12px;font-weight:500;color:#647481}
.guru-workspace-sidebar details{margin:0}
.guru-workspace-sidebar summary{min-height:44px;padding:10px 12px;border-radius:7px;font-size:14px;color:#526772}
.guru-workspace-sidebar nav{display:flex;flex-direction:column;align-items:stretch;gap:3px;border:0;padding:0;white-space:normal}
.guru-workspace-sidebar nav a{display:flex;align-items:center;min-height:44px;padding:8px 12px;border-radius:7px;text-decoration:none;color:#344757;font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.guru-workspace-sidebar nav a:hover{background:#f0f3f7}
.guru-workspace-sidebar nav a[aria-current=page]{background:#e3f2ef;color:#0b5a53;font-weight:700;box-shadow:inset 3px 0 #126b66}
.guru-workspace-sidebar .guru-nav-group{font-size:12px;font-weight:700;letter-spacing:.03em;color:#687784;padding:18px 12px 5px}
.guru-workspace-identity{border-top:1px solid #e4e9ed;margin:20px 10px 0;padding-top:12px;font-size:13px;color:#657682;overflow-wrap:anywhere}
.guru-shell-page .panel{box-shadow:0 2px 5px #19374405;border-radius:10px}
.guru-shell-page :focus-visible{outline:3px solid #ab6814;outline-offset:3px}
.guru-shell-page button,.guru-shell-page .button,.guru-shell-page input:not([type=hidden]):not([type=checkbox]):not([type=radio]),.guru-shell-page select{min-height:44px}
.guru-shell-page .table-wrap{max-width:100%;overflow-x:auto}
.guru-shell-page h1,.guru-shell-page h2,.guru-shell-page main form{overflow-wrap:anywhere;min-width:0}
.guru-shell-page .skip:focus{z-index:30}
@media(min-width:901px){.guru-workspace-sidebar .guru-workspace-menu[open]>summary{display:none}}
@media(max-width:900px){
 .guru-workspace-sidebar{position:static;width:auto;max-width:100%;padding:12px 16px;border-right:0;border-bottom:1px solid #dce2e9}
 .guru-workspace-sidebar .guru-workspace-brand{font-size:20px;padding:0 0 6px}
 .guru-workspace-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
 .guru-workspace-sidebar .guru-nav-group{grid-column:1/-1;padding-top:10px}
 .guru-workspace-identity{margin:10px 0 0;padding-top:8px}
 .guru-shell-page>main{margin:18px auto;padding:0 16px 36px;width:100%;min-width:0}
 .guru-shell-page .table-wrap>table{min-width:560px}
}
@media(prefers-reduced-motion:reduce){.guru-shell-page *{scroll-behavior:auto}}

/* Guru visual finish: shared navigation and surfaces, no workflow changes. */
body.guru-shell-page{--guru-accent:#0f766e;background:#f3f5fa;color:#213547;font-family:Arial,"Microsoft JhengHei",sans-serif;line-height:1.65}
.guru-workspace-sidebar{background:linear-gradient(165deg,#173c43,#182b42);border-right:0;color:#edf5fa;box-shadow:4px 0 20px #172c4210}
.guru-workspace-sidebar .guru-workspace-brand{color:#fff;letter-spacing:-.025em;padding-bottom:22px}
.guru-workspace-brand small{color:#b8d7dc;letter-spacing:.04em;margin-top:4px}
.guru-workspace-sidebar summary{color:#edf5fa;background:#ffffff0b;border:1px solid #ffffff20;border-radius:10px}
.guru-workspace-sidebar nav{gap:5px}
.guru-workspace-sidebar nav a{color:#e0eaf2;border-radius:10px;padding:10px 12px}
.guru-workspace-sidebar nav a:hover{background:#ffffff14;color:#fff}
.guru-workspace-sidebar nav a[aria-current=page]{background:#d6f5ec;color:#124b45;box-shadow:inset 3px 0 #5bd4b4;font-weight:700}
.guru-workspace-sidebar .guru-nav-group{color:#a7c4cf;font-size:12px;letter-spacing:.06em;padding-top:22px}
.guru-workspace-identity{border-color:#ffffff26;color:#c5d9e1}
.guru-workspace-sidebar :focus-visible{outline-color:#f9ce83}
.guru-shell-page>main>h1{font-size:clamp(25px,2.2vw,34px);line-height:1.35;letter-spacing:-.035em;margin-top:22px;margin-bottom:12px}
.guru-shell-page .panel{border-color:#dce5ec;border-radius:16px;box-shadow:0 4px 18px #20395406}
.guru-shell-page main h2{letter-spacing:-.02em;line-height:1.45}
.guru-shell-page main table th{background:#f1f5fa;color:#42556b;font-size:14px;font-weight:700}
.guru-shell-page main table td{border-bottom-color:#e6ecf2}
.guru-shell-page main table tbody tr:hover{background:#f5fafb}
.guru-shell-page .kanban-column{border-color:#dce5ec;border-radius:16px;border-top:4px solid #8b9fba;background:#edf1f7}
.guru-shell-page .kanban-column:nth-child(2){border-top-color:#7973c9}
.guru-shell-page .kanban-column:nth-child(3){border-top-color:#5982c4}
.guru-shell-page .kanban-column:nth-child(4){border-top-color:#398d9c}
.guru-shell-page .kanban-column:nth-child(5){border-top-color:#258679}
.guru-shell-page .kanban-column:nth-child(6){border-top-color:#ad8534}
.guru-shell-page .kanban-column.is-drop-target{background:#d7efea}
.guru-shell-page .kanban-card{border-color:#dce5ec;border-radius:12px;box-shadow:0 3px 12px #21354708}
@media(min-width:901px){.guru-shell-page>main{margin-top:28px}}
@media(max-width:900px){.guru-workspace-sidebar .guru-workspace-brand{padding-bottom:8px}.guru-workspace-sidebar .guru-nav-group{padding-top:14px}.guru-shell-page>main>h1{font-size:26px}}
/* Standalone invitation entry uses the same visual language without a sidebar. */
main:has(>form#setup){border:1px solid #dce5ec;border-radius:18px;box-shadow:0 8px 32px #20395408}
main:has(>form#setup) h1{letter-spacing:-.03em;color:#173c43}
main:has(>form#setup) input,main:has(>form#setup) select{border:1px solid #adbdcb;border-radius:9px;background:#fff;color:#213547}
main:has(>form#setup) button{background:#0f766e;color:#fff;border:1px solid #0f766e;border-radius:9px;font-weight:700}
main:has(>form#setup) button:disabled{opacity:.55;cursor:not-allowed}
main:has(>form#setup) a{color:#0f766e}
main:has(>form#setup) :focus-visible{outline:3px solid #ab6814;outline-offset:3px}


/* Navigation category headings: distinct from actionable links, on all widths. */
.guru-workspace-sidebar .guru-nav-group{
 display:block;grid-column:1/-1;margin:22px 0 5px;padding:10px 12px;
 color:#fff;background:#304c60;border:1px solid #668296;
 border-left:4px solid #79dec7;border-radius:4px;
 font-size:15px;font-weight:800;line-height:1.4;letter-spacing:.04em;
 cursor:default;
}
.guru-workspace-sidebar .guru-nav-group:first-child{margin-top:10px}
.guru-workspace-sidebar nav a{margin-left:10px}
@media(max-width:900px){
 .guru-workspace-sidebar .guru-nav-group{margin-top:18px;padding:10px 12px}
 .guru-workspace-sidebar nav a{margin-left:6px}
}
