:root{color-scheme:light;--bg: #faf3e7;--ink: #1a1a1a;--muted: #5e564e;--card: #ffffff;--line: #eadfce;--clay: #1a1a1a;--clay-dark: #000000;--moss: #1a1a1a;--moss-soft: #f6eadc;--coral: #d2a57c;--tan: #d2a57c;--slate: #909fae;--shadow: 0 10px 30px rgba(26, 26, 26, .06);font-family:Poppins,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-weight:500;color:var(--ink);background:radial-gradient(900px 420px at 0% -10%,#efe2d0,transparent 55%),var(--bg)}button,input{font:inherit}button{min-height:44px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink);padding:0 18px;cursor:pointer}button.primary{background:var(--clay);border-color:var(--clay);color:#fffdf9}button.primary:hover,button.primary:focus-visible{background:var(--clay-dark)}button:disabled{opacity:.7;cursor:wait}:focus-visible{outline:2px solid var(--clay);outline-offset:3px}.wrap{width:min(720px,calc(100% - 32px));margin:0 auto;padding:56px 0 80px}.eyebrow{margin:0 0 8px;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;color:var(--muted)}h1,h2,h3,.greeting{font-family:Poppins,sans-serif;font-weight:500}h1{margin:0;font-size:clamp(2.2rem,5vw,3.4rem);line-height:1.05}h2{margin:0 0 8px;font-size:1.7rem}h3{margin:0 0 4px;font-size:1.25rem}.lede,.hint,.email,.banner,.notice,.status{color:var(--muted)}.lede{margin:12px 0 24px;font-size:1.05rem}.card{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:22px;margin-top:16px}form.card{display:grid;gap:10px}label{font-size:.92rem;font-weight:500}input{min-height:48px;border:1px solid var(--line);border-radius:12px;padding:0 14px;background:#fff}.hint,.notice,.banner,p{margin:0}.notice{padding-top:4px}.setup ol{margin:12px 0 0;padding-left:1.2rem;color:var(--muted)}.setup h2+p,.setup div h2{margin-top:22px}.setup li+li{margin-top:6px}.row{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.role{display:inline-block;margin-left:12px;vertical-align:middle;border-radius:999px;padding:4px 10px;font-family:Poppins,sans-serif;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}.role-owner{background:var(--moss);color:#f3efe6}.role-staff{background:var(--moss-soft);color:var(--moss)}.email{margin-top:8px}.banner{margin-top:22px;padding:12px 14px;border-radius:14px;background:#f7e7cf}.notes{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:14px}.owner-desk{border-color:#c9d5cc;background:linear-gradient(180deg,#f7faf7,var(--card))}@media(max-width:640px){.wrap{padding-top:28px}.top{flex-direction:column}.role{margin-left:0;margin-top:8px}h1{display:flex;flex-direction:column;align-items:flex-start;gap:8px}}.hub{min-height:100vh;display:flex;background:var(--bg);color:var(--ink)}.side{width:248px;flex:none;align-self:flex-start;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:18px;padding:22px 14px 18px;background:#fff;color:var(--ink);border-right:1px solid var(--line)}.side-brand{display:flex;gap:10px;align-items:center;padding:0 8px}.mark{width:42px;height:42px;border:1.5px solid #1a1a1a;border-radius:999px;display:grid;place-items:center;font-family:Bodoni Moda,Times New Roman,serif;font-size:.72rem}.side-brand strong,.side-brand em{display:block;font-style:normal}.side-brand em{color:var(--muted);font-size:.78rem}.hub-nav{display:grid;gap:4px}.hub-nav button{justify-content:flex-start;border:0;border-radius:12px;background:transparent;color:var(--ink);text-align:left;padding:0 12px}.hub-nav .nav-current{background:#d2a57c;color:#1a1a1a}.lead-standard{margin-top:auto;border:0;border-radius:16px 16px 0 0;padding:14px;background:#909fae}.lead-standard p{margin:0 0 6px;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;color:#1a1a1a}.lead-standard span{color:#1a1a1a}.side-signout{margin-top:-18px;border-radius:0 0 16px 16px;border:0;background:#d2a57c;color:#1a1a1a}.lead-standard span,.side-signout{font-size:.86rem}.workspace{flex:1;min-width:0}.topbar,.hub-main,.sample-note{width:calc(100% - 40px);margin-left:auto;margin-right:auto}.topbar{display:flex;justify-content:space-between;align-items:end;gap:16px;padding-top:22px}.viewing{display:grid;gap:6px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.viewing select,.inline-form select,.inline-form input{min-height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 12px;text-transform:none;letter-spacing:0;font-size:.95rem;color:var(--ink)}.top-actions{display:flex;gap:8px}.hub .primary{background:var(--ink);border-color:var(--ink);color:#faf3e7}.sample-note{margin-top:14px;color:var(--muted);font-size:.9rem}.hub-main{padding:8px 0 48px}.today-head,.panel-head,.item,.item-top,.loop{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.date-label,.kicker{margin:0;letter-spacing:.12em;text-transform:uppercase;font-size:.75rem;color:var(--muted)}.greeting{margin:4px 0 8px;font-size:clamp(2.2rem,4vw,3.3rem);line-height:1}.focus{color:#4d564f}.progress-ring{width:92px;height:92px;border-radius:999px;border:8px solid #e7e1d6;display:grid;place-items:center;align-content:center;background:#fffdf9}.progress-ring strong{font-family:Poppins,sans-serif;font-weight:500;font-size:1.35rem}.progress-ring span{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.metric-row,.today-grid{display:grid;gap:12px;margin-top:18px}.metric-row{grid-template-columns:repeat(auto-fit,minmax(148px,1fr))}.today-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.metric,.panel,.card{border-radius:18px}.metric{min-height:118px;padding:16px}.metric span,.metric em{display:block;font-style:normal}.metric strong{display:block;margin:8px 0 4px;font-family:Poppins,sans-serif;font-size:2.4rem;font-weight:500;line-height:1}.metric em{color:#4d564f;font-size:.88rem}.metric-rose{background:#d2a57c}.metric-sand{background:#f3eadf}.metric-sage{background:#909fae}.metric-stone{background:#f7efe4}.panel{background:var(--card);border:1px solid #ece6dc;padding:18px;box-shadow:var(--shadow)}.panel h2,.card h2{margin:2px 0 0;font-size:1.55rem}.count-pill{border-radius:999px;background:#faf3e7;padding:6px 10px;color:var(--muted);font-size:.82rem}.essentials{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}.essentials li,.essentials label{display:flex;gap:12px;align-items:flex-start}.essentials li{justify-content:space-between;background:#faf8f4;border-radius:14px;padding:12px}.essentials strong,.essentials em,.when{display:block}.essentials em,.when,.loop p,.item p{color:var(--muted);font-style:normal;font-weight:500}.when{flex:none;font-size:.8rem}.empty-loops{margin-top:16px;border:1.5px dashed #ddd4c6;border-radius:16px;min-height:180px;display:grid;place-items:center;align-content:center;text-align:center;padding:20px}.empty-loops p{margin-top:6px;color:var(--muted)}.loop,.item{background:#faf8f4;border-radius:14px;padding:12px}.stack,.stack-list,.inline-form{display:grid;gap:12px}.loop-list{max-height:430px;overflow:auto;padding-right:4px}.inline-form label,.checks label{display:grid;gap:6px;font-weight:500}.checks{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:8px}.checks label{display:flex;align-items:center;min-height:44px}.status-pill{flex:none;border-radius:999px;padding:4px 10px;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}.tone-urgent{background:#f6e4d2;color:#8a5a32}.tone-today{background:#f3eadf;color:#6d5320}.tone-calm{background:#e6ebf0;color:#3e4c5c}.tone-done{background:#f6eadc;color:#1a1a1a}.guide ul{margin:8px 0 12px;padding-left:1.2rem}@media(max-width:980px){.hub{display:block}.side{width:auto;min-height:0;position:sticky;top:0;z-index:3;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 12px;height:auto;padding:10px 12px 8px}.side-brand{grid-column:1;grid-row:1}.side-signout{grid-column:2;grid-row:1;justify-self:end}.hub-nav{grid-column:1 / -1;grid-row:2;display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}.lead-standard,.side-brand em,.nav-label,.wide-label{display:none}.nav-short,.short-label{display:inline}.gate{grid-template-columns:1fr}.gate-quote{display:block}}.nav-icon{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.hub-nav button{display:flex;align-items:center;gap:10px;font-weight:500}.sun{display:inline-block;width:.62em;height:.62em;margin-left:.12em;border-radius:999px;background:#f0b429;box-shadow:0 0 0 7px #f6e3a4;vertical-align:.08em}.progress-ring{border:0;padding:8px;background:conic-gradient(#d2a57c var(--p, 0%),#eadfce 0)}.progress-face{width:100%;height:100%;border-radius:999px;background:#fffdf9;display:grid;place-items:center;align-content:center}button.metric{border:0;border-radius:18px;text-align:left;color:var(--ink);cursor:pointer}button.metric:hover{filter:brightness(.98)}.text-link{min-height:0;padding:0;border:0;background:transparent;color:var(--ink);font-weight:500}select{font:inherit}.inline-form input,.inline-form select,.card input,.card select{width:100%;min-width:0}.page-stack{display:grid;gap:14px}.page-intro h2{font-size:clamp(1.8rem,3vw,2.4rem)}.page-intro p:last-child{color:var(--muted)}.nav-short,.short-label{display:none}.resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:10px}button.resource-card{width:100%;min-height:0;border-radius:16px;border:1px solid var(--line);background:#fff;color:var(--ink);padding:14px;text-align:left;display:grid;gap:6px;align-content:start;justify-items:start}button.resource-card strong{font-size:1rem}button.resource-card span,button.resource-card em{color:var(--muted);font-style:normal;font-weight:500;font-size:.88rem}button.resource-card.is-open{border-color:var(--tan);box-shadow:inset 3px 0 0 var(--tan)}.doc-kicker{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;color:#b8885c;font-weight:500}.doc-preview{display:grid;gap:8px;border-top:10px solid #909fae;box-shadow:inset 0 -10px #d2a57c;padding-bottom:28px}.doc-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.doc-actions a{color:#1a1a1a;font-weight:500}.doc-frame{width:100%;height:min(70vh,720px);border:1px solid var(--line);border-radius:12px;background:#fff}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:12px}.inline-form>button{justify-self:start}.essentials input,.checks input{width:18px;height:18px;margin-top:2px;accent-color:#1a1a1a}.gate{min-height:100vh;display:grid;grid-template-columns:280px 1fr;background:var(--bg)}.gate-side{background:#909fae;color:#1a1a1a;border-right:0;padding:28px 20px;display:flex;flex-direction:column;justify-content:space-between}.gate-quote{max-width:none;margin:0;padding:20px;background:#d2a57c;color:#1a1a1a}.gate-main{width:min(560px,calc(100% - 48px));margin:0 auto;padding:72px 0 48px}.timesheet-toolbar,.hour-totals,.day-switch,.top-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.timesheet-intro h2{font-size:1.7rem}.timesheet-intro p:last-child{font-size:.9rem}.hour-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.hour-totals span{display:grid;gap:2px;border-radius:14px;background:#fff;border:1px solid var(--line);padding:8px 10px}.hour-totals em{font-style:normal;color:var(--muted);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.hour-totals strong{font-family:Poppins,sans-serif;font-size:1.35rem;font-weight:500;line-height:1}form.card.shift-form{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:end;padding:10px 12px}form.card.shift-form p{margin:0;flex:1 1 220px;align-self:center;font-size:.9rem}form.card.shift-form label{display:grid;gap:2px;flex:1 1 160px;font-size:.72rem;font-weight:500;color:var(--muted)}form.card.shift-form select,form.card.shift-form .top-actions button{min-height:36px}.hour-totals .total-hours{background:#d2a57c;border-color:#d2a57c}.hour-totals .total-hours em,.hour-totals .total-hours strong{color:#1a1a1a}button.day-chip{min-height:0;border-radius:12px;padding:6px 10px;display:grid;justify-items:center;line-height:1.2}button.day-chip.nav-current{background:#d2a57c;border-color:#d2a57c}@media(min-width:981px){.day-switch{display:none}}.week-board{--slot: 18px;--rows: 30;--head: 26px;display:grid;grid-template-columns:46px repeat(7,minmax(72px,1fr));background:#fff;border:1px solid var(--line);border-radius:16px;overflow:auto}.time-gutter{position:relative;height:calc(var(--head) + var(--rows) * var(--slot))}.time-gutter span{position:absolute;left:4px;top:calc(var(--head) + var(--row) * var(--slot));transform:translateY(-.45em);color:var(--muted);font-size:.65rem}.day-col h3{height:var(--head);margin:0;display:grid;place-items:center;font-family:Poppins,sans-serif;font-size:.78rem;border-bottom:1px solid var(--line);border-left:1px solid var(--line)}.day-col.is-selected h3{background:#faf3e7}.day-slots{position:relative;display:grid;grid-template-rows:repeat(30,var(--slot));border-left:1px solid var(--line);touch-action:none}.slot{min-height:0;height:var(--slot);padding:0;border:0;border-radius:0;border-top:1px solid #f6efe6;background:transparent;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none}.slot.hour-slot{border-top-color:#eadfce}.slot.slot-picked{background:#f6e4d2}.shift-block{position:absolute;left:3px;right:3px;top:calc(var(--row) * var(--slot));height:calc(var(--span) * var(--slot) - 3px);z-index:1;border-radius:8px;overflow:hidden;display:flex;flex-direction:column}.shift-block.kind-teaching{background:#d2a57c;color:#1a1a1a}.shift-block.kind-admin{background:#909fae;color:#1a1a1a}.shift-block.is-draft{outline:2px dashed #d2a57c;pointer-events:none;padding:2px 4px;font-size:.68rem}.shift-block.is-short .shift-remove,.shift-block.is-short span{display:none}.shift-block.is-short .shift-open strong{font-size:.62rem}button.shift-open,button.shift-remove{min-height:0;border:0;border-radius:0;background:transparent;color:inherit;text-align:left;padding:2px 4px}button.shift-open{display:grid;align-content:start;font-size:.68rem;line-height:1.2}button.shift-remove{font-size:.65rem;text-decoration:underline;padding-top:0}@media(max-width:980px){.workspace,.hub-main,.topbar,.sample-note,.card,.panel,.item>div,.loop>div,.item-top>div{min-width:0;max-width:100%}.topbar,.hub-main,.sample-note{width:calc(100% - 20px)}.topbar{align-items:center;gap:8px;padding-top:12px}.viewing,.top-actions{flex:1 1 100%}.top-actions button{flex:1}.top-actions button{min-height:40px;padding:0 12px}.side-brand{padding:0}.mark{width:34px;height:34px}.side-signout{min-height:36px;margin-top:0;padding:0 12px;border-radius:999px}.doc-frame{height:55vh}.hub-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.hub-nav button{justify-content:center;min-width:0;min-height:36px;padding:0 6px;gap:6px;font-size:.82rem}.nav-label,.wide-label{display:none}.nav-short,.short-label{display:inline}.topbar{flex-wrap:wrap}input,.viewing select,.inline-form select,.inline-form input{min-height:40px}.greeting{font-size:clamp(1.65rem,7vw,2.2rem);margin:0 0 4px}.focus,.page-intro p:last-child,.sample-note{font-size:.88rem}.sample-note{margin-top:8px}.today-head{align-items:center;gap:8px}.progress-ring{width:72px;height:72px}.metric-row,.today-grid{gap:8px;margin-top:12px}.metric{min-height:0;padding:10px 12px}.metric strong{margin:2px 0;font-size:1.7rem}.metric em,.metric span{font-size:.78rem}.panel,.card{padding:12px;border-radius:14px}.card{margin-top:10px}.panel h2,.card h2,.page-intro h2{font-size:1.35rem}.page-stack{gap:8px}.hub-main{padding-bottom:28px}.essentials{gap:6px;margin-top:10px}.essentials li,.loop,.item{padding:10px;border-radius:12px}.essentials li{flex-wrap:wrap;gap:6px 10px}.essentials label{flex:1 1 160px;min-width:0}.when{margin-left:auto}.item,.item-top,.loop{flex-wrap:wrap;gap:8px}.loop-list{max-height:none;overflow:visible;padding-right:0}.empty-loops{min-height:96px;margin-top:10px}.form-grid,.inline-form,.stack,.stack-list{gap:8px}.inline-form>button{width:100%;justify-self:stretch}.gate-main{width:min(560px,calc(100% - 24px));padding:28px 0 32px}.gate-side{padding:16px}.sun{width:.48em;height:.48em;box-shadow:0 0 0 5px #f6e3a4}}@media(max-width:980px){.day-switch{display:flex}.week-board{--slot: 22px;grid-template-columns:44px minmax(0,1fr)}.day-col{display:none}.day-col.is-selected{display:block}.timesheet-toolbar .top-actions{width:100%}.timesheet-toolbar .top-actions button{flex:1}}
