/*! tailwindcss v4.3.5 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-space-y-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}}}@layer theme{:host,:root{--font-sans:-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-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--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:calc(1.5 / 1);--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);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-md:.375rem;--radius-xl:.75rem;--radius-2xl:1rem;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;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,pre,samp{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{vertical-align:baseline;font-size:75%;line-height:0;position:relative}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}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}: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{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-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]){appearance:button}::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 components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mr-1{margin-right: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)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-1{margin-left:var(--spacing)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-28{height:calc(var(--spacing) * 28)}.h-72{height:calc(var(--spacing) * 72)}.h-\[2\.6rem\]{height:2.6rem}.h-\[4\.25rem\]{height:4.25rem}.h-auto{height:auto}.min-h-screen{min-height:100vh}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-24{width:calc(var(--spacing) * 24)}.w-\[4\.25rem\]{width:4.25rem}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:0}.flex-1{flex:1}.shrink-0{flex-shrink:0}.animate-pulse{animation:var(--animate-pulse)}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.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-3\.5{gap:calc(var(--spacing) * 3.5)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-7>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 7) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 7) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-1{row-gap:var(--spacing)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.self-start{align-self:flex-start}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-xl{border-radius:var(--radius-xl)}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.bg-\[\#157451\]{background-color:#157451}.bg-\[var\(--surface-soft\)\]{background-color:var(--surface-soft)}.object-cover{object-fit:cover}.p-1{padding:var(--spacing)}.p-4{padding:calc(var(--spacing) * 4)}.px-1{padding-inline:var(--spacing)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-7{padding-block:calc(var(--spacing) * 7)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-16{padding-block:calc(var(--spacing) * 16)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-right{text-align:right}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--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-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\.78rem\]{font-size:.78rem}.text-\[clamp\(2rem\,7vw\,2\.75rem\)\]{font-size:clamp(2rem,7vw,2.75rem)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.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-\[-0\.05em\]{--tw-tracking:-.05em;letter-spacing:-.05em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-words{overflow-wrap:break-word}.text-\[var\(--danger\)\]{color:var(--danger)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.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, )}.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-\[var\(--border\)\]{--tw-ring-color:var(--border)}.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))}.file\:mr-3::file-selector-button{margin-right:calc(var(--spacing) * 3)}.file\:rounded-md::file-selector-button{border-radius:var(--radius-md)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-\[var\(--accent-soft\)\]::file-selector-button{background-color:var(--accent-soft)}.file\:px-3::file-selector-button{padding-inline:calc(var(--spacing) * 3)}.file\:py-1\.5::file-selector-button{padding-block:calc(var(--spacing) * 1.5)}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-semibold::file-selector-button{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.file\:text-\[var\(--accent-strong\)\]::file-selector-button{color:var(--accent-strong)}@media (hover:hover){.hover\:border-\[var\(--accent\)\]:hover{border-color:var(--accent)}.hover\:underline:hover{text-decoration-line:underline}}@media (min-width:40rem){.sm\:hidden{display:none}.sm\:w-auto{width:auto}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-\[minmax\(0\,1fr\)_7rem_auto\]{grid-template-columns:minmax(0,1fr) 7rem auto}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:items-end{align-items:flex-end}.sm\:items-start{align-items:flex-start}.sm\:justify-between{justify-content:space-between}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:gap-5{gap:calc(var(--spacing) * 5)}:where(.sm\:space-y-10>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 10) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 10) * calc(1 - var(--tw-space-y-reverse)))}.sm\:p-7{padding:calc(var(--spacing) * 7)}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:py-10{padding-block:calc(var(--spacing) * 10)}.sm\:pl-\[5\.125rem\]{padding-left:5.125rem}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}@media (min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[1\.3fr_\.7fr\]{grid-template-columns:1.3fr .7fr}.lg\:grid-cols-\[1\.15fr_\.85fr\]{grid-template-columns:1.15fr .85fr}.lg\:grid-cols-\[minmax\(0\,1\.5fr\)_repeat\(2\,minmax\(0\,1fr\)\)_auto\]{grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(0,1fr)) auto}}}:root{color-scheme:light;--background:#f7f8f6;--surface:#fff;--surface-soft:#f2f5f2;--ink:#18231e;--muted:#5f6d64;--border:#dce4dd;--accent:#157451;--accent-strong:#0d6041;--accent-soft:#e5f3e9;--danger:#b33535;--level-0:#e8ede8;--level-1:#c9e6d2;--level-2:#8bcba5;--level-3:#4ca87a;--level-4:#16744f;--heatmap-cell:14px}:root[data-theme=dark]{color-scheme:dark;--background:#101713;--surface:#17221c;--surface-soft:#1d2b23;--ink:#e9f0e9;--muted:#a9b9ac;--border:#314238;--accent:#80d5a4;--accent-strong:#a5e9be;--accent-soft:#1e3d2c;--danger:#ffaaa3;--level-0:#29382e;--level-1:#355a41;--level-2:#43855b;--level-3:#60aa76;--level-4:#92d5a4}*{box-sizing:border-box}body{background:var(--background);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}::selection{background:var(--accent-soft)}.container-wide{width:min(100% - 2rem,1180px);margin-inline:auto}.site-shell{flex-direction:column;min-height:100vh;display:flex}.site-shell>main{flex:1}.site-header{border-bottom:1px solid var(--border);background:var(--surface)}.brand{letter-spacing:-.045em;align-items:center;gap:.65rem;font-size:1.2rem;font-weight:800;display:inline-flex}.brand-mark{background:var(--accent);width:2rem;height:2rem;color:var(--surface);letter-spacing:-.08em;border-radius:.6rem;place-items:center;font-size:1rem;display:grid}.brand-dot{color:var(--accent)}.nav-link{min-height:2.5rem;color:var(--muted);border-radius:.6rem;align-items:center;padding:.55rem .8rem;font-size:.88rem;font-weight:600;display:inline-flex}.nav-link:focus-visible,.nav-link:hover{background:var(--surface-soft);color:var(--ink)}.theme-toggle{border:1px solid var(--border);background:var(--surface-soft);border-radius:.7rem;flex:none;align-items:center;gap:2px;padding:3px;display:inline-flex}.theme-toggle button{width:2.3rem;height:2.3rem;color:var(--muted);background:0 0;border:0;border-radius:.48rem;place-items:center;display:grid}.theme-toggle button:hover{color:var(--ink)}.theme-toggle button[aria-pressed=true]{color:var(--accent-strong);background:var(--surface);box-shadow:0 1px 3px #00000017}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:800}.page-title{letter-spacing:-.055em;font-size:clamp(2rem,3.5vw,3.2rem);font-weight:750;line-height:1.12}.section-title{letter-spacing:-.025em;font-size:1.15rem;font-weight:730}.text-muted{color:var(--muted)}.text-accent{color:var(--accent)}.text-link{color:var(--accent-strong);font-weight:650}.text-link:hover{text-underline-offset:3px;text-decoration:underline}.panel{border:1px solid var(--border);background:var(--surface);border-radius:1.1rem;min-width:0;box-shadow:0 3px 14px #0e261506}.panel-pad{padding:1.35rem}.panel-soft{border:1px solid var(--border);background:var(--surface-soft);border-radius:.85rem}.metric-card{border:1px solid var(--border);background:var(--surface);border-radius:1rem;min-width:0;padding:1.1rem 1.2rem 1.2rem}.metric-card strong{letter-spacing:-.05em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin-top:.7rem;font-size:clamp(1.55rem,2.5vw,2.2rem);font-weight:750;line-height:1;display:block}.metric-card span{color:var(--muted);font-size:.82rem;font-weight:600}.button-danger,.button-primary,.button-quiet,.button-secondary{white-space:nowrap;border:1px solid #0000;border-radius:.65rem;justify-content:center;align-items:center;gap:.4rem;min-height:2.55rem;padding:.55rem .9rem;font-size:.88rem;font-weight:700;line-height:1.1;display:inline-flex}.button-primary{color:#fff;background:#157451}.button-primary:hover{background:#0d6041}.button-secondary{color:var(--ink);background:var(--surface);border-color:var(--border)}.button-secondary:hover{background:var(--surface-soft)}.button-quiet{color:var(--accent-strong);background:var(--accent-soft)}.button-quiet:hover{filter:brightness(.96)}.button-danger{color:var(--danger);background:var(--surface);border-color:var(--border)}.button-danger:hover{background:var(--surface-soft)}.field{flex-direction:column;gap:.35rem;min-width:0;font-size:.83rem;font-weight:650;display:flex}.field-hint{color:var(--muted);font-size:.75rem;font-weight:400}.input{border:1px solid var(--border);background:var(--surface);width:100%;min-width:0;min-height:2.6rem;color:var(--ink);border-radius:.6rem;padding:.58rem .7rem;font-size:.9rem;font-weight:450;display:block}.input::placeholder{color:var(--muted);opacity:.75}.input:focus{border-color:var(--accent);outline:2px solid var(--accent-soft);outline-offset:1px}textarea.input{resize:vertical;min-height:5.8rem}.notice{border:1px solid var(--border);background:var(--surface-soft);color:var(--ink);border-radius:.7rem;padding:.8rem 1rem;font-size:.86rem}.notice-error{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.notice-error{border-color:color-mix(in srgb,var(--danger) 35%,var(--border))}}.notice-error{color:var(--danger)}.empty-state{border:1px dashed var(--border);background:var(--surface-soft);color:var(--muted);text-align:center;border-radius:.9rem;padding:2.2rem 1rem;font-size:.9rem}.subject-dot{border-radius:50%;flex:none;width:.68rem;height:.68rem;display:inline-block;box-shadow:0 0 0 1px #00000014}.subject-link{color:var(--accent-strong);align-items:center;gap:.45rem;font-weight:600;display:inline-flex}.subject-link:hover{text-underline-offset:3px;text-decoration:underline}.status-pill{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.25rem .5rem;font-size:.7rem;font-weight:700;display:inline-flex}.divider{border-color:var(--border)}.weekly-chart{gap:.63rem;display:grid}.weekly-row{grid-template-columns:minmax(6.2rem,7.4rem) minmax(0,1fr) 4.9rem;align-items:center;gap:.7rem;font-size:.78rem;display:grid}.weekly-label{color:var(--muted);white-space:nowrap}.weekly-track{background:var(--surface-soft);border-radius:999px;height:.58rem;overflow:hidden}.weekly-fill{border-radius:inherit;background:var(--accent);min-width:0;height:100%;display:block}.weekly-value{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-weight:700}.heatmap-scroll{scrollbar-color:var(--border) transparent;max-width:100%;padding:.15rem .2rem .75rem;overflow-x:auto}.heatmap-layout{width:max-content;max-width:none}.heatmap-months{height:1.45rem;color:var(--muted);gap:3px;margin-left:28px;font-size:.68rem;display:grid}.heatmap-months span{white-space:nowrap}.heatmap-weekdays{grid-template-rows:repeat(7,var(--heatmap-cell));width:20px;color:var(--muted);gap:3px;font-size:.58rem;display:grid}.heatmap-weekdays span:first-child{grid-row:1}.heatmap-weekdays span:nth-child(2){grid-row:3}.heatmap-weekdays span:nth-child(3){grid-row:5}.heatmap-grid{grid-template-rows:repeat(7,var(--heatmap-cell));grid-auto-flow:column;gap:3px;display:grid}.heatmap-cell{width:var(--heatmap-cell);height:var(--heatmap-cell);border:0;border-radius:3px;flex:none;padding:0;display:inline-block}button.heatmap-cell[aria-pressed=true]{box-shadow:0 0 0 2px var(--ink)}.level-0{background:var(--level-0)}.level-1{background:var(--level-1)}.level-2{background:var(--level-2)}.level-3{background:var(--level-3)}.level-4{background:var(--level-4)}.activity-date{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.7rem;font-size:.76rem;font-weight:750}.activity-item{border-top:1px solid var(--border);justify-content:space-between;gap:1rem;min-width:0;padding:1rem 0;display:flex}.activity-item a,.activity-item h4,.activity-item p,.panel-soft h3,.panel-soft p{overflow-wrap:anywhere}.activity-group:first-child .activity-item:first-of-type{border-top:0}.pagination{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding-top:1rem;display:flex}.subject-progress{background:var(--surface-soft);border-radius:999px;height:.4rem;overflow:hidden}.subject-progress>span{border-radius:inherit;height:100%;display:block}.management-nav{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.management-nav a{min-height:2.5rem;color:var(--muted);border-radius:.55rem;align-items:center;padding:.5rem .7rem;font-size:.84rem;font-weight:650;display:inline-flex}.management-nav a:hover{background:var(--surface-soft);color:var(--ink)}.color-input{max-width:7rem}@media (max-width:640px){.public-header-inner{grid-template-columns:minmax(0,1fr) auto;row-gap:.65rem;display:grid}.public-header-inner>.brand{grid-area:1/1}.public-header-inner>.theme-toggle{grid-area:1/2}.public-nav{grid-area:2/1/auto/-1;justify-content:space-between;width:100%;margin-left:0}.owner-header-inner{grid-template-columns:minmax(0,1fr) auto auto;gap:.65rem .5rem;display:grid}.owner-header-inner>.management-nav{flex-wrap:nowrap;grid-area:2/1/auto/-1;justify-content:space-between;gap:0;width:100%;overflow-x:auto}.owner-header-inner>.management-nav a{white-space:nowrap}}@media (max-width:540px){:root{--heatmap-cell:18px}.container-wide{width:min(100% - 1.25rem,1180px)}.panel-pad{padding:1rem}.input{font-size:1rem}.weekly-row{grid-template-columns:5.8rem minmax(0,1fr) 4.2rem;gap:.45rem;font-size:.74rem}.nav-link{padding:.45rem .6rem}}@property --tw-space-y-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:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@keyframes pulse{50%{opacity:.5}}