:root{--cream-100:#fbf6ec;--cream-200:#f6efe0;--cream-300:#f0e6d2;--cream-400:#e7d9bc;--sand-200:#ece3d1;--sand-500:#b9ae99;--umber-600:#8a857c;--umber-700:#55534f;--ink-800:#2a2a2c;--ink-900:#1c1c1e;--clay-50:#f9f4ea;--clay-100:#f2eadd;--clay-200:#edd6c7;--clay-300:#e0bda8;--clay-400:#cb8466;--clay-500:#b65b3a;--clay-600:#9a4a2d;--clay-700:#7a3a24;--clay-800:#5a2b1b;--gold-500:#c99a3e;--surface-page:var(--cream-100);--surface-card:var(--cream-200);--surface-recessed:var(--cream-300);--surface-wash:var(--sand-200);--surface-inverse:var(--ink-800);--border-subtle:var(--cream-400);--border-default:var(--sand-500);--border-strong:var(--umber-700);--text-heading:var(--ink-800);--text-body:var(--umber-700);--text-muted:var(--umber-600);--text-inverse:var(--cream-100);--text-link:var(--clay-500);--text-link-hover:var(--clay-600);--accent-primary:var(--clay-500);--accent-primary-hover:var(--clay-600);--accent-secondary:var(--clay-200);--accent-secondary-hover:var(--clay-300);--accent-deep:var(--clay-700);--accent-deepest:var(--clay-800);--accent-gold:var(--gold-500);--state-success:var(--umber-700);--state-success-bg:var(--sand-200);--state-warning:var(--umber-700);--state-warning-bg:var(--sand-200);--state-attention:var(--clay-500);--state-attention-bg:var(--sand-200);--focus-ring:var(--clay-500)}
:root{--font-display:"Flow Cooper Ink", "Cooper Lt BT", Georgia, "Times New Roman", serif;--font-display-cooper:"Cooper Lt BT", Georgia, "Times New Roman", serif;--font-numeral:"Kasita", Georgia, serif;--font-display-ink:"Flow Cooper Ink", "Cooper Lt BT", Georgia, serif;--font-marker:"Flow Marker", "Flow Cooper Ink", Georgia, serif;--font-accent:"TT Interphases Pro", -apple-system, "Helvetica Neue", Arial, sans-serif;--font-body:"Flow Cooper Ink", "Cooper Lt BT", Georgia, "Times New Roman", serif;--font-caps:"TT Interphases Pro", -apple-system, "Helvetica Neue", Arial, sans-serif;--font-display-alt:"Windsor", Georgia, "Times New Roman", serif;--font-body-alt:"Europa Grotesk", -apple-system, "Helvetica Neue", Arial, sans-serif;--text-display-xl:300 64px/1.05 var(--font-display);--text-display-lg:300 46px/1.08 var(--font-display);--text-display-md:300 34px/1.12 var(--font-display);--text-display-sm:400 26px/1.2 var(--font-display);--text-marker:400 24px/1.2 var(--font-marker);--text-body-lg:300 19px/1.55 var(--font-body);--text-body-md:300 16px/1.55 var(--font-body);--text-body-sm:300 14px/1.5 var(--font-body);--text-label:300 13px/1.3 var(--font-body);--text-caption:300 12px/1.4 var(--font-body);--text-accent-lg:700 22px/1 var(--font-numeral);--text-accent-sm:700 13px/1 var(--font-accent);--tracking-wide:.06em;--tracking-caps:.08em}
:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--radius-full:999px;--shadow-sm:0 1px 2px #3a2e220f;--shadow-md:0 6px 20px #3a2e2214;--shadow-lg:0 16px 40px #3a2e221a;--ease-flow:cubic-bezier(.25, .1, .25, 1);--duration-fast:.15s;--duration-md:.26s;--duration-slow:.42s}
@font-face{font-family:Flow Cooper Ink;src:url(/fonts/FlowCooperInk-Light.ttf)format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Flow Cooper Ink;src:url(/fonts/FlowCooperInk-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Flow Cooper Ink;src:url(/fonts/FlowCooperInk-Medium.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Flow Marker;src:url(/fonts/FlowMarker-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Cooper Lt BT;src:url(/fonts/Cooper-Lt-BT-Light.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Cooper Lt BT;src:url(/fonts/Cooper-Md-BT-Medium.ttf)format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Cooper Lt BT;src:url(/fonts/Cooper-Lt-BT-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:TT Interphases Pro;src:url(/fonts/TT-Interphases-Pro-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:TT Interphases Pro;src:url(/fonts/TT-Interphases-Pro-Medium.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:TT Interphases Pro;src:url(/fonts/TT-Interphases-Pro-Medium-Italic.ttf)format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:TT Interphases Pro;src:url(/fonts/TT-Interphases-Pro-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:TT Interphases Pro;src:url(/fonts/TT-Interphases-Pro-Bold-Italic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Windsor;src:url(/fonts/Windsor-Bold-DTC.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Europa Grotesk;src:url(/fonts/EuropaGroteskSH-Lig.ttf)format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Europa Grotesk;src:url(/fonts/EuropaGroteskSH-Reg.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Europa Grotesk;src:url(/fonts/EuropaGroteskSH-Med.otf)format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Kasita;src:url(/fonts/Kasita.otf)format("opentype");font-weight:700;font-style:normal;font-display:swap}
:root{--texture-strength:.25;--texture-strength-strong:.45;--texture-strength-clay:.25;--texture-scale:700px;--kraft-300:#dccdb2}.sof-paper,.sof-paper-strong,.sof-paper-clay{isolation:isolate;position:relative}.sof-paper:after,.sof-paper-strong:after,.sof-paper-clay:after{content:"";background:url(/assets/textures/paper-fiber.png) center / var(--texture-scale) repeat;opacity:var(--texture-strength);pointer-events:none;border-radius:inherit;z-index:1;position:absolute;inset:0}.sof-paper-strong:after{opacity:var(--texture-strength-strong)}.sof-paper-clay:after{opacity:var(--texture-strength-clay);z-index:3;background-image:url(/assets/textures/paper-grain-light.png)}:where(.sof-paper,.sof-paper-strong,.sof-paper-clay) button,.sof-clean{z-index:4;position:relative}.sof-kraft{background-color:var(--kraft-300)!important;background-image:url(/assets/textures/raw-sugar-texture.png)!important;background-size:var(--texture-scale)!important;background-position:50%!important}

*{box-sizing:border-box}html,body{background:var(--surface-page);color:var(--text-body);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;padding:0}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-heading);font-synthesis:none;margin:0}h1,h2,.sof-print{filter:url(#sof-ink)}h3,h4,.sof-print-sm,[style*=--text-display],[style*=--font-display],[style*=--text-marker],[style*=--font-marker]{filter:url(#sof-ink-sm)}.sof-print{mix-blend-mode:multiply}a{color:var(--text-link)}a:hover{color:var(--text-link-hover)}button{font-family:inherit}@keyframes flow-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.flow-enter{animation:flow-fade-up var(--duration-slow) var(--ease-flow) both}.pod-member-card{transition:box-shadow .15s var(--ease-flow)}.pod-member-card:hover{box-shadow:0 6px 14px #3a2e2224,0 18px 36px #3a2e222e!important}.pod-member-card .pod-remove-btn{opacity:0;transition:opacity .15s var(--ease-flow)}.pod-member-card:hover .pod-remove-btn{opacity:1}.avatar-uploader-btn{opacity:0;transition:opacity .15s var(--ease-flow)}.avatar-uploader:hover .avatar-uploader-btn,.avatar-uploader:focus-within .avatar-uploader-btn{opacity:1}.sof-link{transition:color var(--duration-fast) var(--ease-flow)}.sof-link:hover{color:var(--text-link-hover)!important}.sof-link-muted{transition:color var(--duration-fast) var(--ease-flow)}.sof-link-muted:hover{color:var(--text-heading)!important}.sof-nav-item{transition:background var(--duration-fast) var(--ease-flow), color var(--duration-fast) var(--ease-flow)}.sof-nav-item:hover{background:var(--cream-300)!important;color:var(--text-heading)!important}.sof-row{transition:background var(--duration-fast) var(--ease-flow)}.sof-row:hover{background:var(--cream-300)!important}.sof-card-link{transition:box-shadow var(--duration-md) var(--ease-flow);display:block}.sof-card-link:hover{box-shadow:var(--shadow-md)!important}.sof-cta{transition:background var(--duration-fast) var(--ease-flow)}.sof-cta:hover{background:var(--accent-primary-hover)!important}.sof-sidebar-toggle{z-index:1001;border-radius:var(--radius-full);border:1px solid var(--border-subtle);background:var(--cream-100);width:44px;height:44px;box-shadow:var(--shadow-sm);color:var(--text-heading);cursor:pointer;justify-content:center;align-items:center;font-size:20px;line-height:1;display:none;position:fixed;top:16px;left:16px}.sof-sidebar-backdrop{display:none}@media (max-width:768px){.sof-sidebar-toggle{display:flex}.sof-sidebar{z-index:1000!important;width:260px!important;max-width:85vw!important;height:100vh!important;transition:transform var(--duration-md,.25s) var(--ease-flow,ease)!important;box-shadow:var(--shadow-md)!important;position:fixed!important;top:0!important;left:0!important;transform:translate(-100%)!important}.sof-sidebar.sof-sidebar-open{transform:translate(0)!important}.sof-sidebar-backdrop{z-index:999;background:#00000059;display:block;position:fixed;inset:0}.sof-content-area{padding-top:64px}.sof-course-container{padding-left:20px!important;padding-right:20px!important}.sof-course-grid{grid-template-columns:1fr!important}.sof-page-padding{padding-left:20px!important;padding-right:20px!important}.sof-responsive-grid{grid-template-columns:1fr!important}.sof-dashboard-cta{white-space:normal!important;min-width:0!important;padding:12px 20px!important;font-size:15px!important}.sof-acc-page{padding-top:20px!important;padding-left:16px!important;padding-right:16px!important}.sof-acc-cols{flex-direction:column!important}.sof-acc-cols>*{flex:none!important;width:100%!important;min-width:0!important}.sof-acc-rail{width:100%!important}.sof-acc-header{flex-wrap:wrap!important;align-items:flex-start!important}.sof-acc-header>:last-child{text-align:left!important}.sof-acc-wrap{flex-direction:column!important}.sof-acc-wrap>*{width:100%!important}.sof-acc-days{grid-template-columns:1fr!important;gap:8px!important}.sof-acc-days>div{text-align:left!important;flex-flow:wrap!important;justify-content:space-between!important;align-items:center!important;gap:6px 12px!important;min-height:0!important;padding:14px 16px!important}.sof-acc-days>div>div{margin-bottom:0!important}.sof-acc-slots{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:none!important}.sof-acc-slots>div{min-height:96px!important}.sof-acc-one-col{grid-template-columns:1fr!important}.sof-acc-roster{min-width:0!important}.sof-acc-roster-head{display:none!important}.sof-acc-roster-sort{display:flex!important}.sof-acc-roster-row{flex-wrap:wrap!important;align-items:flex-start!important;gap:12px 16px!important;padding:16px!important;display:flex!important}.sof-acc-roster-row>*{flex:40%;min-width:0}.sof-acc-roster-row>:nth-child(2){flex:100%}.sof-acc-roster-row>:first-child{flex:100%;order:1}.sof-acc-roster-row>:nth-child(2){order:2}.sof-acc-roster-row>:nth-child(n+5),.sof-acc-roster-row>:nth-child(3){order:3}.sof-acc-roster-row>:nth-child(4){flex-wrap:nowrap;flex:100%;order:4}.sof-acc-roster-bar{flex:auto;min-width:0;width:auto!important}.sof-acc-roster-row>[data-label]:before{content:attr(data-label);font:var(--text-caption);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-caps);margin-bottom:4px;display:block}.sof-acc-roster-row>[data-label=Progress]:before{display:none!important}.sof-acc-nav{flex-wrap:wrap!important}.sof-acc-tabs{max-width:100%;overflow-x:auto;gap:18px!important}}.pod-hover-trigger{display:inline-flex;position:relative}.pod-hover-card{z-index:50;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:260px;box-shadow:var(--shadow-lg,var(--shadow-md));opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-flow), transform var(--duration-fast) var(--ease-flow);pointer-events:none;padding:16px;position:absolute;top:calc(100% + 10px);left:0;transform:translateY(4px)}.pod-hover-trigger:hover .pod-hover-card,.pod-hover-trigger:focus-within .pod-hover-card{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}[style*=uppercase],.sof-caps{font-family:var(--font-caps)}body :where(*):not(h1,h2,h3,h4,[style*=uppercase],.sof-caps,svg,svg *){font-weight:300!important}
