/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
/*! Academ — GENERATED STYLESHEET.
    Do not edit static/css/academ.css by hand: it is the build output of this file.
    Edit scripts/css/*.css and run ./scripts/build_css.sh. */
@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-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-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}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:var(--font-mono);--text-xs:.75rem;--text-sm:.875rem;--tracking-tight:-.025em;--leading-tight:1.25;--leading-snug:1.375;--radius-xs:var(--radius-xs);--radius-sm:var(--radius-sm);--radius-lg:var(--radius-lg);--ease-out:var(--ease-out);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:var(--font-display);--text-display:var(--text-display);--text-numeral:var(--text-numeral);--radius-pill:var(--radius-pill);--shadow-raised:var(--shadow-raised);--shadow-overlay:var(--shadow-overlay);--ease-spring:var(--ease-spring)}}@layer base{*,:after,:before,::backdrop{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}html,:host{-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;-webkit-text-decoration: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{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}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*,:before,:after,::backdrop{border-color:var(--border)}h1,h2,h3,h4,h5,h6{font-weight:700}h5,h6{font-size:revert}code,kbd,samp,pre{font-family:var(--font-mono)}blockquote,dd,dl,figure,fieldset,hr,menu,ol,p,pre,table,ul{margin:revert;padding:revert}menu,ol,ul{list-style:revert}td,th{padding:revert}hr{height:revert;border:revert}button,[role=button],summary{cursor:pointer}[x-cloak]{display:none!important}}@layer elements{:root{scrollbar-width:thin;scrollbar-color:var(--text-faint) var(--bg-sunken)}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0}body:before{content:"";z-index:-1;pointer-events:none;background-color:var(--paper-ink);-webkit-mask-image:var(--paper-texture);-webkit-mask-image:var(--paper-texture);mask-image:var(--paper-texture);position:fixed;inset:0;-webkit-mask-size:160px 160px;mask-size:160px 160px;-webkit-mask-repeat:repeat;mask-repeat:repeat}main{max-width:var(--measure);margin:0 auto;padding:2.5rem 1.5rem 5rem}@media (max-width:560px){main{padding:1.75rem 1.05rem 4rem}}main.wide{max-width:var(--page-wide)}main.form-wide{max-width:var(--page-form)}main.full{max-width:none;padding:1.25rem 1.5rem 2rem}h1,h2,h3{font-family:var(--font-display);letter-spacing:var(--tracking-display);text-wrap:balance;margin:0 0 .5em;font-weight:400}h1{font-size:var(--text-h1);line-height:var(--leading-tight)}h2{font-size:var(--text-h2);line-height:var(--leading-snug)}h3{font-size:var(--text-h3);line-height:var(--leading-snug)}h4,h5,h6{font-family:var(--font-sans);font-size:var(--text-h4);font-weight:600;line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);text-wrap:balance;margin:0 0 .5em}p{text-wrap:pretty;margin:0 0 1em}a{color:var(--accent);text-underline-offset:.18em;text-decoration:underline;text-decoration-thickness:1px}@supports (color:color-mix(in lab, red, red)){a{-webkit-text-decoration-color:color-mix(in oklab, currentcolor 35%, transparent);-webkit-text-decoration-color:color-mix(in oklab, currentcolor 35%, transparent);text-decoration-color:color-mix(in oklab, currentcolor 35%, transparent)}}a{transition:text-decoration-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out)}a:hover{text-decoration-color:currentColor}a:where(.btn,.card-link,.rail-item,.rail-brand,.pagination-link,.trail-chip,.tree-title,.course-card){text-decoration:none}strong,b{font-weight:650}code,kbd,samp{font-size:.92em}:not(pre)>code{overflow-wrap:anywhere}.reltime{white-space:nowrap}.reltime[title]{cursor:help}::selection{background:var(--accent-subtle);color:var(--accent-strong)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-xs)}:is(button,a,summary,input,select,textarea,[tabindex]):focus-visible{box-shadow:0 0 0 4px var(--focus-halo)}}@layer components{@keyframes academ-rise{0%{opacity:0;transform:translateY(.5rem)}}@keyframes academ-fade{0%{opacity:0}}@keyframes academ-pop{0%{opacity:0;transform:scale(.97)}}@keyframes academ-grow{0%{transform:scaleX(0)}}@keyframes academ-shimmer{to{background-position-x:-200%}}@keyframes academ-spin{to{transform:rotate(1turn)}}.u-rise{animation:academ-rise var(--dur) var(--ease-out) both;animation-delay:calc(min(var(--i,0), 12) * var(--stagger))}.u-fade{animation:academ-fade var(--dur) var(--ease-out) both}.htmx-added{animation:academ-fade var(--dur-fast) var(--ease-out) both}.skeleton{background-image:linear-gradient(90deg, var(--bg-subtle) 0%, var(--bg-sunken) 40%, var(--bg-subtle) 80%);border-radius:var(--radius-sm);color:#0000;-webkit-user-select:none;user-select:none;background-size:200% 100%;animation:1.4s linear infinite academ-shimmer}@media (prefers-reduced-motion:reduce){*,:before,:after,::backdrop{scroll-behavior:auto!important;transition-duration:1ms!important;transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:0s!important}[aria-busy=true]:after,.htmx-indicator,.skeleton{animation-duration:2s!important;animation-iteration-count:infinite!important}}button,.btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-raised);min-height:42px;color:var(--text);font-family:var(--font-sans);font-size:var(--text-sm);letter-spacing:var(--tracking-tight);cursor:pointer;touch-action:manipulation;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-instant) var(--ease-out);justify-content:center;align-items:center;gap:.45rem;padding:.5rem 1rem;font-weight:600;display:inline-flex}button:hover,.btn:hover{background:var(--bg-subtle);border-color:var(--text-faint)}button:active,.btn:active{transform:translateY(1px)}button:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:default;transform:none}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-on)}.btn-primary:hover{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--accent-on)}.btn-sm{min-height:32px;font-size:var(--text-xs);padding:.3rem .65rem}.btn-icon{align-items:center;gap:.45rem;display:inline-flex}.btn-icon svg{flex-shrink:0;width:1rem;height:1rem}.btn-danger{color:var(--fail);border-color:var(--fail)}@supports (color:color-mix(in lab, red, red)){.btn-danger{border-color:color-mix(in oklab, var(--fail) 45%, transparent)}}.btn-danger{background:var(--fail-subtle)}.btn-danger:hover{background:var(--fail);border-color:var(--fail);color:var(--bg-raised)}.btn-hero{min-height:48px;font-size:var(--text-body);background:linear-gradient(135deg, var(--accent-grad-start), var(--accent-grad-end));color:var(--accent-on);box-shadow:var(--shadow-raised);border-color:#0000;padding:.7rem 1.4rem}.btn-hero:hover{background:linear-gradient(135deg, var(--accent-grad-start), var(--accent-grad-end));color:var(--accent-on);filter:brightness(1.06);border-color:#0000}.btn-hero:focus-visible{box-shadow:0 0 0 4px var(--focus-halo), var(--shadow-raised)}.tree-actions>a.btn-sm,.delete-control>button{color:var(--text-muted);background:0 0;border-color:#0000;font-weight:500}.tree-actions>a.btn-sm:hover{background:var(--accent-subtle);color:var(--accent-strong);border-color:#0000}.delete-control>button:hover{background:var(--fail-subtle);color:var(--fail);border-color:#0000}.delete-control,.delete-confirm,.confirm-inline{font-size:var(--text-xs);align-items:center;gap:.4rem;display:inline-flex}.toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.badge{border-radius:var(--radius-xs);--badge-tint:var(--bg-subtle);background:var(--badge-tint);max-width:100%;color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;white-space:normal;align-items:center;gap:.3em;padding:.12rem .45rem;font-weight:650;display:inline-flex}@media (max-width:560px){.badge{font-size:var(--text-xs)}}.badge-prose,.action-status .badge{letter-spacing:normal;text-align:left;text-transform:none;font-weight:500}.badge-ok{--badge-tint:var(--ok-subtle);color:var(--ok)}.badge-fail{--badge-tint:var(--fail-subtle);color:var(--fail)}.badge-flag,.badge-draft{--badge-tint:var(--flag-subtle);color:var(--flag)}.badge-muted{--badge-tint:var(--bg-subtle);color:var(--text-muted)}.badge-edited{outline-offset:-1px;outline:1px dashed}.badge-button{border:1px solid;min-height:24px;padding:.25rem .5rem}@supports (color:color-mix(in lab, red, red)){.badge-button{border:1px solid color-mix(in oklab, currentcolor 32%, transparent)}}.badge-button{cursor:pointer;touch-action:manipulation;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-instant) var(--ease-out);font-family:inherit}.badge-button:hover{background:currentColor}@supports (color:color-mix(in lab, red, red)){.badge-button:hover{background:color-mix(in oklab, currentcolor 16%, var(--badge-tint))}}.badge-button:hover{border-color:currentColor}.badge-button:active{transform:translateY(1px)}.badge-button:focus-visible{border-color:currentColor}.badge-action-icon{opacity:.75;width:.9em;height:.9em;transition:opacity var(--dur-fast) var(--ease-out);flex:none}.badge-button:hover .badge-action-icon,.badge-button:focus-visible .badge-action-icon{opacity:1}.badge-button.badge-edited{outline-offset:-3px}@media (pointer:coarse){.badge-button{min-height:32px;padding:.35rem .65rem}.btn{min-height:44px}}.tabular-nums{font-variant-numeric:tabular-nums}button[aria-busy=true]{pointer-events:none;position:relative}button[aria-busy=true] .btn-label{visibility:hidden}button[aria-busy=true]:after{content:"";border:2px solid;border-top-color:#0000;border-radius:50%;width:1.05rem;height:1.05rem;margin:auto;animation:.6s linear infinite academ-spin;position:absolute;inset:0}.htmx-indicator{display:none}.htmx-request .htmx-indicator,.htmx-request.htmx-indicator{display:inline-flex}.card{margin-bottom:var(--space-4);padding:var(--space-5) var(--space-6);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-raised);box-shadow:var(--shadow)}.card-link{color:inherit;transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur) var(--ease-out), transform var(--dur) var(--ease-out);display:block}.card-link:hover{border-color:var(--accent);box-shadow:var(--shadow-raised);transform:translateY(-2px)}.card-link:focus-visible{box-shadow:0 0 0 4px var(--focus-halo), var(--shadow-raised)}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-3) var(--space-6);margin-bottom:var(--space-6);padding-bottom:var(--space-3);border-bottom:var(--rule-strong) solid var(--border-strong);flex-wrap:wrap;display:flex}.page-head h1{margin-bottom:0}.page-eyebrow{margin-bottom:var(--space-1);color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:650;line-height:1.2;display:block}h1>.page-eyebrow{margin-bottom:var(--space-2)}.crumbs{flex-wrap:wrap;align-items:baseline;gap:.3rem .7rem;min-width:0;display:flex}.backlink{color:var(--text-muted);font-size:var(--text-sm);font-weight:500;text-decoration:none;display:inline-block}.backlink:hover{color:var(--accent)}@media (max-width:560px){.backlink{padding-block:.25rem}.page-head .toolbar{width:100%}.page-head .toolbar>*{flex:auto;justify-content:center}}@media (pointer:coarse){.backlink{align-items:center;min-height:44px;display:inline-flex}}.list-plain{margin:0;padding:0;list-style:none}.list-plain>*+*{margin-top:.75rem}.empty-state{padding:var(--space-16) var(--space-6);border:1px solid var(--border);border-radius:var(--radius);background:radial-gradient(120% 100% at 50% 0%, var(--accent-subtle) 0%, var(--bg) 72%);color:var(--text-muted);text-align:center;position:relative;overflow:hidden}.empty-state:before{content:"";background:linear-gradient(90deg, transparent, var(--accent) 30%, var(--accent) 70%, transparent);opacity:.65;height:2px;position:absolute;inset:0 0 auto}.empty-state h2{color:var(--text)}.empty-state p{max-width:46ch;margin-inline:auto}.course-grid{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:1rem;display:grid}.course-grid.list-plain>*+*{margin-top:0}.course-card{align-items:flex-start;gap:.9rem;height:100%;margin-bottom:0;display:flex}.course-icon{border-radius:var(--radius-sm);background:var(--accent-subtle);width:2.75rem;height:2.75rem;color:var(--accent-strong);flex-shrink:0;place-items:center;display:grid}.course-icon svg{width:1.35rem;height:1.35rem}.course-icon-lg{border-radius:var(--radius);width:3.75rem;height:3.75rem;margin:0 auto 1.25rem}.course-icon-lg svg{width:1.85rem;height:1.85rem}.course-card-body{min-width:0}.course-card-body h2{font-size:var(--text-h3);overflow-wrap:break-word;margin:0 0 .25rem}.course-meta{color:var(--text-muted);font-size:var(--text-sm);margin:0 0 .7rem}.course-badges{flex-wrap:wrap;gap:.4rem;display:flex}.share-invite{min-width:0;display:inline-flex}.share-invite>.btn{width:100%}.share-row{align-items:center;gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.share-row+.share-row{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.share-field{flex:16rem;min-width:0}.share-key{margin-bottom:var(--space-0-5);color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:650;display:block}.share-code{color:var(--text);font-family:var(--font-mono);font-size:var(--text-h2);letter-spacing:.14em;font-weight:600;line-height:var(--leading-tight);-webkit-user-select:all;user-select:all;display:inline-block}.share-link{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-snug)}.share-copy{flex:none;place-items:center;display:inline-grid}.share-copy>span{grid-area:1/1;align-items:center;gap:.4rem;display:inline-flex}.share-copy .share-copy-done,.share-copy.is-copied .share-copy-idle{visibility:hidden}.share-copy.is-copied .share-copy-done{visibility:visible}.share-copy.is-copied{border-color:var(--ok)}@supports (color:color-mix(in lab, red, red)){.share-copy.is-copied{border-color:color-mix(in oklab, var(--ok) 45%, transparent)}}.share-copy.is-copied{background:var(--ok-subtle);color:var(--ok)}.share-note{margin:var(--space-3) 0 0;max-width:62ch;color:var(--text-muted);font-size:var(--text-xs);line-height:var(--leading-body)}.share-status{margin:var(--space-2) 0 0;color:var(--flag);font-size:var(--text-xs)}.share-status:not([data-visible]){clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:560px){.share-copy{width:100%}}.modal-backdrop{z-index:var(--z-modal);background:var(--bg-sunken);justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.modal-backdrop{background:color-mix(in oklab, var(--bg-sunken) 72%, transparent)}}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-raised);width:100%;max-width:56rem;max-height:85vh;box-shadow:var(--shadow-overlay);overscroll-behavior:contain;animation:academ-pop var(--dur) var(--ease-spring) both;padding:1.4rem 1.5rem;overflow-y:auto}.modal-panel-sm{max-width:30rem}.modal-panel-md{max-width:34rem}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.6rem;display:flex}.modal-head h3{margin:0}.modal-body>h4:first-child{margin-top:0}.modal-actions{justify-content:flex-end;align-items:center;gap:.5rem;margin-top:1.25rem;display:flex}.pagination{border-top:1px solid var(--border);gap:.75rem;margin-top:3rem;padding-top:1.25rem;display:flex}.pagination-link{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-raised);min-width:0;color:inherit;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);flex-direction:column;flex:1;gap:.2rem;padding:.8rem 1rem;text-decoration:none;display:flex}.pagination-link:hover{background:var(--bg-subtle);border-color:var(--accent)}.pagination-next{text-align:right;margin-left:auto}.pagination-dir{color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:650}.pagination-title{font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;font-weight:600;display:block;overflow:hidden}@media (max-width:560px){.pagination{flex-direction:column}.pagination-next{text-align:left;margin-left:0}}.skip-link{z-index:var(--z-skip);border-radius:0 0 var(--radius-sm) 0;background:var(--accent);color:var(--accent-on);transition:transform var(--dur-fast) var(--ease-out);padding:.7rem 1.1rem;font-weight:600;text-decoration:none;position:fixed;top:0;left:0;transform:translateY(-120%)}.skip-link:focus{transform:none}.app{min-height:100dvh;display:flex}.app-content{flex:1;min-width:0}.rail{z-index:var(--z-rail);width:var(--rail-size);height:100dvh;padding:1rem .5rem calc(1rem + env(safe-area-inset-bottom));border-right:1px solid var(--border);background:var(--bg-subtle);flex-direction:column;flex-shrink:0;align-items:center;gap:.35rem;display:flex;position:sticky;top:0}.rail-spacer{flex:1}.rail-brand{border-radius:var(--radius-sm);background:linear-gradient(140deg, var(--accent-grad-start), var(--accent-grad-end));width:2.75rem;height:2.75rem;box-shadow:var(--shadow);transition:transform var(--dur) var(--ease-spring);place-items:center;margin-bottom:1rem;display:grid}.rail-brand:hover{transform:scale(1.06)rotate(-2deg)}.rail-brand img{width:2.15rem;height:2.15rem;display:block}.rail-item{border-radius:var(--radius-sm);width:100%;color:var(--text-muted);touch-action:manipulation;transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);flex-direction:column;align-items:center;gap:.25rem;padding:.6rem .2rem;text-decoration:none;display:flex;position:relative}.rail-item svg{width:1.35rem;height:1.35rem}.rail-item:hover{background:var(--bg-raised);color:var(--text)}.rail-item-label{font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:650}.rail-item.active{background:var(--accent-subtle);color:var(--accent-strong)}.rail-item.active svg{stroke-width:2.25px}.rail-item.active .rail-item-label{font-weight:700}.rail-item.active:before{content:"";border-radius:0 var(--radius-pill) var(--radius-pill) 0;background:var(--accent);width:3px;height:60%;position:absolute;top:50%;left:-.5rem;transform:translateY(-50%)}.rail-user{position:relative}.rail-avatar{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-raised);width:2.4rem;height:2.4rem;min-height:0;color:var(--text);font-size:var(--text-xs);letter-spacing:.02em;place-items:center;padding:0;font-weight:700;display:grid}.rail-avatar:hover{background:var(--accent-subtle);border-color:var(--accent);color:var(--accent-strong)}.popover{z-index:var(--z-popover);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-raised);min-width:15rem;box-shadow:var(--shadow-overlay);padding:1rem 1.1rem;position:absolute;bottom:0;left:calc(100% + .7rem)}.popover-name{font-family:var(--font-display);font-size:var(--text-h3);margin:0}.popover-meta{color:var(--text-muted);font-size:var(--text-xs);overflow-wrap:anywhere;margin:0}.popover form{margin:.75rem 0 0}.popover-link{text-align:center;width:100%;margin-top:.85rem;text-decoration:none;display:block}.popover-logout{width:100%}.topbar{border-bottom:1px solid var(--border);background:var(--bg-raised);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:.6rem 1.5rem;display:flex}.topbar:empty{display:none}@media (max-width:560px){.topbar{padding-inline:1.05rem}}.flashes{margin:0 0 1.5rem;padding:0;list-style:none}.flash{border:1px solid var(--border);border-left:var(--rule-strong) solid var(--accent);border-radius:var(--radius-sm);background:var(--bg-raised);font-size:var(--text-sm);box-shadow:var(--shadow);animation:academ-rise var(--dur) var(--ease-out) both;align-items:center;gap:.6rem;margin-bottom:.5rem;padding:.7rem 1rem;display:flex}@media (max-width:760px){.app{display:block}.app-content{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom))}.rail{width:auto;height:auto;padding:.35rem .5rem calc(.35rem + env(safe-area-inset-bottom));border-right:none;border-top:1px solid var(--border);flex-direction:row;gap:0;position:fixed;inset:auto 0 0}.rail-brand,.rail-spacer{display:none}.rail-item,.rail-user{flex:1 1 0;min-width:0}.rail-user{justify-content:center;display:flex}.rail-item{width:auto;padding:.4rem .7rem}.rail-avatar{width:2.75rem;height:2.75rem}.rail-item.active:before{border-radius:0 0 var(--radius-pill) var(--radius-pill);width:2rem;height:3px;top:-.35rem;left:50%;transform:translate(-50%)}.popover{bottom:calc(100% + .7rem);left:auto;right:0}}main.auth{place-items:center;max-width:none;min-height:100dvh;padding:2rem 1.5rem 4rem;display:grid}.auth-card{width:100%;max-width:25rem;animation:academ-rise var(--dur-slow) var(--ease-out) both}.brand-plate{border-radius:var(--radius-lg);background:linear-gradient(140deg, var(--accent-grad-start), var(--accent-grad-end));width:3.5rem;height:3.5rem;box-shadow:var(--shadow-raised);transition:transform var(--dur) var(--ease-spring);place-items:center;display:grid}.brand-plate:hover{transform:scale(1.06)rotate(-2deg)}.brand-plate img{width:2.75rem;height:2.75rem;display:block}.auth-brand{margin-bottom:var(--space-5)}.auth-eyebrow{color:var(--accent-strong);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;margin:0 0 .35rem;font-weight:700}.auth-title{border-bottom:var(--rule-strong) solid var(--border-strong);font-size:var(--text-display);line-height:var(--leading-tight);margin:0 0 .6rem;padding-bottom:.75rem}.auth-lede{color:var(--text-muted);font-size:var(--text-sm);text-wrap:pretty;margin:0 0 2rem}.auth-error{border-left:var(--rule-strong) solid var(--fail);border-radius:var(--radius-xs);background:var(--fail-subtle);color:var(--fail);font-size:var(--text-sm);margin:0 0 1.25rem;padding:.65rem .9rem;font-weight:500}.auth-submit{width:100%;min-height:46px;margin-top:.5rem}body:has(main.auth) .rail{--rail-size:60px}@media (max-width:760px){main.auth{min-height:auto;padding-top:3rem}}main.invite{max-width:40rem}.invite-shell{width:100%;animation:academ-rise var(--dur-slow) var(--ease-out) both}.invite-shell-narrow{max-width:27rem;margin-inline:auto}.invite-head{margin-bottom:var(--space-6);text-align:center}.invite-title{font-size:var(--text-h1);line-height:var(--leading-tight);margin:0 0 .6rem}.invite-by{color:var(--text-muted);font-size:var(--text-sm);flex-wrap:wrap;justify-content:center;align-items:center;gap:.3rem .6rem;margin:0;display:flex}.invite-lede{color:var(--text-muted);font-size:var(--text-sm);text-wrap:pretty;margin:0}.invite-card{margin-bottom:var(--space-6)}.invite-card .statement h1{font-size:1.85em}.invite-card .statement h2{font-size:1.5em}.invite-card .statement h3{font-size:1.25em}.invite-empty{color:var(--text-muted);font-size:var(--text-sm);margin:0}.invite-actions{margin:0 0 var(--space-5);flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem;display:flex}.card .invite-actions{margin-bottom:0}.invite-submit{min-height:46px;padding-inline:1.5rem}.invite-note{color:var(--text-muted);font-size:var(--text-xs);text-align:center;text-wrap:pretty;margin:0}.invite-code{font-family:var(--font-mono);font-size:var(--text-h3);letter-spacing:.32em;text-align:center;text-transform:uppercase;text-indent:.32em}.invite-code::placeholder{color:var(--text-faint);text-transform:none}@media (max-width:560px){.invite-actions>*{flex:100%}}main.landing{max-width:var(--page-wide);padding-bottom:var(--space-16)}body:has(main.landing) .rail{--rail-size:60px}.landing-sky{z-index:-1;pointer-events:none;width:100%;height:100%;color:var(--text-faint);border-color:var(--accent);position:fixed;inset:0}.landing-hero{gap:var(--space-12);padding-block:var(--space-12) var(--space-16);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;display:grid}.landing-brand{align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.landing-brand .brand-plate{border-radius:var(--radius-sm);width:2.25rem;height:2.25rem;box-shadow:var(--shadow)}.landing-brand .brand-plate img{width:1.75rem;height:1.75rem}.landing-brand .landing-eyebrow{margin:0}.landing-eyebrow{margin:0 0 var(--space-2);color:var(--accent-strong);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}.landing-title{margin:0 0 var(--space-4);padding-bottom:var(--space-3);border-bottom:var(--rule-strong) solid var(--border-strong);font-size:var(--text-display);line-height:var(--leading-tight);letter-spacing:var(--tracking-display)}.landing-title em{color:var(--accent-strong)}.landing-lede{margin:0 0 var(--space-6);max-width:52ch;color:var(--text-muted);font-size:var(--text-lede);line-height:var(--leading-body);text-wrap:pretty}.landing-cta{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.landing-cta .landing-register{min-height:48px;font-size:var(--text-body);padding:.7rem 1.4rem}.landing-hint{margin:var(--space-3) 0 0;color:var(--text-faint);font-size:var(--text-xs)}.landing-terminal{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--cm-bg);box-shadow:var(--shadow-raised);font-family:var(--font-mono);font-size:var(--text-sm);overflow:hidden}.landing-terminal-bar{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);background:var(--cm-gutter-bg);display:flex}.landing-dot{border-radius:var(--radius-pill);background:var(--border);width:9px;height:9px}.landing-terminal-name{margin-left:var(--space-2);color:var(--text-muted);font-size:var(--text-xs)}.landing-terminal-code{min-height:calc(6 * 1.55em + 2 * var(--space-4));padding:var(--space-4);white-space:pre;color:var(--cm-fg);margin:0;line-height:1.55;overflow-x:auto}.landing-caret{vertical-align:text-bottom;background:var(--cm-caret);width:2px;height:1.1em;margin-left:1px;animation:1s step-end infinite landing-blink;display:inline-block}@keyframes landing-blink{50%{opacity:0}}.tk-kw{color:var(--cm-keyword)}.tk-fn{color:var(--cm-function)}.tk-num{color:var(--cm-number)}.tk-op{color:var(--cm-operator)}.landing-tests{gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--border);font-size:var(--text-xs);margin:0;list-style:none;display:grid}.landing-test{align-items:baseline;gap:var(--space-2);color:var(--text-muted);display:flex}.landing-test-name{flex:1}.landing-test.ok:before{content:"✓";color:var(--ok);font-weight:700}.landing-test.verdict{padding-top:var(--space-2);border-top:1px solid var(--border);color:var(--ok);font-weight:700}.landing-test.is-pending{opacity:0;translate:-.35rem}.landing-test.is-shown{opacity:1;transition:opacity var(--dur) var(--ease-out), translate var(--dur) var(--ease-out);translate:none}.will-reveal{opacity:0;translate:0 .75rem}.will-reveal.is-in{opacity:1;transition:opacity var(--dur-slow) var(--ease-out), translate var(--dur-slow) var(--ease-out);translate:none}.landing-features{gap:var(--space-8) var(--space-6);margin-top:var(--space-16);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.landing-card{padding-top:var(--space-4);border-top:var(--rule-strong) solid var(--border-strong)}.landing-card svg{width:1.5rem;height:1.5rem;color:var(--accent)}.landing-card h2{margin:var(--space-3) 0 var(--space-2);font-family:var(--font-sans);font-size:var(--text-h4);letter-spacing:var(--tracking-tight);font-weight:700}.landing-card p{color:var(--text-muted);font-size:var(--text-sm);line-height:var(--leading-body);margin:0}.landing-mathstrip{margin-top:var(--space-24);text-align:center}.landing-mathstrip-inner{justify-content:center;align-items:center;gap:var(--space-4) var(--space-6);padding:var(--space-8) var(--space-4);border-block:var(--rule) solid var(--border);flex-wrap:wrap;display:flex}.landing-math-src{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--bg-subtle);color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-sm)}.landing-math-arrow{color:var(--text-faint);font-size:var(--text-h2)}.landing-math-out{font-size:var(--text-h3)}.landing-mathstrip-caption{margin:var(--space-4) 0 0;color:var(--text-muted);font-size:var(--text-sm)}.landing-final{margin-top:var(--space-24);text-align:center}.landing-final .landing-cta{justify-content:center}.landing-final-title{margin:0 0 var(--space-6);font-size:var(--text-h1);line-height:var(--leading-snug)}.landing-final-brand{margin-inline:auto;margin-bottom:var(--space-5)}.landing-footer{align-items:center;gap:var(--space-3);margin-top:var(--space-16);padding-top:var(--space-4);border-top:1px solid var(--border);color:var(--text-faint);font-size:var(--text-xs);display:flex}.landing-footer .brand-plate{border-radius:var(--radius-xs);width:1.5rem;height:1.5rem;box-shadow:none;transition:none}.landing-footer .brand-plate:hover{transform:none}.landing-footer .brand-plate img{width:1.2rem;height:1.2rem}.landing-footer p{margin:0}@media (max-width:900px){.landing-hero{gap:var(--space-10);padding-block:var(--space-8) var(--space-10);grid-template-columns:minmax(0,1fr)}.landing-hero-visual{max-width:30rem}.landing-features{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.landing-features{grid-template-columns:minmax(0,1fr)}}label{font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);margin-bottom:.35rem;font-weight:650;display:block}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],input[type=datetime-local],textarea,select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-raised);width:100%;min-height:42px;color:var(--text);font-family:inherit;font-size:var(--text-body);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);padding:.55rem .7rem}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle);outline:none}textarea{min-height:5rem;line-height:var(--leading-body);resize:vertical}input[type=checkbox]{width:1.1rem;height:1.1rem;min-height:0;accent-color:var(--accent)}@media (pointer:coarse){input[type=checkbox]{width:1.5rem;height:1.5rem}}.field{margin-bottom:1.15rem}.field .error{color:var(--fail);font-size:var(--text-xs);margin-top:.35rem}.field .help,.field-help,.section-hint{color:var(--text-muted);font-size:var(--text-xs);margin-top:.35rem}.field-help{margin:.35rem 0 1rem}.errorlist{border-left:var(--rule-strong) solid var(--fail);border-radius:var(--radius-xs);background:var(--fail-subtle);color:var(--fail);font-size:var(--text-sm);margin:0 0 1rem;padding:.6rem .9rem;list-style:none}label .req{color:var(--fail);font-weight:700}.form-grid{max-width:60ch}.form-row{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:0 1.25rem;display:grid}.field-narrow{max-width:22rem}.due-picker-controls{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.due-date{flex:10rem;max-width:13rem}.due-time,.due-custom{flex:0 9rem;width:auto}.due-custom[hidden]{display:none}.due-presets{flex-wrap:wrap;gap:.4rem;margin-top:.55rem;display:flex}.due-presets[hidden]{display:none}.due-presets .btn{border-radius:var(--radius-pill);color:var(--text-muted);font-weight:500}.due-presets .btn:hover{color:var(--text)}.due-echo{color:var(--text-muted);font-size:var(--text-xs);margin:.5rem 0 0}.due-echo-past{color:var(--flag)}.field-group{border:0;border-left:var(--rule) solid var(--border);margin:0 0 1.15rem 1.6rem;padding:0 0 0 .9rem}.field-group>legend{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;padding:0}.field-group>.field:last-child{margin-bottom:0}.field-check{align-items:flex-start;gap:.6rem;display:flex}.field-check>input[type=checkbox]{flex-shrink:0;margin-top:.15rem}.field-check-body{min-width:0}.field-check-body label{font-size:var(--text-sm);letter-spacing:normal;text-transform:none;color:var(--text);cursor:pointer;margin:0;font-weight:500}.field-check-body .field-help{margin:.15rem 0 0}.form-section>h2{font-size:var(--text-h3);margin:0 0 .15rem}.form-section>.section-hint{margin:0 0 1.2rem}.form-section>.field:last-child,.form-section>.form-row:last-child,.form-section>.form-row:last-child>.field:last-child{margin-bottom:0}.form-disclosure{margin-bottom:var(--space-4)}.form-disclosure>summary{align-items:center;gap:var(--space-2);width:fit-content;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);font-weight:650;list-style:none;display:flex}.form-disclosure>summary::-webkit-details-marker{display:none}.form-disclosure>summary:before{content:"";width:.45em;height:.45em;transition:transform var(--dur-fast) var(--ease-out);border-bottom:2px solid;border-right:2px solid;transform:rotate(-45deg)}.form-disclosure[open]>summary:before{transform:rotate(45deg)}.form-disclosure>summary:hover{background:var(--bg-subtle);color:var(--text)}.form-disclosure>summary:focus-visible{box-shadow:0 0 0 4px var(--focus-halo);outline:none}.form-disclosure>summary+*{margin-top:var(--space-4)}.form-disclosure>:last-child{margin-bottom:0}.formset-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-subtle);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);margin-bottom:.85rem;padding:.75rem 1.1rem .4rem}.formset-row:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.formset-row-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}#testcase-rows{counter-reset:tc}#testcase-rows .formset-row{counter-increment:tc}.formset-row-title{font-size:0}#testcase-rows .formset-row-title:before{content:"Prueba " counter(tc);color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}.formset-fields{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:0 1.25rem;display:grid}.row-remove{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:normal;text-transform:none;cursor:pointer;align-items:center;gap:.35rem;margin:0;font-weight:500;display:inline-flex}.row-remove input[type=checkbox]{width:1rem;height:1rem}.row-remove:hover{color:var(--fail)}.profile-header{align-items:center;gap:1rem;margin-bottom:1.75rem;display:flex}.profile-avatar{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-subtle);width:3.25rem;height:3.25rem;color:var(--text-muted);flex-shrink:0;place-items:center;display:grid}.profile-avatar svg{width:1.75rem;height:1.75rem}.profile-name{font-family:var(--font-display);font-size:var(--text-h2);margin:0}.segmented{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-raised);flex-wrap:wrap;max-width:100%;display:inline-flex;overflow:hidden}.segmented-option{margin:0;position:relative}.segmented-option input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.segmented-option span{min-height:42px;color:var(--text-muted);font-size:var(--text-sm);transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);align-items:center;padding:.5rem 1.1rem;font-weight:500;display:flex}.segmented-option+.segmented-option{border-left:1px solid var(--border)}.segmented-option input:checked+span{background:var(--accent);color:var(--accent-on);font-weight:650}.segmented-option input:focus-visible+span{outline:2px solid var(--focus-ring);outline-offset:-2px}.form-actions{z-index:var(--z-sticky);padding:.8rem 1rem calc(.8rem + env(safe-area-inset-bottom));border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-raised);box-shadow:var(--shadow-raised);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;margin-top:1.5rem;display:flex;position:sticky;bottom:.6rem}.form-actions .spacer{margin-right:auto}@media (max-width:760px){.form-actions{box-shadow:var(--shadow);position:static}}.dropzone{border-radius:var(--radius-sm);transition:border-color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);padding:0}.dropzone.is-droppable{padding:var(--space-5);border:var(--rule-strong) dashed var(--border-strong);background:var(--bg-sunken)}.dropzone.is-dragging{border-color:var(--accent);background:var(--accent-subtle);border-style:solid}.dropzone-hint{color:var(--text-muted);font-size:var(--text-sm);margin:0 0 .75rem;display:none}.dropzone.is-droppable .dropzone-hint{display:block}.dropzone.is-dragging .dropzone-hint{color:var(--accent-strong)}.dropzone-files{flex-direction:column;gap:.35rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.dropzone-file{border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--bg-raised);font-size:var(--text-sm);align-items:center;gap:.6rem;padding:.4rem .6rem;display:flex}.dropzone-file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.dropzone-file-size{color:var(--text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.dropzone-status{color:var(--flag);font-size:var(--text-xs);margin:.6rem 0 0}.dropzone-status:not([data-visible]){clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.dropzone-file-total{color:var(--text-muted);font-size:var(--text-xs);background:0 0;border-color:#0000}@media (max-width:560px){.dropzone-file{flex-wrap:wrap}.dropzone-file-name{flex:1 0 100%}.dropzone-file button{margin-left:auto}}.md-images-bar{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;margin-top:.5rem;display:flex}.md-images-hint{color:var(--text-muted);font-size:var(--text-sm)}.md-images-input{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.md-images-status{color:var(--text-muted);font-size:var(--text-sm);flex-basis:100%;margin:0}.md-images-status:empty{display:none}.cm-field.is-dropping,textarea.md-input.is-dropping{border-color:var(--accent);background:var(--accent-subtle)}.statement{min-width:0;font-size:1.0625rem;line-height:var(--leading-body);hanging-punctuation:first last}.statement>:first-child{margin-top:0}.statement>:last-child{margin-bottom:0}.statement h1{font-size:clamp(2.2rem,6vw,3.4rem);line-height:var(--leading-tight);margin-top:1em;margin-bottom:.4em}.statement h2{font-size:2.45em;line-height:var(--leading-tight);margin-top:1.15em;margin-bottom:.4em}.statement h3{font-size:2em;line-height:var(--leading-snug);margin-top:1.25em;margin-bottom:.45em}.statement h4,.statement h5,.statement h6{color:var(--text-muted);letter-spacing:var(--tracking-label);text-transform:uppercase;margin-top:1.6em;font-size:1em;font-weight:700}.statement ul,.statement ol{margin:0 0 1em;padding-left:1.4em}.statement li+li{margin-top:.3em}.statement li::marker{color:var(--text-faint)}.statement ol>li::marker{color:var(--text-muted);font-family:var(--font-display);font-size:1.05em}.statement blockquote{padding:.1em 0 .1em var(--space-5);border-left:var(--rule-strong) solid var(--accent);color:var(--text-muted);font-family:var(--font-display);font-size:1.24em;font-style:italic;line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);margin:1.6em 0}.statement blockquote>:last-child{margin-bottom:0}.statement blockquote :is(code,pre,cite){font-size:var(--text-sm);font-style:normal}.statement hr{width:var(--space-16);height:0;margin:var(--space-10) auto;border:0;border-top:var(--rule-strong) solid var(--border-strong);opacity:.55}.statement figure{margin:var(--space-6) 0}.statement figure>img{width:100%;display:block}.statement figcaption{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:650}.statement-lede>p:first-child{color:var(--text);font-size:var(--text-lede);line-height:1.5}.statement-lede>p:first-child:first-letter{float:left;color:var(--accent-strong);font-family:var(--font-display);margin:.02em .08em 0 0;font-size:3.3em;font-weight:400;line-height:.82}.statement a{font-weight:500}.statement img{border-radius:var(--radius-sm);max-width:100%;height:auto}.statement code{border-radius:var(--radius-xs);background:var(--bg-subtle);color:var(--accent-strong);font-family:var(--font-mono);padding:.12em .35em;font-size:.88em}.statement pre{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-subtle);font-family:var(--font-mono);font-size:var(--text-sm);margin:1.4em 0;padding:1rem 1.1rem;line-height:1.55;overflow-x:auto}.statement pre code{color:inherit;font-size:inherit;background:0 0;padding:0}.statement table{border-collapse:collapse;width:max-content;max-width:100%;font-size:var(--text-sm);overscroll-behavior-x:contain;margin:1.5em auto;display:block;overflow-x:auto}.statement th,.statement td{border-bottom:1px solid var(--border);text-align:left;padding:.5rem .7rem}.statement thead th{border-bottom:2px solid var(--border-strong);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700}.codehilite{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-subtle);margin:1.4em 0;padding:1rem 1.1rem;overflow-x:auto}.codehilite pre{background:0 0;border:0;margin:0;padding:0}.codehilite .k,.codehilite .kd,.codehilite .kn,.codehilite .kc,.codehilite .ow{color:var(--cm-keyword);font-weight:600}.codehilite .s,.codehilite .s1,.codehilite .s2,.codehilite .sb,.codehilite .sd{color:var(--cm-string)}.codehilite .c,.codehilite .c1,.codehilite .cm{color:var(--cm-comment);font-style:italic}.codehilite .nf,.codehilite .fm{color:var(--cm-function)}.codehilite .nc,.codehilite .nn{color:var(--cm-type)}.codehilite .mi,.codehilite .mf,.codehilite .m{color:var(--cm-number)}.codehilite .bp,.codehilite .nb{color:var(--cm-constant)}.codehilite .o,.codehilite .p{color:var(--cm-operator)}.tree.card{padding:0;overflow:hidden}.tree-item,.tree-head{--tree-gap:.55rem;--tree-toggle-size:1.4rem;--drag-handle-size:1.1rem;--node-icon-size:1.6rem;--tree-toggle-slot:0rem;--tree-handle-slot:0rem;--tree-icon-slot:0rem;--tree-indent:calc(var(--tree-toggle-slot) + var(--tree-handle-slot) + var(--tree-icon-slot))}.tree-head{--node-icon-size:1.85rem}.tree-item:has(>.tree-label>.tree-toggle),.tree-head:has(>.tree-label>.tree-toggle){--tree-toggle-slot:calc(var(--tree-toggle-size) - .3rem + var(--tree-gap))}.tree-item:has(>.tree-label>.drag-handle),.tree-head:has(>.tree-label>.drag-handle){--tree-handle-slot:calc(var(--drag-handle-size) - .2rem + var(--tree-gap))}.tree-item:has(>.tree-label>.node-icon),.tree-head:has(>.tree-label>.node-icon){--tree-icon-slot:calc(var(--node-icon-size) + var(--tree-gap))}.tree-head{border-bottom:1px solid var(--border);background:var(--bg-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:.9rem 1.15rem;display:flex}.tree-head .tree-title{font-family:var(--font-display);font-size:var(--text-h3);letter-spacing:var(--tracking-display);font-weight:400}.tree>.tree-children{padding:.4rem 1.15rem .8rem}.tree-item{border-radius:var(--radius-xs);transition:background-color var(--dur-fast) var(--ease-out);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.35rem 1rem;padding:.4rem .55rem;display:flex}.tree-item:hover{background:var(--bg-subtle)}.tree-label{align-items:center;gap:var(--tree-gap);flex-wrap:wrap;min-width:0;display:flex}.tree-title{overflow-wrap:break-word;flex:1 1 0;min-width:0;font-weight:500}a.tree-title{color:var(--text);text-decoration:none}a.tree-title:hover{color:var(--accent);text-underline-offset:.18em;text-decoration:underline}.tree-meta{color:var(--text-muted);font-size:var(--text-xs)}.tree-toggle{width:var(--tree-toggle-size,1.4rem);height:var(--tree-toggle-size,1.4rem);border-radius:var(--radius-xs);color:var(--text-muted);transition:color var(--dur-fast) var(--ease-out);background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;margin-left:-.3rem;padding:0;display:inline-flex}.tree-toggle:hover{color:var(--accent)}.tree-toggle-empty{visibility:hidden}@media (pointer:coarse){.tree-toggle{position:relative}.tree-toggle:after{content:"";position:absolute;inset:-.55rem}a.tree-title{align-items:center;min-height:44px;display:flex}}.tree-chevron{width:.875rem;height:.875rem;transition:rotate var(--dur-fast) var(--ease-out)}.tree-toggle[aria-expanded=false] .tree-chevron{rotate:-90deg}.tree.is-collapsed>.tree-head{border-bottom-color:#0000}.tree-empty{color:var(--text-faint);font-size:var(--text-sm);margin:0;padding:.4rem .55rem}.tree-actions,.tree-badges{flex-wrap:wrap;align-items:center;gap:.3rem;min-width:0;display:flex}.tree-actions{opacity:.55;transition:opacity var(--dur-fast) var(--ease-out);margin-left:auto}.tree-item:hover .tree-actions,.tree-actions:focus-within,.tree-head .tree-actions{opacity:1}.tree-children .tree-children{border-left:1px solid var(--border);margin:.15rem 0 .5rem 1.75rem;padding-left:.9rem}.tree-item-agenda .tree-label{flex:20rem}.tree-item-agenda .tree-meta{flex-basis:calc(100% - var(--tree-indent));margin-left:var(--tree-indent)}.tree-item-agenda .tree-badges{justify-content:flex-end}.task-block{border-left:1px solid var(--border);margin:.9rem 0;padding-left:.95rem}.tree-desc{color:var(--text-muted);font-size:var(--text-sm);padding:0 1.15rem .7rem}.tree-desc>:first-child{margin-top:0}.tree-desc>:last-child{margin-bottom:0}.tree-locked{color:var(--text-muted);font-size:var(--text-sm);align-items:center;gap:.5rem;margin:0;padding:.4rem 1.15rem .9rem;display:flex}.tree-locked svg{flex-shrink:0;width:1rem;height:1rem}.tree-locked-module{opacity:.7}@media (max-width:560px){.tree-head,.tree-desc,.tree-locked{padding-inline:.75rem}.tree>.tree-children{padding-inline:.6rem}.tree-children .tree-children{margin-left:.7rem;padding-left:.6rem}.task-block{padding-left:.6rem}.tree-item{padding-block:.55rem}.tree-label{flex:100%}.tree-badges,.tree-actions,.tree-item-agenda .tree-badges{flex-basis:calc(100% - var(--tree-indent));margin-left:var(--tree-indent);justify-content:flex-start}.tree-badges .reltime{white-space:normal}.tree-badges .badge{align-items:baseline}.tree-item,.tree-head{--tree-toggle-size:1.75rem}}.drag-handle{width:var(--drag-handle-size,1.1rem);color:var(--text-faint);cursor:grab;opacity:.45;transition:opacity var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);flex-shrink:0;justify-content:center;align-items:center;margin-left:-.2rem;display:inline-flex}.drag-handle svg{width:.875rem;height:.875rem}.tree-item:hover .drag-handle,.tree-head:hover .drag-handle{opacity:1}.drag-handle:hover{color:var(--accent)}.drag-handle:active,.sortable-chosen .drag-handle{cursor:grabbing}.tree-item.sortable-ghost,.tree-task.sortable-ghost,.tree.sortable-ghost{opacity:1;outline:2px dashed var(--accent);outline-offset:-2px;background:var(--accent-subtle)}.tree-item.sortable-ghost>*,.tree-task.sortable-ghost>*,.tree.sortable-ghost>*{visibility:hidden}.sortable-drag{box-shadow:var(--shadow-raised);background:var(--bg-raised);border-radius:var(--radius-xs);opacity:.95}.reorder-bar{z-index:var(--z-sticky);border:1px solid var(--accent);border-radius:var(--radius);background:var(--bg-raised);box-shadow:var(--shadow-overlay);flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-top:1rem;padding:.75rem 1rem;display:flex;position:sticky;bottom:.9rem}.reorder-bar[hidden]{display:none}.reorder-bar-text{font-size:var(--text-sm);flex:16rem;margin:0}.reorder-bar-error{color:var(--fail);display:block}.node-icon{width:var(--node-icon-size,1.6rem);height:var(--node-icon-size,1.6rem);border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--bg-raised);color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.node-icon svg{width:.95rem;height:.95rem}.node-icon-module,.node-icon-task{background:var(--accent-subtle);color:var(--accent-strong);border-color:#0000}.node-icon-module svg{width:1.1rem;height:1.1rem}.node-icon-done{background:var(--ok-subtle);color:var(--ok)}.node-icon-progress{background:var(--accent);color:var(--accent-on)}.trail{margin-bottom:1rem}.trail-scroll{overscroll-behavior-x:contain;scrollbar-width:none;align-items:center;margin:0 -.4rem;padding:.4rem;scroll-padding:.4rem;list-style:none;display:flex;overflow-x:auto}.trail-scroll[data-overflow-start=true]{-webkit-mask-image:linear-gradient(90deg,#0000,#000 2.5rem);mask-image:linear-gradient(90deg,#0000,#000 2.5rem)}.trail-scroll[data-overflow-end=true]{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 2.5rem),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 2.5rem),#0000)}.trail-scroll[data-overflow-start=true][data-overflow-end=true]{-webkit-mask-image:linear-gradient(90deg,#0000,#000 2.5rem calc(100% - 2.5rem),#0000);mask-image:linear-gradient(90deg,#0000,#000 2.5rem calc(100% - 2.5rem),#0000)}.trail-scroll:focus-within{-webkit-mask-image:none;mask-image:none}.trail-item{flex:none;align-items:center;display:flex}.trail-item+.trail-item:before{content:"";border-block:.3rem solid #0000;border-inline-start:.42rem solid var(--text-faint);flex:none;width:0;height:0;margin:0 .55rem}.trail-chip{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-raised);max-width:min(13rem,62vw);min-height:2.5rem;color:var(--text-muted);font-size:var(--text-sm);white-space:nowrap;touch-action:manipulation;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);align-items:center;gap:.45rem;padding:.3rem .6rem;text-decoration:none;display:inline-flex}@media (pointer:coarse){.trail-chip{min-height:44px}}.trail-chip:hover{border-color:var(--accent);background:var(--bg-subtle);color:var(--text)}.trail-title{text-overflow:ellipsis;min-width:0;overflow:hidden}.trail-chip-current{border-color:var(--accent);background:var(--accent-subtle);max-width:min(18rem,70vw);color:var(--accent-strong);font-weight:650}.trail-chip-current:hover{border-color:var(--accent);background:var(--accent-subtle);color:var(--accent-strong)}.trail-item:has(~.trail-item .trail-chip-current) .trail-chip{border-color:var(--accent)}.trail-chip .node-icon{width:1.05rem;height:1.05rem;color:inherit;background:0 0;border-color:#0000}.trail-chip .node-icon svg{width:1.05rem;height:1.05rem}.result-card{--tone:var(--text-muted);--tone-subtle:var(--bg-subtle);border:1px solid var(--border);border-left:var(--rule-strong) solid var(--tone);border-radius:var(--radius);background:var(--bg-raised);box-shadow:var(--shadow);animation:academ-rise var(--dur) var(--ease-out) both;margin-bottom:1.4rem;overflow:hidden}.result-card.tone-ok{--tone:var(--ok);--tone-subtle:var(--ok-subtle)}.result-card.tone-fail{--tone:var(--fail);--tone-subtle:var(--fail-subtle)}.result-card.tone-partial,.result-card.tone-review{--tone:var(--flag);--tone-subtle:var(--flag-subtle)}.result-head{background:var(--tone-subtle);flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:1rem 1.15rem;display:flex}.result-icon{width:2rem;height:2rem;color:var(--tone);flex:none}.result-icon svg{width:100%;height:100%;display:block}.result-icon.tone-ok{--tone:var(--ok)}.result-icon.tone-fail{--tone:var(--fail)}.result-icon.tone-pending{--tone:var(--text-faint)}.result-icon.tone-review{--tone:var(--flag)}.result-icon-sm{width:1.2rem;height:1.2rem}.result-icon[title]{cursor:help}.result-headline{flex:12rem;min-width:0}.result-headline h2{font-family:var(--font-display);font-size:var(--text-h2);line-height:var(--leading-snug);overflow-wrap:break-word;text-wrap:balance;margin:0}.result-sub{color:var(--text-muted);font-size:var(--text-xs);margin:.2rem 0 0}.result-score{flex:none;align-items:baseline;gap:.15rem;margin:0;line-height:1;display:flex}.score-value{font-family:var(--font-display);font-size:var(--text-numeral);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-display);color:var(--text);line-height:.9}.score-max{color:var(--text-muted);font-size:var(--text-h3);font-variant-numeric:tabular-nums;font-weight:600}.score-label{color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;align-self:flex-end;margin-left:.5rem;font-weight:650}.result-meters{grid-template-columns:minmax(0,max-content) minmax(2.5rem,1fr) max-content;align-items:center;gap:.6rem .9rem;padding:1.1rem 1.15rem;display:grid}@media (max-width:560px){.result-meters{gap:.5rem .6rem;padding:.9rem}}.meter-label{color:var(--text-muted);font-size:var(--text-xs);font-weight:500}.meter-track{border-radius:var(--radius-xs);background:var(--bg-subtle);height:.5rem;color:var(--text-faint);display:block;overflow:hidden}.meter-track.tone-ok{background:var(--ok-subtle);color:var(--ok)}.meter-track.tone-fail{background:var(--fail-subtle);color:var(--fail)}.meter-track.tone-partial{background:var(--flag-subtle);color:var(--flag)}.meter-fill{border-radius:inherit;transform-origin:0;height:100%;animation:academ-grow var(--dur-slow) var(--ease-out) both;background:currentColor;display:block}.meter-count{color:var(--text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:650}.meter-count.tone-ok{color:var(--ok)}.meter-count.tone-fail{color:var(--fail)}.meter-count.tone-partial{color:var(--flag)}.result-foot{border-top:1px solid var(--border);background:var(--bg-subtle);flex-wrap:wrap;align-items:center;gap:.6rem .9rem;padding:.8rem 1.15rem;display:flex}.result-note{min-width:0;color:var(--text-muted);font-size:var(--text-xs);flex:14rem;margin:0}.result-foot .btn{flex:none;margin-left:auto}.results-panel{margin-top:1.25rem}.test-result{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-raised);justify-content:space-between;gap:.75rem;min-width:0;margin-bottom:.5rem;padding:.65rem .8rem;display:flex}.test-result .name{overflow-wrap:break-word;min-width:0}.test-result pre{font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre-wrap;overflow-wrap:break-word;margin:.4rem 0 0}.v-timeline{margin:0 0 1.4rem;padding:0;list-style:none}.v-timeline li{justify-content:space-between;align-items:baseline;gap:.75rem;padding:0 0 .9rem 1.6rem;display:flex;position:relative}.v-timeline li:last-child{padding-bottom:0}.v-timeline li:before{content:"";z-index:1;box-sizing:border-box;border:2px solid var(--border);border-radius:var(--radius-pill);background:var(--bg);width:.6rem;height:.6rem;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);position:absolute;top:.3rem;left:.15rem}.v-timeline li:after{content:"";background:var(--border);width:1px;position:absolute;top:1.05rem;bottom:-.1rem;left:.44rem}.v-timeline li:last-child:after{display:none}.v-timeline .v-label{font-size:var(--text-sm);font-weight:600}.v-timeline .v-time{color:var(--text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.v-timeline .v-time[title]{cursor:help}.v-timeline .v-count{border-radius:var(--radius-xs);background:var(--accent-subtle);color:var(--accent-strong);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;margin-left:.2rem;padding:0 .35rem;font-weight:650;display:inline-block}.v-timeline li.v-done:before{border-color:var(--accent);background:var(--accent)}.v-timeline li.v-pending .v-label,.v-timeline li.v-pending .v-time,.v-timeline li.v-unset .v-label,.v-timeline li.v-unset .v-time{color:var(--text-faint)}.v-timeline li.v-upcoming:before{border-color:var(--accent);background:var(--accent-subtle)}.v-timeline li.v-overdue:before{border-color:var(--fail);background:var(--fail)}.v-timeline li.v-overdue .v-label,.v-timeline li.v-overdue .v-time{color:var(--fail);font-weight:650}.grade-glyph{vertical-align:-.15em;justify-content:center;align-items:center;width:1.05em;height:1.05em;display:inline-flex}.grade-glyph svg{width:100%;height:100%}.grade-glyph-correcto{color:var(--ok)}.grade-glyph-incorrecto{color:var(--fail)}.grade-glyph-pendiente{color:var(--flag)}.grade-glyph-sin_entregar{color:var(--text-faint)}.v-transition{font-size:var(--text-xs);align-items:center;gap:.3rem;font-weight:500;display:inline-flex}.v-transition .v-arrow{color:var(--text-faint)}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.75rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.photo-grid-lg{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr))}.photo-item{border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--bg-sunken);margin:0;overflow:hidden}.photo-item img{aspect-ratio:1;object-fit:cover;background:var(--bg-raised);width:100%;display:block}.photo-item a:focus-visible img{outline:2px solid var(--focus-ring);outline-offset:-2px}.photo-caption{color:var(--text-muted);font-size:var(--text-xs);white-space:nowrap;text-overflow:ellipsis;margin:0;padding:.35rem .5rem;overflow:hidden}.answer-preview-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.answer-preview-row #save-status{margin-left:auto}.answer-preview:not(:empty){border:1px dashed var(--border);border-radius:var(--radius-xs);background:var(--bg-sunken);margin-bottom:1.15rem;padding:.9rem 1.1rem}.answer-body{margin-top:.5rem}.answer-form input[type=file]{border:1px dashed var(--border);border-radius:var(--radius-xs);background:var(--bg-sunken);width:100%;max-width:36rem;color:var(--text-muted);font-size:var(--text-sm);padding:.55rem;display:block}.answer-form input[type=file]:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.annot-block{margin:1rem 0 0}.annot-caption{color:var(--text-muted);font-size:var(--text-xs);justify-content:space-between;align-items:baseline;gap:.75rem;margin:0 0 .35rem;display:flex}.annot-caption>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (pointer:coarse){.annot-caption a{margin-block:-.75rem;margin-inline:-.4rem;padding-block:.75rem;padding-inline:.4rem}}.annot-stage{border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--bg-sunken);touch-action:pan-y;max-height:80vh;overflow:auto}.annot[data-annot-zoomed] .annot-stage{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab}.annot[data-annot-zoomed] .annot-stage:active{cursor:grabbing}.annot[data-annot-zoomed][data-annot-mode=draw] .annot-stage,.annot[data-annot-zoomed][data-annot-mode=draw] .annot-stage:active{cursor:auto}.annot-figure{width:100%;transform:scale(var(--annot-zoom,1));transform-origin:0 0;margin:0;position:relative}.annot-image{width:100%;height:auto;aspect-ratio:var(--annot-ratio,auto);display:block}.annot-layer{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.annot-layer.is-editable{pointer-events:auto}.annot[data-annot-mode=draw] .annot-layer.is-editable{cursor:crosshair;touch-action:none}.annot[data-annot-mode=pan] .annot-layer.is-editable{cursor:inherit;touch-action:pan-y}.annot[data-annot-zoomed][data-annot-mode=pan] .annot-layer.is-editable{touch-action:none}.annot-ink{fill:var(--annot-color);fill-opacity:.55}.annot-rect{fill:none;stroke:var(--annot-color);stroke-width:.5%}.annot-point{fill:var(--annot-color);fill-opacity:.35;stroke:var(--annot-color);stroke-width:.35%}.annot-ink.is-selected,.annot-rect.is-selected,.annot-point.is-selected{filter:drop-shadow(0 0 3px var(--annot-color))}.annot-preview{opacity:.7}.annot-pins{pointer-events:none;margin:0;padding:0;list-style:none;position:absolute;inset:0}.annot-pin{pointer-events:auto;position:absolute;transform:translate(-50%,-50%)}.annot-pin-button{border:2px solid var(--bg-raised);background:var(--annot-color);width:1.5rem;height:1.5rem;min-height:0;color:var(--annot-on);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;cursor:pointer;scale:calc(1 / var(--annot-zoom,1));border-radius:50%;place-items:center;padding:0;line-height:1;display:grid}.annot-pin-button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.annot-toolbar{flex-wrap:wrap;gap:.75rem;margin:0 0 .5rem;display:flex}.annot-group{gap:.25rem;display:flex}.annot-toolbar [aria-pressed=true]{border-color:var(--accent);background:var(--accent-subtle);color:var(--accent-strong)}@media (pointer:coarse){.annot-toolbar .btn{min-height:40px}}.annot-status{min-height:1.2em;color:var(--text-muted);font-size:var(--text-xs);margin:.35rem 0 0}.annot-rail{display:contents}.annot-notes{gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.annot-note{border:1px solid var(--border);border-left:3px solid var(--annot-color);border-radius:var(--radius-xs);background:var(--bg-raised);padding:.6rem .75rem}.annot-note.is-selected{border-color:var(--accent);border-left-color:var(--annot-color)}.annot-note-head{align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.annot-note-number{background:var(--annot-color);min-width:1.4rem;height:1.4rem;color:var(--annot-on);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;display:grid}.annot-note-kind{color:var(--text-muted);font-size:var(--text-xs)}.annot-note-body{font-size:var(--text-sm)}.annot-note-body>:first-child{margin-top:0}.annot-note-body>:last-child{margin-bottom:0}.annot-note-input{border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--bg);width:100%;color:var(--text);font-family:inherit;font-size:var(--text-sm);resize:vertical;padding:.4rem .5rem}.annot-note-input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-1px}.annot-note-actions{flex-wrap:wrap;gap:.25rem;margin-top:.4rem;display:flex}.annot-menu{z-index:var(--z-popover);border:1px solid var(--border);border-left:3px solid var(--annot-color);border-radius:var(--radius);background:var(--bg-raised);min-width:11rem;box-shadow:var(--shadow-overlay);gap:.35rem;padding:.5rem;display:grid;position:fixed}.annot-menu[hidden]{display:none}.annot-menu-head{color:var(--text-muted);font-size:var(--text-xs);align-items:center;gap:.4rem;margin:0;display:flex}.annot-menu-number{background:var(--annot-color);min-width:1.3rem;height:1.3rem;color:var(--annot-on);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;display:grid}.annot-menu-tones{gap:.25rem;display:flex}.annot-menu-tones .btn{flex:1;padding-inline:.4rem}.annot-menu [aria-pressed=true]{border-color:var(--accent);background:var(--accent-subtle);color:var(--accent-strong)}.annot-menu-action{width:100%}@media (pointer:coarse){.annot-menu .btn{min-height:40px}}.annot,.tone-error{--annot-color:var(--fail);--annot-on:var(--bg-raised)}.tone-nota{--annot-color:var(--flag);--annot-on:var(--bg-raised)}.tone-ok{--annot-color:var(--ok);--annot-on:var(--bg-raised)}.review .annot{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) clamp(17rem,24vw,24rem);align-items:start;gap:.5rem 1.5rem;display:grid}.review .annot-toolbar{grid-area:1/1;margin:0}.review .annot-stage{grid-area:2/1;max-height:calc(100dvh - 9rem)}.review .annot-status{grid-area:3/1}.review .annot-rail{flex-direction:column;grid-area:1/2/-1/-1;align-self:start;gap:.75rem;max-height:calc(100dvh - 2rem);display:flex;position:sticky;top:0;overflow:auto}.review .annot-notes{margin:0}.review-text{grid-template-columns:minmax(0,1fr) clamp(17rem,24vw,24rem);align-items:start;gap:.5rem 1.5rem;display:grid}.review-text-body{min-width:0;max-width:var(--page-form)}@media (max-width:900px){.review .annot,.review-text{grid-template-rows:none;grid-template-columns:minmax(0,1fr)}.review .annot-toolbar,.review .annot-stage,.review .annot-status,.review .annot-rail{grid-area:auto}.review .annot-stage{max-height:75vh}.review .annot-rail{max-height:none;position:static;overflow:visible}}.review-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem 1rem;margin-bottom:.75rem;display:flex}.review-title{color:var(--text-muted);font-size:var(--text-xs);margin:0}.review-count{font-variant-numeric:tabular-nums;margin-left:.5rem}.review-photos{flex-wrap:wrap;gap:.25rem;display:flex}.review-photos [aria-current=page]{border-color:var(--accent);background:var(--accent-subtle);color:var(--accent-strong)}.table-scroll{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-raised);overflow-x:auto}table.matrix{border-collapse:collapse;width:100%;font-size:var(--text-sm)}table.matrix th,table.matrix td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:.55rem .7rem}table.matrix th{z-index:1;background:var(--bg-subtle);color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;white-space:nowrap;font-weight:700;position:sticky;top:0}table.matrix thead tr:last-child th{border-bottom:2px solid var(--border-strong)}table.matrix tbody tr:last-child td{border-bottom:none}table.matrix tbody tr{transition:background-color var(--dur-fast) var(--ease-out)}table.matrix tbody tr:hover{background:var(--bg-subtle)}table.matrix td.num{text-align:right;font-variant-numeric:tabular-nums}table.matrix tbody th{color:var(--text);font-size:var(--text-sm);letter-spacing:normal;text-transform:none;background:0 0;font-weight:600;position:static}table.gradebook thead tr:nth-child(2) th{font-weight:600;top:2.3rem}table.gradebook th.sub{font-size:var(--text-xs);letter-spacing:normal;text-transform:none;font-weight:600}.grade-cell{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.grade-cell.editing{min-width:12rem;display:block}.grade-cell.editing label{margin-top:.4rem;display:block}.grade-cell.editing input,.grade-cell.editing textarea{width:100%}.grade-cell.editing .toolbar{margin-top:.5rem}.grade-detail{color:var(--text-muted);font-size:var(--text-2xs)}.results-table td{min-width:12rem}.results-table pre{font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre-wrap;overflow-wrap:break-word;margin:0}.results-table pre+pre{margin-top:.4rem}.results-table pre.error-text{color:var(--fail)}@media (max-width:560px){.results-table,.results-table tbody,.results-table tr,.results-table td{display:block}.results-table thead{display:none}.results-table tr{border-bottom:2px solid var(--border-strong);padding:.7rem 0}.results-table tbody tr:last-child{border-bottom:none}.results-table td{border-bottom:none;min-width:0;padding:.35rem .8rem}.results-table td:before{content:attr(data-label);color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;margin-bottom:.2rem;font-weight:650;display:block}}.timeline{margin:0;padding:0;list-style:none}.timeline li{border-bottom:1px solid var(--border);grid-template-columns:8rem 1fr;gap:.9rem;padding:.7rem 0;display:grid}.timeline li:last-child{border-bottom:none}.timeline .ts{color:var(--text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.timeline .flagged{border-left:var(--rule-strong) solid var(--flag);padding-left:.7rem}.timeline details summary{color:var(--text-muted);font-size:var(--text-xs);cursor:pointer}.timeline details pre{border-radius:var(--radius-xs);background:var(--bg-subtle);font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre-wrap;overflow-wrap:break-word;margin:.4rem 0 0;padding:.6rem .75rem}@media (max-width:560px){.timeline li{grid-template-columns:1fr;gap:.25rem}}.heat-scroll{overscroll-behavior-x:contain;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-raised);max-height:clamp(20rem,72vh,56rem);overflow:auto}.heat-grid{--heat-size:1.75rem;--heat-gap:2px;--heat-rowhead:9.5rem;--heat-band-h:1.15rem;--heat-band-offset:0px;grid-template-columns:var(--heat-rowhead) repeat(var(--heat-cols,1), var(--heat-size));gap:var(--heat-gap);width:max-content;padding:var(--heat-gap);background:var(--bg-raised);display:grid}.heat-grid:has(>.heat-band){--heat-band-offset:calc(var(--heat-band-h) + var(--heat-gap))}.heat-head{top:var(--heat-band-offset);z-index:calc(var(--z-sticky) + 1);margin-inline:calc(var(--heat-gap) / -2);border-bottom:2px solid var(--border-strong);box-shadow:0 calc(-1 * var(--heat-gap)) 0 0 var(--bg-raised);background:var(--bg-raised);color:var(--text-muted);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;white-space:nowrap;cursor:default;justify-content:center;align-items:center;padding-bottom:.25rem;font-weight:700;line-height:1;display:flex;position:sticky;overflow:hidden}.heat-rowhead{z-index:var(--z-sticky);border-right:1px solid var(--border);box-shadow:var(--heat-gap) 0 0 0 var(--bg-raised);background:var(--bg-raised);color:var(--text);font-size:var(--text-xs);white-space:nowrap;text-overflow:ellipsis;align-items:center;padding-right:.6rem;font-weight:600;line-height:1.2;display:flex;position:sticky;left:0;overflow:hidden}.heat-grid>.heat-head:first-child{z-index:calc(var(--z-sticky) + 2);box-shadow:var(--heat-gap) 0 0 0 var(--bg-raised), 0 calc(-1 * var(--heat-gap)) 0 0 var(--bg-raised);top:0;left:0}.heat-grid:has(>.heat-band)>.heat-head:first-child{grid-row:span 2}.heat-band{grid-column:span var(--heat-span,1);z-index:calc(var(--z-sticky) + 1);height:var(--heat-band-h);margin-inline:calc(var(--heat-gap) / -2);box-shadow:0 calc(-1 * var(--heat-gap)) 0 0 var(--bg-raised);background:var(--bg-raised);color:var(--text-muted);font-size:var(--text-2xs);letter-spacing:normal;font-weight:700;line-height:var(--heat-band-h);white-space:nowrap;text-align:center;text-overflow:ellipsis;text-transform:none;cursor:default;padding-inline:.2rem;display:block;position:sticky;top:0;overflow:hidden}.heat-band+.heat-band{border-left:1px solid var(--border-strong)}.heat-cell{--tone:var(--bg-sunken);--tone-ink:var(--text-muted);height:var(--heat-size,1.75rem);border-radius:var(--radius-xs);background:var(--tone);color:var(--tone-ink);transition:transform var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;text-decoration:none;display:flex;position:relative}.heat-mark{font-size:var(--text-xs);font-variant-numeric:tabular-nums;font-weight:650;line-height:1}a.heat-cell:hover{z-index:calc(var(--z-sticky) - 1);transform:scale(1.18)}.heat-cell:focus-visible{z-index:calc(var(--z-sticky) - 1)}.heat-none{--tone:var(--bg-sunken);--tone-ink:var(--text-muted)}.heat-clean{--tone:var(--ok-subtle);--tone-ink:var(--ok)}.heat-flag{--tone:var(--flag-subtle);--tone-ink:var(--flag);box-shadow:inset 0 0 0 2px var(--flag)}.heat-verdict-limpio{--tone:var(--ok);--tone-ink:var(--bg-raised)}.heat-verdict-dudoso{--tone:var(--flag);--tone-ink:var(--bg-raised)}.heat-verdict-tramposo{--tone:var(--fail);--tone-ink:var(--bg-raised)}.heat-correcto{--tone:var(--accent);--tone-ink:var(--accent-on)}.heat-incorrecto{--tone:var(--fail-subtle);--tone-ink:var(--fail)}.heat-pendiente{--tone:var(--flag-subtle);--tone-ink:var(--flag)}.heat-override:before{content:"";border-radius:var(--radius-xs);opacity:.8;border:1px dashed;position:absolute;inset:2px}.heat-grid>.heat-slot,.heat-grid>.grade-cell{align-self:start}.heat-grid>.grade-cell{z-index:calc(var(--z-sticky) + 3);border:1px solid var(--border-strong);border-radius:var(--radius);width:max-content;max-width:16rem;box-shadow:var(--shadow-raised);background:var(--bg-raised);padding:.4rem .5rem;position:relative}.heat-grid>.grade-cell.editing{width:13rem}.heat-legend{color:var(--text-muted);font-size:var(--text-xs);flex-wrap:wrap;gap:.45rem 1.25rem;margin:.85rem 0 0;padding:0;list-style:none;display:flex}.heat-legend li{align-items:center;gap:.45rem;display:inline-flex}.heat-legend .heat-cell{flex:none;width:1.75rem;height:1.75rem}@media (max-width:640px){.heat-grid{--heat-rowhead:6rem}}.exercise-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:2rem;display:grid}@media (max-width:900px){.exercise-layout{grid-template-columns:minmax(0,1fr);gap:1.5rem}}.editor-panel{min-width:0;position:sticky;top:1.25rem}.editor-panel>h2{font-size:var(--text-h3);margin-bottom:.6rem}.editor-host{border:1px solid var(--border);border-radius:var(--radius-sm);max-height:60vh;font-family:var(--font-mono);font-size:var(--text-sm);transition:border-color var(--dur-fast) var(--ease-out);overflow:auto}.editor-host:focus-within{border-color:var(--accent)}.editor-host .cm-editor{height:100%}.editor-host .cm-scroller{overflow:auto}.cm-field{border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-sm);overflow:hidden}.cm-field:focus-within{border-color:var(--accent)}.cm-field .cm-editor{max-height:60vh}.cm-field .cm-editor.cm-focused{outline:none}.cm-field .cm-scroller{overflow:auto}.md-input{font-family:var(--font-mono);font-size:var(--text-sm)}.actions-row{flex-wrap:wrap;align-items:center;gap:.6rem;min-height:42px;margin-top:1rem;display:flex}.action-status{flex-basis:100%;align-items:center;gap:.5rem;min-width:0;min-height:1.7rem;display:flex}.action-status .badge{font-size:var(--text-xs)}.testcase{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-raised);margin-bottom:.75rem;padding:.85rem 1rem}.testcase-title{border-bottom:1px solid var(--border);color:var(--text);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;margin:0 0 .6rem;padding-bottom:.4rem;font-weight:700}.testcase-label{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;margin:.6rem 0 .25rem;font-weight:650}.testcase-label:first-of-type{margin-top:0}.testcase pre{border-radius:var(--radius-xs);background:var(--bg-subtle);font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre-wrap;overflow-wrap:break-word;margin:0;padding:.6rem .7rem}}@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.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}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.rounded{border-radius:.25rem}.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,)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--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)}.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,)}}:root{color-scheme:light dark}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}:root{--bg:light-dark(#fbfaf7,#0f0e0c);--bg-subtle:light-dark(#f2efe8,#16150f);--bg-raised:light-dark(#fff,#1c1a16);--bg-sunken:light-dark(#eae5da,#0a0908);--paper-texture:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.7' numOctaves='1' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23g)'/%3E%3C/svg%3E");--paper-ink:light-dark(#2921140b,#f0e8d608);--border:light-dark(#e0dace,#302c25);--border-strong:light-dark(#14120f,#f4f0e6);--text:light-dark(#14120f,#f4f0e6);--text-muted:light-dark(#57514a,#a8a193);--text-faint:light-dark(#8a8478,#6d685d);--ok:light-dark(#1a6b40,#56cc8b);--ok-subtle:light-dark(#e7f3ec,#0e2a1c);--fail:light-dark(#b01f2e,#ff8891);--fail-subtle:light-dark(#fbeced,#33161a);--flag:light-dark(#96590a,#f0aa54);--flag-subtle:light-dark(#f8f0e1,#32240f);--accent-50:#f2f5fd;--accent-100:#dee5f5;--accent-200:#bfceec;--accent-300:#93abdd;--accent-400:#597bc9;--accent-500:#335abf;--accent-600:#1a3ea8;--accent-700:#163696;--accent-800:#153281;--accent-900:#152e70;--accent-950:#11224c;--accent:light-dark(#1a3ea8,#597bc9);--accent-on:light-dark(#fff,#14120f);--accent-strong:light-dark(#163696,#93abdd);--accent-subtle:light-dark(#f2f5fd,#11224c);--accent-ring:light-dark(#1a3ea8,#597bc9);--accent-grad-start:light-dark(#2b53be,#7295e6);--accent-grad-end:light-dark(#0b2892,#4161ad);--accent-text:light-dark(#fff,#14120f);--focus-ring:light-dark(#1a3ea8,#597bc9);--font-display:"Instrument Serif", "Iowan Old Style", Georgia, "Times New Roman", serif;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", "Cascadia Code", Menlo, Consolas, monospace;--text-display:clamp(2.75rem, 7vw, 4.5rem);--text-h1:clamp(1.9rem, 3.6vw, 2.6rem);--text-h2:1.5rem;--text-h3:1.1875rem;--text-h4:1rem;--text-body:1rem;--text-sm:.875rem;--text-xs:.78125rem;--text-2xs:.6875rem;--text-numeral:clamp(2.5rem, 6vw, 3.75rem);--text-lede:1.1875rem;--leading-tight:1.08;--leading-snug:1.28;--leading-body:1.6;--tracking-label:.09em;--tracking-tight:-.015em;--tracking-display:-.02em;--radius-xs:2px;--radius-sm:4px;--radius:6px;--radius-lg:10px;--radius-pill:999px;--rule:1px;--rule-strong:3px;--space-0-5:.125rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--shade-1:light-dark(#2921140d,#00000070);--shade-2:light-dark(#2921140f,#0000005c);--shade-3:light-dark(#29211412,#00000057);--shade-4:light-dark(#2921141a,#00000080);--shade-5:light-dark(#29211424,#00000075);--shadow:0 1px 1px var(--shade-1), 0 2px 5px -1px var(--shade-2);--shadow-raised:0 1px 1px var(--shade-1), 0 6px 12px -2px var(--shade-2), 0 16px 32px -8px var(--shade-3);--shadow-overlay:0 2px 4px var(--shade-4), 0 16px 32px -8px var(--shade-4), 0 40px 72px -16px var(--shade-5);--dur-instant:90ms;--dur-fast:.15s;--dur:.24s;--dur-slow:.42s;--ease-out:cubic-bezier(.22, .85, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:cubic-bezier(.34, 1.4, .64, 1);--stagger:45ms;--focus-halo:var(--focus-ring)}@supports (color:color-mix(in lab, red, red)){:root{--focus-halo:color-mix(in oklab, var(--focus-ring) 22%, transparent)}}:root{--rail-size:76px;--measure:66ch;--page-wide:1160px;--page-form:940px;--z-sticky:5;--z-rail:40;--z-popover:60;--z-modal:80;--z-skip:100;--cm-bg:light-dark(#fff,#17150f);--cm-fg:light-dark(#14120f,#f4f0e6);--cm-caret:var(--accent);--cm-selection:light-dark(#dfe6fa,#24304f);--cm-active-line:light-dark(#f7f5f0,#201d18);--cm-gutter-bg:light-dark(#f7f5f0,#131210);--cm-gutter-fg:light-dark(#9c9588,#635e54);--cm-panel-bg:light-dark(#fff,#1c1a16);--cm-panel-border:var(--border);--cm-comment:light-dark(#8a8478,#6d685d);--cm-keyword:light-dark(#8b2fa8,#d99cf0);--cm-string:light-dark(#1a6b40,#56cc8b);--cm-number:light-dark(#b0530a,#f0aa54);--cm-function:light-dark(#1a3ea8,#93abdd);--cm-type:light-dark(#0f6b74,#6fc6cf);--cm-constant:light-dark(#b01f2e,#ff8891);--cm-operator:light-dark(#57514a,#a8a193);--cm-punct:light-dark(#8a8478,#8b8478);--cm-property:light-dark(#14120f,#f4f0e6);--cm-meta:light-dark(#57514a,#a8a193);--cm-regexp:light-dark(#96590a,#f0aa54)}[data-math] .katex-display{overscroll-behavior-x:contain;justify-content:safe center;margin-block:.8em;padding-block:.2em;display:flex;overflow:auto hidden}@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}@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}