@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,500;9..144,600&display=swap";.curriculum-routine-setup{display:grid;gap:16px;padding:22px}.routine-heading{display:flex;align-items:flex-start;gap:14px}.routine-heading h2{margin:5px 0 6px;color:var(--green-800, #31513f);font:500 24px/1.12 var(--app-font-serif, Georgia, serif)}.routine-heading p{max-width:720px;margin:0;color:var(--ink-muted, #747a70);line-height:1.55}.routine-controls{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(260px,1.3fr);gap:16px;align-items:end}.routine-start-date{display:grid;gap:7px;color:var(--ink, #37433b);font-size:13px;font-weight:600}.routine-start-date input{width:100%;min-height:42px;padding:9px 11px;border:1px solid var(--line, #ddd9ce);border-radius:9px;background:var(--surface, #fffefa);color:inherit;font:inherit}.routine-learners{min-width:0;margin:0;padding:0;border:0}.routine-learners legend{margin-bottom:7px;color:var(--ink, #37433b);font-size:13px;font-weight:600}.routine-learner-grid{display:flex;flex-wrap:wrap;gap:8px}.routine-learner{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 11px;border:1px solid var(--line, #ddd9ce);border-radius:9px;background:var(--surface, #fffefa);color:var(--ink, #37433b);cursor:pointer}.routine-learner input{width:16px;height:16px;accent-color:var(--green-700, #315e4b)}.routine-free-range{display:flex;align-items:flex-start;gap:8px;margin:0;color:var(--green-800, #31513f);font-size:13px;line-height:1.5}.routine-free-range svg{flex:0 0 auto;margin-top:2px}.routine-footer{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.routine-footer .status-pill{max-width:100%;white-space:normal}.free-range-note{display:block;margin:7px 0 0;color:var(--green-800, #31513f);font-size:12px;line-height:1.45}.curriculum-source-url{display:inline-flex;align-items:center;gap:5px;margin-top:7px;color:var(--green-800, #31513f);font-size:13px;text-decoration:underline;text-underline-offset:3px}@media(max-width:680px){.curriculum-routine-setup{gap:14px;padding:17px}.routine-heading h2{font-size:22px}.routine-controls{grid-template-columns:minmax(0,1fr)}.routine-learner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.routine-learner{min-width:0}}.cal-page{display:flex;flex-direction:column;gap:16px;min-width:0}.cal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}.cal-intro{margin:-9px 0 0}.cal-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}.cal-month{padding:16px;min-width:0}.cal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.cal-toolbar h2{font:500 22px/1.1 var(--app-font-serif);color:#2c4b3b;margin:0;letter-spacing:-.02em}.cal-nav{display:flex;align-items:center;gap:6px}.cal-icon-btn{width:44px;height:44px;display:grid;place-items:center;border-radius:8px;border:1px solid #e1dacb;background:#f0ebe0;color:#365343}.cal-icon-btn:hover{background:#e6e0d1}.cal-learners{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.cal-chip{min-height:36px;display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:30px;border:1px solid #e3ded2;background:#f8f6ef;color:#5e6d60;font-size:11px;font-weight:600}.cal-chip.on{background:#e4eddf;border-color:#b5c6b3;color:#2b4d3c}.cal-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex:none}.k0{--k:#b9705d;--kb:#f3e1d7}.k1{--k:#8a7a3a;--kb:#efe6c4}.k2{--k:#4f7584;--kb:#dce7ea}.k3{--k:#3f6a51;--kb:#dce8d8}.cal-dot{background:var(--k)}.cal-notice{font-size:11px;line-height:1.5;color:#6a5144;background:#f1e9dd;border:1px solid #e7d8c4;border-radius:8px;padding:9px 11px;margin-bottom:10px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.cal-err{margin-bottom:8px}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.cal-wd{font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8b9788;text-align:center;padding:4px 0}.cal-day{position:relative;min-height:100px;aspect-ratio:1;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:5px;padding:7px;border:1px solid #ebe5d9;border-radius:7px;background:#fdfbf6;text-align:left;color:#3a5646;overflow:hidden;transition:transform .15s,box-shadow .15s}.cal-day:hover{transform:translateY(-1px);box-shadow:0 3px 8px #574d3514}.cal-day:focus-visible{outline:2px solid #6f9479;outline-offset:1px}.cal-day.out{opacity:.45}.cal-day.c-school{box-shadow:inset 0 -3px #a9c0d0}.cal-day.c-closed{background:repeating-linear-gradient(135deg,#f6e6dc 0 5px,#fbf1ea 5px 10px);border-color:#ecd2c4}.cal-day.c-weekend,.cal-day.c-none,.cal-day.c-outside{background:#f6f3eb}.cal-day.home{border-left:3px solid #6f9479}.cal-day.today .cal-num{background:#315a47;color:#fff8ee}.cal-day.sel{border-color:#315a47;box-shadow:0 0 0 2px #315a4733}.cal-num{align-self:flex-start;font-size:11px;font-weight:700;min-width:20px;height:20px;padding:0 4px;border-radius:10px;display:grid;place-items:center}.cal-tag{font-size:10px;line-height:1.3;color:#9a4e43;font-weight:600;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow-wrap:anywhere}.cal-counts{display:flex;flex-wrap:wrap;gap:2px;margin-top:auto}.cal-count{display:inline-flex;border-radius:4px;overflow:hidden;font-size:9px;line-height:1;font-weight:700}.cal-count b{background:var(--k);color:#fffaf2;padding:3px 4px}.cal-count em{font-style:normal;background:var(--kb);color:var(--k);padding:3px 4px}.cal-skel{height:10px;margin-top:auto;border-radius:4px;background:linear-gradient(100deg,#ebe8dd 20%,#f3f0e7,#ebe8dd 60%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.cal-skel.block{height:120px;margin-top:12px}.cal-legend{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:10px;color:#6f7c6f}.cal-legend li{display:flex;align-items:center;gap:6px}.lg{width:14px;height:12px;border-radius:3px;border:1px solid #e3ddd0;background:#fdfbf6}.lg.home{border-left:3px solid #6f9479}.lg.school{box-shadow:inset 0 -3px #a9c0d0}.lg.closed{background:repeating-linear-gradient(135deg,#f6e6dc 0 3px,#fbf1ea 3px 6px)}.cal-detail{position:sticky;top:16px;padding:18px;display:flex;flex-direction:column;gap:10px;max-height:calc(100dvh - 32px);overflow:auto}.cal-detail h2{font:500 20px/1.15 var(--app-font-serif);color:#2c4b3b;margin:0}.cal-removed-items{margin-top:14px;font-size:12px}.cal-removed-items summary{cursor:pointer;color:#365343;font-weight:600}.cal-removed-items ul{list-style:none;padding:0;margin:8px 0 0}.cal-removed-items li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #e3ded2}.cal-county-action{padding:8px 0;border-bottom:1px solid #e3ded2}.cal-badges{display:flex;flex-wrap:wrap;gap:5px}.cal-badge{font-size:10px;font-weight:600;padding:5px 9px;border-radius:20px;background:#f0ebe0;color:#6f776b}.cal-badge.home{background:#dfe9da;color:#335540}.cal-badge.school{background:#e1eaef;color:#456574}.cal-badge.closed{background:#f6e3d9;color:#9a4e43}.cal-notes{margin:0;padding-left:16px;font-size:11px;color:#5f6e61}.cal-child{border-top:1px solid #eee8dc;padding-top:9px}.cal-child header{display:flex;align-items:center;gap:7px;font-size:12px;color:#2e4a3b;flex-wrap:wrap}.cal-child header small{font-size:9px;text-transform:capitalize;background:#eef1e8;color:#5c735f;padding:2px 6px;border-radius:10px}.cal-child header span{margin-left:auto;font-size:10px;color:#8b9487}.cal-child ul{list-style:none;margin:7px 0 0;padding:0;display:flex;flex-direction:column;gap:5px}.cal-child li{font-size:11px;line-height:1.45;color:#4b5f50;padding:6px 8px;border-radius:6px;background:#f6f3eb;overflow-wrap:anywhere}.cal-child li.done{background:#e8f0e4}.cal-child li .st{display:inline-block;font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#8b9487;margin-right:6px}.cal-child li.done .st{color:#4f7a59}.cal-child li small{display:block;font-size:10px;color:#87907f}.cal-none{font-size:11px;color:#9a9e92;margin:6px 0 0}.cal-fine{font-size:10px;line-height:1.5;color:#8b9487;margin:0}.cal-source{padding:15px 18px}.cal-source p{font-size:11px;line-height:1.6;color:#6c786b;margin:6px 0 8px}.cal-source-links{display:flex;flex-wrap:wrap;gap:8px 18px}@media(max-width:1100px){.cal-layout{grid-template-columns:minmax(0,1fr)}.cal-detail{position:static;max-height:none}}@media(max-width:640px){.cal-month{padding:10px}.cal-grid{gap:2px}.cal-day{min-height:52px;padding:3px;border-radius:5px}.cal-day.home{border-left-width:2px}.cal-tag{display:none}.cal-day.c-closed .cal-num{color:#9a4e43}.cal-num{font-size:10px;min-width:18px;height:18px;padding:0 2px}.cal-count b,.cal-count em{padding:2px}.cal-wd{font-size:8px;letter-spacing:.04em}.cal-toolbar h2{font-size:18px}}@layer properties;@layer theme,base,clerk,components,utilities;@layer theme,base,components,utilities;@layer theme{:root,:host{--color-red-50: oklch(97.1% .013 17.38);--color-red-300: oklch(80.8% .114 19.571);--color-red-400: oklch(70.4% .191 22.216);--color-red-500: oklch(63.7% .237 25.331);--color-red-600: oklch(57.7% .245 27.325);--color-gray-50: oklch(98.5% .002 247.839);--color-gray-100: oklch(96.7% .003 264.542);--color-gray-600: oklch(44.6% .03 256.802);--color-gray-700: oklch(37.3% .034 259.733);--color-gray-800: oklch(27.8% .033 256.848);--color-gray-900: oklch(21% .034 264.665);--color-black: #000;--color-white: #fff;--spacing: .25rem;--container-sm: 24rem;--container-md: 28rem;--container-lg: 32rem;--text-xs: .75rem;--text-xs--line-height: calc(1 / .75);--text-sm: .875rem;--text-sm--line-height: calc(1.25 / .875);--text-base: 1rem;--text-base--line-height: 1.5 ;--text-lg: 1.125rem;--text-lg--line-height: calc(1.75 / 1.125);--text-xl: 1.25rem;--text-xl--line-height: calc(1.75 / 1.25);--text-2xl: 1.5rem;--text-2xl--line-height: calc(2 / 1.5);--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--tracking-tight: -.025em;--tracking-widest: .1em;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--ease-in-out: cubic-bezier(.4, 0, .2, 1);--animate-spin: spin 1s linear infinite;--animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--aspect-video: 16 / 9;--default-transition-duration: .15s;--default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);--default-font-family: var(--app-font-sans);--default-mono-font-family: var(--app-font-mono);--color-border: hsl(var(--border))}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings, normal);font-variation-settings:var(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings, normal);font-variation-settings:var(--default-mono-font-variation-settings, normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:currentcolor}@supports (color: color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.\@container\/field-group{container-type:inline-size;container-name:field-group}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border-width:0}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.inset-x-0{inset-inline:0px}.inset-y-0{inset-block:0px}.-top-12{top:calc(var(--spacing) * -12)}.top-0{top:0}.top-1\.5{top:calc(var(--spacing) * 1.5)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-3\.5{top:calc(var(--spacing) * 3.5)}.top-4{top:calc(var(--spacing) * 4)}.top-\[1px\]{top:1px}.top-\[50\%\]{top:50%}.top-\[60\%\]{top:60%}.top-full{top:100%}.-right-12{right:calc(var(--spacing) * -12)}.right-0{right:0}.right-1{right:var(--spacing)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.-bottom-12{bottom:calc(var(--spacing) * -12)}.bottom-0{bottom:0}.-left-12{left:calc(var(--spacing) * -12)}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-\[50\%\]{left:50%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[1\]{z-index:1}.z-\[100\]{z-index:100}.order-first{order:-9999}.order-last{order:9999}.\!m-0{margin:0!important}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3\.5{margin-inline:calc(var(--spacing) * 3.5)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.-my-2{margin-block:calc(var(--spacing) * -2)}.my-0{margin-block:0px}.my-0\.5{margin-block:calc(var(--spacing) * .5)}.my-1{margin-block:var(--spacing)}.prose{color:var(--tw-prose-body);max-width:65ch;--tw-prose-body: oklch(37.3% .034 259.733);--tw-prose-headings: oklch(21% .034 264.665);--tw-prose-lead: oklch(44.6% .03 256.802);--tw-prose-links: oklch(21% .034 264.665);--tw-prose-bold: oklch(21% .034 264.665);--tw-prose-counters: oklch(55.1% .027 264.364);--tw-prose-bullets: oklch(87.2% .01 258.338);--tw-prose-hr: oklch(92.8% .006 264.531);--tw-prose-quotes: oklch(21% .034 264.665);--tw-prose-quote-borders: oklch(92.8% .006 264.531);--tw-prose-captions: oklch(55.1% .027 264.364);--tw-prose-kbd: oklch(21% .034 264.665);--tw-prose-kbd-shadows: color-mix(in oklab, oklch(21% .034 264.665) 10%, transparent);--tw-prose-code: oklch(21% .034 264.665);--tw-prose-pre-code: oklch(92.8% .006 264.531);--tw-prose-pre-bg: oklch(27.8% .033 256.848);--tw-prose-th-borders: oklch(87.2% .01 258.338);--tw-prose-td-borders: oklch(92.8% .006 264.531);--tw-prose-invert-body: oklch(87.2% .01 258.338);--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: oklch(70.7% .022 261.325);--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: oklch(70.7% .022 261.325);--tw-prose-invert-bullets: oklch(44.6% .03 256.802);--tw-prose-invert-hr: oklch(37.3% .034 259.733);--tw-prose-invert-quotes: oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders: oklch(37.3% .034 259.733);--tw-prose-invert-captions: oklch(70.7% .022 261.325);--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: oklch(44.6% .03 256.802);--tw-prose-invert-td-borders: oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.-mt-4{margin-top:calc(var(--spacing) * -4)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-24{margin-top:calc(var(--spacing) * 24)}.mt-auto{margin-top:auto}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.-ml-4{margin-left:calc(var(--spacing) * -4)}.ml-1{margin-left:var(--spacing)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1 / 1}.aspect-video{aspect-ratio:var(--aspect-video)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-\[--cell-size\]{width:--cell-size;height:--cell-size}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-\[--cell-size\]{height:--cell-size}.h-\[1px\]{height:1px}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\[--radix-context-menu-content-available-height\]{max-height:--radix-context-menu-content-available-height}.max-h-\[--radix-select-content-available-height\]{max-height:--radix-select-content-available-height}.max-h-\[85vh\]{max-height:85vh}.max-h-\[300px\]{max-height:300px}.max-h-\[var\(--radix-dropdown-menu-content-available-height\)\]{max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-screen{max-height:100vh}.min-h-0{min-height:0px}.min-h-8{min-height:calc(var(--spacing) * 8)}.min-h-9{min-height:calc(var(--spacing) * 9)}.min-h-10{min-height:calc(var(--spacing) * 10)}.min-h-\[60px\]{min-height:60px}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-0{width:0px}.w-1{width:var(--spacing)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-\[--cell-size\]{width:--cell-size}.w-\[1px\]{width:1px}.w-\[100px\]{width:100px}.w-\[var\(--sidebar-width\)\]{width:var(--sidebar-width)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\[var\(--skeleton-width\)\]{max-width:var(--skeleton-width)}.max-w-lg{max-width:var(--container-lg)}.max-w-max{max-width:max-content}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:0px}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-9{min-width:calc(var(--spacing) * 9)}.min-w-10{min-width:calc(var(--spacing) * 10)}.min-w-\[--cell-size\]{min-width:--cell-size}.min-w-\[8rem\]{min-width:8rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\[--radix-context-menu-content-transform-origin\]{transform-origin:--radix-context-menu-content-transform-origin}.origin-\[--radix-dropdown-menu-content-transform-origin\]{transform-origin:--radix-dropdown-menu-content-transform-origin}.origin-\[--radix-hover-card-content-transform-origin\]{transform-origin:--radix-hover-card-content-transform-origin}.origin-\[--radix-menubar-content-transform-origin\]{transform-origin:--radix-menubar-content-transform-origin}.origin-\[--radix-popover-content-transform-origin\]{transform-origin:--radix-popover-content-transform-origin}.origin-\[--radix-select-content-transform-origin\]{transform-origin:--radix-select-content-transform-origin}.origin-\[--radix-tooltip-content-transform-origin\]{transform-origin:--radix-tooltip-content-transform-origin}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-px{--tw-translate-x: -1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\[-50\%\]{--tw-translate-x: -50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-px{--tw-translate-x: 1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y: -50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-caret-blink{animation:caret-blink 1.25s ease-out infinite}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.touch-none{touch-action:none}.resize-none{resize:none}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.place-content-center{place-content:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-7{gap:calc(var(--spacing) * 7)}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse: 0;margin-inline-start:calc(var(--spacing) * var(--tw-space-x-reverse));margin-inline-end:calc(var(--spacing) * calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse: 0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}.self-stretch{align-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[calc\(var\(--radius\)-5px\)\]{border-radius:calc(var(--radius) - 5px)}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:calc(infinity * 1px)}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-l-md{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.rounded-tl-sm{border-top-left-radius:calc(var(--radius) - 4px)}.rounded-r-md{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style: dashed;border-style:dashed}.\[border-color\:var\(--badge-outline\)\]{border-color:var(--badge-outline)}.\[border-color\:var\(--button-outline\)\]{border-color:var(--button-outline)}.border-\[--color-border\]{border-color:--color-border}.border-border{border-color:hsl(var(--border))}.border-border\/50{border-color:hsl(var(--border))}@supports (color: color-mix(in lab,red,red)){.border-border\/50{border-color:color-mix(in oklab,hsl(var(--border)) 50%,transparent)}}.border-destructive{border-color:hsl(var(--destructive))}.border-destructive-border{border-color:var(--destructive-border)}.border-destructive\/50{border-color:hsl(var(--destructive))}@supports (color: color-mix(in lab,red,red)){.border-destructive\/50{border-color:color-mix(in oklab,hsl(var(--destructive)) 50%,transparent)}}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.border-primary-border{border-color:var(--primary-border)}.border-primary\/50{border-color:hsl(var(--primary))}@supports (color: color-mix(in lab,red,red)){.border-primary\/50{border-color:color-mix(in oklab,hsl(var(--primary)) 50%,transparent)}}.border-secondary-border{border-color:var(--secondary-border)}.border-sidebar-border{border-color:hsl(var(--sidebar-border))}.border-transparent{border-color:transparent}.border-t-transparent{border-top-color:transparent}.border-l-transparent{border-left-color:transparent}.bg-\[--color-bg\]{background-color:--color-bg}.bg-accent{background-color:hsl(var(--accent))}.bg-background{background-color:hsl(var(--background))}.bg-black\/80{background-color:color-mix(in srgb,#000 80%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-black\/80{background-color:color-mix(in oklab,var(--color-black) 80%,transparent)}}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-foreground{background-color:hsl(var(--foreground))}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-900{background-color:var(--color-gray-900)}.bg-input{background-color:hsl(var(--input))}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/50{background-color:hsl(var(--muted))}@supports (color: color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,hsl(var(--muted)) 50%,transparent)}}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary))}@supports (color: color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,hsl(var(--primary)) 10%,transparent)}}.bg-primary\/20{background-color:hsl(var(--primary))}@supports (color: color-mix(in lab,red,red)){.bg-primary\/20{background-color:color-mix(in oklab,hsl(var(--primary)) 20%,transparent)}}.bg-secondary{background-color:hsl(var(--secondary))}.bg-sidebar{background-color:hsl(var(--sidebar))}.bg-sidebar-border{background-color:hsl(var(--sidebar-border))}.bg-transparent{background-color:transparent}.fill-current{fill:currentcolor}.fill-primary{fill:hsl(var(--primary))}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-\[1px\]{padding:1px}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-8{padding-inline:calc(var(--spacing) * 8)}.px-\[--cell-size\]{padding-inline:--cell-size}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.pt-0{padding-top:0}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pr-1{padding-right:var(--spacing)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-2\.5{padding-right:calc(var(--spacing) * 2.5)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:var(--app-font-mono)}.font-sans{font-family:var(--app-font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading, var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading, var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading, var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading, var(--text-sm--line-height))}.text-sm\/relaxed{font-size:var(--text-sm);line-height:var(--leading-relaxed)}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading, var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading, var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading: 1;line-height:1}.leading-normal{--tw-leading: var(--leading-normal);line-height:var(--leading-normal)}.leading-snug{--tw-leading: var(--leading-snug);line-height:var(--leading-snug)}.font-bold{--tw-font-weight: var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight: var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight: var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight: var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking: var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-widest{--tw-tracking: var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.text-accent-foreground{color:hsl(var(--accent-foreground))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentcolor}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/50{color:hsl(var(--foreground))}@supports (color: color-mix(in lab,red,red)){.text-foreground\/50{color:color-mix(in oklab,hsl(var(--foreground)) 50%,transparent)}}.text-gray-600{color:var(--color-gray-600)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-red-500{color:var(--color-red-500)}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-sidebar-foreground{color:hsl(var(--sidebar-foreground))}.text-sidebar-foreground\/70{color:hsl(var(--sidebar-foreground))}@supports (color: color-mix(in lab,red,red)){.text-sidebar-foreground\/70{color:color-mix(in oklab,hsl(var(--sidebar-foreground)) 70%,transparent)}}.text-white{color:var(--color-white)}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0%}.opacity-50{opacity:50%}.opacity-60{opacity:60%}.opacity-70{opacity:70%}.opacity-90{opacity:90%}.shadow{--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow: 0 0 0 1px var(--tw-shadow-color, hsl(var(--sidebar-border)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / .05));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-0{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-ring{--tw-ring-color: hsl(var(--ring))}.ring-sidebar-ring{--tw-ring-color: hsl(var(--sidebar-ring))}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.outline-hidden{--tw-outline-style: none;outline-style:none}@media(forced-colors:active){.outline-hidden{outline:2px solid transparent;outline-offset:2px}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.outline-2{outline-style:var(--tw-outline-style);outline-width:2px}.outline-offset-2{outline-offset:2px}.outline-transparent{outline-color:transparent}.blur{--tw-blur: blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.duration-100{--tw-duration: .1s;transition-duration:.1s}.duration-200{--tw-duration: .2s;transition-duration:.2s}.duration-300{--tw-duration: .3s;transition-duration:.3s}.duration-1000{--tw-duration: 1s;transition-duration:1s}.ease-in-out{--tw-ease: var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease: linear;transition-timing-function:linear}.fade-in-0{--tw-enter-opacity: 0 ;--tw-enter-opacity: 0}.outline-none{--tw-outline-style: none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale: 95% ;--tw-enter-scale: .95}.\[--cell-size\:2rem\]{--cell-size: 2rem}.paused{animation-play-state:paused}.running{animation-play-state:running}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:100%}@media(hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:100%}.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:100%}}.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing) * 8)}.group-has-\[\[data-orientation\=horizontal\]\]\/field\:text-balance:is(:where(.group\/field):has(:is([data-orientation=horizontal])) *){text-wrap:balance}.group-has-\[\[data-slot\=item-description\]\]\/item\:translate-y-0\.5:is(:where(.group\/item):has(:is([data-slot=item-description])) *){--tw-translate-y: calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-has-\[\[data-slot\=item-description\]\]\/item\:self-start:is(:where(.group\/item):has(:is([data-slot=item-description])) *){align-self:flex-start}.group-has-\[\>input\]\/input-group\:pt-2\.5:is(:where(.group\/input-group):has(>input) *){padding-top:calc(var(--spacing) * 2.5)}.group-has-\[\>input\]\/input-group\:pb-2\.5:is(:where(.group\/input-group):has(>input) *){padding-bottom:calc(var(--spacing) * 2.5)}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing) * -8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:h-8\!:is(:where(.group)[data-collapsible=icon] *){height:calc(var(--spacing) * 8)!important}.group-data-\[collapsible\=icon\]\:w-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 8)!important}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+var\(--spacing-4\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + var(--spacing-4))}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+var\(--spacing-4\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + var(--spacing-4) + 2px)}.group-data-\[collapsible\=icon\]\:w-\[var\(--sidebar-width-icon\)\]:is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:0!important}.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0%}.group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width) * -1)}.group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width) * -1)}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:0px}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x: 0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[disabled\=true\]\/field\:opacity-50:is(:where(.group\/field)[data-disabled=true] *){opacity:50%}.group-data-\[disabled\=true\]\/input-group\:opacity-50:is(:where(.group\/input-group)[data-disabled=true] *){opacity:50%}.group-data-\[focused\=true\]\/day\:relative:is(:where(.group\/day)[data-focused=true] *){position:relative}.group-data-\[focused\=true\]\/day\:z-10:is(:where(.group\/day)[data-focused=true] *){z-index:10}.group-data-\[focused\=true\]\/day\:border-ring:is(:where(.group\/day)[data-focused=true] *){border-color:hsl(var(--ring))}.group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(:where(.group\/day)[data-focused=true] *){--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color: hsl(var(--ring))}@supports (color: color-mix(in lab,red,red)){.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color: color-mix(in oklab, hsl(var(--ring)) 50%, transparent)}}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing) * -4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:0}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:var(--radius)}.group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[variant\=floating\]\:border-sidebar-border:is(:where(.group)[data-variant=floating] *){border-color:hsl(var(--sidebar-border))}.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[variant\=outline\]\/field-group\:-mb-2:is(:where(.group\/field-group)[data-variant=outline] *){margin-bottom:calc(var(--spacing) * -2)}.group-\[\.destructive\]\:border-muted\/40:is(:where(.group):is(.destructive) *){border-color:hsl(var(--muted))}@supports (color: color-mix(in lab,red,red)){.group-\[\.destructive\]\:border-muted\/40:is(:where(.group):is(.destructive) *){border-color:color-mix(in oklab,hsl(var(--muted)) 40%,transparent)}}.group-\[\.destructive\]\:text-red-300:is(:where(.group):is(.destructive) *){color:var(--color-red-300)}.group-\[\.toast\]\:bg-muted:is(:where(.group):is(.toast) *){background-color:hsl(var(--muted))}.group-\[\.toast\]\:bg-primary:is(:where(.group):is(.toast) *){background-color:hsl(var(--primary))}.group-\[\.toast\]\:text-muted-foreground:is(:where(.group):is(.toast) *){color:hsl(var(--muted-foreground))}.group-\[\.toast\]\:text-primary-foreground:is(:where(.group):is(.toast) *){color:hsl(var(--primary-foreground))}.group-\[\.toaster\]\:border-border:is(:where(.group):is(.toaster) *){border-color:hsl(var(--border))}.group-\[\.toaster\]\:bg-background:is(:where(.group):is(.toaster) *){background-color:hsl(var(--background))}.group-\[\.toaster\]\:text-foreground:is(:where(.group):is(.toaster) *){color:hsl(var(--foreground))}.group-\[\.toaster\]\:shadow-lg:is(:where(.group):is(.toaster) *){--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media(hover:hover){.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover~*){color:hsl(var(--sidebar-accent-foreground))}}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-70:is(:where(.peer):disabled~*){opacity:70%}.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button)[data-active=true]~*){color:hsl(var(--sidebar-accent-foreground))}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing) * 1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing) * 2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:var(--spacing)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading, var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight: var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing) * -2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:0px}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:var(--spacing)}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}.first\:rounded-l-md:first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.first\:border-l:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.last\:mt-0:last-child{margin-top:0}.last\:rounded-r-md:last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}@media(hover:hover){.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-gray-700:hover{background-color:var(--color-gray-700)}.hover\:bg-muted:hover,.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted))}@supports (color: color-mix(in lab,red,red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,hsl(var(--muted)) 50%,transparent)}}.hover\:bg-secondary:hover{background-color:hsl(var(--secondary))}.hover\:bg-sidebar-accent:hover{background-color:hsl(var(--sidebar-accent))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-muted-foreground:hover{color:hsl(var(--muted-foreground))}.hover\:text-sidebar-accent-foreground:hover{color:hsl(var(--sidebar-accent-foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:100%}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow: 0 0 0 1px var(--tw-shadow-color, hsl(var(--sidebar-accent)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover:is(:where(.group)[data-collapsible=offcanvas] *){background-color:hsl(var(--sidebar))}.group-\[\.destructive\]\:hover\:border-destructive\/30:is(:where(.group):is(.destructive) *):hover{border-color:hsl(var(--destructive))}@supports (color: color-mix(in lab,red,red)){.group-\[\.destructive\]\:hover\:border-destructive\/30:is(:where(.group):is(.destructive) *):hover{border-color:color-mix(in oklab,hsl(var(--destructive)) 30%,transparent)}}.group-\[\.destructive\]\:hover\:bg-destructive:is(:where(.group):is(.destructive) *):hover{background-color:hsl(var(--destructive))}.group-\[\.destructive\]\:hover\:text-destructive-foreground:is(:where(.group):is(.destructive) *):hover{color:hsl(var(--destructive-foreground))}.group-\[\.destructive\]\:hover\:text-red-50:is(:where(.group):is(.destructive) *):hover{color:var(--color-red-50)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:hsl(var(--sidebar-border))}}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:opacity-100:focus{opacity:100%}.focus\:ring-1:focus{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-2:focus{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px;--tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style: none;outline-style:none}.group-\[\.destructive\]\:focus\:ring-destructive:is(:where(.group):is(.destructive) *):focus{--tw-ring-color: hsl(var(--destructive))}.group-\[\.destructive\]\:focus\:ring-red-400:is(:where(.group):is(.destructive) *):focus{--tw-ring-color: var(--color-red-400)}.group-\[\.destructive\]\:focus\:ring-offset-red-600:is(:where(.group):is(.destructive) *):focus{--tw-ring-offset-color: var(--color-red-600)}.focus-visible\:border-ring:focus-visible{border-color:hsl(var(--ring))}.focus-visible\:ring-0:focus-visible{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color: hsl(var(--ring))}@supports (color: color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color: color-mix(in oklab, hsl(var(--ring)) 50%, transparent)}}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width: 1px;--tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px;--tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color: hsl(var(--background))}.focus-visible\:outline-none:focus-visible{--tw-outline-style: none;outline-style:none}.active\:bg-sidebar-accent:active{background-color:hsl(var(--sidebar-accent))}.active\:text-sidebar-accent-foreground:active{color:hsl(var(--sidebar-accent-foreground))}.active\:shadow-none:active{--tw-shadow: 0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:50%}:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}.has-focus\:border-ring:has(:focus){border-color:hsl(var(--ring))}.has-focus\:ring-\[3px\]:has(:focus){--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color: hsl(var(--ring))}@supports (color: color-mix(in lab,red,red)){.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color: color-mix(in oklab, hsl(var(--ring)) 50%, transparent)}}.has-data-\[state\=checked\]\:border-primary:has([data-state=checked]){border-color:hsl(var(--primary))}.has-data-\[state\=checked\]\:bg-primary\/5:has([data-state=checked]){background-color:hsl(var(--primary))}@supports (color: color-mix(in lab,red,red)){.has-data-\[state\=checked\]\:bg-primary\/5:has([data-state=checked]){background-color:color-mix(in oklab,hsl(var(--primary)) 5%,transparent)}}.has-data-\[variant\=inset\]\:bg-sidebar:has([data-variant=inset]){background-color:hsl(var(--sidebar))}.has-\[\:disabled\]\:opacity-50:has(:is(:disabled)){opacity:50%}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-1:has(:is([data-slot=input-group-control]:focus-visible)){--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring:has(:is([data-slot=input-group-control]:focus-visible)){--tw-ring-color: hsl(var(--ring))}.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:border-destructive:has(:is([data-slot][aria-invalid=true])){border-color:hsl(var(--destructive))}.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has(:is([data-slot][aria-invalid=true])){--tw-ring-color: hsl(var(--destructive))}@supports (color: color-mix(in lab,red,red)){.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has(:is([data-slot][aria-invalid=true])){--tw-ring-color: color-mix(in oklab, hsl(var(--destructive)) 20%, transparent)}}.has-\[\>\[data-align\=block-end\]\]\:h-auto:has(>[data-align=block-end]){height:auto}.has-\[\>\[data-align\=block-end\]\]\:flex-col:has(>[data-align=block-end]){flex-direction:column}.has-\[\>\[data-align\=block-start\]\]\:h-auto:has(>[data-align=block-start]){height:auto}.has-\[\>\[data-align\=block-start\]\]\:flex-col:has(>[data-align=block-start]){flex-direction:column}.has-\[\>\[data-slot\=button-group\]\]\:gap-2:has(>[data-slot=button-group]){gap:calc(var(--spacing) * 2)}.has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(>[data-slot=checkbox-group]){gap:calc(var(--spacing) * 3)}.has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\[\>\[data-slot\=field\]\]\:w-full:has(>[data-slot=field]){width:100%}.has-\[\>\[data-slot\=field\]\]\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\[\>\[data-slot\=field\]\]\:rounded-md:has(>[data-slot=field]){border-radius:calc(var(--radius) - 2px)}.has-\[\>\[data-slot\=field\]\]\:border:has(>[data-slot=field]){border-style:var(--tw-border-style);border-width:1px}.has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(>[data-slot=radio-group]){gap:calc(var(--spacing) * 3)}.has-\[\>button\]\:mr-\[-0\.4rem\]:has(>button){margin-right:-.4rem}.has-\[\>button\]\:ml-\[-0\.45rem\]:has(>button){margin-left:-.45rem}.has-\[\>kbd\]\:mr-\[-0\.35rem\]:has(>kbd){margin-right:-.35rem}.has-\[\>kbd\]\:ml-\[-0\.35rem\]:has(>kbd){margin-left:-.35rem}.has-\[\>svg\]\:p-0:has(>svg){padding:0}.has-\[\>svg\]\:px-2:has(>svg){padding-inline:calc(var(--spacing) * 2)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>textarea\]\:h-auto:has(>textarea){height:auto}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:50%}.aria-selected\:text-muted-foreground[aria-selected=true]{color:hsl(var(--muted-foreground))}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:hsl(var(--sidebar-accent))}.data-\[active\=true\]\:font-medium[data-active=true]{--tw-font-weight: var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:hsl(var(--sidebar-accent-foreground))}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:50%}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:50%}.data-\[invalid\=true\]\:text-destructive[data-invalid=true]{color:hsl(var(--destructive))}.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x: calc(52*var(--spacing))}.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x: calc(52*var(--spacing)*-1)}.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x: calc(52*var(--spacing))}.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x: calc(52*var(--spacing)*-1)}.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity: 0}.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-]{--tw-exit-opacity: 0}.data-\[orientation\=vertical\]\:h-auto[data-orientation=vertical]{height:auto}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:0}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:var(--spacing)}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x: 0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:hsl(var(--muted-foreground))}.data-\[range-end\=true\]\:rounded-md[data-range-end=true]{border-radius:calc(var(--radius) - 2px)}.data-\[range-end\=true\]\:bg-primary[data-range-end=true]{background-color:hsl(var(--primary))}.data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true]{color:hsl(var(--primary-foreground))}.data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{border-radius:0}.data-\[range-middle\=true\]\:bg-accent[data-range-middle=true]{background-color:hsl(var(--accent))}.data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true]{color:hsl(var(--accent-foreground))}.data-\[range-start\=true\]\:rounded-md[data-range-start=true]{border-radius:calc(var(--radius) - 2px)}.data-\[range-start\=true\]\:bg-primary[data-range-start=true]{background-color:hsl(var(--primary))}.data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true]{color:hsl(var(--primary-foreground))}.data-\[selected-single\=true\]\:bg-primary[data-selected-single=true]{background-color:hsl(var(--primary))}.data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true]{color:hsl(var(--primary-foreground))}.data-\[selected\=true\]\:rounded-none[data-selected=true]{border-radius:0}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:hsl(var(--accent))}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:hsl(var(--accent-foreground))}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y: var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y: calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x: calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x: calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x: var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x: calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y: calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y: calc(2*var(--spacing))}.data-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group]{gap:calc(var(--spacing) * 3)}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x: calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration: .3s;transition-duration:.3s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0 ;--tw-exit-opacity: 0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity: .8 ;--tw-exit-opacity: .8}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: 95% ;--tw-exit-scale: .95}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y: 100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x: -100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50% }.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x: 100%}.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed]{--tw-exit-translate-x: 100% }.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y: -100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48% }.data-\[state\=hidden\]\:animate-out[data-state=hidden]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity: 0}.data-\[state\=on\]\:bg-accent[data-state=on]{background-color:hsl(var(--accent))}.data-\[state\=on\]\:text-accent-foreground[data-state=on]{color:hsl(var(--accent-foreground))}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:hsl(var(--accent))}@supports (color: color-mix(in lab,red,red)){.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:color-mix(in oklab,hsl(var(--accent)) 50%,transparent)}}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:hsl(var(--accent-foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:100%}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration: .5s;transition-duration:.5s}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0 ;--tw-enter-opacity: 0}.data-\[state\=open\]\:zoom-in-90[data-state=open]{--tw-enter-scale: 90% ;--tw-enter-scale: .9}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: 95% ;--tw-enter-scale: .95}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y: 100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x: -100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50% }.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x: 100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48% }.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y: -100% }@media(hover:hover){.data-\[state\=open\]\:hover\:bg-accent[data-state=open]:hover{background-color:hsl(var(--accent))}.data-\[state\=open\]\:hover\:bg-sidebar-accent[data-state=open]:hover{background-color:hsl(var(--sidebar-accent))}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground[data-state=open]:hover{color:hsl(var(--sidebar-accent-foreground))}}.data-\[state\=open\]\:focus\:bg-accent[data-state=open]:focus{background-color:hsl(var(--accent))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x: 0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-\[state\=visible\]\:animate-in[data-state=visible]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity: 0}.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x: 0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x: var(--radix-toast-swipe-end-x);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x: var(--radix-toast-swipe-move-x);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[variant\=label\]\:text-sm[data-variant=label]{font-size:var(--text-sm);line-height:var(--tw-leading, var(--text-sm--line-height))}.data-\[variant\=legend\]\:text-base[data-variant=legend]{font-size:var(--text-base);line-height:var(--tw-leading, var(--text-base--line-height))}.nth-last-2\:-mt-1:nth-last-child(2){margin-top:calc(var(--spacing) * -1)}@media(min-width:40rem){.sm\:top-auto{top:auto}.sm\:right-0{right:0}.sm\:bottom-0{bottom:0}.sm\:mt-0{margin-top:0}.sm\:flex{display:flex}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:flex-col{flex-direction:column}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:calc(var(--spacing) * 2.5)}:where(.sm\:space-x-2>:not(:last-child)){--tw-space-x-reverse: 0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y: 100% }}@media(min-width:48rem){.md\:absolute{position:absolute}.md\:block{display:block}.md\:flex{display:flex}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:max-w-\[420px\]{max-width:420px}.md\:flex-row{flex-direction:row}.md\:p-12{padding:calc(var(--spacing) * 12)}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading, var(--text-sm--line-height))}.md\:opacity-0{opacity:0%}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing) * 2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:0}.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:calc(var(--radius) + 4px)}.md\:peer-data-\[variant\=inset\]\:shadow-sm:is(:where(.peer)[data-variant=inset]~*){--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(:where(.peer)[data-variant=inset]~*):is(:where(.peer)[data-state=collapsed]~*){margin-left:calc(var(--spacing) * 2)}.md\:after\:hidden:after{content:var(--tw-content);display:none}}@container field-group (width >= 28rem){.\@md\/field-group\:flex-row{flex-direction:row}.\@md\/field-group\:items-center{align-items:center}.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}}.dark\:border-destructive:is(.dark *){border-color:hsl(var(--destructive))}.dark\:bg-input\/30:is(.dark *){background-color:hsl(var(--input))}@supports (color: color-mix(in lab,red,red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab,hsl(var(--input)) 30%,transparent)}}.dark\:bg-transparent:is(.dark *){background-color:transparent}.dark\:invert:is(.dark *){--tw-invert: invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.dark\:has-data-\[state\=checked\]\:bg-primary\/10:is(.dark *):has([data-state=checked]){background-color:hsl(var(--primary))}@supports (color: color-mix(in lab,red,red)){.dark\:has-data-\[state\=checked\]\:bg-primary\/10:is(.dark *):has([data-state=checked]){background-color:color-mix(in oklab,hsl(var(--primary)) 10%,transparent)}}.dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:is(.dark *):has(:is([data-slot][aria-invalid=true])){--tw-ring-color: hsl(var(--destructive))}@supports (color: color-mix(in lab,red,red)){.dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:is(.dark *):has(:is([data-slot][aria-invalid=true])){--tw-ring-color: color-mix(in oklab, hsl(var(--destructive)) 40%, transparent)}}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:hsl(var(--muted-foreground))}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:hsl(var(--border))}@supports (color: color-mix(in lab,red,red)){.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:color-mix(in oklab,hsl(var(--border)) 50%,transparent)}}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:hsl(var(--border))}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-layer\]\:outline-none .recharts-layer{--tw-outline-style: none;outline-style:none}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"]{stroke:hsl(var(--border))}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:hsl(var(--muted))}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"]{stroke:hsl(var(--border))}.\[\&_\.recharts-sector\]\:outline-none .recharts-sector{--tw-outline-style: none;outline-style:none}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-surface\]\:outline-none .recharts-surface{--tw-outline-style: none;outline-style:none}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading, var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight: var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:hsl(var(--muted-foreground))}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing) * 12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing) * 3)}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing) * 5)}.\[\&_img\]\:size-full img{width:100%;height:100%}.\[\&_img\]\:object-cover img{object-fit:cover}.\[\&_p\]\:leading-relaxed p{--tw-leading: var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6 svg:not([class*=size-]){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0px}.\[\&\+\[data-slot\=item-content\]\]\:flex-none+[data-slot=item-content]{flex:none}.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\.border-b\]\:pb-3:is(.border-b){padding-bottom:calc(var(--spacing) * 3)}.\[\.border-t\]\:pt-3:is(.border-t){padding-top:calc(var(--spacing) * 3)}:is(.rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_next>svg){rotate:180deg}:is(.rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_previous>svg){rotate:180deg}.\[a\]\:transition-colors:is(a){transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}@media(hover:hover){.\[a\]\:hover\:bg-accent\/50:is(a):hover{background-color:hsl(var(--accent))}@supports (color: color-mix(in lab,red,red)){.\[a\]\:hover\:bg-accent\/50:is(a):hover{background-color:color-mix(in oklab,hsl(var(--accent)) 50%,transparent)}}}.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\>\*\]\:w-full>*{width:100%}.\[\&\>\*\]\:focus-visible\:relative>*:focus-visible{position:relative}.\[\&\>\*\]\:focus-visible\:z-10>*:focus-visible{z-index:10}@container field-group (width >= 28rem){.\@md\/field-group\:\[\&\>\*\]\:w-auto>*{width:auto}}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-t-none>:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-l-none>:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-t-0>:not(:first-child){border-top-style:var(--tw-border-style);border-top-width:0px}.\[\&\>\*\:not\(\:first-child\)\]\:border-l-0>:not(:first-child){border-left-style:var(--tw-border-style);border-left-width:0px}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-r-none>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-b-none>:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0}.\[\&\>\.sr-only\]\:w-auto>.sr-only{width:auto}.\[\&\>\[data-slot\=field-group\]\]\:gap-4>[data-slot=field-group]{gap:calc(var(--spacing) * 4)}.\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}@container field-group (width >= 28rem){.\@md\/field-group\:\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}}.\[\&\>\[data-slot\=field\]\]\:p-4>[data-slot=field]{padding:calc(var(--spacing) * 4)}.has-\[select\[aria-hidden\=true\]\:last-child\]\:\[\&\>\[data-slot\=select-trigger\]\:last-of-type\]\:rounded-r-md:has(:is(select[aria-hidden=true]:last-child))>[data-slot=select-trigger]:last-of-type{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\>\[data-slot\=select-trigger\]\:not\(\[class\*\=\'w-\'\]\)\]\:w-fit>[data-slot=select-trigger]:not([class*=w-]){width:fit-content}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y: 2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]{margin-top:1px}@container field-group (width >= 28rem){.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]{margin-top:1px}}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>a\:hover\]\:text-primary>a:hover{color:hsl(var(--primary))}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>input\]\:flex-1>input{flex:1}.has-\[\>\[data-align\=block-end\]\]\:\[\&\>input\]\:pt-3:has(>[data-align=block-end])>input{padding-top:calc(var(--spacing) * 3)}.has-\[\>\[data-align\=block-start\]\]\:\[\&\>input\]\:pb-3:has(>[data-align=block-start])>input{padding-bottom:calc(var(--spacing) * 3)}.has-\[\>\[data-align\=inline-end\]\]\:\[\&\>input\]\:pr-2:has(>[data-align=inline-end])>input{padding-right:calc(var(--spacing) * 2)}.has-\[\>\[data-align\=inline-start\]\]\:\[\&\>input\]\:pl-2:has(>[data-align=inline-start])>input{padding-left:calc(var(--spacing) * 2)}.\[\&\>kbd\]\:rounded-\[calc\(var\(--radius\)-5px\)\]>kbd{border-radius:calc(var(--radius) - 5px)}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&\>span\]\:text-xs>span{font-size:var(--text-xs);line-height:var(--tw-leading, var(--text-xs--line-height))}.\[\&\>span\]\:opacity-70>span{opacity:70%}.\[\&\>span\:last-child\]\:truncate>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.\[\&\>svg\]\:absolute>svg{position:absolute}.\[\&\>svg\]\:top-4>svg{top:calc(var(--spacing) * 4)}.\[\&\>svg\]\:left-4>svg{left:calc(var(--spacing) * 4)}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:h-2\.5>svg{height:calc(var(--spacing) * 2.5)}.\[\&\>svg\]\:h-3>svg{height:calc(var(--spacing) * 3)}.\[\&\>svg\]\:h-3\.5>svg{height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:h-4>svg{height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:w-2\.5>svg{width:calc(var(--spacing) * 2.5)}.\[\&\>svg\]\:w-3>svg{width:calc(var(--spacing) * 3)}.\[\&\>svg\]\:w-3\.5>svg{width:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:w-4>svg{width:calc(var(--spacing) * 4)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-destructive>svg{color:hsl(var(--destructive))}.\[\&\>svg\]\:text-foreground>svg{color:hsl(var(--foreground))}.\[\&\>svg\]\:text-muted-foreground>svg{color:hsl(var(--muted-foreground))}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:hsl(var(--sidebar-accent-foreground))}.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{--tw-translate-y: -3px;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5>svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4>svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\~\*\]\:pl-7>svg~*{padding-left:calc(var(--spacing) * 7)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0px}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{rotate:90deg}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{rotate:180deg}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing) * -2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing) * -2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:transparent}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:hsl(var(--background))}@supports (color: color-mix(in lab,red,red)){[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:color-mix(in oklab,hsl(var(--background)) 20%,transparent)}}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:text-background{color:hsl(var(--background))}[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:hsl(var(--background))}@supports (color: color-mix(in lab,red,red)){[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:color-mix(in oklab,hsl(var(--background)) 10%,transparent)}}[data-variant=legend]+.\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5{margin-top:calc(var(--spacing) * -1.5)}}@property --tw-animation-delay{syntax: "*"; inherits: false; initial-value: 0s;}@property --tw-animation-direction{syntax: "*"; inherits: false; initial-value: normal;}@property --tw-animation-duration{syntax: "*"; inherits: false;}@property --tw-animation-fill-mode{syntax: "*"; inherits: false; initial-value: none;}@property --tw-animation-iteration-count{syntax: "*"; inherits: false; initial-value: 1;}@property --tw-enter-blur{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-enter-opacity{syntax: "*"; inherits: false; initial-value: 1;}@property --tw-enter-rotate{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-enter-scale{syntax: "*"; inherits: false; initial-value: 1;}@property --tw-enter-translate-x{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-enter-translate-y{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-exit-blur{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-exit-opacity{syntax: "*"; inherits: false; initial-value: 1;}@property --tw-exit-rotate{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-exit-scale{syntax: "*"; inherits: false; initial-value: 1;}@property --tw-exit-translate-x{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-exit-translate-y{syntax: "*"; inherits: false; initial-value: 0;}.feeding-record{border:1px solid #e5e0d6;border-radius:14px;padding:16px;margin:18px 0;min-width:0}.feeding-record legend{font-weight:600;font-size:13px;padding:0 6px;color:#365343}.feeding-record label>small{font-weight:400;color:#727e73;font-size:11px}.feeding-record .muted-copy{font-size:11px;margin:12px 0 0}.report-period-picker{padding:16px 0;margin-bottom:16px;border-bottom:1px solid #e5e0d6}.report-period-picker .muted-copy{font-size:12px;margin:10px 0 0}.report-period-label{text-align:center;font-weight:600;font-size:15px;margin:0 0 22px}:root{--button-outline: rgba(0, 0, 0, .1);--badge-outline: rgba(0, 0, 0, .05);--opaque-button-border-intensity: -8;--elevate-1: rgba(0, 0, 0, .03);--elevate-2: rgba(0, 0, 0, .08);--background: 42 34% 96%;--foreground: 153 20% 18%;--border: 36 20% 86%;--card: 45 38% 99%;--card-foreground: 153 20% 18%;--card-border: 37 22% 88%;--sidebar: 147 19% 91%;--sidebar-foreground: 153 20% 18%;--sidebar-border: 144 14% 85%;--sidebar-primary: 153 25% 27%;--sidebar-primary-foreground: 45 38% 98%;--sidebar-accent: 145 24% 84%;--sidebar-accent-foreground: 153 24% 22%;--sidebar-ring: 153 25% 36%;--popover: 45 38% 99%;--popover-foreground: 153 20% 18%;--popover-border: 37 22% 88%;--primary: 153 25% 27%;--primary-foreground: 45 38% 98%;--secondary: 16 52% 91%;--secondary-foreground: 15 34% 32%;--muted: 38 21% 91%;--muted-foreground: 150 9% 44%;--accent: 41 54% 86%;--accent-foreground: 153 20% 20%;--destructive: 4 57% 49%;--destructive-foreground: 0 0% 100%;--input: 36 20% 83%;--ring: 153 25% 36%;--chart-1: 153 25% 36%;--chart-2: 20 55% 67%;--chart-3: 43 55% 62%;--chart-4: 194 22% 56%;--chart-5: 339 28% 68%;--app-font-sans: "DM Sans", sans-serif;--app-font-serif: "Fraunces", serif;--app-font-mono: Menlo, monospace;--radius: .5rem;--shadow-2xs: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0);--shadow-xs: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0);--shadow-sm: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0), 0px 1px 2px -1px hsl(202.8169 89.1213% 53.1373% / 0);--shadow: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0), 0px 1px 2px -1px hsl(202.8169 89.1213% 53.1373% / 0);--shadow-md: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0), 0px 2px 4px -1px hsl(202.8169 89.1213% 53.1373% / 0);--shadow-lg: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0), 0px 4px 6px -1px hsl(202.8169 89.1213% 53.1373% / 0);--shadow-xl: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0), 0px 8px 10px -1px hsl(202.8169 89.1213% 53.1373% / 0);--shadow-2xl: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0);--tracking-normal: 0em;--spacing: .25rem;--sidebar-primary-border: hsl(var(--sidebar-primary));--sidebar-primary-border: hsl( from hsl(var(--sidebar-primary)) h s calc(l + var(--opaque-button-border-intensity)) / alpha );--sidebar-accent-border: hsl(var(--sidebar-accent));--sidebar-accent-border: hsl( from hsl(var(--sidebar-accent)) h s calc(l + var(--opaque-button-border-intensity)) / alpha );--primary-border: hsl(var(--primary));--primary-border: hsl( from hsl(var(--primary)) h s calc(l + var(--opaque-button-border-intensity)) / alpha );--secondary-border: hsl(var(--secondary));--secondary-border: hsl( from hsl(var(--secondary)) h s calc(l + var(--opaque-button-border-intensity)) / alpha );--muted-border: hsl(var(--muted));--muted-border: hsl( from hsl(var(--muted)) h s calc(l + var(--opaque-button-border-intensity)) / alpha );--accent-border: hsl(var(--accent));--accent-border: hsl( from hsl(var(--accent)) h s calc(l + var(--opaque-button-border-intensity)) / alpha );--destructive-border: hsl(var(--destructive));--destructive-border: hsl( from hsl(var(--destructive)) h s calc(l + var(--opaque-button-border-intensity)) / alpha )}.dark{--button-outline: rgba(255, 255, 255, .1);--badge-outline: rgba(255, 255, 255, .05);--opaque-button-border-intensity: 9;--elevate-1: rgba(255, 255, 255, .04);--elevate-2: rgba(255, 255, 255, .09);--background: 154 18% 12%;--foreground: 42 28% 92%;--border: 150 12% 25%;--card: 153 17% 16%;--card-foreground: 42 28% 92%;--card-border: 150 12% 27%;--sidebar: 155 18% 10%;--sidebar-foreground: 42 28% 92%;--sidebar-border: 150 12% 24%;--sidebar-primary: 145 28% 65%;--sidebar-primary-foreground: 153 20% 12%;--sidebar-accent: 152 18% 21%;--sidebar-accent-foreground: 42 28% 92%;--sidebar-ring: 145 28% 65%;--popover: 153 17% 16%;--popover-foreground: 42 28% 92%;--popover-border: 150 12% 27%;--primary: 145 28% 65%;--primary-foreground: 153 20% 12%;--secondary: 16 30% 28%;--secondary-foreground: 42 28% 92%;--muted: 153 12% 22%;--muted-foreground: 145 10% 68%;--accent: 43 32% 29%;--accent-foreground: 42 28% 92%;--destructive: 4 57% 56%;--destructive-foreground: 0 0% 100%;--input: 150 12% 29%;--ring: 145 28% 65%;--chart-1: 145 28% 65%;--chart-2: 20 55% 67%;--chart-3: 43 55% 62%;--chart-4: 194 22% 56%;--chart-5: 339 28% 68%;--shadow-2xs: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0);--shadow-xs: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0);--shadow-sm: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0), 0px 1px 2px -1px hsl(202.8169 89.1213% 53.1373% / 0);--shadow: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0), 0px 1px 2px -1px hsl(202.8169 89.1213% 53.1373% / 0);--shadow-md: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0), 0px 2px 4px -1px hsl(202.8169 89.1213% 53.1373% / 0);--shadow-lg: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0), 0px 4px 6px -1px hsl(202.8169 89.1213% 53.1373% / 0);--shadow-xl: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0), 0px 8px 10px -1px hsl(202.8169 89.1213% 53.1373% / 0);--shadow-2xl: 0px 2px 0px 0px hsl(202.8169 89.1213% 53.1373% / 0)}@layer base{*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));font-family:var(--app-font-sans);color:hsl(var(--foreground));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--radius: .85rem}body{background:hsl(var(--background));color:hsl(var(--foreground));font-family:var(--app-font-sans)}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.welcome-page{min-height:100dvh;padding:0 7.1vw;background:#f4f0e7;color:#264438;overflow:hidden}.welcome-top{height:88px;border-bottom:1px solid #dfd9cb;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:9px;color:#244638;line-height:1;flex:none}.brand-emblem{width:36px;height:36px;object-fit:contain;display:block;flex:none}.brand-wordmark{display:block;width:176px;max-height:26px;height:auto;object-fit:contain}.welcome-top .brand{gap:12px;flex:0 1 348px;min-width:0}.welcome-top .brand-emblem{width:56px;height:56px}.welcome-top .brand-wordmark{width:280px;min-width:0;max-height:none}.private-label{display:flex;align-items:center;gap:8px;font-size:12px;color:#68796c}.welcome-top .private-label{flex-shrink:0}.welcome-hero{display:grid;grid-template-columns:1fr .91fr;align-items:center;gap:5vw;min-height:540px;padding:48px 0 42px}.hero-copy{padding-left:2vw;position:relative;z-index:1}.eyebrow{display:block;color:#858a77;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.hero-copy .eyebrow{color:#a16d5f}.hero-copy h1{font:500 clamp(52px,6.6vw,91px)/.98 var(--app-font-serif);letter-spacing:-.055em;margin:22px 0 23px;color:#244638}.hero-copy h1 em,.welcome-card h2 em,.evidence-aside h2 em{color:#c37e6b;font-weight:500}.hero-intro{max-width:425px;color:#64746a;font-size:16px;line-height:1.72;margin:0 0 28px}.hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:8px;padding:13px 18px;font-size:13px;font-weight:700;transition:transform .18s,background .18s,opacity .18s}.button:hover{transform:translateY(-2px)}.button:disabled{opacity:.55;cursor:not-allowed;transform:none}.button.primary{background:#315a47;color:#fff8ee;box-shadow:0 5px 14px #315a471c}.button.secondary{background:#f0ebe0;color:#365343;border:1px solid #e1dacb}.button.cream{background:#f4eee2;color:#315240}.button.compact{padding:10px 13px;font-size:12px}.hero-note{display:flex;align-items:center;gap:7px;color:#788477;font-size:11px}.hero-art{height:420px;max-width:520px;width:100%;justify-self:end;position:relative;margin:0;background:#dfe7d8;border-radius:48% 48% 14px 14px;overflow:hidden}.hero-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 48%;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s}.hero-art:after{content:"";position:absolute;inset:48% 0 0;pointer-events:none;background:linear-gradient(180deg,transparent,#23332945)}.hero-art:hover .hero-photo{transform:scale(1.035);filter:saturate(1.04)}.art-caption{position:absolute;z-index:1;right:22px;bottom:15px;font:italic 12px var(--app-font-serif);color:#536b59;padding:7px 10px;border-radius:30px;background:#fffdf1d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.welcome-details{border-top:1px solid #dfd9cb;border-bottom:1px solid #dfd9cb;display:grid;grid-template-columns:repeat(3,1fr);gap:5vw;padding:38px 2vw 43px}.detail-index{color:#ad796b;font-size:10px;letter-spacing:.15em;font-weight:700}.welcome-details h2{font:500 24px var(--app-font-serif);margin:13px 0 9px;letter-spacing:-.02em}.welcome-details p{color:#718075;font-size:13px;line-height:1.7;max-width:285px;margin:0}.release-signup{margin:42px 0 0;padding:clamp(22px,3.4vw,42px);display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);gap:36px;align-items:center;background:#e5ebe1;border:1px solid #d7e0d5;border-radius:14px}.release-signup-copy h2{font:500 clamp(27px,3vw,37px)/1.1 var(--app-font-serif);letter-spacing:-.035em;color:#2d503c;margin:12px 0}.release-signup-copy p{max-width:420px;color:#68786b;font-size:13px;line-height:1.7;margin:0 0 12px}.release-signup-copy small{display:block;color:#818b7e;font-size:10px;line-height:1.6}.release-signup-form{display:flex;flex-direction:column;gap:13px}.release-email-field{display:flex;flex-direction:column;gap:6px}.release-email-field>label{font-size:11px;font-weight:700;color:#526b58}.release-email-field input{height:43px;background:#fffdf8;border-color:#d9dfd6;color:#304c3a;font-size:13px}.release-consent-field{display:flex;flex-direction:column;gap:5px}.release-consent-row{display:flex;align-items:flex-start;gap:10px}.release-consent-row>label{font-size:10px;line-height:1.55;color:#617264}.release-consent-row button{margin-top:1px;background:#fffdf8}.release-submit{align-self:flex-start;min-height:43px}.release-feedback{margin:0;font-size:11px;line-height:1.55}.release-feedback.success{color:#356344}.release-feedback.pending{color:#76643d}.release-feedback.error{color:#9a4e43}.access-notice{display:grid;gap:6px;max-width:340px;padding:13px 15px;background:#f1e9dd;border:1px solid #e7d8c4;border-radius:9px;color:#6a5144}.access-notice b{font-size:12px}.access-notice span{font-size:10px;line-height:1.5}.access-notice .text-button{justify-self:start;padding:2px 0}.gate-loading{min-height:100dvh;display:grid;place-items:center;background:#f4f0e7;color:#68786b;font-size:13px}.welcome-footer{display:flex;justify-content:space-between;padding:23px 2vw 27px;color:#738074;font-size:11px}.welcome-footer span:first-child{font-weight:700;color:#54705f}.welcome-footer small{font-weight:400;margin-left:7px;color:#9a9b8a}.workspace{min-height:100dvh;display:grid;grid-template-columns:248px minmax(0,1fr)}.sidebar{background:#e5ebe2;min-height:100dvh;padding:26px 16px 20px;display:flex;flex-direction:column;border-right:1px solid #d9e0d5;position:sticky;top:0;height:100dvh}.side-brand{padding:0 10px 24px}.side-brand .brand-emblem{width:30px;height:30px}.side-brand .brand-wordmark{width:150px;max-height:23px}.side-family{display:flex;align-items:center;gap:10px;padding:13px 10px;margin-bottom:29px;background:#f1f3ec;border:1px solid #dce3d8;border-radius:11px}.family-dot,.profile-dot{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#cf907b;color:#fff;font:500 15px var(--app-font-serif)}.side-family span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:3px}.side-family b{font-size:12px}.side-family small{font-size:10px;color:#849080}.side-family>svg{color:#909a8d}.side-label{font-size:9px;font-weight:700;letter-spacing:.16em;color:#8b9788;padding:0 11px 10px}.side-nav{display:flex;flex-direction:column;gap:4px}.nav-link{height:43px;display:flex;align-items:center;gap:12px;padding:0 12px;border-radius:8px;color:#667468;font-size:12px;font-weight:600;position:relative}.nav-link svg{stroke-width:1.8}.nav-link:hover{background:#edf0e8;color:#315642}.nav-link.selected{background:#d4e0d4;color:#2b4d3c}.nav-current{width:5px;height:5px;background:#cc8977;border-radius:50%;margin-left:auto}.sidebar-bottom{margin-top:auto}.privacy-note{display:flex;gap:10px;background:#d8e3d6;padding:13px;border-radius:9px;color:#45624e;margin-bottom:18px}.privacy-note p{margin:0;font-size:10px;line-height:1.6;color:#738171}.privacy-note b{color:#355542;font-size:11px}.domain-note{color:#98a194;font-size:10px;padding:0 10px}.domain-note i{font-style:normal;color:#b88272;margin-left:5px}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 42px;border-bottom:1px solid #e6e0d5;background:#f6f3ec}.breadcrumb{font-size:11px;color:#8d9387}.breadcrumb span{padding:0 8px;color:#c1bcb0}.top-actions{display:flex;align-items:center;gap:17px}.today-chip{display:flex;align-items:center;gap:7px;color:#738073;font-size:11px}.today-chip span{width:6px;height:6px;border-radius:50%;background:#84a182}.profile-dot{background:#ddbaa4;color:#684f42;width:30px;height:30px;font-size:13px}.signout-button{border:0;padding:0;cursor:pointer}.page-content{max-width:1440px;margin:0 auto;padding:32px 42px 76px}.page-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:25px}.page-heading h1{font:500 clamp(32px,3vw,43px)/1.1 var(--app-font-serif);letter-spacing:-.04em;margin:8px 0 0;color:#294a3a}.page-heading .eyebrow{color:#a27666}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:22px;align-items:start}.dashboard-main,.dashboard-aside,.journal-main,.journal-aside,.settings-main,.settings-aside{display:flex;flex-direction:column;gap:19px}.welcome-card{position:relative;overflow:hidden;min-height:258px;background:#315746;border-radius:14px;color:#f8f1e7;padding:29px 31px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:18px}.welcome-card-copy{position:relative;z-index:2}.eyebrow.light{color:#bfd0b9}.welcome-card h2{font:500 34px/1.02 var(--app-font-serif);letter-spacing:-.035em;margin:13px 0 11px}.welcome-card p{color:#d0ddd0;font-size:12px;margin:0 0 18px}.welcome-card-brand{min-width:0;min-height:196px;background:#f6eee5;border:1px solid #e7d8ce;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px 12px;box-shadow:0 12px 32px #142f2626}.welcome-brand-emblem{display:block;width:136px;max-width:70%;height:auto}.welcome-brand-wordmark{display:block;width:220px;max-width:100%;height:auto}.day-art-card{position:relative;overflow:hidden;min-height:185px;border:1px solid #d8e3d3;border-radius:12px;background:#e5ede0;padding:23px 27px;display:flex;align-items:center}.day-art-card-copy{position:relative;z-index:2;max-width:58%;color:#315443}.day-art-card h2{font:500 26px/1.08 var(--app-font-serif);letter-spacing:-.03em;margin:9px 0 8px}.day-art-card p{font-size:11px;line-height:1.5;color:#667c6c;margin:0}.day-art-card-visual{position:absolute;inset:0 0 0 45%;overflow:hidden}.day-art-card .card-sun{top:5px}.card-sun{position:absolute;width:195px;height:195px;border-radius:50%;background:#d4b58f;top:26px;right:29%;opacity:.88}.card-stem{position:absolute;width:2px;height:219px;background:#92a88b;top:20px;right:23%;transform:rotate(35deg)}.card-leaf{position:absolute;width:31px;height:70px;border-radius:100% 0;background:#839b78;z-index:1}.card-leaf.one{right:31%;top:55px;transform:rotate(-36deg)}.card-leaf.two{right:14%;top:110px;transform:rotate(45deg);background:#a1ac89}.card-leaf.three{right:40%;top:145px;transform:rotate(30deg);background:#66856c}.section-head{display:flex;align-items:end;justify-content:space-between;margin:4px 0 1px}.section-head h2,.panel-title h2{font:500 22px/1.15 var(--app-font-serif);letter-spacing:-.025em;color:#2c4b3b;margin:6px 0 0}.text-link{display:inline-flex;align-items:center;gap:7px;color:#587765;font-size:11px;font-weight:700}.text-link:hover{color:#b37261}.learner-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.learner-card{display:flex;align-items:flex-start;position:relative;gap:11px;background:#fbf9f3;border:1px solid #e8e1d5;border-radius:11px;padding:15px 13px;min-width:0}.learner-avatar{flex:0 0 37px;height:37px;border-radius:50%;display:grid;place-items:center;font:500 17px var(--app-font-serif);color:#3c604a;background:#dce6d6}.avatar-1{background:#f0ded1;color:#9c6552}.avatar-2{background:#eadfb8;color:#786b39}.avatar-3{background:#dae4e7;color:#547481}.learner-info{min-width:0;flex:1}.learner-info h3{font:500 17px var(--app-font-serif);margin:1px 0 4px;color:#2e4a3b}.learner-info>span{display:block;font-size:10px;color:#859083}.learner-info>span i{display:inline-block;width:3px;height:3px;border-radius:50%;background:#bd8b75;vertical-align:middle;margin:0 5px}.learner-stats{display:flex;gap:12px;border-top:1px solid #ede8dd;margin-top:11px;padding-top:10px}.learner-stats span{font-size:9px;color:#8c9387}.learner-stats b{font-size:11px;color:#476452;margin-right:3px}.learner-arrow{color:#91a091;padding:3px}.panel{background:#fbf9f3;border:1px solid #e8e1d5;border-radius:12px;padding:20px 21px;box-shadow:0 3px 12px #574d3510}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.panel-title>svg{color:#7c947d}.quiet-tag,.count-badge{display:inline-flex;align-items:center;justify-content:center;background:#f0ebe0;border-radius:30px;padding:6px 10px;color:#899182;font-size:9px;font-weight:600}.count-badge{width:24px;height:24px;padding:0;color:#58745d}.readiness{padding:20px 18px}.readiness .panel-title{margin-bottom:10px}.readiness-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid #eee9df}.readiness-row>div{display:flex;flex-direction:column;gap:3px;flex:1}.readiness-row b{font-size:11px;color:#47604e}.readiness-row small{font-size:9px;color:#92978c;line-height:1.35}.readiness-row>svg{color:#b6b5a7}.ready-check{width:18px;height:18px;border-radius:50%;border:1px solid #ddd8ca;display:grid;place-items:center;color:#fff}.ready-check>span{width:5px;height:5px;border-radius:50%;background:#cfc8b7}.ready-check.is-ready{background:#7f9b7d;border-color:#7f9b7d}.aside-note,.journal-tip{display:flex;gap:10px;padding:14px;background:#f0e7d8;border-radius:10px;color:#a87564}.aside-note p,.journal-tip p{margin:0;color:#817a67;font-size:10px;line-height:1.65}.aside-note b,.journal-tip b{color:#725c49}.quick-links{padding-bottom:12px}.quick-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.quick-link-grid>a{display:flex;align-items:center;gap:10px;background:#f4f0e6;border-radius:9px;padding:13px 12px;color:#6e8872}.quick-link-grid>a>svg:first-child{width:17px}.quick-link-grid>a>svg:last-child{width:13px;margin-left:auto;color:#b0aa9a}.quick-link-grid span{display:flex;flex-direction:column;gap:4px}.quick-link-grid b{font-size:11px;color:#3e5d49}.quick-link-grid small{font-size:9px;color:#8e9689}.empty-state{text-align:center;padding:45px 20px;border:1px dashed #d9d4c7;border-radius:12px;background:#faf8f1}.empty-mark{margin:0 auto 13px;width:41px;height:41px;display:grid;place-items:center;border-radius:50%;background:#e3ecdf;color:#69876d}.empty-state h3{font:500 21px var(--app-font-serif);margin:0 0 7px;color:#345441}.empty-state p{font-size:12px;color:#8a9185;margin:0 auto 17px;max-width:350px;line-height:1.6}.loading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.skeleton{height:135px;border-radius:12px;background:linear-gradient(100deg,#ebe8dd 20%,#f3f0e7,#ebe8dd 60%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.skeleton.large{grid-column:1/-1;height:220px}@keyframes shimmer{to{background-position:-200% 0}}.error-card{max-width:540px;margin:65px auto;text-align:center;padding:30px;background:#fbf8f0;border:1px solid #eadfd1;border-radius:13px;color:#a56c5b}.error-card h2{font:500 25px var(--app-font-serif);color:#31513f;margin:12px 0 7px}.error-card p{font-size:12px;color:#858d80;line-height:1.6;margin:0 0 18px}.page-intro{max-width:680px;margin:-9px 0 25px;color:#737f72;font-size:13px;line-height:1.65}.mobile-menu,.mobile-tabs{display:none}.journal-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:19px;align-items:start}.journal-datebar{display:flex;align-items:center;justify-content:space-between;background:#e6ede2;border-radius:11px;padding:17px 20px;margin-bottom:0}.journal-datebar h2{font:500 20px var(--app-font-serif);margin:5px 0 0;color:#345440}:where(.workspace,.welcome-page) :is(input,select,textarea){width:100%;min-width:0;border:1px solid #dfdacd;border-radius:7px;background:#fffdf8;color:#365342;padding:10px 11px;outline:none;font-size:12px}:where(.workspace,.welcome-page) :is(input,select,textarea):focus{border-color:#91a991;box-shadow:0 0 0 3px #7f9c801b}:where(.workspace,.welcome-page) :is(input,textarea)::placeholder{color:#adb0a4}.workspace input[type=date]{color:#637466}label{font-size:10px;font-weight:700;color:#6b796b}:where(.workspace,.welcome-page) label>:is(input,select,textarea){display:block;margin-top:7px;font-weight:400}textarea{resize:vertical;min-height:84px;line-height:1.5}.journal-datebar input{width:auto;min-width:154px;background:#f7f8f0}.journal-panel{padding:18px 19px}.journal-panel .panel-title{margin-bottom:12px}.text-button{border:0;background:transparent;color:#739075;font-size:10px;font-weight:700;padding:7px}.text-button:hover{color:#bd7965}.selection-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.select-child{display:inline-flex;align-items:center;gap:8px;border:1px solid #e3ded2;background:#f8f6ef;color:#5e6d60;border-radius:30px;padding:6px 11px;font-size:11px}.select-child.chosen{background:#e4eddf;border-color:#b5c6b3;color:#335540}.select-child svg{color:#63896a}.select-child .learner-avatar{height:25px;width:25px;flex-basis:25px;font-size:12px}.select-child small{font-size:9px;color:#8c9486}.child-journal{padding:17px 19px}.child-journal-head{display:flex;align-items:center;gap:11px;margin-bottom:17px}.child-journal-head h2{font:500 19px var(--app-font-serif);margin:4px 0 0;color:#31513f}.child-journal-head .grade-chip{margin-left:auto;background:#f0eee4;color:#879084;border-radius:20px;padding:6px 9px;font-size:9px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid select{cursor:pointer}.form-grid label{display:block}.optional{font-weight:400;color:#a3a596;font-size:9px;margin-left:4px}.child-journal .form-grid:first-of-type{grid-template-columns:repeat(3,minmax(0,1fr))}.child-lesson-fields{margin-top:17px;padding-top:14px;border-top:1px solid #eee8dc}.mini-label{display:flex;align-items:center;gap:7px;font-size:9px;letter-spacing:.11em;font-weight:700;color:#7c8c7c;margin-bottom:12px}.mini-label svg{color:#b77c6b}.full-label{display:block;margin-top:14px}.form-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #eee8dc;margin-top:17px;padding-top:14px}.form-foot>span{color:#92978b;font-size:10px}.form-foot .button{white-space:nowrap}.shared-lesson .panel-title{margin-bottom:13px}.shared-lesson .full-label{margin-top:14px}.save-status{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;margin-top:12px;border-radius:7px;font-size:11px;line-height:1.5}.save-status.success{background:#e5eee2;color:#567358}.save-status.failure{background:#f6e8e2;color:#a3594c}.daily-summary-panel{display:flex;flex-direction:column;gap:10px}.daily-summary-panel>.panel-title{margin-bottom:0}.daily-summary-panel>.muted-copy{margin:0}.daily-summary-result{padding:13px;border:1px solid #e5e8dd;border-radius:9px;background:#fbfbf7}.daily-summary-result-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;color:#315444;font-size:12px}.daily-summary-result textarea{display:block;width:100%;min-height:90px;resize:vertical;padding:10px;border:1px solid #dfe3d9;border-radius:6px;background:#fffefb;color:#425247;font:12px/1.6 var(--app-font-sans)}.daily-summary-result .muted-copy{display:block;margin:7px 0 0}.daily-summary-empty{margin:0;padding:10px 12px;border-radius:7px;background:#f7f7f1;color:#69766a;font-size:12px;line-height:1.55}.records-panel .panel-title{margin-bottom:10px}.muted-copy{font-size:11px;color:#878f82;line-height:1.65}.records-empty{text-align:center;padding:21px 10px 13px;color:#909789}.small-flower{margin:0 auto 8px;width:34px;height:34px;display:grid;place-items:center}.small-flower img{display:block;width:100%;height:100%;object-fit:contain}.records-empty p{font-size:11px;line-height:1.5;margin:0 auto;max-width:190px}.record-list{display:flex;flex-direction:column}.record-item{border-top:1px solid #eee9df;padding:12px 0}.record-item-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.record-item-top>b{font:500 15px var(--app-font-serif);color:#3c5945}.status-pill{display:inline-flex;align-items:center;border-radius:20px;padding:4px 8px;background:#f0ece2;color:#898b7d;font-size:8px;text-transform:capitalize}.status-pill.school_day,.status-pill.completed{background:#e3ecdf;color:#638067}.status-pill.absent,.status-pill.sick_day{background:#f5e6df;color:#a96c5b}.status-pill.holiday{background:#f3ecd5;color:#8d7b47}.record-item p{font-size:10px;color:#6e7c6d;line-height:1.5;margin:7px 0}.record-item small{font-size:9px;color:#a0a295}.inline-error{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#a85d4f}.inline-error button{border:0;background:none;color:#58765f;font-size:10px}.journal-tip{margin-top:2px}.plan-form{margin:0 0 20px}.plan-form .full-label{margin-bottom:14px}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:17px}.plan-card{min-height:205px;display:flex;flex-direction:column;align-items:flex-start}.plan-card-top{display:flex;width:100%;justify-content:space-between;margin-bottom:14px}.subject-mark{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#e5eddf;color:#69856d}.plan-card h3{font:500 20px/1.2 var(--app-font-serif);color:#345240;margin:6px 0}.plan-card>p{font-size:10px;color:#909486;margin:0}.plan-children{display:flex;gap:5px;flex-wrap:wrap;margin-top:auto;padding:17px 0 8px}.plan-children span{font-size:9px;border-radius:20px;background:#f1ece0;padding:5px 8px;color:#728072}.plan-card>small{font-size:9px;color:#a0a294}.calendar-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;align-items:stretch}.calendar-grid .panel{padding:22px}.calendar-settings{display:flex;flex-direction:column;gap:16px;min-width:0}.calendar-settings-heading h2{font:500 25px var(--app-font-serif);color:#35533f;margin:7px 0}.calendar-settings-heading p{font-size:12px;line-height:1.65;color:#81897b;margin:0}.calendar-settings-link{display:flex;justify-content:flex-end;margin-bottom:14px}.weekday-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:17px 0}.weekday{display:flex;align-items:center;justify-content:space-between;border:1px solid #ece7db;background:#f7f4ec;border-radius:7px;padding:10px 11px;font-size:11px;color:#687769}.weekday-on{background:#e6eee1;border-color:#b7c8b2;color:#42634a}.weekday-toggle{width:17px;height:17px;border-radius:50%;border:1px solid #d4d3c5;display:grid;place-items:center}.weekday-on .weekday-toggle{background:#7f9a7e;border-color:#7f9a7e;color:#fff}.calendar-unavailable{background:#f2eee4;display:flex;align-items:flex-start;flex-direction:column}.calendar-icon{width:39px;height:39px;border-radius:11px;background:#dfe9dd;color:#67866c;display:grid;place-items:center;margin-bottom:17px}.calendar-unavailable h2,.setup-card h2{font:500 24px var(--app-font-serif);color:#35533f;margin:8px 0}.calendar-unavailable p,.setup-card p{font-size:12px;line-height:1.7;color:#81897b;max-width:335px;margin:2px 0 17px}.not-ready{padding:7px 11px;border-radius:20px;background:#e5e1d4;color:#8d897b;font-size:9px;margin-bottom:17px}.calendar-help{margin-top:17px;background:#e7eee3}.calendar-help h2{font:500 23px var(--app-font-serif);color:#365641;margin:8px 0}.calendar-help p{max-width:710px;font-size:12px;color:#758273;line-height:1.75;margin:0}.calendar-events{margin-top:16px}.calendar-enable{display:flex;gap:9px;align-items:flex-start;margin:14px 0;color:#536452;font-size:11px;line-height:1.5}.calendar-enable input{margin:2px 0 0;accent-color:#426849}.calendar-entry-list{display:grid;gap:8px;margin-top:15px}.calendar-entry{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid #e8e4da;border-radius:8px;background:#fffdf9}.calendar-entry>div{display:grid;gap:4px}.calendar-entry b{font-size:12px;color:#344a3c}.calendar-entry small{font-size:10px;color:#8a9287;text-transform:capitalize}.calendar-empty{margin:15px 0 0}.calendar-import{margin-top:16px}.calendar-import-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:16px}.calendar-import-controls label{width:min(100%,260px)}.calendar-import-preview{margin-top:17px;padding:15px;background:#f7f5ee;border:1px solid #ebe5d8;border-radius:10px}.calendar-import-meta,.calendar-import-apply{display:flex;align-items:center;justify-content:space-between;gap:12px}.calendar-import-meta{font-size:12px;color:#536452}.calendar-import-meta a{font-size:11px;color:#3b684f;text-decoration:underline;text-underline-offset:3px}.calendar-import-dates{font-size:10px;color:#858d80;margin:8px 0}.calendar-import-list{max-height:260px;overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 14px;padding:9px 0}.calendar-import-row{display:flex;gap:10px;align-items:baseline;padding:5px 0;border-bottom:1px solid #e9e5db;font-size:10px;color:#59675a}.calendar-import-row time{flex:none;color:#7a8378;font-variant-numeric:tabular-nums}.calendar-import-apply{padding-top:11px;border-top:1px solid #e5e0d5}.calendar-import-apply>span{font-size:10px;line-height:1.5;color:#758273}.filter-panel{padding:15px 18px;margin-bottom:17px}.filter-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.progress-card{padding:19px}.progress-child{display:flex;align-items:center;gap:11px;border-bottom:1px solid #eee9df;padding-bottom:15px}.progress-child h2{font:500 20px var(--app-font-serif);color:#345441;margin:3px 0}.progress-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:15px 0 12px}.progress-metrics>div{display:flex;flex-direction:column;gap:4px;min-width:0}.progress-metrics>div+div{border-left:1px solid #eae5da;padding-left:10px}.progress-metrics b{font:500 27px/1 var(--app-font-serif);color:#3c6048;font-variant-numeric:tabular-nums}.progress-metrics b small{font:500 14px var(--app-font-serif);color:#a2a392}.progress-metrics span{font-size:9px;line-height:1.35;color:#868d80}.metric-pair{display:grid;grid-template-columns:1fr 1fr;margin:17px 0 10px}.metric-pair>div{display:flex;flex-direction:column;gap:5px}.metric-pair>div+div{border-left:1px solid #eae5da;padding-left:18px}.metric-pair b{font:500 33px var(--app-font-serif);color:#3c6048}.metric-pair b small{font:500 16px var(--app-font-serif);color:#a2a392}.metric-pair span{font-size:10px;color:#868d80}.progress-bar{height:5px;background:#e9e7dd;border-radius:5px;overflow:hidden}.progress-bar span{display:block;height:100%;background:#89a485;border-radius:5px;transition:width .3s}.progress-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px}.progress-footer>span{font-size:9px;color:#96988a}.progress-history{margin-top:16px;padding:19px}.history-count{flex:none;padding:6px 9px;background:#edf0e8;border-radius:20px;color:#657763;font-size:10px}.progress-support-summary{display:grid;grid-template-columns:minmax(150px,.38fr) minmax(0,1fr);gap:14px;align-items:center;margin:0 0 14px;padding:13px 15px;background:#eaf0e7;border-radius:9px}.progress-support-summary>div{display:grid;gap:4px}.progress-support-summary strong{font:500 16px var(--app-font-serif);color:#3d5c45;text-transform:capitalize}.progress-support-summary small{font-size:9px;color:#798678}.progress-support-summary p{margin:0;font-size:10px;line-height:1.6;color:#667363;white-space:pre-wrap;overflow-wrap:anywhere}.progress-history-list{display:grid;gap:10px}.progress-history-day{min-width:0;padding:16px;background:#f8f6ef;border:1px solid #e9e5d9;border-radius:10px}.progress-history-day>header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid #ebe7dd}.progress-history-day>header h3{font:500 18px var(--app-font-serif);text-transform:capitalize;color:#355542;margin:3px 0 0}.history-time{font-size:10px;color:#718071;font-variant-numeric:tabular-nums}.history-notes{display:grid;gap:5px;padding:11px 0;color:#586657;font-size:11px;line-height:1.55}.history-notes p,.history-section p{margin:0}.history-section{padding:10px 0;border-top:1px solid #ebe7dd;color:#5f705f;font-size:10px}.history-section ul{display:grid;gap:8px;padding:0;margin:7px 0 0;list-style:none}.history-section li{padding:9px 10px;background:#fffdf8;border-radius:7px;color:#718071;line-height:1.5;overflow-wrap:anywhere}.history-section li strong{color:#3f5c47}.history-section li p{margin-top:4px;font-size:10px}.history-section li small{display:block;margin-top:5px;color:#929587}.history-line-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.history-status{flex:none;padding:3px 7px;border-radius:12px;background:#ebece4;color:#727b6f;font-size:8px;text-transform:capitalize}.history-status-completed{background:#e4efe2;color:#4e7252}.history-status-in_progress{background:#f5ebd8;color:#967646}.history-status-upcoming{background:#e8edf0;color:#6e7d89}.evidence-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:stretch}.evidence-upload{padding:21px}.privacy-banner{display:flex;align-items:center;gap:9px;background:#e7eee3;padding:11px 12px;color:#5d785f;border-radius:7px;font-size:10px;margin-bottom:14px}.upload-drop{display:flex;min-height:143px;align-items:center;justify-content:center;flex-direction:column;border:1px dashed #c8cabc;border-radius:10px;background:#f8f6ef;margin-bottom:14px;cursor:pointer;text-align:center}.upload-drop input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.upload-icon{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;background:#e7eee3;color:#66896c;margin-bottom:8px}.upload-drop b{color:#506b55;font-size:11px}.upload-drop small{font-size:9px;color:#9a9c8f;margin-top:5px}.evidence-upload>.button{margin-top:14px}.evidence-aside{background:#e5ece1;display:flex;flex-direction:column;justify-content:center;padding:27px}.evidence-lock{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#d2e0d0;color:#65816a;margin-bottom:22px}.evidence-aside h2{font:500 28px/1.05 var(--app-font-serif);color:#33523e;margin:9px 0 12px}.evidence-aside p{font-size:11px;line-height:1.75;color:#758273;margin:0}.aside-rule{height:1px;background:#d0dbce;margin:23px 0 14px}.evidence-aside>small{font-size:9px;letter-spacing:.12em;color:#879181;font-weight:700}.file-types{display:flex;gap:6px;margin-top:9px}.file-types span{border:1px solid #ccd7c9;border-radius:4px;padding:4px 7px;font-size:8px;color:#6c806e}.camera-input{display:none}.camera-button{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:#66836a;font-size:10px;font-weight:700;padding:0 2px;margin:-5px 0 15px}.camera-button:hover{color:#b37261}.evidence-submit{margin-top:15px}.evidence-preview{margin-top:16px;padding:14px;border:1px solid #d8e2d5;background:#f4f7f0;border-radius:9px}.preview-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#69856c;margin-bottom:11px}.preview-heading h3{font:500 16px var(--app-font-serif);color:#3d5a46;margin:4px 0 0;overflow-wrap:anywhere}.evidence-preview img,.evidence-preview iframe{display:block;width:100%;max-height:440px;min-height:220px;object-fit:contain;background:#e8e9e1;border:0;border-radius:6px;margin-bottom:10px}.evidence-preview iframe{height:440px}.evidence-library{margin-top:16px}.evidence-library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.evidence-library-card{display:grid;grid-template-columns:82px minmax(0,1fr) 16px;align-items:start;gap:11px;padding:10px;border:1px solid #e8e4da;border-radius:9px;background:#fffdf9}.evidence-thumb{width:82px;height:72px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:6px;background:#f0eee6;color:#64785e}.evidence-thumb img{width:100%;height:100%;object-fit:cover}.evidence-file-info{min-width:0;display:grid;gap:4px}.evidence-file-info>b{font-size:11px;overflow-wrap:anywhere;color:#354b3e}.evidence-file-info>small{font-size:9px;color:#899185;overflow-wrap:anywhere}.evidence-file-info>p{font-size:10px;line-height:1.5;color:#667367;overflow-wrap:anywhere;margin:3px 0 0}.evidence-library-card>svg{color:#6e8168;margin-top:3px}.report-controls{margin-bottom:17px}.report-children{margin-top:16px;border-top:1px solid #eee9df;padding-top:14px}.care-check{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:10px;color:#6e7c6e}.care-check input{width:15px;height:15px;margin:0;accent-color:#64836a}.care-check small{display:block;color:#a18b72;font-weight:400;margin-left:2px}.report-ai-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-top:17px;padding:15px;background:#f6f5ef;border:1px solid #e9e7dc;border-radius:10px}.report-ai-copy{min-width:0;max-width:760px}.report-ai-copy>b{font-size:11px;color:#405d49}.report-ai-copy>p{font-size:10px;line-height:1.6;color:#758073;margin:6px 0 9px}.report-ai-iep{display:flex;align-items:flex-start;gap:8px;font-size:10px;line-height:1.5;color:#617262}.report-ai-iep input{width:14px;height:14px;margin:0;accent-color:#64836a;flex:0 0 auto}.report-ai-button{flex:0 0 auto;max-width:250px;white-space:normal;line-height:1.35}.report-ai-message{margin:10px 0 0;font-size:10px;line-height:1.5}.report-ai-message.success{color:#356344}.report-ai-message.error{color:#9a4e43}.report-paper{max-width:870px;margin:0 auto;background:#fffdf8;border:1px solid #e8e1d5;border-radius:8px;padding:46px 56px;color:#354b3e}.report-header{text-align:center}.report-brand{justify-content:center;margin-bottom:30px}.report-brand .brand-emblem{width:44px;height:44px}.report-brand .brand-wordmark{width:220px;max-height:34px}.report-type{font-size:9px;letter-spacing:.18em;color:#b17968;font-weight:700}.report-header h1{font:500 32px var(--app-font-serif);margin:10px 0 5px;color:#2b4938}.report-header>p{font-size:11px;color:#899083;margin:0}.report-line{height:1px;background:#e4dfd2;margin:26px 0 25px}.report-child{break-inside:avoid-page;margin:0 0 26px}.report-child h2{font:500 22px var(--app-font-serif);margin:0;color:#355642;border-bottom:1px solid #e9e4d9;padding-bottom:8px}.report-child h2 small{font:500 11px var(--app-font-sans);color:#969889;margin-left:8px}.report-summary{font-size:10px;color:#899185;margin:8px 0 13px}.report-narrative{margin:12px 0 16px;padding:14px 15px;background:#f7f7f1;border:1px solid #e5e8dd;border-radius:9px;break-inside:avoid-page}.report-narrative-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.report-narrative-heading h3{font-size:11px;color:#536c57;margin:0 0 3px}.report-narrative-heading small{font-size:9px;color:#899185}.report-narrative textarea{display:block;width:100%;min-height:125px;resize:vertical;padding:10px;border:1px solid #dfe3d9;border-radius:6px;background:#fffefb;color:#425247;font:11px/1.65 var(--app-font-sans);white-space:pre-wrap}.report-narrative-print{display:none;font-size:10px;line-height:1.65;color:#4f5e52;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.iep-editor{margin-top:18px;padding:16px;border:1px solid #e7e2d7;border-radius:14px;background:#fbfaf6}.iep-editor .mini-label{margin-bottom:8px;color:#526b59}.iep-editor .muted-copy{margin:0 0 14px;font-size:11px}.report-iep{margin:13px 0 17px;padding:12px 14px;border:1px solid #e7e2d7;border-radius:12px;background:#fbfaf6;break-inside:avoid-page}.report-iep-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.report-iep h3{font-size:11px;color:#516b55;margin:0}.report-iep p{font-size:10px;line-height:1.55;color:#59645c;margin:8px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.report-iep-summary{padding-top:8px;border-top:1px solid #e7e2d7}.report-absence,.report-behavior{font-size:10px;line-height:1.6;color:#59645c;margin:6px 0;white-space:pre-wrap;overflow-wrap:anywhere}.report-day{break-inside:avoid-page;padding:11px 0;border-top:1px solid #eee9df}.report-day h3{font-size:11px;color:#516b55;margin:0 0 8px;display:flex;justify-content:space-between;text-transform:none}.report-day h3 span{font-size:9px;font-weight:500;text-transform:capitalize;color:#899185}.report-lesson{margin:7px 0;padding:9px 11px;background:#f5f2ea;border-radius:5px;break-inside:avoid}.report-lesson>b{font-size:10px;color:#425b48}.report-lesson>span{float:right;font-size:8px;color:#829080;text-transform:capitalize}.report-lesson p{font-size:10px;line-height:1.55;color:#718071;margin:5px 0 0;overflow-wrap:anywhere}.day-notes{font-size:10px;line-height:1.6;color:#647166;margin:7px 0;overflow-wrap:anywhere;white-space:pre-wrap}.report-evidence{margin:16px 0 4px;padding-top:10px;border-top:1px solid #e8e3d7}.report-evidence>h3{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#65785f;margin:0 0 9px}.report-evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.report-evidence-grid figure{margin:0;overflow:hidden;border:1px solid #e8e3d7;border-radius:6px;background:#fff}.report-evidence-grid figure>a{display:flex;min-height:100px;align-items:center;justify-content:center;background:#f3f1ea;color:#61785d}.report-evidence-grid figure img{display:block;max-width:100%;max-height:220px;object-fit:contain}.report-evidence-grid figcaption{display:grid;gap:3px;padding:8px 9px;font-size:9px;line-height:1.45;overflow-wrap:anywhere}.report-evidence-grid figcaption b{color:#435747}.report-evidence-grid figcaption span,.report-evidence-grid figcaption p{color:#7c887b}.report-evidence-grid figcaption p{margin:3px 0 0;white-space:pre-wrap}.report-document{display:grid;justify-items:center;gap:6px;padding:10px;text-align:center;font-size:9px;overflow-wrap:anywhere}.day-notes,.care-detail{font-size:10px;line-height:1.65;color:#707b6e;margin:8px 0 0;overflow-wrap:anywhere}.care-detail{padding:7px 9px;background:#f1e9dd;border-radius:4px}.report-empty{font-size:10px;color:#96988d;padding:12px 0}.report-footer{border-top:1px solid #e4dfd2;padding-top:13px;margin-top:15px;color:#9a9c90;font-size:9px;text-align:center}.settings-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;align-items:start}.settings-panel .panel-title{margin-bottom:14px}.children-settings{display:flex;flex-direction:column}.child-setting{display:flex;align-items:center;gap:11px;border-top:1px solid #eee9df;padding:11px 0}.child-setting>div:nth-child(2){display:flex;flex-direction:column;gap:4px;flex:1}.child-setting b{font:500 15px var(--app-font-serif);color:#3b5844}.child-setting small{font-size:9px;color:#95998d}.archive-button{color:#a59a8c}.child-editor{border-top:1px solid #e9e3d8;margin-top:9px;padding-top:15px}.child-editor .panel-title h3{font:500 18px var(--app-font-serif);color:#3a5742;margin:0}.settings-panel+.settings-panel{margin-top:15px}.sidebar-admin{margin-bottom:17px}.sidebar-admin .side-label{display:block}.sidebar-admin .nav-link{min-height:43px;height:auto;padding:9px 10px;font-size:10px;line-height:1.35}.admin-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:17px;align-items:start}.admin-setting-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-setting{display:flex;min-width:0;flex-direction:column;gap:7px;padding:13px;border:1px solid #e9e4da;border-radius:9px;background:#f7f5ef}.admin-setting span{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#8b9488}.admin-setting b{font-size:12px;line-height:1.45;color:#3b5844;overflow-wrap:anywhere}.admin-footnote{font-size:9px;line-height:1.6}.account-count{min-width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#e7eee3;color:#466449;font-size:11px;font-weight:700}.admin-account-list{display:flex;flex-direction:column}.admin-account-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid #eee9df}.admin-account-row>div{display:flex;min-width:0;flex-direction:column;gap:4px}.admin-account-row b{font-size:11px;color:#405748;overflow-wrap:anywhere}.admin-account-row small{font-size:9px;color:#92998d}.admin-status{flex-shrink:0;border-radius:20px;padding:5px 8px;font-size:8px;font-weight:700}.admin-status.verified{background:#e4eee3;color:#45664c}.admin-status.unverified{background:#f3e8dc;color:#8a6852}.setup-card{background:#e7eee3}.setup-card .calendar-icon{margin-bottom:12px}.setup-card .text-link{display:flex;margin-top:11px}.light-note{background:#f0e7d8;margin-top:14px}.auth-frame{min-height:100dvh;background:#f4f0e7;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:25px}.auth-mark{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:22px}.auth-mark .brand-emblem{width:40px;height:40px}.auth-mark .brand-wordmark{width:190px;max-height:30px}.auth-box{width:min(420px,100%);max-width:100%;background:#fffdf8;border:1px solid #e8e1d5;border-radius:14px;padding:10px;box-shadow:0 15px 40px #4f5b4010}.setup-message{width:min(360px,calc(100vw - 60px));padding:22px;text-align:center;color:#6e896e}.setup-message h2{font:500 25px var(--app-font-serif);color:#31513f}.setup-message p{font-size:12px;line-height:1.7;color:#7c877a}.text-link{cursor:pointer}.icon-button{border:0;background:transparent;color:#758675;display:grid;place-items:center;padding:7px;border-radius:6px}.icon-button:hover{background:#eeece3}@media(max-width:1100px){.workspace{grid-template-columns:220px minmax(0,1fr)}.sidebar{padding-left:12px;padding-right:12px}.topbar{padding:0 28px}.page-content{padding:29px 28px 65px}.dashboard-layout{grid-template-columns:minmax(0,1fr) 260px}.journal-layout{grid-template-columns:minmax(0,1fr) 255px}.quick-link-grid{grid-template-columns:1fr}.quick-link-grid>a{padding:10px}.welcome-card{grid-template-columns:1fr}.welcome-card-brand{width:min(100%,280px);min-height:170px}}@media(max-width:780px){.welcome-page{padding:0 22px}.welcome-top{height:70px}.welcome-hero{grid-template-columns:1fr;gap:28px;padding:54px 0 30px}.hero-copy{padding:0}.hero-copy h1{font-size:62px}.hero-art{justify-self:center;height:345px;max-width:500px}.welcome-details{grid-template-columns:1fr;gap:24px;padding:28px 0}.welcome-details p{max-width:420px}.release-signup{grid-template-columns:1fr;gap:22px;margin-top:30px}.release-signup-form{max-width:480px}.welcome-footer{padding:18px 0;gap:16px;flex-wrap:wrap}.workspace{display:block;padding-bottom:61px}.sidebar{position:fixed;z-index:20;left:0;top:0;width:260px;transform:translate(-105%);transition:transform .2s ease;box-shadow:10px 0 30px #3043331a}.sidebar.sidebar-open{transform:translate(0)}.topbar{height:60px;padding:0 17px}.breadcrumb{font-size:10px}.today-chip{display:none}.mobile-menu{display:grid}.page-content{padding:23px 17px 45px}.page-heading{margin-bottom:20px}.page-heading h1{font-size:34px}.page-heading .button{padding:9px}.dashboard-layout,.journal-layout,.settings-layout,.admin-layout,.evidence-grid,.calendar-grid{grid-template-columns:1fr}.calendar-import-controls,.calendar-import-apply{align-items:stretch;flex-direction:column}.calendar-import-controls label{width:100%}.calendar-import-list{grid-template-columns:1fr}.calendar-import-preview{padding:12px}.dashboard-aside,.journal-aside{display:grid;grid-template-columns:1fr 1fr;align-items:start}.journal-tip{margin:0}.learner-list,.progress-grid{grid-template-columns:1fr}.progress-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-metrics>div:nth-child(3){border-left:0;padding-left:0}.progress-history-day{padding:12px}.progress-support-summary{grid-template-columns:1fr}.progress-footer{align-items:flex-start;flex-direction:column}.quick-link-grid{grid-template-columns:1fr}.welcome-card{min-height:240px;padding:23px}.welcome-card h2{font-size:30px}.card-sun{right:11%}.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-grid .panel{padding:18px}.settings-aside{display:grid;grid-template-columns:1fr 1fr;align-items:start}.mobile-tabs{position:fixed;z-index:15;bottom:0;left:0;right:0;height:61px;display:flex;align-items:stretch;justify-content:space-around;background:#f8f5ed;border-top:1px solid #e1dccf;padding:5px 5px env(safe-area-inset-bottom);box-shadow:0 -4px 15px #3b45340b}.mobile-tabs a{min-width:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#899286;font-size:8px}.mobile-tabs a.mobile-active{color:#426849}.mobile-tabs a.mobile-active:before{content:"";position:absolute;top:0;width:22px;height:2px;background:#c78370}.report-paper{padding:35px 28px}}@media(max-width:520px){.welcome-top .brand{gap:10px;flex-basis:320px;max-width:calc(100% - 40px)}.welcome-top .brand-emblem{width:48px;height:48px}.private-label{font-size:0}.private-label svg{width:17px;height:17px}.hero-copy h1{font-size:54px}.hero-intro{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:12px}.hero-art{height:305px}.welcome-footer{font-size:10px}.page-heading h1{font-size:30px}.page-content{padding-left:13px;padding-right:13px}.dashboard-aside,.journal-aside,.settings-aside{display:flex}.welcome-card{min-height:232px}.welcome-card-brand{order:-1;margin-inline:auto;min-height:170px}.day-art-card{min-height:210px;padding:22px}.day-art-card-copy{max-width:73%}.day-art-card-visual{inset:14% 0 0 43%;opacity:.65}.section-head{align-items:flex-start;gap:12px}.section-head h2,.panel-title h2{font-size:19px}.panel{padding:16px}.admin-setting-grid,.quick-link-grid{grid-template-columns:1fr}.quick-link-grid>a{padding:10px}.form-grid,.child-journal .form-grid:first-of-type,.filter-controls{grid-template-columns:1fr}.journal-datebar{align-items:flex-start;flex-direction:column;gap:12px;padding:14px}.journal-datebar input{width:100%}.child-journal-head .grade-chip{font-size:8px}.form-foot{align-items:flex-start;flex-direction:column}.form-foot .button{width:100%}.plan-grid{grid-template-columns:1fr}.weekday-list{grid-template-columns:1fr 1fr}.progress-footer{align-items:flex-start;flex-direction:column}.report-controls>.panel-title{align-items:flex-start;flex-direction:column}.report-controls>.panel-title .button{width:100%}.report-paper{padding:27px 17px}.report-header h1{font-size:26px}.report-child h2{font-size:19px}.report-lesson>span{float:none;display:block;margin-top:4px}.care-check{align-items:flex-start;flex-wrap:wrap}.care-check small{width:100%;margin-left:24px}.report-ai-controls{align-items:stretch;flex-direction:column}.report-ai-button{max-width:none;width:100%}.child-setting{gap:7px}.child-setting .text-button{padding:6px 4px;font-size:9px}.auth-box{padding:5px}.evidence-library-grid,.report-evidence-grid{grid-template-columns:1fr}.evidence-library-card{grid-template-columns:64px minmax(0,1fr) 16px;gap:8px;padding:8px}.evidence-thumb{width:64px;height:64px}.calendar-entry{align-items:flex-start}}@media print{@page{size:auto;margin:16mm}body{background:#fff;color:#222}.sidebar,.topbar,.mobile-tabs,.page-heading,.page-intro,.report-controls,.welcome-top,.button{display:none!important}.workspace{display:block;min-height:0}.main-area{display:block}.page-content{max-width:none;padding:0}.report-paper{max-width:none;margin:0;border:0;border-radius:0;padding:0;box-shadow:none;color:#222;background:#fff}.report-header,.report-lesson,.report-evidence-grid figure{break-inside:avoid-page}.report-child,.report-day,.report-evidence{break-inside:auto}.report-narrative textarea,.report-narrative-heading button{display:none!important}.report-narrative-print{display:block}.report-narrative{background:#fff;border-color:#e4e4de;padding:11px 12px}.report-header h1,.report-child h2,.report-day h3,.report-lesson>b{color:#222}.report-lesson{background:#f4f4f1;print-color-adjust:exact;-webkit-print-color-adjust:exact}.report-evidence-grid figure img{max-height:165px}.report-evidence-grid{gap:7px}}@layer utilities{input[type=search]::-webkit-search-cancel-button{display:none}[contenteditable][data-placeholder]:empty:before{content:attr(data-placeholder);color:hsl(var(--muted-foreground));pointer-events:none}.toggle-elevate:before,.toggle-elevate-2:before{content:"";pointer-events:none;position:absolute;inset:0;border-radius:inherit;z-index:-1}.toggle-elevate.toggle-elevated:before{background-color:var(--elevate-2)}.border.toggle-elevate:before{inset:-1px}.hover-elevate:not(.no-default-hover-elevate),.active-elevate:not(.no-default-active-elevate),.hover-elevate-2:not(.no-default-hover-elevate),.active-elevate-2:not(.no-default-active-elevate){position:relative;z-index:0}.hover-elevate:not(.no-default-hover-elevate):after,.active-elevate:not(.no-default-active-elevate):after,.hover-elevate-2:not(.no-default-hover-elevate):after,.active-elevate-2:not(.no-default-active-elevate):after{content:"";pointer-events:none;position:absolute;inset:0;border-radius:inherit;z-index:999}.hover-elevate:hover:not(.no-default-hover-elevate):after,.active-elevate:active:not(.no-default-active-elevate):after{background-color:var(--elevate-1)}.hover-elevate-2:hover:not(.no-default-hover-elevate):after,.active-elevate-2:active:not(.no-default-active-elevate):after{background-color:var(--elevate-2)}.border.hover-elevate:not(.no-hover-interaction-elevate):after,.border.active-elevate:not(.no-active-interaction-elevate):after,.border.hover-elevate-2:not(.no-hover-interaction-elevate):after,.border.active-elevate-2:not(.no-active-interaction-elevate):after{inset:-1px}}.curriculum-page{display:grid;grid-template-columns:minmax(0,1fr);gap:17px;max-width:1080px;min-width:0;width:100%}.curriculum-page>*{min-width:0}.curriculum-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:8px 2px 5px}.curriculum-intro h2,.saved-heading h2,.review-heading h2{font:500 clamp(25px,3vw,34px)/1.15 var(--app-font-serif);letter-spacing:-.035em;color:#31513f;margin:8px 0}.curriculum-intro p,.review-heading p{max-width:590px;color:#758173;font-size:12px;line-height:1.7;margin:0}.curriculum-note{display:flex;align-items:center;gap:10px;padding:12px 15px;background:#e7eee3;border-radius:9px;color:#56745c;font-size:10px;line-height:1.5;white-space:nowrap}.curriculum-note small{color:#889385}.curriculum-upload{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.85fr);gap:19px 23px;align-items:center;padding:24px;background:#fbf9f3}.curriculum-upload-copy h2,.curriculum-actions h2,.covered-sequence h2,.curriculum-progress h2{font:500 23px/1.15 var(--app-font-serif);color:#31513f;margin:7px 0}.curriculum-upload-copy>p{max-width:540px;color:#7c8779;font-size:11px;line-height:1.65;margin:0 0 13px}.privacy-line{display:flex;align-items:center;gap:8px;color:#71836f;font-size:10px}.privacy-line svg{color:#789678;flex:none}.curriculum-link-import{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px 12px;padding:14px;background:#f3f4ed;border:1px solid #e5e8dd;border-radius:10px}.curriculum-link-import .full-label{min-width:0}.curriculum-link-import>small{grid-column:1/-1;color:#879183;font-size:9px;line-height:1.5}.curriculum-download-list{grid-column:1/-1;display:grid;gap:8px;padding:14px;background:#fffdfa;border:1px solid #e9e5d9;border-radius:10px;font-size:10px;color:#49644e}.curriculum-download-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:7px;border-top:1px solid #eee9de}.curriculum-download-list>div>span{min-width:0;overflow-wrap:anywhere}.file-drop{min-height:117px;border:1px dashed #c8d1c3;border-radius:10px;background:#f4f5ed;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;cursor:pointer;color:#49644e;transition:background .18s,transform .18s}.file-drop:hover{background:#eaf0e5;transform:translateY(-1px)}.file-drop:focus-visible{outline:3px solid #b9cdb6}.file-drop b{font-size:11px;max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-drop small{font-size:9px;color:#92988a}.upload-symbol{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#e2eade;color:#6c8a6d}.curriculum-scan{grid-column:2;justify-self:stretch}.curriculum-spin{animation:curriculum-rotate 1.2s linear infinite}@keyframes curriculum-rotate{to{transform:rotate(360deg)}}.curriculum-inline-error{grid-column:2;color:#a65b4b;font-size:10px;margin:-10px 0 0}.curriculum-message{max-width:520px;margin:20px auto;text-align:center;padding:30px}.curriculum-message>svg{color:#b77965}.curriculum-message h2{font:500 23px var(--app-font-serif);color:#31513f}.curriculum-message p{font-size:11px;line-height:1.6;color:#7d887b}.scan-progress{display:flex;align-items:center;gap:13px;position:relative;overflow:hidden}.scan-progress-mark{width:41px;height:41px;border-radius:50%;background:#e8eee2;color:#68856a;display:grid;place-items:center}.scan-progress b{font-size:12px;color:#405a46}.scan-progress p{margin:4px 0 0;font-size:10px;color:#8b9386}.scan-progress-line{position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#d08c75,#e8c59c,#d08c75);transform-origin:left;animation:scan-sweep 1.5s ease-in-out infinite alternate}@keyframes scan-sweep{0%{transform:scaleX(.16)}to{transform:scaleX(.92)}}.curriculum-skeleton{display:grid;gap:12px}.curriculum-skeleton span,.scheduled-loading span,.curriculum-progress-skeleton span{height:90px;border-radius:11px;background:linear-gradient(100deg,#ebe8dd 20%,#f3f0e7,#ebe8dd 60%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.review-panel{padding:24px;background:#fbf9f3}.review-heading,.saved-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.review-heading h2{margin-bottom:5px}.curriculum-warnings{display:flex;gap:10px;padding:13px 15px;border:1px solid #ead9be;background:#f7f0df;color:#8f7047;border-radius:8px;margin:0 0 17px;font-size:10px}.curriculum-warnings p{margin:5px 0 0;color:#7d715b;line-height:1.5}.curriculum-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;margin-bottom:15px}.curriculum-settings label,.review-details,.scheduled-fields label{display:block}.curriculum-settings input,.review-details textarea,.scheduled-fields input,.shift-controls input{margin-top:6px}.field-hint{display:block;margin-top:5px;color:#96998d;font-size:9px;font-weight:400;line-height:1.4}.curriculum-hours{grid-template-columns:minmax(0,1.5fr) minmax(120px,.7fr) minmax(120px,.7fr);align-items:end;padding:13px;background:#f2f3ea;border-radius:9px}.field-label{display:block;font-size:10px;font-weight:700;color:#6b796b;margin-bottom:8px}.curriculum-hours .weekday-list{display:flex;gap:5px}.curriculum-hours .weekday{flex:1}.review-lessons{display:grid;gap:11px;margin-top:14px}.review-lesson{position:relative;display:grid;grid-template-columns:50px minmax(0,1fr) 25px;gap:12px;padding:15px;background:#f5f3eb;border:1px solid #e9e5d9;border-radius:10px}.review-lesson-index{display:flex;flex-direction:column;align-items:center;gap:6px;padding-top:4px;color:#bc806e}.review-lesson-index span{font:500 22px var(--app-font-serif)}.review-lesson-index small{font-size:8px;letter-spacing:.08em;color:#8a9384}.review-lesson-fields{min-width:0}.lesson-top-fields{grid-template-columns:.7fr .9fr 1.5fr;margin-bottom:10px}.review-details{margin-top:9px}.review-details textarea{min-height:55px}.assign-row{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-top:12px}.assign-row>span{display:flex;align-items:center;gap:6px;color:#788576;font-size:9px;font-weight:700;padding-top:6px}.assign-row .selection-row{gap:5px}.assign-row .select-child{padding:5px 9px;font-size:9px}.remove-lesson{align-self:start;color:#a17d70}.add-review-lesson{display:flex;align-items:center;gap:7px;border:0;background:transparent;color:#617d64;font-size:10px;font-weight:700;padding:12px 5px}.review-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #ebe6da;padding-top:15px;margin-top:4px}.review-footer>span{font-size:9px;color:#8b9285}.saved-curriculum{display:grid;gap:14px}.saved-heading{align-items:center;margin:0;padding:14px 3px 2px}.saved-heading h2{margin-bottom:4px}.saved-heading p{color:#899183;font-size:10px;margin:0}.schedule-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.schedule-summary>div{display:flex;align-items:center;gap:10px;background:#e8eee3;border-radius:9px;padding:13px;color:#68846a}.schedule-summary span{display:flex;flex-direction:column;gap:4px;min-width:0}.schedule-summary b{font-size:10px;color:#405b47}.schedule-summary small{font-size:9px;color:#899284;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.covered-sequence,.curriculum-actions{padding:20px}.covered-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.covered-list>div{display:grid;grid-template-columns:18px minmax(0,1fr);gap:2px 8px;padding:10px;border-radius:8px;background:#f2f2e8;color:#799274}.covered-list b{font-size:10px;color:#596f59;font-weight:600}.covered-list small{grid-column:2;color:#96998b;font-size:9px}.curriculum-actions .panel-title{margin-bottom:8px}.curriculum-actions>.muted-copy{margin:0 0 13px}.action-work-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.action-work-row{display:flex;align-items:center;gap:9px;padding:9px;border:1px solid #e9e4d8;border-radius:8px;background:#fcfaf4;cursor:pointer}.action-work-row input,.scheduled-select input{accent-color:#597a5d;width:14px;height:14px;margin:0}.work-day{font-size:8px;color:#a97563;white-space:nowrap}.work-main{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.work-main b{font-size:10px;color:#50644f;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.work-main small{font-size:8px;color:#96998d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-work-row>svg{color:#a9ac9e}.curriculum-action-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;border-top:1px solid #eee9df;margin-top:14px;padding-top:13px}.action-buttons,.shift-controls{display:flex;align-items:flex-end;gap:7px;flex-wrap:wrap}.shift-controls label{width:115px}.shift-controls .text-link{white-space:nowrap;padding-bottom:11px}.curriculum-empty{text-align:center;padding:31px 15px;border:1px dashed #d7d8cb;border-radius:11px;background:#f8f6ef}.curriculum-empty h3{font:500 20px var(--app-font-serif);color:#395842;margin:0 0 7px}.curriculum-empty p{font-size:10px;line-height:1.5;color:#8b9385;margin:0}.curriculum-refresh{font-size:9px;color:#9a9c8e;margin:0}.scheduled-panel{padding:19px}.scheduled-panel>.muted-copy{margin:-3px 0 13px}.scheduled-list{display:grid;gap:8px}.scheduled-item{display:grid;grid-template-columns:77px minmax(0,1fr);gap:12px;border:1px solid #e9e4d8;border-radius:9px;padding:13px;background:#fcfaf5}.scheduled-select{display:flex;align-items:flex-start;gap:7px;padding-top:3px}.scheduled-number{font-size:8px;letter-spacing:.07em;color:#b87867;white-space:nowrap}.scheduled-item-content{min-width:0}.scheduled-title{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.scheduled-title h3{font:500 17px var(--app-font-serif);color:#365441;margin:4px 0}.scheduled-item-content>p{font-size:10px;line-height:1.55;color:#7f897c;margin:5px 0}.scheduled-tasks{display:block;color:#8c9385;font-size:9px;line-height:1.5;margin:5px 0}.scheduled-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(135px,.45fr);gap:10px;margin-top:9px}.scheduled-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #eee9df;margin-top:12px;padding-top:12px}.scheduled-actions>span{font-size:9px;color:#92978a}.scheduled-actions>div{display:flex;gap:7px;flex-wrap:wrap}.scheduled-loading{display:grid;gap:8px;margin-top:12px}.scheduled-loading span{height:55px}.calendar-curriculum{margin-top:16px}.calendar-curriculum>.panel-title>svg{color:#789177}.curriculum-date-row small{max-width:680px;line-height:1.5}.curriculum-date-tag{align-self:flex-start;padding:5px 8px;border-radius:20px;background:#e9eee3;color:#69806a;font-size:8px;white-space:nowrap}.calendar-separation-note,.curriculum-separation-note{margin:13px 0 0;color:#92978a;font-size:9px;line-height:1.55}.curriculum-progress{margin-top:18px}.curriculum-progress .panel-title{margin-bottom:13px}.curriculum-progress-list{display:grid;gap:5px}.curriculum-progress-list article{display:grid;grid-template-columns:37px minmax(100px,1fr) minmax(125px,.8fr) minmax(80px,.7fr);align-items:center;gap:11px;padding:10px 0;border-top:1px solid #eee9df}.curriculum-progress-name{display:grid;gap:4px}.curriculum-progress-name b{font-size:11px;color:#4a614c}.curriculum-progress-name small{font-size:9px;color:#93988b}.curriculum-progress-metrics{display:flex;gap:13px}.curriculum-progress-metrics span{font-size:9px;color:#8b9284}.curriculum-progress-metrics b{color:#526d54}.curriculum-progress-empty{margin-top:18px;background:#f3f1e7}.curriculum-progress-empty h2{font:500 22px var(--app-font-serif);color:#385741;margin:7px 0}.curriculum-progress-empty p{font-size:10px;color:#818b7e;line-height:1.6}.curriculum-progress-skeleton{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.curriculum-progress-skeleton span{height:75px}@media(max-width:780px){.curriculum-upload{grid-template-columns:1fr;padding:18px}.curriculum-link-import{grid-template-columns:minmax(0,1fr)}.curriculum-link-import>small{grid-column:1}.curriculum-download-list,.curriculum-scan,.curriculum-inline-error{grid-column:1}.curriculum-intro{align-items:flex-start;flex-direction:column}.curriculum-note{white-space:normal}.review-panel{padding:17px}.curriculum-hours{grid-template-columns:1fr 1fr}.schedule-days{grid-column:1/-1}.lesson-top-fields{grid-template-columns:1fr 1fr}.lesson-top-fields label:last-child{grid-column:1/-1}.action-work-list{grid-template-columns:1fr}.curriculum-action-footer{align-items:flex-start;flex-direction:column}.schedule-summary{grid-template-columns:1fr}.schedule-summary>div{padding:10px}.calendar-curriculum{margin-top:12px}.curriculum-progress-list article{grid-template-columns:34px minmax(90px,1fr) minmax(120px,.8fr)}.curriculum-progress-list .progress-bar{grid-column:2/-1}}@media(max-width:520px){.curriculum-settings{grid-template-columns:1fr}.curriculum-hours{grid-template-columns:1fr 1fr}.schedule-days{grid-column:1/-1}.review-heading,.saved-heading{align-items:flex-start;flex-direction:column}.review-lesson{grid-template-columns:34px minmax(0,1fr) 20px;gap:7px;padding:10px}.review-lesson-index span{font-size:17px}.review-footer{align-items:stretch;flex-direction:column}.review-footer .button,.curriculum-action-footer .action-buttons,.curriculum-action-footer .action-buttons .button{width:100%}.shift-controls{width:100%;align-items:flex-end}.shift-controls label{flex:1}.scheduled-item{grid-template-columns:1fr;padding:11px}.scheduled-select{align-items:center}.scheduled-fields{grid-template-columns:1fr}.scheduled-actions{align-items:stretch;flex-direction:column}.scheduled-actions>div{flex-direction:column}.scheduled-actions .button{width:100%}.curriculum-progress-list article{grid-template-columns:32px minmax(0,1fr)}.curriculum-progress-metrics,.curriculum-progress-list .progress-bar{grid-column:2}.covered-list{grid-template-columns:1fr}}.saved-heading-with-cover{display:grid;grid-template-columns:132px minmax(0,1fr);gap:18px;align-items:start}.curriculum-cover{display:flex;flex-direction:column;gap:7px;min-width:0}.saved-curriculum{grid-template-columns:minmax(0,1fr);min-width:0}.saved-curriculum>*{min-width:0}.saved-curriculum>label{width:100%;max-width:100%}.saved-curriculum select{width:100%;min-width:0;max-width:100%}.saved-heading-with-cover .saved-heading{min-width:0;flex-wrap:wrap;align-items:flex-start;gap:12px}.saved-heading-with-cover .saved-heading>div{min-width:0;flex:1 1 180px}.saved-heading-with-cover .saved-heading h2,.saved-heading-with-cover .saved-heading p{overflow-wrap:anywhere}.saved-heading-with-cover .saved-heading .button{max-width:100%;white-space:normal}.cover-frame{position:relative;aspect-ratio:3/4;background:#efe9dc;border:1px solid #e3dccd;border-radius:9px;overflow:hidden;display:grid;place-items:center;box-shadow:0 6px 16px #574d3514}.cover-frame img{width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .3s}.cover-frame img.is-loaded{opacity:1}.cover-loading{position:absolute;inset:0;background:linear-gradient(100deg,#ebe8dd 20%,#f3f0e7,#ebe8dd 60%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.cover-empty{border-style:dashed;background:#f6f2e9}.cover-add{border:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:7px;color:#6f8a72;font-size:11px;font-weight:700;width:100%;height:100%;justify-content:center}.cover-busy{position:absolute;inset:0;display:grid;place-items:center;background:#fbf9f3c4;color:#315a47}.cover-caption{display:block;font-size:9px;color:#8c9387;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cover-actions{display:flex;flex-wrap:wrap;gap:2px}.cover-actions .text-button{display:inline-flex;align-items:center;gap:5px;padding:6px 6px 6px 0;min-height:32px}.cover-error,.cover-notice{margin:0;font-size:10px;line-height:1.45}.cover-error{color:#a3594c}.cover-notice{color:#567358}.cover-error .text-button{padding:2px 6px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:640px){.saved-heading-with-cover{grid-template-columns:96px minmax(0,1fr);gap:13px}.saved-heading-with-cover .saved-heading{align-items:stretch}.saved-heading-with-cover .saved-heading>div{flex:0 1 auto;width:100%;max-width:100%}.saved-heading-with-cover .saved-heading .button{align-self:flex-start}.cover-actions .text-button{min-height:40px}}.day-uploads{display:flex;flex-direction:column;gap:12px;min-width:0}.day-uploads>.panel-title{margin-bottom:0}.day-uploads-note{margin:0}.day-uploads-note b{color:#4b6a55}.day-uploads-blocked{margin:0;padding:11px 13px;border-radius:8px;background:#f1ebdf;color:#7a6650;font-size:11px;line-height:1.55}.day-uploads-form{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0}.upload-drop.compact-drop{padding:16px 12px}.day-uploads-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;min-width:0}.day-uploads-row>*{min-width:0}.day-uploads-actions{display:flex;gap:8px;flex-wrap:wrap;min-width:0}.day-uploads-actions .camera-button{margin:0}.day-uploads-list{border-top:1px solid #eee8dc;padding-top:12px;min-width:0}.day-uploads-list-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.day-uploads-list-head .mini-label{margin:0}.archive-pager{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:14px;font-size:11px;color:#7d877a}.archive-browser{margin-top:16px;min-width:0}.archive-kinds{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.archive-kind{border:1px solid #e1dbcd;background:#f6f3eb;color:#62705f;border-radius:30px;padding:7px 13px;font-size:11px;font-weight:600}.archive-kind.active{background:#315a47;border-color:#315a47;color:#fff8ee}.archive-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.4fr);gap:12px;align-items:end;min-width:0}.archive-filters>label,.select-wrap{min-width:0;display:block}.archive-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin-top:7px;min-width:0}.archive-search-row input{margin:0!important}.archive-upload-category{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;min-width:0;margin:12px 0}.archive-upload-category>label{display:grid;gap:6px;align-content:start;min-width:0;color:#5e6d60;font-size:11px;font-weight:600}.archive-upload-category input,.archive-upload-category select{width:100%;min-width:0}.archive-upload-category small{color:#889183;font-size:9px;line-height:1.5;font-weight:400}.archive-batch-note{margin:5px 0 10px;line-height:1.55}.archive-upload-file{display:flex;gap:8px;align-items:center;justify-content:space-between;max-width:min(90%,700px);font-size:10px;text-align:left;overflow-wrap:anywhere}.archive-upload-file>span{min-width:0;overflow-wrap:anywhere}.archive-upload-file small{flex:none}.archive-document-filters{display:grid;grid-template-columns:minmax(180px,245px) minmax(180px,245px);gap:12px;margin:-2px 0 14px}.archive-document-filters>label{display:grid;gap:6px;min-width:0;color:#5e6d60;font-size:11px;font-weight:600}.archive-document-filters input,.archive-document-filters select{width:100%;min-width:0}.archive-document-tag{border-radius:16px;background:#f3eee2;color:#776343;padding:2px 8px;font-size:9px}.archive-clear{display:inline-flex;align-items:center;gap:5px;margin-top:6px}.archive-skeleton{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:14px}.archive-skeleton span{height:78px;border-radius:9px;background:linear-gradient(100deg,#ebe8dd 20%,#f3f0e7,#ebe8dd 60%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.archive-list{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:14px;transition:opacity .2s}.archive-list.is-fetching{opacity:.6}.archive-row{display:grid;grid-template-columns:82px minmax(0,1fr);gap:13px;padding:11px;border:1px solid #e8e4da;border-radius:10px;background:#fffdf9;min-width:0}.archive-row.kind-journal{border-left:3px solid #9cb39a}.archive-row.kind-curriculum_photo{border-left:3px solid #d8b07c}.archive-icon{color:#7d937c}.archive-body{min-width:0;display:grid;gap:5px}.archive-body h3{font:500 16px/1.25 var(--app-font-serif);color:#2f4c3c;margin:0;overflow-wrap:anywhere}.archive-meta{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;font-size:10px;color:#89917f;min-width:0}.archive-children{overflow-wrap:anywhere}.archive-badge{border-radius:20px;padding:3px 8px;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:#e7ede2;color:#4c6a52}.badge-journal{background:#f0e7d8;color:#8a6550}.badge-curriculum_photo{background:#f3e8d1;color:#7a6234}.archive-lessons{display:inline-flex;align-items:center;gap:5px;font-size:10px;color:#5d7a63;font-weight:600}.archive-summary{margin:0;font-size:11px;line-height:1.6;color:#617060;white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.archive-summary.open{display:block;-webkit-line-clamp:unset}.archive-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.archive-actions .text-button{padding:2px 0}@media(max-width:780px){.archive-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-search{grid-column:1/-1}}@media(max-width:520px){.archive-filters,.day-uploads-row{grid-template-columns:minmax(0,1fr)}.archive-row{grid-template-columns:60px minmax(0,1fr);gap:9px;padding:9px}.archive-row .evidence-thumb{width:60px;height:60px}.archive-upload-category,.archive-document-filters{grid-template-columns:minmax(0,1fr)}}.report-optin{display:flex;align-items:flex-start;gap:8px;margin-top:10px;min-width:0;font-weight:600}.report-optin input{width:auto!important;margin:2px 0 0!important;flex:none}.report-optin small{display:block;font-weight:400;color:#8a9185;font-size:9px;margin-top:2px}.daily-assessments{display:grid;gap:12px;border-top:1px solid #eee8dc;padding-top:15px;margin-top:14px;min-width:0}.daily-assessments-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.daily-assessments-head .mini-label,.assessment-files>.mini-label{display:flex;align-items:center;gap:6px;margin:0;color:#647865}.daily-assessments-head p{margin:4px 0 0;color:#7a8479;font-size:11px}.daily-assessment-list{display:grid;gap:10px;min-width:0}.daily-assessment-card{display:grid;gap:10px;padding:13px;border:1px solid #e8e4da;border-radius:10px;background:#fffdf9;min-width:0}.daily-assessment-card label{display:grid;gap:5px;font-size:11px;font-weight:600;color:#596658;min-width:0}.daily-assessment-card input:not([type=file]),.daily-assessment-card textarea{width:100%;min-width:0}.daily-assessment-card textarea{min-height:75px;resize:vertical}.assessment-files{display:grid;gap:8px;padding-top:10px;border-top:1px solid #eee8dc;min-width:0}.assessment-upload-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;min-width:0}.assessment-file-picker{display:grid!important;gap:4px!important;padding:9px 11px;border:1px dashed #c8cfc2;border-radius:8px;background:#faf9f3;cursor:pointer}.assessment-file-picker input{width:100%;max-width:100%;font-size:10px}.assessment-file-picker small{color:#858d81;font-size:9px;font-weight:400}.assessment-file-list{display:grid;gap:6px}.assessment-file-link{display:flex;align-items:center;gap:8px;min-width:0;padding:8px 10px;border-radius:7px;background:#f1f4ed;color:#47624e;font-size:10px;text-decoration:none}.assessment-file-link span{min-width:0;flex:1;overflow-wrap:anywhere}.assessment-file-link.pending{color:#798276}.assessment-upload-message{margin:0;font-size:10px;color:#477154;overflow-wrap:anywhere}.assessment-upload-message.failure{color:#a04d3d}.daily-assessment-save-note{color:#838b7f;font-size:10px;line-height:1.5}@media(max-width:520px){.assessment-upload-row{grid-template-columns:minmax(0,1fr)}.assessment-upload-row>.button{width:100%;justify-content:center}.daily-assessments-head{align-items:flex-start}}:root{--background: 34 38% 95%;--foreground: 150 22% 19%;--card: 38 48% 99%;--card-foreground: 150 22% 19%;--card-border: 30 25% 87%;--border: 30 25% 86%;--input: 30 22% 83%;--primary: 151 26% 29%;--primary-foreground: 38 50% 98%;--secondary: 15 43% 91%;--secondary-foreground: 8 32% 35%;--muted: 36 27% 91%;--muted-foreground: 145 10% 42%;--accent: 349 31% 88%;--accent-foreground: 345 34% 31%;--ring: 150 29% 41%;--sidebar: 34 31% 92%;--sidebar-foreground: 150 22% 19%;--sidebar-border: 31 23% 85%;--sidebar-primary: 151 26% 29%;--sidebar-primary-foreground: 38 50% 98%;--sidebar-accent: 144 25% 86%;--sidebar-accent-foreground: 150 24% 24%;--radius: 1rem;--app-font-sans: "DM Sans", sans-serif;--app-font-serif: "Fraunces", serif}.dark{--background: 151 17% 13%;--foreground: 37 34% 92%;--card: 150 16% 17%;--card-foreground: 37 34% 92%;--card-border: 150 12% 27%;--border: 150 12% 27%;--input: 150 12% 30%;--primary: 143 30% 65%;--primary-foreground: 151 23% 14%;--secondary: 12 25% 28%;--secondary-foreground: 35 36% 91%;--muted: 150 13% 23%;--muted-foreground: 140 12% 68%;--accent: 343 23% 32%;--accent-foreground: 37 34% 92%}html{scroll-behavior:smooth}body{background:radial-gradient(ellipse at 12% 4%,#f3e4df9c 0,transparent 33rem),radial-gradient(ellipse at 93% 24%,#e4ecdf80 0,transparent 36rem),hsl(var(--background));color:hsl(var(--foreground));letter-spacing:-.01em}body:after{content:"";position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.13'/%3E%3C/svg%3E")}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid #b56d7c!important;outline-offset:3px}::selection{background:#e8c9d0;color:#253d31}.welcome-page{padding-inline:clamp(22px,7.1vw,112px);color:#263f33;background:radial-gradient(ellipse at 88% 30%,#e7d6d2 0,transparent 31rem),radial-gradient(ellipse at 12% 72%,#dce7d8 0,transparent 28rem),#f4f0e8}.welcome-top{height:92px;border-color:#d9d4c9}.welcome-top .brand-emblem{filter:drop-shadow(0 5px 8px #69394a20)}.private-label{padding:10px 14px;border-radius:99px;border:1px solid #ffffffad;background:#ffffff6b;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#52695d}.welcome-hero{min-height:610px;gap:clamp(30px,5vw,80px);padding-block:60px 58px}.hero-copy{padding-left:clamp(0px,2vw,28px)}.hero-copy .eyebrow{color:#9d5c6d}.hero-copy h1{font-size:clamp(58px,7.2vw,106px);line-height:.91;color:#294b3c;letter-spacing:-.065em;margin:22px 0 25px}.hero-copy h1 em{color:#a75e70}.hero-intro{font-size:16px;line-height:1.8;color:#5d7165;max-width:440px}.button{min-height:44px;border-radius:13px;padding:12px 18px;transition:transform .2s cubic-bezier(.2,.75,.25,1),box-shadow .2s,background-color .2s,border-color .2s}.button.primary{color:#fffaf3;background:linear-gradient(145deg,#3a6852,#294b3c);box-shadow:0 9px 22px #315a4726,inset 0 1px #ffffff35}.button.primary:hover{box-shadow:0 12px 27px #315a4733,inset 0 1px #ffffff45}.button.secondary{color:#365544;background:#ffffff96;border:1px solid #ffffffd1;box-shadow:0 4px 12px #4a59400c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.button.secondary:hover{background:#fffdf8;border-color:#cdd8ce}.button.cream{background:#f9f0e7;color:#315240;box-shadow:0 5px 13px #17372b25}.hero-art{height:min(490px,40vw);min-height:380px;border-radius:48% 48% 26px 26px;margin:0;background:linear-gradient(145deg,#e5ebe0,#d6e1d5 65%,#efdfd8);border:1px solid #ffffffd1;box-shadow:0 28px 70px #41634b1b,inset 0 1px #ffffffb8}.hero-photo{object-position:50% 46%}.hero-art:after{inset:55% 0 0;background:linear-gradient(180deg,transparent,#1d302649)}.art-caption{right:clamp(14px,2vw,24px);bottom:clamp(14px,2vw,24px);color:#355244}.hero-note{color:#5a7062}.welcome-details{gap:clamp(24px,5vw,72px);padding:42px clamp(0px,2vw,28px) 46px;border-color:#d7d3c9}.welcome-details>div{position:relative;padding-left:17px}.welcome-details>div:before{content:"";position:absolute;left:0;top:0;height:100%;width:2px;border-radius:2px;background:linear-gradient(#b76a7a,#d9b7ad)}.detail-index{color:#a45d70;letter-spacing:.16em}.welcome-details h2{font-size:25px;color:#345442}.welcome-details p{color:#66776b;line-height:1.8}.release-signup{position:relative;overflow:hidden;margin-top:54px;background:linear-gradient(120deg,#e8efe6dd,#f5e9e6d9);border:1px solid #ffffffd4;border-radius:24px;box-shadow:0 18px 50px #47544013,inset 0 1px #fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:clamp(24px,4vw,52px)}.release-signup:after{content:"";position:absolute;right:-60px;top:-110px;width:270px;height:270px;border-radius:50%;border:1px solid #a96c7830;box-shadow:0 0 0 20px #a96c7808,0 0 0 42px #a96c7806}.release-signup-copy h2{color:#345442}.release-signup-copy p{color:#5d7165}.release-email-field input{border-radius:12px!important;background:#fffdf9e8!important;min-height:48px}.release-submit{position:relative;z-index:1}.welcome-footer{border-top:1px solid #ded8cd;margin-top:24px;padding-inline:2vw}.access-notice{border-radius:15px;background:#fff9f1c9;border-color:#e5d3cb;box-shadow:0 8px 24px #59413710}.workspace{grid-template-columns:260px minmax(0,1fr);background:transparent}.sidebar{background:linear-gradient(180deg,#e8eee6f2,#e4e9e1ef);border-right:1px solid #ffffffb5;padding:27px 16px 22px;box-shadow:8px 0 30px #304a3710;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.side-brand{padding-bottom:26px}.side-family{background:#ffffff75;border:1px solid #ffffffbd;border-radius:15px;padding:12px;box-shadow:0 8px 22px #42543b0c}.family-dot,.profile-dot{box-shadow:0 4px 11px #71454a24}.family-dot{background:#a95f71}.side-label{color:#8b746f}.side-nav{gap:5px}.nav-link{height:45px;border-radius:12px;color:#596d5f}.nav-link:hover{background:#ffffff8c;color:#315642}.nav-link.selected{background:linear-gradient(100deg,#d5e2d4,#e2e9df);color:#294d3a;box-shadow:inset 0 0 0 1px #ffffffc2,0 4px 12px #36573d10}.nav-link.selected svg{color:#aa6374}.privacy-note{background:#d9e4d8;border:1px solid #ffffff88;border-radius:13px}.main-area{min-width:0}.topbar{position:sticky;top:0;z-index:10;height:72px;background:#f5f2e9d9;border-bottom:1px solid #ffffffc9;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding-inline:clamp(20px,3.4vw,54px)}.breadcrumb{font-size:12px;color:#65786a}.today-chip{background:#fff8;border:1px solid #ffffffc9;border-radius:99px;padding:9px 12px;color:#536c5c}.today-chip span{background:#a55e70;box-shadow:0 0 0 4px #a55e7015}.page-content{padding:38px clamp(20px,3.4vw,54px) 88px}.page-heading{margin-bottom:29px}.page-heading h1{font-size:clamp(34px,3.3vw,48px);color:#2d503e}.page-heading .eyebrow{color:#9c5c6d}.welcome-card{border:1px solid #ffffff40;border-radius:24px;padding:clamp(26px,3vw,40px);background:radial-gradient(ellipse at 86% 4%,#819d7d8c,transparent 48%),linear-gradient(120deg,#294e3d,#37614a 70%,#496e55);box-shadow:0 18px 42px #294d3c25,inset 0 1px #ffffff32}.welcome-card h2{font-size:clamp(34px,3.4vw,44px)}.welcome-card-brand{background:#fffaf1dd;border:1px solid #ffffffb8;border-radius:20px;box-shadow:0 18px 38px #142f2625;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.day-art-card{border-radius:20px;background:radial-gradient(circle at 84% 48%,#f1dfc2 0 74px,transparent 75px),linear-gradient(110deg,#e8eee4,#dce8dd);border:1px solid #ffffffd1;box-shadow:0 10px 28px #4257400d}.day-art-card h2{color:#315541}.dashboard-layout,.journal-layout{gap:24px}.dashboard-main,.dashboard-aside,.journal-main,.journal-aside,.settings-main,.settings-aside{gap:20px}.section-head h2,.panel-title h2{color:#31513f}.learner-list{gap:12px}.learner-card{padding:17px;border-radius:17px;background:#fffdf8c9;border:1px solid #ffffffde;box-shadow:0 7px 22px #3c51380a;transition:transform .2s,box-shadow .2s}.learner-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #3c513814}.learner-avatar{box-shadow:inset 0 0 0 1px #ffffffa8}.learner-arrow{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#edf2e9;color:#527358}.panel{border:1px solid #ffffffd6;border-radius:19px;background:#fffdf8d6;box-shadow:0 9px 28px #3c51380b,inset 0 1px #fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.quick-link-grid>a{border:1px solid #ffffffb5;background:#f0f2e9;border-radius:13px;transition:transform .18s,background .18s,box-shadow .18s}.quick-link-grid>a:hover{transform:translateY(-2px);background:#fffdf8;box-shadow:0 7px 17px #43574012}.empty-state{border-color:#cdd8cb;border-radius:18px;background:#fafaf4b8}.error-card{border-radius:20px;background:#fffaf5e8;box-shadow:0 14px 38px #51403612}.skeleton,.archive-skeleton span{background:linear-gradient(100deg,#e7e8dc 18%,#f7f4e9,#e7e8dc 66%);background-size:220% 100%;border:1px solid #ffffffa8}.journal-datebar{background:linear-gradient(110deg,#e5ede1,#f0e8df);border:1px solid #ffffffc9;border-radius:16px;box-shadow:0 8px 20px #40543b0b}.child-journal,.journal-panel{border-radius:18px}:where(.workspace,.welcome-page) :is(input,select,textarea){border-radius:11px;background:#fffdf9e8;color:#304b3a;border-color:#d8d9cb;min-height:42px;transition:border-color .18s,box-shadow .18s,background .18s}:where(.workspace,.welcome-page) :is(input,select,textarea):focus{border-color:#719477;box-shadow:0 0 0 4px #73977a20;background:#fffefb}textarea{min-height:100px}.select-child{border-radius:99px;background:#fffdf8b8}.select-child.chosen{background:#e0ebdf;border-color:#afc6b2}.quiet-tag,.count-badge{background:#f1ebe5;color:#835e60}.save-status,.status-pill{border-radius:12px}.upload-drop,.file-drop{border-radius:16px!important;border-color:#b9cbb9!important;background:#eff4eb!important}.archive-row,.daily-assessment-card,.review-lesson{border-radius:15px;background:#fffdf9e8;border-color:#e6e3d9}.archive-kind{border-radius:99px;background:#f6f2e9}.archive-kind.active{background:#315a47;box-shadow:0 5px 13px #315a4728}.mobile-tabs{background:#f6f3ebed;border-top:1px solid #ffffffd6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 -8px 24px #304a370e}.mobile-tabs a{transition:color .18s,transform .18s}.mobile-tabs .mobile-active{color:#a45d70}.auth-frame,.gate-loading{background:radial-gradient(ellipse at 15% 20%,#e6d5d4 0,transparent 30rem),radial-gradient(ellipse at 86% 78%,#dce8d8 0,transparent 32rem),#f4f0e8}.auth-frame{min-height:100dvh;padding:32px 20px}.auth-box{padding:18px;border-radius:24px;border:1px solid #ffffffd6;background:#fffdf8d9;box-shadow:0 24px 70px #344b3917;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.gate-loading{color:#536c5d}@media(max-width:1020px){.workspace{grid-template-columns:224px minmax(0,1fr)}.page-content,.topbar{padding-inline:24px}.dashboard-layout,.journal-layout{grid-template-columns:minmax(0,1fr) 260px}}@media(max-width:780px){.welcome-page{padding-inline:22px}.welcome-top{height:76px}.welcome-top .brand-emblem{width:45px;height:45px}.welcome-top .brand-wordmark{width:min(220px,55vw)}.welcome-hero{grid-template-columns:1fr;min-height:auto;padding:58px 0 42px}.hero-copy{padding:0}.hero-art{height:390px;min-height:320px;max-width:none;justify-self:stretch}.welcome-details{grid-template-columns:1fr;gap:24px;padding:28px 0}.welcome-details>div{max-width:520px}.release-signup{grid-template-columns:1fr;gap:24px}.workspace{display:block}.sidebar{position:fixed;left:0;top:0;bottom:0;width:min(300px,86vw);height:100dvh;z-index:30;transform:translate(-105%);transition:transform .24s cubic-bezier(.2,.75,.25,1)}.sidebar.sidebar-open{transform:translate(0);box-shadow:20px 0 60px #203a2b30}.mobile-menu{display:grid}.topbar{height:64px;padding-inline:16px}.breadcrumb{margin-right:auto;margin-left:12px;max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-actions{gap:9px}.today-chip{padding:8px 10px}.page-content{padding:26px 18px 100px}.dashboard-layout,.journal-layout{grid-template-columns:minmax(0,1fr)}.dashboard-aside{display:grid;grid-template-columns:1fr 1fr}.mobile-tabs{display:flex}}@media(max-width:520px){.welcome-page{padding-inline:18px}.welcome-top .private-label{font-size:0;padding:9px}.welcome-top .private-label svg{width:16px;height:16px}.hero-copy h1{font-size:clamp(55px,15vw,76px);margin:18px 0}.hero-intro{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:14px}.hero-art{height:320px;min-height:300px}.art-caption{right:10px;bottom:9px;font-size:10px}.release-signup{border-radius:19px;margin-top:34px}.release-submit{align-self:stretch}.welcome-footer{flex-direction:column;gap:8px;padding:20px 0 26px}.page-content{padding:22px 14px 94px}.page-heading{align-items:flex-start;gap:12px}.page-heading h1{font-size:34px}.page-heading>.button{flex:none}.welcome-card{grid-template-columns:1fr;padding:24px;border-radius:20px}.welcome-card-brand{min-height:150px}.welcome-brand-emblem{width:100px}.welcome-brand-wordmark{width:180px}.learner-list,.dashboard-aside,.quick-link-grid{grid-template-columns:1fr}.quick-link-grid>a{min-height:58px}.panel{padding:17px;border-radius:16px}.form-grid,.child-journal .form-grid:first-of-type{grid-template-columns:1fr}.journal-datebar{align-items:flex-start;gap:12px;flex-direction:column}.journal-datebar input{width:100%;min-width:0}.form-foot{align-items:flex-start;flex-direction:column}.form-foot .button{width:100%}.mobile-tabs{position:fixed;bottom:0;left:0;right:0;z-index:25;display:grid;grid-template-columns:repeat(5,1fr);padding:7px 4px max(8px,env(safe-area-inset-bottom))}.mobile-tabs a{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:5px 2px;font-size:9px}.mobile-tabs svg{width:19px;height:19px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.bookshelf-page{--shelf-ink: #294b3b;--shelf-muted: #778476;--shelf-line: #e4ddcf;--shelf-paper: #fbf8f0;display:flex;flex-direction:column;gap:29px;color:#344d3d}.bookshelf-intro{position:relative;isolation:isolate;overflow:hidden;min-height:218px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:clamp(26px,4vw,48px);border:1px solid #315542;border-radius:17px;background:#315542;color:#f8f1e5;box-shadow:0 10px 28px #294b3b12}.bookshelf-intro:before{content:"";position:absolute;z-index:-1;width:320px;height:320px;right:10%;top:-150px;border:1px solid #d9c49b35;border-radius:50%;box-shadow:0 0 0 30px #d9c49b0a,0 0 0 64px #d9c49b08}.bookshelf-intro:after{content:"";position:absolute;z-index:-1;width:180px;height:240px;right:11%;bottom:-164px;border-radius:90% 0;background:#d5ad7a21;transform:rotate(-35deg)}.bookshelf-intro>div{max-width:650px}.bookshelf-intro .eyebrow{color:#d6c1a1}.bookshelf-intro h2{font:500 clamp(32px,4vw,52px)/1.02 var(--app-font-serif);letter-spacing:-.045em;color:#fff8ee;margin:13px 0 12px}.bookshelf-intro p{max-width:610px;margin:0;color:#d7e0d4;font-size:13px;line-height:1.75}.bookshelf-intro .button.primary{flex:none;background:#f2e7d5;color:#385644;box-shadow:0 5px 15px #1d392d28}.bookshelf-intro .button.primary:hover{background:#fff6e8}.bookshelf-controls{display:flex;align-items:flex-end;gap:12px 18px;flex-wrap:wrap;padding:15px 18px;border:1px solid #e7e1d6;border-radius:12px;background:#fbf9f3}.bookshelf-controls label{width:min(100%,210px);font-size:10px;color:#637366}.bookshelf-controls select{height:39px;margin-top:6px!important;background:#fffdf8;border-color:#e2ddcf;border-radius:7px;color:#3c5947;font-size:11px}.bookshelf-controls>p{align-self:center;margin:0 0 2px 4px;color:#56775b;font-size:10px;line-height:1.5}.bookshelf-year{min-width:0;animation:shelf-arrive .42s both}.bookshelf-year:nth-of-type(2){animation-delay:.04s}.bookshelf-year:nth-of-type(3){animation-delay:.08s}.bookshelf-year:nth-of-type(4){animation-delay:.12s}@keyframes shelf-arrive{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}.bookshelf-year-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:0 3px 13px;border-bottom:1px solid #e3ddcf}.bookshelf-year-heading .eyebrow{color:#a47765;font-size:9px}.bookshelf-year-heading h2{font:500 clamp(24px,2.6vw,32px)/1.05 var(--app-font-serif);letter-spacing:-.03em;color:#31513f;margin:7px 0 0}.bookshelf-count{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #e7e0d4;border-radius:30px;background:#f8f5ed;color:#718071;font-size:9px;font-variant-numeric:tabular-nums}.is-current-year .bookshelf-year-heading{border-color:#c7d3c3}.is-current-year .bookshelf-count{background:#e7eee3;border-color:#d8e2d4;color:#57735b}.bookshelf-wood{position:relative;margin-top:13px;padding:18px 19px 22px;border:1px solid #d9e0d2;border-radius:12px 12px 5px 5px;background:repeating-linear-gradient(177deg,#e9eee4 0 13px,#e5ebe0 14px 15px);overflow:hidden}.bookshelf-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(126px,1fr));align-items:end;gap:18px 16px;position:relative;z-index:1}.bookshelf-plank{position:absolute;z-index:0;left:0;right:0;bottom:0;height:15px;border-top:1px solid #b7c2b0;background:linear-gradient(180deg,#d6dfd1,#c9d5c6);box-shadow:0 4px 7px #50664b20}.bookshelf-book{position:relative;display:flex;min-width:0;flex-direction:column;align-items:center;gap:8px;padding:0 4px 5px;border:0;border-radius:7px;background:transparent;text-align:center;color:#385343;transition:transform .22s cubic-bezier(.2,.75,.25,1),filter .22s}.bookshelf-book:hover{transform:translateY(-5px) rotate(-.5deg);filter:drop-shadow(0 7px 5px #263b2b24)}.bookshelf-book:focus-visible{outline:3px solid #bd806d;outline-offset:4px}.bookshelf-cover{position:relative;width:100%;max-width:116px;aspect-ratio:.72;overflow:hidden;border:1px solid #4d614c2b;border-radius:3px 7px 7px 3px;background:#e6dcc6;box-shadow:4px 5px 10px #2e463027;transform:perspective(500px) rotateY(-3deg);transform-origin:left center}.bookshelf-cover:before{content:"";position:absolute;z-index:2;inset:0 auto 0 8px;width:1px;background:#fff8e544;box-shadow:3px 0 4px #263c301c}.bookshelf-cover img{display:block;width:100%;height:100%;object-fit:cover}.bookshelf-cover-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:15px 11px;color:#f9f2e4;background:#66806a}.bookshelf-cover-fallback:after{content:"";position:absolute;inset:8px;border:1px solid #f5ead366;pointer-events:none}.bookshelf-cover-fallback>svg{opacity:.78}.bookshelf-cover-fallback span{display:-webkit-box;max-width:100%;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4;font:500 14px/1.12 var(--app-font-serif);overflow-wrap:anywhere}.bookshelf-cover-fallback small{font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:#e2d7bd}.bookshelf-book:nth-child(4n+2) .bookshelf-cover-fallback{background:#b67462}.bookshelf-book:nth-child(4n+3) .bookshelf-cover-fallback{background:#71879a}.bookshelf-book:nth-child(4n+4) .bookshelf-cover-fallback{background:#a48b56}.bookshelf-book-title{display:-webkit-box;max-width:140px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:10px;line-height:1.4;font-weight:700;color:#3c5946;overflow-wrap:anywhere}.bookshelf-name-tags{display:flex;justify-content:center;flex-wrap:wrap;gap:4px}.bookshelf-name-tags small,.bookshelf-year-prompt{padding:4px 7px;border-radius:20px;background:#f8f4ea;color:#718071;font-size:8px;line-height:1.15}.bookshelf-year-prompt{background:#f1e6d9;color:#966e58}.bookshelf-book.needs-year .bookshelf-cover{outline:1px dashed #bd9678;outline-offset:3px}.bookshelf-empty-year{margin:12px 0 0;padding:20px 22px;border:1px dashed #ddd8c9;border-radius:10px;background:#faf8f2;color:#81897b;font-size:11px}.bookshelf-unassigned .bookshelf-year-heading h2{color:#8b6654}.bookshelf-unassigned .bookshelf-wood{border-color:#e4d5c5;background:repeating-linear-gradient(177deg,#f2e8dd 0 13px,#eee2d6 14px 15px)}.bookshelf-unassigned .bookshelf-plank{border-color:#d1bca9;background:linear-gradient(180deg,#ead9c7,#dfcbb8)}.bookshelf-first,.bookshelf-filter-empty{padding:35px 22px;border:1px dashed #d7d8c9;border-radius:13px;background:#f7f7ef;text-align:center}.bookshelf-first{max-width:690px;margin:0 auto}.bookshelf-empty-mark{width:48px;height:48px;display:grid;place-items:center;margin:0 auto 14px;border-radius:50%;background:#e2ebdd;color:#628066}.bookshelf-first h3,.bookshelf-filter-empty h3{font:500 22px/1.15 var(--app-font-serif);color:#355441;margin:0 0 8px}.bookshelf-first p{max-width:485px;margin:0 auto 17px;color:#7c887a;font-size:11px;line-height:1.7}.bookshelf-filter-empty{padding:24px}.bookshelf-filter-empty h3{font-size:18px}.bookshelf-loading{min-height:250px;display:flex;align-items:center;justify-content:center;gap:12px;color:#728173;font-size:12px}.bookshelf-loading span{width:7px;height:7px;border-radius:50%;background:#9bad95;animation:book-loading 1s ease-in-out infinite}.bookshelf-loading span:nth-child(2){animation-delay:.15s}.bookshelf-loading span:nth-child(3){animation-delay:.3s}@keyframes book-loading{0%,70%,to{opacity:.35;transform:translateY(0)}35%{opacity:1;transform:translateY(-4px)}}.bookshelf-error{max-width:560px;margin:40px auto;text-align:center}.bookshelf-error>svg{color:#b77661}.bookshelf-error h2{font:500 24px var(--app-font-serif);color:#31513f;margin:12px 0 7px}.bookshelf-error p{font-size:12px;line-height:1.6;color:#81897b;margin:0 0 17px}.book-detail-dialog,.book-editor-dialog{width:min(1000px,calc(100vw - 40px));max-width:none;max-height:min(90dvh,900px);padding:0;border:1px solid #e4dccd;border-radius:16px;background:#f5f1e7;color:#354d3e;box-shadow:0 24px 80px #263b2b3b;overflow:auto}.book-detail-dialog[open]{animation:book-opening .46s cubic-bezier(.2,.76,.25,1) both}.book-detail-dialog::backdrop,.book-editor-dialog::backdrop{background:#24372d86;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:veil-in .2s ease-out both}@keyframes book-opening{0%{opacity:0;transform:perspective(1200px) rotateY(-8deg) translateY(12px)}to{opacity:1;transform:perspective(1200px) rotateY(0) translateY(0)}}@keyframes veil-in{0%{opacity:0}to{opacity:1}}.book-detail-shell{padding:0 25px 26px}.book-detail-topbar{position:sticky;z-index:4;top:0;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 -25px 17px;padding:14px 20px 12px 25px;border-bottom:1px solid #e5ddce;background:#f5f1e7ef;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.book-detail-topbar .eyebrow{color:#a47765;font-size:9px}.book-detail-topbar .icon-button{background:#eee9dd;color:#536d59;width:35px;height:35px}.book-detail-pages{display:grid;grid-template-columns:1fr 1fr;gap:15px;perspective:1200px}.book-detail-page{min-width:0;padding:clamp(18px,3vw,29px);border:1px solid #e6dfd2;border-radius:5px 13px 13px 5px;background:#fffdf7;box-shadow:0 7px 20px #3c4b3510}.book-detail-public{display:grid;grid-template-columns:minmax(105px,.55fr) minmax(0,1fr);align-content:start;gap:18px;animation:page-turn .58s .04s both;transform-origin:left center}.book-detail-private{animation:page-turn .58s .13s both;transform-origin:left center}@keyframes page-turn{0%{opacity:.55;transform:perspective(900px) rotateY(-6deg)}to{opacity:1;transform:perspective(900px) rotateY(0)}}.book-detail-cover .bookshelf-cover{max-width:160px;width:100%;margin:0 auto;box-shadow:6px 8px 17px #2e46302c}.book-public-copy{min-width:0}.book-public-copy>.eyebrow,.book-private-heading>.eyebrow{color:#a47765;font-size:8px}.book-public-copy h2{font:500 clamp(22px,2.8vw,34px)/1.05 var(--app-font-serif);letter-spacing:-.035em;color:#2e503e;margin:9px 0 18px;overflow-wrap:anywhere}.book-facts{display:grid;gap:9px;margin:0}.book-facts>div{display:grid;grid-template-columns:84px minmax(0,1fr);gap:7px;padding-bottom:8px;border-bottom:1px solid #eee9df}.book-facts dt{font-size:9px;color:#939487}.book-facts dd{margin:0;color:#4d624f;font-size:10px;line-height:1.5;overflow-wrap:anywhere}.book-facts .book-description{grid-column:1/-1;grid-template-columns:1fr;gap:4px}.book-edition-note{padding:9px 10px;margin:12px 0 8px;border-radius:6px;background:#f2eee2;color:#7b765f;font-size:9px;line-height:1.5}.book-edition-note.verified{background:#e8eee3;color:#567158}.book-edition-note.uncertain{background:#f2e8dc;color:#956d51}.book-source-link,.book-source-unavailable{display:inline-flex;align-items:center;gap:6px;color:#52745c;font-size:9px;font-weight:700}.book-source-link{text-decoration:underline;text-underline-offset:3px}.book-source-unavailable{color:#a1a090;font-weight:500}.book-year-history{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;margin-top:1px;padding-top:13px;border-top:1px solid #e9e2d6}.book-year-history>b{width:100%;margin-bottom:1px;color:#637365;font-size:9px}.book-year-history>span{display:flex;flex-direction:column;gap:3px;padding:7px 9px;border:1px solid #e7e3d8;border-radius:7px;background:#faf8f1;color:#50664f;font-size:9px}.book-year-history>span small,.book-year-history>small{color:#909385;font-size:8px;line-height:1.4}.book-public-note{grid-column:1/-1;margin:0;padding-top:2px;color:#8b8e80;font-size:9px;line-height:1.5}.book-private-heading h2{font:500 clamp(22px,2.6vw,31px)/1.06 var(--app-font-serif);letter-spacing:-.03em;color:#2e503e;margin:8px 0}.book-private-heading p{margin:0;color:#858b7d;font-size:10px;line-height:1.6}.book-course-list{display:flex;flex-direction:column;gap:10px;margin:18px 0}.book-course-record{padding:13px;border:1px solid #e7e1d4;border-radius:9px;background:#fbf9f3}.book-course-record>header{display:flex;justify-content:space-between;align-items:flex-start;gap:9px;padding-bottom:10px;border-bottom:1px solid #ece7dc}.book-course-record>header h3{font:500 17px/1.15 var(--app-font-serif);color:#355441;margin:5px 0 0}.book-course-record .eyebrow{font-size:7px;letter-spacing:.13em;color:#a47b67}.book-course-level{flex:none;padding:5px 8px;border-radius:20px;background:#e9eee3;color:#617761;font-size:8px}.book-course-summary{display:grid;gap:8px;padding:11px 0 8px}.book-course-summary>span{display:grid;grid-template-columns:100px minmax(0,1fr);gap:8px}.book-course-summary b{font-size:8px;color:#889083}.book-course-summary small{font-size:9px;line-height:1.45;color:#576b58}.book-progress-categories{display:flex;flex-wrap:wrap;gap:5px;padding-top:8px;border-top:1px solid #eee9df}.book-progress-categories span{padding:5px 7px;border-radius:5px;background:#f0eee5;color:#797f70;font-size:8px;line-height:1.35}.book-progress-categories b{color:#557456}.book-outline{margin-top:10px;border-top:1px solid #eee9df;padding-top:8px}.book-outline summary{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;list-style:none;color:#648067;font-size:9px;font-weight:700}.book-outline summary::-webkit-details-marker{display:none}.book-outline[open] summary>svg{transform:rotate(180deg)}.book-outline summary>svg{transition:transform .2s}.book-outline ol{display:grid;gap:1px;max-height:190px;overflow:auto;margin:8px 0 0;padding:0;list-style:none}.book-outline li{display:flex;justify-content:space-between;gap:7px;padding:7px 6px;border-top:1px solid #efebe2;color:#657164;font-size:8px;line-height:1.45}.book-outline li>span{min-width:0}.book-outline li b{color:#3e5947}.book-outline li small{display:block;margin-top:3px;color:#929487;font-size:7px}.book-outline li>svg{flex:none;color:#6c8a6c}.book-outline li.outline-completed{background:#f0f4eb}.book-outline li.skipped{color:#a47c67}.book-outline-empty{color:#979788;font-size:9px}.book-catalog-only{display:grid;justify-items:start;gap:8px;margin:18px 0;padding:17px;border:1px dashed #d9d8c9;border-radius:9px;background:#f7f6ee;color:#638066}.book-catalog-only b{font:500 16px var(--app-font-serif);color:#456148}.book-catalog-only p{margin:0;color:#838a7b;font-size:9px;line-height:1.6}.book-detail-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:16px;padding-top:13px;border-top:1px solid #e8e2d7}.book-detail-footer .button.secondary{background:#f0ebe0}.book-guide-link{display:inline-flex;align-items:center;gap:6px;color:#52745c;font-size:9px;font-weight:700}.book-guide-link:hover{color:#a66e5e}.book-editor-dialog{width:min(740px,calc(100vw - 36px));background:#faf7ee}.book-editor{padding:clamp(19px,4vw,31px)}.book-editor>header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.book-editor>header .eyebrow{color:#a47765}.book-editor>header h2{font:500 29px/1.05 var(--app-font-serif);color:#2f503e;margin:8px 0 0}.book-editor-intro{max-width:560px;margin:12px 0 19px;color:#7b8577;font-size:10px;line-height:1.65}.book-editor-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 14px}.book-editor-fields label,.book-year-row>label{font-size:9px;color:#647365}.book-editor-fields .book-editor-wide{grid-column:1/-1}.book-editor-fields :is(input,select,textarea),.book-year-row input{min-height:39px;margin-top:6px!important;border-color:#e1dccf;border-radius:6px;background:#fffdf8;color:#3e5948;font-size:10px}.book-editor-fields textarea{min-height:76px}.book-editor-section-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.book-editor-section-heading>div{display:grid;gap:4px}.book-editor-section-heading b{font-size:10px;color:#48614c}.book-editor-section-heading small{font-size:8px;line-height:1.5;color:#909285}.book-editor-section-heading .text-button{display:inline-flex;align-items:center;gap:4px;flex:none}.book-year-editor,.book-course-association{margin-top:19px;padding-top:16px;border-top:1px solid #e8e1d5}.book-year-row{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(0,1.4fr) auto;align-items:end;gap:12px;padding:12px;margin:9px 0;border:1px solid #e8e2d7;border-radius:8px;background:#f5f2e9}.book-learner-checks{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.book-learner-checks>span{width:100%;color:#858b7b;font-size:8px;font-weight:700}.book-learner-checks label{display:inline-flex;align-items:center;gap:5px;padding:5px 7px;border:1px solid #e4dfd2;border-radius:20px;background:#fcfaf5;color:#687668;font-size:8px}.book-editor-dialog input[type=checkbox]{width:13px;height:13px;margin:0;accent-color:#55765a}.book-year-row .remove-year{color:#a66f5b;white-space:nowrap}.book-no-years{padding:11px 12px;border-radius:7px;background:#f1eee4;color:#8a8c7d;font-size:9px;line-height:1.5}.book-course-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.book-course-checks label{display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px solid #e5dfd3;border-radius:7px;background:#fffdf8;color:#425a47}.book-course-checks input{flex:none;margin:2px 0 0!important;accent-color:#55765a}.book-course-checks label>span{display:grid;gap:4px;min-width:0}.book-course-checks b{font-size:9px;line-height:1.35;overflow-wrap:anywhere}.book-course-checks small{font-size:8px;color:#899082}.book-editor-error{padding:10px 12px;border-radius:7px;background:#f6e8e2;color:#9b5144;font-size:9px;line-height:1.5}.book-editor>footer{display:flex;justify-content:flex-end;gap:9px;margin-top:20px;padding-top:15px;border-top:1px solid #e8e1d5}.book-detail-dialog :focus-visible,.book-editor-dialog :focus-visible{outline:2px solid #a96f5d;outline-offset:2px}@media(max-width:780px){.bookshelf-page{gap:22px}.bookshelf-intro{min-height:0;align-items:flex-start;flex-direction:column;padding:25px;gap:18px}.bookshelf-intro:before{right:-35px;top:-180px}.bookshelf-intro .button{width:100%}.bookshelf-controls{align-items:stretch;gap:10px;padding:13px}.bookshelf-controls label{flex:1 1 170px;width:auto}.bookshelf-controls>p{flex-basis:100%;margin:0}.bookshelf-row{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:16px 12px}.book-detail-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.book-detail-pages{grid-template-columns:1fr;gap:11px}.book-detail-public{grid-template-columns:minmax(100px,.35fr) minmax(0,1fr)}.book-detail-shell{padding:0 13px 16px}.book-detail-topbar{margin:0 -13px 12px;padding:11px 13px}.book-detail-page{padding:20px}.book-private-heading h2{font-size:26px}.book-course-list{margin:13px 0}}@media(max-width:520px){.bookshelf-intro{padding:22px 19px;border-radius:13px}.bookshelf-intro h2{font-size:35px}.bookshelf-intro p{font-size:11px}.bookshelf-year-heading h2{font-size:25px}.bookshelf-wood{padding:14px 11px 20px}.bookshelf-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 10px}.bookshelf-book{gap:6px}.bookshelf-cover{max-width:116px}.bookshelf-book-title{font-size:9px}.bookshelf-book.needs-year .bookshelf-cover{outline-offset:2px}.book-detail-public{grid-template-columns:86px minmax(0,1fr);gap:12px}.book-detail-page{padding:15px}.book-public-copy h2{font-size:22px;margin-bottom:12px}.book-facts>div{grid-template-columns:68px minmax(0,1fr);gap:5px}.book-facts dt,.book-facts dd{font-size:8px}.book-year-history{gap:6px}.book-year-history>span{padding:6px}.book-course-record{padding:10px}.book-course-summary>span{grid-template-columns:86px minmax(0,1fr);gap:6px}.book-course-summary b{font-size:7px}.book-course-summary small{font-size:8px}.book-detail-footer{align-items:stretch;flex-direction:column}.book-detail-footer .button,.book-guide-link{justify-content:center;min-height:38px}.book-editor-fields,.book-course-checks{grid-template-columns:1fr}.book-year-row{grid-template-columns:1fr;gap:9px}.book-year-row .remove-year{justify-self:start}.book-editor-dialog{width:calc(100vw - 18px);max-height:calc(100dvh - 18px);border-radius:12px}.book-editor{padding:18px}}@media(prefers-reduced-motion:reduce){.bookshelf-page *,.book-detail-dialog,.book-editor-dialog::backdrop{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.bookshelf-book,.book-outline summary>svg{transition:none!important}}.bookshelf-year-not-configured{margin:-13px 0 0;padding:11px 14px;border:1px solid #e6ddc9;border-radius:8px;background:#f4eee0;color:#777761;font-size:10px;line-height:1.6}.bookshelf-year-not-configured a{color:#4d7459;font-weight:700;text-decoration:underline;text-underline-offset:2px}.viewer-badge .family-dot{background:#7f9b7d}.viewer-chip{display:inline-flex;align-items:center;gap:6px;background:#e4ecdf;color:#45644f;border-radius:30px;padding:6px 11px;font-size:10px;font-weight:700;letter-spacing:.04em}.viewer-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;background:#e6ede2;border-radius:12px;padding:13px 16px;margin-bottom:20px}.viewer-month{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.viewer-month>div{display:flex;flex-direction:column;gap:3px;min-width:132px}.viewer-month b{font:500 19px var(--app-font-serif);color:#2f4f3d;letter-spacing:-.02em}.viewer-month input[type=month]{width:auto;min-width:150px;background:#f7f8f0}.icon-step{width:32px;height:32px;border-radius:50%;border:1px solid #cbd8c8;background:#f4f6ee;color:#466451;display:grid;place-items:center;transition:transform .18s}.icon-step:hover{transform:translateY(-1px);background:#fbfcf6}.viewer-learners{display:flex;gap:7px;flex-wrap:wrap}.viewer-stage{animation:viewerIn .38s ease both}@keyframes viewerIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.viewer-empty{max-width:620px;margin:10px auto}.viewer-cal-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:19px;align-items:start}.viewer-cal{padding:16px}.viewer-cal-head,.viewer-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.viewer-cal-head span{font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#9a9f92;padding:4px 6px 8px}.viewer-cal-head span.is-school{color:#58775f}.vc-blank{min-height:92px}.vc-day{min-height:92px;text-align:left;display:flex;flex-direction:column;gap:3px;border:1px solid #ece6da;background:#fbf9f3;border-radius:9px;padding:7px;min-width:0;transition:transform .15s,border-color .15s}.vc-day:hover{transform:translateY(-1px);border-color:#c9d6c5}.vc-day.school{background:#f3f6ee}.vc-day.picked{border-color:#5f8468;box-shadow:inset 0 0 0 1px #5f8468}.vc-day>b{font:500 15px var(--app-font-serif);color:#3a5947}.vc-day.today>b{background:#cf907b;color:#fff8ee;border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font-size:12px}.vc-tag{font-style:normal;font-size:9px;line-height:1.3;padding:2px 5px;border-radius:4px;background:#f0e3d4;color:#8a5d4c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vc-tag.kind-field_trip{background:#dfe9e6;color:#45676a}.vc-tag.kind-noninstructional{background:#ece8d6;color:#6e6640}.vc-day small{font-size:9px;color:#9a9f92}.vc-dots{display:flex;gap:3px;margin-top:auto}.vc-dots em,.vc-legend em{width:7px;height:7px;border-radius:50%;background:#c9c4b5;display:inline-block}.att-school_day{background:#6f9271!important}.att-absent,.att-sick_day{background:#c98a75!important}.att-holiday{background:#d4b26e!important}.vc-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:13px;font-size:10px;color:#808a7e}.vc-legend span{display:inline-flex;align-items:center;gap:6px}.vc-swatch{width:12px;height:9px;border-radius:3px;background:#e4ecdc;border:1px solid #cfdccb;display:inline-block}.viewer-day-detail{position:sticky;top:20px;display:flex;flex-direction:column;gap:10px}.viewer-day-detail h2{font:500 21px/1.15 var(--app-font-serif);color:#2c4b3b;margin:4px 0}.vd-item{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:8px;background:#f4f1e8}.vd-item b{font-size:12px;color:#3c5a48}.vd-item small{font-size:10px;color:#8a9185}.muted-copy{font-size:12px;color:#858d80;line-height:1.6}.viewer-journal{display:flex;flex-direction:column;gap:26px}.vj-date>header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.vj-num{font:500 34px/1 var(--app-font-serif);color:#c37e6b;letter-spacing:-.04em}.vj-date>header div{display:flex;flex-direction:column;gap:2px}.vj-date>header b{font-size:13px;color:#33513f}.vj-date>header small{font-size:10px;color:#8e9689}.vj-entries{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;padding-left:46px;border-left:1px solid #e3ddd0;margin-left:18px}.vj-entry-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.vj-entry-head h3{font:500 18px var(--app-font-serif);color:#2e4a3b;margin:0}.att-chip{font-size:9px;font-weight:700;padding:4px 9px;border-radius:20px;color:#fff8ee}.vj-notes{font-size:12px;line-height:1.65;color:#5d6d61;margin:0 0 10px;white-space:pre-wrap}.vj-lessons{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.vj-lessons li{display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:10px;align-items:start;padding:9px 0;border-top:1px solid #eee8dc}.vj-subject{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#a27666;padding-top:2px}.vj-lessons div{display:flex;flex-direction:column;gap:3px}.vj-lessons b{font-size:12px;color:#36533f}.vj-lessons small{font-size:11px;color:#7d877a;line-height:1.5}.vj-lesson-note{font-style:italic}.status-chip{display:inline-flex;align-items:center;font-size:9px;font-weight:700;padding:4px 8px;border-radius:20px;background:#efebe1;color:#7b8277;white-space:nowrap;text-transform:capitalize}.st-completed{background:#dfeadb;color:#3f6748}.st-in_progress{background:#f1e5c8;color:#7a6229}.st-upcoming{background:#ebe8df;color:#7f857a}.st-overdue{background:#f4e0d8;color:#a1513f}.inv-pending{background:#f1e5c8;color:#7a6229}.inv-accepted{background:#dfeadb;color:#3f6748}.inv-expired,.inv-cancelled{background:#ebe8df;color:#8a8f84}.viewer-guides{display:flex;flex-direction:column;gap:12px}.vg-card{display:grid;grid-template-columns:70px minmax(0,1fr);gap:18px}.vg-date{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:4px;border-right:1px solid #ece6da}.vg-date b{font:500 30px/1 var(--app-font-serif);color:#315a47}.vg-date small{font-size:10px;color:#93998d;text-transform:uppercase;letter-spacing:.1em;margin-top:4px;text-align:center}.vg-body h3{font:500 20px var(--app-font-serif);color:#2c4b3b;margin:6px 0}.vg-body p{font-size:12px;color:#66756a;line-height:1.65;margin:0 0 10px;white-space:pre-wrap}.vg-body ol{margin:0 0 12px;padding-left:18px;font-size:12px;color:#4f6555;line-height:1.7}.vg-foot{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.grade-chip{background:#f0eee4;color:#6f7d6f;border-radius:20px;padding:4px 9px;font-size:9px}.viewer-progress{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:14px}.vp-head{display:flex;align-items:center;gap:11px;margin-bottom:14px}.vp-head h3{font:500 20px var(--app-font-serif);margin:0;color:#2e4a3b}.vp-head small{font-size:10px;color:#8b9287}.vp-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ece6da;border-radius:10px;overflow:hidden;margin-bottom:16px}.vp-stats div{background:#fbf9f3;padding:12px;display:flex;flex-direction:column;gap:3px}.vp-stats b{font:500 24px/1 var(--app-font-serif);color:#315a47}.vp-stats small{font-size:9px;color:#8b9287}.vp-bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.vp-bars li{display:grid;grid-template-columns:96px minmax(0,1fr) 24px;gap:9px;align-items:center;font-size:11px;color:#55695a}.vp-bars i{height:7px;background:#ece8dd;border-radius:6px;overflow:hidden}.vp-bars em{display:block;height:100%;background:#7f9b7d;transform-origin:left;transition:transform .5s ease}.vp-bars b{text-align:right;color:#3f5e4a}.vp-footnote{grid-column:1/-1;font-size:10px;color:#93998d;margin:2px 0 0}.report-list,.share-list,.archive-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.report-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;background:#fbf9f3;border:1px solid #e8e1d5;border-radius:11px;padding:14px 16px}.rr-cover{display:flex;flex-direction:column;gap:4px}.rr-cover b{font:500 16px var(--app-font-serif);color:#2e4a3b}.rr-cover small{font-size:10px;color:#8b9287}.pending-tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:#7a6229;background:#f6edd7;border-radius:20px;padding:7px 11px}.viewer-reports .save-status{margin:0 0 14px}.invite-page{min-height:100dvh;padding:0 7.1vw 40px;background:#f4f0e7;color:#264438;display:flex;flex-direction:column}.invite-card{position:relative;max-width:560px;width:100%;margin:56px auto 18px;background:#fbf9f3;border:1px solid #e5dccd;border-radius:16px;padding:38px 36px 32px;box-shadow:0 18px 44px #574d3514;animation:viewerIn .45s ease both}.invite-seal{position:absolute;top:-22px;left:36px;width:44px;height:44px;border-radius:50%;background:#315a47;color:#f4eee2;display:grid;place-items:center}.invite-card h1{font:500 clamp(28px,3.4vw,38px)/1.08 var(--app-font-serif);letter-spacing:-.035em;color:#294a3a;margin:12px 0}.invite-card>p{font-size:13px;color:#66756a;line-height:1.7;margin:0 0 18px}.invite-terms{list-style:none;margin:0 0 22px;padding:14px 16px;background:#e9efe5;border-radius:10px;display:flex;flex-direction:column;gap:8px;font-size:12px;color:#45624e}.invite-terms li{display:flex;gap:8px;align-items:flex-start}.invite-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.invite-account{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1px dashed #d6cfbf;border-radius:10px;margin-bottom:16px}.invite-account span{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#99998a;font-weight:700}.invite-account b{font-size:14px;color:#33513f}.invite-account .warn{display:inline-flex;gap:5px;align-items:center;color:#a1513f;font-size:11px}.invite-error{margin:0 0 16px}.invite-skel{height:60px}.invite-foot{text-align:center;font-size:11px;color:#8b9287}.auth-invite-note{display:flex;gap:8px;align-items:center;max-width:400px;margin:0 auto 12px;padding:10px 13px;border-radius:9px;background:#e6ede2;color:#45624e;font-size:12px;line-height:1.5}.share-invite-row{display:flex;gap:10px;align-items:flex-end;margin:12px 0 4px}.share-invite-row label{flex:1}.share-link{margin-top:14px;padding:14px;border-radius:10px;background:#f6efe2;border:1px solid #eadcc5}.share-link-row{display:flex;gap:8px}.share-link-row input{font-family:var(--app-font-mono);font-size:11px!important}.share-warn{display:flex;gap:8px;align-items:flex-start;font-size:11px;line-height:1.55;color:#7a5a3c;margin:10px 0 4px}.share-warn svg{flex:none;margin-top:2px;color:#b9774f}.share-sub{margin:18px 0 8px}.share-list li,.archive-list li{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:9px;background:#f5f2e9}.share-list li>div,.archive-list li>div{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.share-list b,.archive-list b{font-size:12px;color:#36533f;overflow:hidden;text-overflow:ellipsis}.share-list small,.archive-list small{font-size:10px;color:#8b9287}.share-avatar{width:28px;height:28px;flex:none;border-radius:50%;display:grid;place-items:center;background:#cf907b;color:#fff8ee;font:500 13px var(--app-font-serif)}.share-avatar.soft{background:#e1e8dc;color:#557560}.confirm-pair{display:inline-flex;gap:4px;align-items:center}.button.danger{background:#a34b3e;color:#fff8ee}.share-skel{height:80px;margin-top:14px}.archive-chips{display:flex;gap:5px;flex-wrap:wrap}.weekly-form{margin-top:10px}.weekly-toggle{display:flex!important;align-items:center;gap:9px;align-self:end;padding-bottom:10px}.weekly-toggle input{width:16px!important;height:16px;margin:0!important}@media(max-width:900px){.viewer-cal-layout{grid-template-columns:1fr}.viewer-day-detail{position:static}.vj-entries{padding-left:0;border-left:0;margin-left:0;grid-template-columns:1fr}.report-row{grid-template-columns:1fr;gap:8px}.share-invite-row{flex-direction:column;align-items:stretch}}@media(max-width:600px){.vc-day,.vc-blank{min-height:54px;padding:5px}.vc-tag,.vc-day small{display:none}.vg-card{grid-template-columns:1fr}.vg-date{flex-direction:row;gap:6px;border-right:0;justify-content:flex-start}.viewer-progress{grid-template-columns:1fr}.invite-card{padding:34px 22px 26px}.vj-lessons li{grid-template-columns:1fr auto}.vj-subject{grid-column:1/-1}}.weekly-notes{margin:0 0 6px;padding-left:18px;font-size:11px;line-height:1.6;color:#7d877a;display:flex;flex-direction:column;gap:3px}.activity-log-tools{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:20px 0}.activity-log-tools label{display:grid;gap:6px;min-width:180px}.activity-log-list{list-style:none;margin:0;padding:0}.activity-log-list li{padding:16px 0;border-top:1px solid var(--border,#e6dfd3);overflow-wrap:anywhere}.activity-log-event{display:flex;align-items:start;justify-content:space-between;gap:14px}.activity-log-event strong{font-size:14px;font-weight:600}.activity-log-outcome{flex-shrink:0;font-size:11px;color:#2f5a48;background:#edf2ed;padding:3px 8px;border-radius:12px}.activity-log-outcome.denied{color:#873b47;background:#f6e9eb}.activity-log-identity{display:flex;flex-wrap:wrap;gap:4px 12px;color:#687269;font-size:12px;margin-top:7px}.activity-log-list time,.activity-log-list small{display:block;color:#687269;font-size:12px;margin-top:5px}.activity-log-pagination{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.activity-log-note{font-size:12px;line-height:1.6;margin-top:18px}.site-legal-footer{max-width:1100px;margin:0 auto;padding:24px 30px 28px;border-top:1px solid #d9d9ca;font-size:12px;line-height:1.7;color:#566357;overflow-wrap:anywhere}.site-legal-footer p{margin:0 0 8px;max-width:100ch}.site-legal-footer nav{display:flex;flex-wrap:wrap;gap:0 22px;margin:8px 0}.site-legal-footer a,.legal-page a,.legal-page-header a,.auth-legal-note a,.release-legal-note a{color:#294f40;text-decoration:underline;text-underline-offset:3px}.site-legal-footer nav a{display:inline-flex;align-items:center;min-height:32px}.site-legal-footer a:focus-visible,.legal-page a:focus-visible,.legal-page-header a:focus-visible{outline:2px solid #355c46;outline-offset:4px;border-radius:2px}.auth-legal-note{max-width:430px;font-size:12px;line-height:1.7;color:#566357;text-align:center;margin:18px 22px}.release-legal-note{grid-column:1/-1;margin:0;font-size:12px;line-height:1.7;color:#566357;overflow-wrap:anywhere}.legal-page-wrap{max-width:1000px;margin:0 auto;padding:0 30px 50px}.legal-page-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;padding:28px 0;border-bottom:1px solid #d9d9ca}.legal-page-header .legal-brand{font-family:Fraunces,serif;font-size:25px;text-decoration:none;color:#294f40}.legal-page{max-width:780px;margin:48px auto 0;font-size:15px;line-height:1.8;color:#394a3e;overflow-wrap:anywhere}.legal-page-heading h1{font-family:Fraunces,serif;font-size:clamp(32px,5vw,46px);line-height:1.2;margin:12px 0 16px}.legal-page-heading p{font-size:17px;line-height:1.7;margin:0 0 18px}.legal-page-heading small{font-size:12px;color:#566357}.legal-policy-nav{display:flex;flex-wrap:wrap;gap:0 20px;border-block:1px solid #d9d9ca;padding:12px 0;margin:28px 0;font-size:13px}.legal-policy-nav a{min-height:32px;display:inline-flex;align-items:center}.legal-policy-nav a[aria-current=page]{font-weight:700}.legal-contents{padding:20px 24px;background:#eeeee3;border-radius:10px;font-size:13px}.legal-contents ol{margin:10px 0 0;padding-left:20px}.legal-contents li{margin:5px 0}.legal-page article section{margin:34px 0;scroll-margin-top:24px}.legal-page article h2{font-family:Fraunces,serif;font-size:23px;line-height:1.4;margin:0 0 14px;color:#294f40}.legal-page article p{margin:0 0 14px}.legal-page article ul{list-style:disc;padding-left:24px}.legal-page article li{margin:10px 0}@media(max-width:700px){.site-legal-footer{padding:22px 22px 96px}.site-legal-footer nav{gap:0 18px}.site-legal-footer nav a,.legal-policy-nav a{min-height:44px}.legal-page-wrap{padding:0 22px 20px}.legal-page-header{padding:22px 0}.legal-page-header .legal-brand{font-size:23px}.legal-page{margin-top:32px}}@media print{.site-legal-footer,.auth-legal-note,.release-legal-note{display:none!important}}@property --tw-translate-x{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-translate-y{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-translate-z{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-rotate-x{syntax: "*"; inherits: false;}@property --tw-rotate-y{syntax: "*"; inherits: false;}@property --tw-rotate-z{syntax: "*"; inherits: false;}@property --tw-skew-x{syntax: "*"; inherits: false;}@property --tw-skew-y{syntax: "*"; inherits: false;}@property --tw-space-y-reverse{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-space-x-reverse{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-border-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-leading{syntax: "*"; inherits: false;}@property --tw-font-weight{syntax: "*"; inherits: false;}@property --tw-tracking{syntax: "*"; inherits: false;}@property --tw-ordinal{syntax: "*"; inherits: false;}@property --tw-slashed-zero{syntax: "*"; inherits: false;}@property --tw-numeric-figure{syntax: "*"; inherits: false;}@property --tw-numeric-spacing{syntax: "*"; inherits: false;}@property --tw-numeric-fraction{syntax: "*"; inherits: false;}@property --tw-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: "*"; inherits: false;}@property --tw-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-inset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: "*"; inherits: false;}@property --tw-inset-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-ring-color{syntax: "*"; inherits: false;}@property --tw-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: "*"; inherits: false;}@property --tw-inset-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: "*"; inherits: false;}@property --tw-ring-offset-width{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --tw-ring-offset-color{syntax: "*"; inherits: false; initial-value: #fff;}@property --tw-ring-offset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-outline-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-blur{syntax: "*"; inherits: false;}@property --tw-brightness{syntax: "*"; inherits: false;}@property --tw-contrast{syntax: "*"; inherits: false;}@property --tw-grayscale{syntax: "*"; inherits: false;}@property --tw-hue-rotate{syntax: "*"; inherits: false;}@property --tw-invert{syntax: "*"; inherits: false;}@property --tw-opacity{syntax: "*"; inherits: false;}@property --tw-saturate{syntax: "*"; inherits: false;}@property --tw-sepia{syntax: "*"; inherits: false;}@property --tw-drop-shadow{syntax: "*"; inherits: false;}@property --tw-drop-shadow-color{syntax: "*"; inherits: false;}@property --tw-drop-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-drop-shadow-size{syntax: "*"; inherits: false;}@property --tw-duration{syntax: "*"; inherits: false;}@property --tw-ease{syntax: "*"; inherits: false;}@property --tw-content{syntax: "*"; initial-value: ""; inherits: false;}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}to{height:0}}@keyframes caret-blink{0%,70%,to{opacity:1}20%,50%{opacity:0}}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x: 0;--tw-translate-y: 0;--tw-translate-z: 0;--tw-rotate-x: initial;--tw-rotate-y: initial;--tw-rotate-z: initial;--tw-skew-x: initial;--tw-skew-y: initial;--tw-space-y-reverse: 0;--tw-space-x-reverse: 0;--tw-border-style: solid;--tw-leading: initial;--tw-font-weight: initial;--tw-tracking: initial;--tw-ordinal: initial;--tw-slashed-zero: initial;--tw-numeric-figure: initial;--tw-numeric-spacing: initial;--tw-numeric-fraction: initial;--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000;--tw-outline-style: solid;--tw-blur: initial;--tw-brightness: initial;--tw-contrast: initial;--tw-grayscale: initial;--tw-hue-rotate: initial;--tw-invert: initial;--tw-opacity: initial;--tw-saturate: initial;--tw-sepia: initial;--tw-drop-shadow: initial;--tw-drop-shadow-color: initial;--tw-drop-shadow-alpha: 100%;--tw-drop-shadow-size: initial;--tw-duration: initial;--tw-ease: initial;--tw-content: "";--tw-animation-delay: 0s;--tw-animation-direction: normal;--tw-animation-duration: initial;--tw-animation-fill-mode: none;--tw-animation-iteration-count: 1;--tw-enter-blur: 0;--tw-enter-opacity: 1;--tw-enter-rotate: 0;--tw-enter-scale: 1;--tw-enter-translate-x: 0;--tw-enter-translate-y: 0;--tw-exit-blur: 0;--tw-exit-opacity: 1;--tw-exit-rotate: 0;--tw-exit-scale: 1;--tw-exit-translate-x: 0;--tw-exit-translate-y: 0}}}
