eidotter 0.10.1 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/eidotter.css +1 -1
- package/dist/index.es.js +4 -4
- package/dist/index.umd.js +1 -1
- package/package.json +1 -1
- package/src/styles/theme.amber-mono.css +9 -8
- package/src/styles/theme.cga-amber.css +9 -8
- package/src/styles/theme.cga-mode4-p0.css +9 -8
- package/src/styles/theme.cga-mode4-p1.css +9 -8
- package/src/styles/theme.cga-mode5.css +9 -8
- package/src/styles/tokens.css +9 -8
- package/guidelines/tokens.md +0 -260
package/dist/eidotter.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.alert{width:100%;position:relative;overflow:hidden;text-align:left;font-size:16px;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);border:none;animation:alert-enter var(--duration-slow, .4s) ease-out}@keyframes alert-enter{0%{opacity:0;filter:blur(4px) brightness(.3)}to{opacity:1;filter:blur(0) brightness(1)}}.alert--info{background-color:var(--color-semantic-alert-info);color:var(--color-cga-amber)}.alert--success{background-color:var(--color-semantic-alert-success);color:var(--color-cga-bright-green)}.alert--warning{background-color:var(--color-semantic-alert-warning);color:var(--color-cga-amber)}.alert--error{background-color:var(--color-semantic-alert-error);color:var(--color-cga-bright-red)}.alert--large{max-width:1020px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:var(--spacing-4);box-sizing:border-box;gap:var(--spacing-1)}.alert--small{max-width:350px;min-height:40px;overflow:hidden;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;padding:0 var(--spacing-2);box-sizing:border-box;gap:var(--spacing-2)}.alert__header{align-self:stretch;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;width:100%}.alert__icon{display:flex;align-items:center;justify-content:center;align-self:flex-start;width:24px;height:24px;flex-shrink:0;margin-top:2px}.alert--small .alert__icon{width:20px;height:20px}.alert--small .alert__icon svg{width:20px!important;height:20px!important}.alert__title{flex:1;position:relative;line-height:140%}.alert__close{display:flex;align-items:center;justify-content:center;align-self:flex-start;width:20px;height:20px;flex-shrink:0;background:none;border:none;padding:0;margin-top:2px;cursor:pointer;color:inherit;transition:opacity var(--duration-fast, .1s) ease-out;opacity:.7}.alert__close:hover{opacity:1}.alert__close svg{width:20px!important;height:20px!important}.alert--small .alert__content{display:none}.alert__content{align-self:stretch;display:flex;flex-direction:row;align-items:flex-start;justify-content:flex-start;padding:0 0 0 32px;font-size:14px}.alert__message{flex:1;position:relative;line-height:140%;color:var(--color-cga-amber-dim)}.alert__link{background:none;border:none;padding:0;cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;text-decoration:none;transition:text-shadow var(--duration-fast, .1s) ease-out}.alert__link:hover{text-shadow:0 0 6px currentColor}@keyframes alert-exit{0%{opacity:1;filter:blur(0) brightness(1);transform:scale(1)}to{opacity:0;filter:blur(2px) brightness(.5);transform:scale(.95)}}.alert--closing{animation:alert-exit var(--duration-normal, .2s) ease-in forwards}@media(prefers-reduced-motion:reduce){.alert,.alert--closing{animation:none}.alert__close,.alert__link{transition:none}}@media(prefers-contrast:high){.alert{border:2px solid currentColor}.alert__title{font-weight:700}.alert__close:focus-visible{outline:3px solid currentColor;outline-offset:2px}.alert__link{text-decoration:underline;font-weight:700}}.icon{display:inline-block;vertical-align:middle;fill:currentColor;color:var(--color-cga-amber, #ffb000)}.icon--l{width:56px;height:56px}.icon--s{width:24px;height:24px}.icon[role=button]{cursor:pointer}.icon[role=button]:hover{color:var(--color-semantic-link-hover)}@media(prefers-contrast:high){.icon[role=button]:focus-visible{outline:3px solid currentColor;outline-offset:2px}}.section{width:100%;border:1px solid var(--color-semantic-border-default);background-color:var(--color-semantic-background-primary);color:var(--color-cga-amber, #ffb000);font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback)}.section__header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:none;border:none;color:inherit;font-family:inherit;cursor:pointer;text-align:left}.section__title{flex:1;font-size:16px;line-height:24px}.section__icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;margin-left:8px;color:inherit}.section__content{max-height:0;opacity:0;padding:0 16px;overflow:clip;visibility:hidden;border-top:1px solid var(--color-semantic-border-default);font-size:14px;line-height:20px;color:var(--color-cga-amber, #ffb000);transition:max-height var(--duration-normal, .2s) ease-in-out,opacity var(--duration-normal, .2s) ease-in-out,padding var(--duration-normal, .2s) ease-in-out,visibility 0s var(--duration-normal, .2s)}.section--expanded .section__content{max-height:500px;opacity:1;padding:16px;visibility:visible;transition:max-height var(--duration-normal, .2s) ease-in-out,opacity var(--duration-normal, .2s) ease-in-out,padding var(--duration-normal, .2s) ease-in-out,visibility 0s 0s}.section--hover .section__header,.section__header:hover{background-color:var(--color-semantic-background-accent);color:var(--color-semantic-text-secondary)}.section--active .section__header,.section__header:active{background-color:var(--color-semantic-background-secondary);color:var(--color-cga-amber);text-shadow:0 0 8px var(--color-cga-amber-glow)}.section--expanded{border-color:var(--color-semantic-text-secondary)}.section--expanded .section__header{background-color:var(--color-semantic-background-accent);color:var(--color-semantic-text-secondary)}.section__header:focus{outline:none;box-shadow:0 0 0 2px var(--color-semantic-border-focus)}.section__icon{transition:transform var(--duration-normal, .2s) ease-in-out}.section--expanded .section__icon{transform:rotate(180deg)}@media(prefers-contrast:high){.section{border-width:3px}.section__title{font-weight:700}.section__content{border-top-width:2px}.section__header:focus{box-shadow:0 0 0 3px var(--color-semantic-border-focus)}}@media(prefers-reduced-motion:reduce){.section__icon,.section__content{transition:none}}.accordion-fill{width:100%;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--spacing-2);text-align:left;font-size:var(--typography-font-size-base);font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);color:var(--color-cga-amber, #ffb000)}.accordion-fill>.section{margin-bottom:4px}.accordion-fill>.section:last-child{margin-bottom:0}@media(prefers-contrast:high){.accordion-fill{font-weight:600}}@keyframes phosphor-warmup{0%{filter:brightness(1)}15%{filter:brightness(1.3)}30%{filter:brightness(.97)}50%{filter:brightness(1.15)}70%{filter:brightness(1.02)}to{filter:brightness(1)}}@keyframes phosphor-energize{0%{filter:brightness(1)}40%{filter:brightness(1.4)}to{filter:brightness(1.08)}}.button{display:inline-flex;align-items:center;justify-content:center;position:relative;border:none;outline:none;cursor:pointer;text-decoration:none;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);font-weight:var(--typography-font-weight-bold);line-height:1;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:all .1s ease;box-sizing:border-box;border:2px solid;background-clip:padding-box}.button--primary{background-color:var(--color-semantic-background-accent);color:var(--color-semantic-text-secondary);border-color:var(--color-semantic-border-default);transition:background-color .6s cubic-bezier(.8,-.5,.2,1.4),border-color .6s cubic-bezier(.8,-.5,.2,1.4),box-shadow .6s cubic-bezier(.8,-.5,.2,1.4),filter .6s cubic-bezier(.8,-.5,.2,1.4),text-shadow .6s cubic-bezier(.8,-.5,.2,1.4)}.button--primary:hover:not(:disabled){background-color:var(--color-semantic-background-accent);border-color:var(--color-semantic-border-default);color:var(--color-semantic-text-secondary);box-shadow:0 0 8px 0 var(--color-cga-amber-glow),0 0 20px 2px var(--effects-phosphor-glow),0 0 40px 4px var(--effects-bloom-outer);text-shadow:0 0 4px var(--color-cga-amber-glow);will-change:filter,box-shadow;animation:phosphor-warmup var(--duration-slow, .4s) ease-out;transition:background-color var(--duration-slow, .4s) ease-out,border-color var(--duration-slow, .4s) ease-out,box-shadow var(--duration-slow, .4s) ease-out,text-shadow var(--duration-slow, .4s) ease-out}.button--primary:active:not(:disabled){background-color:var(--color-cga-amber-bright);border-color:var(--color-cga-amber-bright);box-shadow:0 0 12px 2px var(--color-cga-amber-glow),0 0 30px 4px var(--effects-phosphor-glow),0 0 50px 8px var(--effects-bloom-outer);text-shadow:0 0 6px var(--color-cga-amber-glow);animation:phosphor-energize .15s ease-out forwards;transition:background-color var(--duration-fast, .1s) ease-out,border-color var(--duration-fast, .1s) ease-out,box-shadow var(--duration-fast, .1s) ease-out}.button--primary:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;background:repeating-linear-gradient(to bottom,transparent 0px,transparent 3px,rgba(0,0,0,.06) 3px,rgba(0,0,0,.06) 4px);background-size:100% 4px;transition:opacity var(--duration-fast, .1s) ease-out}.button--primary:active:not(:disabled):after{opacity:1;animation:scanline-crawl 4s linear infinite}@keyframes scanline-crawl{0%{background-position:0 0}to{background-position:0 40px}}.button--secondary{background-color:var(--color-semantic-background-secondary);color:var(--color-cga-amber, #ffb000);border-color:var(--color-semantic-border-default);transition:background-color .4s cubic-bezier(.5,-.2,.2,1.2),border-color .4s cubic-bezier(.5,-.2,.2,1.2),box-shadow .4s cubic-bezier(.5,-.2,.2,1.2),filter .4s cubic-bezier(.5,-.2,.2,1.2),text-shadow .4s cubic-bezier(.5,-.2,.2,1.2)}.button--secondary:hover:not(:disabled){background-color:var(--color-cga-amber, #ffb000);color:var(--color-semantic-background-primary);border-color:var(--color-semantic-text-secondary);box-shadow:0 0 8px 0 var(--color-cga-amber-glow),0 0 20px 2px var(--effects-phosphor-glow);text-shadow:0 0 3px var(--color-cga-amber-glow);will-change:filter,box-shadow;animation:phosphor-warmup var(--duration-slow, .4s) ease-out;transition:background-color var(--duration-slow, .4s) ease-out,border-color var(--duration-slow, .4s) ease-out,box-shadow var(--duration-slow, .4s) ease-out,text-shadow var(--duration-slow, .4s) ease-out}.button--secondary:active:not(:disabled){background-color:var(--color-semantic-background-secondary);color:var(--color-cga-amber, #ffb000);border-color:var(--color-semantic-text-disabled);box-shadow:0 0 10px 2px var(--color-cga-amber-glow),0 0 24px 4px var(--effects-phosphor-glow);text-shadow:0 0 5px var(--color-cga-amber-glow);animation:phosphor-energize .15s ease-out forwards;transition:background-color var(--duration-fast, .1s) ease-out,border-color var(--duration-fast, .1s) ease-out,box-shadow var(--duration-fast, .1s) ease-out}.button--ghost{background-color:transparent;color:var(--color-cga-amber, #ffb000);border-color:var(--color-semantic-border-default);transition:background-color .3s cubic-bezier(.5,-.1,.2,1.1),border-color .3s cubic-bezier(.5,-.1,.2,1.1),box-shadow .3s cubic-bezier(.5,-.1,.2,1.1),filter .3s cubic-bezier(.5,-.1,.2,1.1),text-shadow .3s cubic-bezier(.5,-.1,.2,1.1)}.button--ghost:hover:not(:disabled){background-color:var(--color-cga-amber, #ffb000);color:var(--color-semantic-background-primary);border-color:var(--color-semantic-text-secondary);box-shadow:0 0 8px 0 var(--color-cga-amber-glow);text-shadow:0 0 3px var(--color-cga-amber-glow);will-change:filter,box-shadow;animation:phosphor-warmup var(--duration-normal, .2s) ease-out;transition:background-color var(--duration-normal, .2s) ease-out,border-color var(--duration-normal, .2s) ease-out,box-shadow var(--duration-normal, .2s) ease-out,text-shadow var(--duration-normal, .2s) ease-out}.button--ghost:active:not(:disabled){background-color:var(--color-semantic-background-secondary);color:var(--color-cga-amber, #ffb000);box-shadow:0 0 12px 2px var(--color-cga-amber-glow);text-shadow:0 0 4px var(--color-cga-amber-glow);animation:phosphor-energize .15s ease-out forwards;transition:background-color var(--duration-fast, .1s) ease-out,border-color var(--duration-fast, .1s) ease-out,box-shadow var(--duration-fast, .1s) ease-out}.button--link{background-color:transparent;color:var(--color-semantic-text-accent);border-color:transparent;text-decoration:underline}.button--link:hover:not(:disabled){color:var(--color-cga-amber-bright);background-color:transparent;border-color:transparent;text-shadow:0 0 4px var(--color-cga-amber-glow)}.button--link:active:not(:disabled){color:var(--color-semantic-text-disabled)}.button--small{font-size:14px;padding:4px 8px;min-height:24px;gap:4px}.button--medium{font-size:16px;padding:8px 16px;min-height:32px;gap:6px}.button--large{font-size:18px;padding:12px 20px;min-height:40px;gap:8px}.button--disabled,.button:disabled{cursor:not-allowed;opacity:.6;background-color:var(--color-semantic-background-secondary)!important;color:var(--color-semantic-text-disabled)!important;border-color:var(--color-semantic-text-disabled)!important}.button--loading{cursor:wait}.button--full-width{width:100%;justify-content:center}.button__loading-indicator{animation:blink 1s infinite;margin-right:4px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.button__content{display:inline-flex;align-items:center;justify-content:center}.button__content--loading{opacity:.7}.button:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}@media(prefers-contrast:high){.button{border-width:3px}}@media(prefers-reduced-motion:reduce){.button{transition:none}.button--primary:hover:not(:disabled),.button--primary:active:not(:disabled),.button--secondary:hover:not(:disabled),.button--secondary:active:not(:disabled),.button--ghost:hover:not(:disabled),.button--ghost:active:not(:disabled){animation:none;filter:none;transition:none}.button--primary:active:not(:disabled):after{animation:none}.button__loading-indicator{animation:none}}.card{background-color:var(--color-semantic-background-primary);border:var(--border-width-medium) solid var(--color-semantic-border-default);font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);color:var(--color-cga-amber, #ffb000);animation:card-enter var(--duration-normal, .2s) ease-out;transition:border-color var(--duration-normal, .2s) ease-out,box-shadow var(--duration-slow, .4s) ease-out}@keyframes card-enter{0%{opacity:0}to{opacity:1}}.card--default{border-color:var(--color-semantic-border-default)}.card--elevated{border-color:var(--color-semantic-text-secondary);box-shadow:4px 4px 0 0 var(--color-semantic-text-disabled)}.card--glow{border-color:var(--color-cga-amber);box-shadow:var(--shadow-glow-md)}.card--glow:hover{box-shadow:var(--shadow-glow-lg)}.card--bordered{border-color:var(--color-semantic-text-accent);border-width:var(--border-width-medium)}.card__header{padding:var(--spacing-2) var(--spacing-3);border-bottom:var(--border-width-thin) solid var(--color-semantic-text-disabled);background-color:var(--color-cga-amber-dim)}.card__title{color:var(--color-semantic-text-secondary);font-size:var(--typography-font-size-base);font-weight:var(--typography-font-weight-bold);text-transform:uppercase}.card__body{padding:var(--spacing-3)}.card__footer{padding:var(--spacing-2) var(--spacing-3);border-top:var(--border-width-thin) solid var(--color-semantic-text-disabled);background-color:var(--color-semantic-background-secondary)}.card:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}@media(prefers-contrast:high){.card{border-width:3px}.card__header{border-bottom-width:2px}.card__footer{border-top-width:2px}.card:focus-visible{outline-width:3px}}@media(prefers-reduced-motion:reduce){.card{transition:none;animation:none}}.checkbox{display:inline-flex;align-items:center;gap:var(--spacing-2);font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);font-size:var(--typography-font-size-base);color:var(--color-cga-amber, #ffb000);cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox--disabled{cursor:not-allowed;opacity:.6}.checkbox__input{position:absolute;opacity:0;width:0;height:0}.checkbox__box{display:inline-block;white-space:nowrap;text-align:center;color:var(--color-cga-amber, #ffb000);transition:color var(--duration-fast, .1s) ease-out}.checkbox__box:before{content:"[ ]"}.checkbox__input:checked+.checkbox__box:before{content:"[X]";color:var(--color-semantic-text-accent);text-shadow:0 0 4px var(--color-semantic-text-accent);animation:phosphor-energize .15s ease-out}.checkbox__input:focus-visible+.checkbox__box{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.checkbox:hover:not(.checkbox--disabled) .checkbox__box{color:var(--color-cga-amber-bright);text-shadow:0 0 4px var(--color-cga-amber-glow)}.checkbox:hover:not(.checkbox--disabled) .checkbox__input:checked+.checkbox__box:before{color:var(--color-cga-amber-bright);text-shadow:0 0 6px var(--color-cga-amber-glow)}.checkbox--disabled .checkbox__box{color:var(--color-semantic-text-disabled)}.checkbox--disabled .checkbox__input:checked+.checkbox__box:before{color:var(--color-semantic-text-disabled)}.checkbox__label{color:inherit}@media(prefers-contrast:high){.checkbox__box{font-weight:700}.checkbox__input:focus-visible+.checkbox__box{outline-width:3px}.checkbox__label{font-weight:600}}@media(prefers-reduced-motion:reduce){.checkbox__box{transition:none}.checkbox__input:checked+.checkbox__box:before{animation:none}}.command-prompt{display:flex;align-items:center;font-family:var(--typography-font-family-primary);font-size:var(--typography-font-size-base);background:var(--color-semantic-background-primary);color:var(--color-semantic-text-accent);padding:var(--spacing-2);cursor:text}.command-prompt__prompt{color:var(--color-cga-amber, #ffb000);margin-right:var(--spacing-2);white-space:nowrap;-webkit-user-select:none;user-select:none}.command-prompt__input{flex:1;background:transparent;border:none;color:var(--color-cga-amber, #ffb000);font-family:inherit;font-size:inherit;outline:none;padding:0;margin:0;min-width:0}.command-prompt__input::placeholder{color:var(--color-semantic-text-disabled)}.command-prompt__cursor{color:var(--color-cga-amber, #ffb000);animation:blink 1s step-end infinite;-webkit-user-select:none;user-select:none}.command-prompt--disabled{opacity:.5;cursor:not-allowed}.command-prompt--disabled .command-prompt__cursor{animation:none}.command-prompt__input:focus+.command-prompt__cursor{display:none}@media(prefers-contrast:high){.command-prompt{border:3px solid var(--color-semantic-border-default)}.command-prompt__prompt{font-weight:700}.command-prompt__input:focus{outline:3px solid var(--color-semantic-border-focus);outline-offset:2px}}@media(prefers-reduced-motion:reduce){.command-prompt__cursor{animation:none}}.progress{display:inline-flex;align-items:center;gap:var(--spacing-2);font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback)}.progress--full-width{display:flex;width:100%}.progress--full-width .progress__track{flex:1;min-width:0;overflow:hidden}.progress--full-width .progress__bar{display:block;width:100%;overflow:clip;white-space:nowrap}.progress__track{display:inline-block;position:relative;border:var(--border-width-medium) solid var(--color-semantic-border-default);background-color:var(--color-semantic-background-secondary);padding:1px 3px;line-height:1;letter-spacing:0;box-shadow:inset 0 1px 3px 0 var(--effects-drop-shadow),0 0 6px 0 var(--effects-phosphor-glow)}.progress__track--borderless{border:none;background:none;padding:0;box-shadow:none}.progress__bar{display:inline-block;position:relative;line-height:1;letter-spacing:0;overflow:clip}.progress--small{font-size:var(--typography-font-size-xs)}.progress--medium{font-size:var(--typography-font-size-base)}.progress--large{font-size:var(--typography-font-size-lg)}.progress__fill{position:absolute;top:0;left:0;width:100%;color:var(--color-cga-amber, #ffb000);white-space:nowrap;clip-path:inset(0 calc(100% - var(--fill-pct, 0) * 1%) 0 0);transition:clip-path var(--duration-slow, .3s) ease-out}.progress__empty{color:var(--color-cga-brown)}.progress__transition{position:absolute;top:0;left:0;color:var(--color-cga-amber, #ffb000);opacity:var(--opacity-50);white-space:nowrap;transform:translate(calc(var(--fill-pct, 0) / 100 * 100%));transition:transform var(--duration-slow, .3s) ease-out}.progress__bracket{color:var(--color-semantic-border-default)}.progress--success .progress__fill{color:var(--color-semantic-status-success)}.progress--warning .progress__fill{color:var(--color-semantic-status-warning)}.progress--error .progress__fill{color:var(--color-semantic-status-error)}.progress--glow .progress__fill{text-shadow:0 0 4px var(--color-cga-amber-glow),0 0 10px var(--effects-phosphor-glow)}.progress--glow .progress__track{box-shadow:inset 0 1px 3px 0 var(--effects-drop-shadow),0 0 8px 0 var(--color-cga-amber-glow),0 0 20px 2px var(--effects-phosphor-glow)}.progress__label{color:var(--color-cga-amber, #ffb000);min-width:4ch;text-align:right}.progress--indeterminate .progress__bar{overflow:hidden}.progress--indeterminate .progress__scanner{position:absolute;top:0;left:0;color:var(--color-cga-amber, #ffb000);animation:dos-scan 2s ease-in-out infinite alternate}@keyframes dos-scan{0%{transform:translate(0)}to{transform:translate(calc(100% - 3ch))}}@media(prefers-contrast:high){.progress__track{border-width:3px;box-shadow:none}.progress__fill,.progress__label{font-weight:700}.progress--glow .progress__fill{text-shadow:none}.progress--glow .progress__track{box-shadow:none}}@media(prefers-reduced-motion:reduce){.progress,.progress__fill,.progress__transition{transition:none}.progress--glow .progress__fill{will-change:auto}.progress--indeterminate .progress__scanner{animation:none;transform:translate(calc(50% - 1.5ch))}}.input{background:var(--color-semantic-background-primary);color:var(--color-cga-amber, #ffb000);border:var(--border-width-medium) solid var(--color-semantic-border-default);font-family:var(--typography-font-family-primary);font-size:var(--typography-font-size-base);padding:var(--spacing-2);outline:none;width:100%;box-sizing:border-box;box-shadow:0 0 0 0 transparent;transition:border-color var(--duration-normal, .2s) ease-out,box-shadow var(--duration-slow, .4s) ease-out}.input::placeholder{color:var(--color-semantic-text-disabled)}.input:focus{border-color:var(--color-semantic-border-focus);box-shadow:var(--shadow-glow-sm)}.input--error{border-color:var(--color-semantic-status-error)}.input--error:focus{border-color:var(--color-semantic-status-error)}.input--disabled,.input:disabled{opacity:.5;cursor:not-allowed;background:var(--color-semantic-background-primary)}@media(prefers-reduced-motion:reduce){.input{transition:none}}@media(prefers-contrast:high){.input{border-width:3px}.input:focus{outline:3px solid var(--color-semantic-border-focus);outline-offset:2px}}:root{--terminal-bg: var(--color-semantic-background-primary);--terminal-border: var(--color-semantic-text-disabled);--terminal-border-active: var(--color-semantic-text-secondary);--terminal-title-bg: var(--color-semantic-background-secondary);--terminal-title-text: var(--color-semantic-text-secondary);--terminal-title-bg-inactive: var(--color-semantic-background-secondary);--terminal-title-text-inactive: var(--color-cga-amber, #ffb000);--terminal-text: var(--color-cga-amber, #ffb000);--terminal-control-bg: var(--color-cga-amber, #ffb000);--terminal-control-symbol: var(--color-semantic-background-primary)}.terminal{background-color:var(--terminal-bg);border:2px solid var(--terminal-border);color:var(--terminal-text);font-family:Perfect DOS VGA,monospace;display:flex;flex-direction:column;box-shadow:5px 5px 0 var(--effects-drop-shadow);min-width:320px;min-height:200px}.terminal:focus,.terminal--active{border-color:var(--terminal-border-active);outline:none}.terminal--active .terminal__title-bar{background-color:var(--color-semantic-background-accent)}.terminal--inactive{border-color:var(--terminal-border)}.terminal--inactive .terminal__title-bar{background-color:var(--terminal-title-bg-inactive);color:var(--terminal-title-text-inactive)}.terminal--small{width:480px;height:320px}.terminal--medium{width:640px;height:480px}.terminal--large{width:800px;height:600px}.terminal--maximized{width:100vw;height:100vh;position:fixed;top:0;left:0;border:none;box-shadow:none;z-index:1000}.terminal__title-bar{background-color:var(--terminal-title-bg);color:var(--terminal-title-text);padding:2px 4px;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none;cursor:default;height:24px}.terminal__title{display:flex;align-items:center;gap:4px}.terminal__controls{display:flex}.terminal__control{background-color:var(--terminal-control-bg);border:1px solid var(--terminal-control-symbol);width:20px;height:20px;margin-left:2px;cursor:default;display:flex;align-items:center;justify-content:center;color:var(--terminal-control-symbol)}.terminal__control:active{filter:invert(1)}.terminal__content{flex-grow:1;padding:8px;overflow-y:auto}.terminal__default-content{display:flex;flex-direction:column}.terminal__prompt{display:flex}.terminal__path{margin-right:4px}.terminal__cursor{background-color:var(--terminal-text);width:8px;height:16px;animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.terminal__resize-handle{position:absolute;bottom:0;right:0;width:16px;height:16px;cursor:nwse-resize}.terminal--minimized{display:none}.terminal__taskbar-item{display:inline-flex;align-items:center;background-color:var(--terminal-control-bg);border:1px solid var(--color-semantic-background-primary);padding:2px 8px;cursor:default;-webkit-user-select:none;user-select:none}.terminal__taskbar-title{margin-left:4px;color:var(--color-semantic-background-primary)}@media(prefers-contrast:high){.terminal{border-width:3px}.terminal__title{font-weight:700}.terminal__control{border-width:2px}.terminal:focus{outline:3px solid var(--color-semantic-border-focus);outline-offset:2px}}@media(prefers-reduced-motion:reduce){.terminal__cursor{animation:none}}.tabs{display:inline-flex;align-items:center;gap:0;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);box-sizing:border-box}.tabs__tab{position:relative;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;font-family:inherit;font-weight:var(--typography-font-weight-regular);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;transition:color var(--duration-fast, .1s) ease-out,border-color var(--duration-fast, .1s) ease-out,background-color var(--duration-fast, .1s) ease-out,opacity var(--duration-fast, .1s) ease-out,text-shadow var(--duration-fast, .1s) ease-out;color:var(--color-cga-amber, #ffb000);opacity:.7}.tabs__tab:hover:not(:disabled){opacity:1;text-shadow:0 0 4px currentColor}.tabs__tab--active{opacity:1}.tabs__tab--disabled{cursor:not-allowed;opacity:.3}.tabs--underline{position:relative;gap:4px}.tabs--underline .tabs__tab{padding:8px 16px;border-bottom:2px solid transparent}.tabs--underline .tabs__tab--active{border-bottom-color:transparent;color:var(--color-semantic-text-accent)}.tabs--underline .tabs__tab:hover:not(:disabled):not(.tabs__tab--active){border-bottom-color:var(--color-semantic-border-default)}.tabs__indicator{position:absolute;bottom:0;left:0;height:2px;background-color:var(--color-semantic-text-accent);transform:translate(var(--indicator-left, 0));width:var(--indicator-width, 0);transition:transform var(--duration-normal, .2s) cubic-bezier(.175,.885,.32,1.1),width var(--duration-normal, .2s) cubic-bezier(.175,.885,.32,1.1);pointer-events:none}.tabs--pills{gap:4px;padding:4px;background-color:var(--color-semantic-background-secondary);border:1px solid var(--color-semantic-border-default);border-radius:2px}.tabs--pills .tabs__tab{padding:6px 12px;border-radius:2px}.tabs--pills .tabs__tab--active{background-color:var(--color-semantic-background-accent);color:var(--color-semantic-text-secondary);text-shadow:0 0 6px currentColor;box-shadow:inset 0 0 8px var(--color-cga-amber-glow);transition:color var(--duration-fast, .1s) ease-out,background-color var(--duration-normal, .2s) ease-out,text-shadow var(--duration-normal, .2s) ease-out,box-shadow var(--duration-normal, .2s) ease-out}.tabs--pills .tabs__tab:hover:not(:disabled):not(.tabs__tab--active){background-color:var(--color-semantic-background-primary)}.tabs--small .tabs__tab{font-size:10px;padding:4px 8px}.tabs--small.tabs--underline .tabs__tab{padding:4px 10px}.tabs--medium .tabs__tab{font-size:12px}.tabs--large .tabs__tab{font-size:14px;padding:10px 20px}.tabs--large.tabs--underline .tabs__tab{padding:10px 20px}.tabs--large.tabs--pills .tabs__tab{padding:8px 16px}.tabs__tab:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}@media(prefers-contrast:high){.tabs--underline .tabs__tab{border-bottom-width:3px}.tabs--pills{border-width:2px}.tabs--pills .tabs__tab--active{text-shadow:none;box-shadow:none}}@media(prefers-reduced-motion:reduce){.tabs__tab,.tabs__indicator,.tabs--pills .tabs__tab--active{transition:none}}.badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);font-weight:var(--typography-font-weight-regular);line-height:1;white-space:nowrap;-webkit-user-select:none;user-select:none;border-radius:2px;text-transform:uppercase;letter-spacing:.05em;box-sizing:border-box;animation:badge-enter var(--duration-fast, .1s) ease-out}@keyframes badge-enter{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.badge--small{font-size:10px;padding:2px 6px;min-height:18px;gap:4px}.badge--medium{font-size:12px;padding:4px 8px;min-height:22px;gap:6px}.badge--default{background-color:var(--color-semantic-background-secondary);color:var(--color-cga-amber, #ffb000);border:1px solid var(--color-semantic-border-default)}.badge--success{background-color:transparent;color:var(--color-cga-bright-green);border:1px solid var(--color-cga-bright-green)}.badge--warning{background-color:transparent;color:var(--color-cga-yellow);border:1px solid var(--color-cga-yellow)}.badge--error{background-color:transparent;color:var(--color-cga-bright-red);border:1px solid var(--color-cga-bright-red)}.badge--info{background-color:transparent;color:var(--color-cga-bright-cyan);border:1px solid var(--color-cga-bright-cyan)}.badge--accent{background-color:var(--color-semantic-background-accent);color:var(--color-semantic-text-secondary);border:1px solid var(--color-semantic-border-default)}.badge__dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.badge--default .badge__dot{background-color:var(--color-cga-amber, #ffb000)}.badge--success .badge__dot{background-color:var(--color-cga-bright-green)}.badge--warning .badge__dot{background-color:var(--color-cga-yellow)}.badge--error .badge__dot{background-color:var(--color-cga-bright-red)}.badge--info .badge__dot{background-color:var(--color-cga-bright-cyan)}.badge--accent .badge__dot{background-color:var(--color-semantic-text-secondary)}.badge__content{display:inline-flex;align-items:center;transform:translateY(1px)}@media(prefers-contrast:high){.badge{border-width:2px}}@media(prefers-reduced-motion:reduce){.badge{transition:none;animation:none}}.switch{display:inline-flex;align-items:center;justify-content:flex-start;padding:0;border:none;background:transparent;cursor:pointer;outline:none;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback)}.switch__track{position:relative;display:inline-flex;align-items:center;width:40px;height:20px;background-color:var(--color-semantic-background-secondary);border:2px solid var(--color-semantic-border-default);border-radius:2px;transition:background-color var(--duration-fast, .1s) ease-out,border-color var(--duration-fast, .1s) ease-out,box-shadow var(--duration-normal, .2s) ease-out}.switch__thumb{position:absolute;left:2px;width:12px;height:12px;background-color:var(--color-cga-amber, #ffb000);border-radius:1px;transition:transform var(--duration-normal, .2s) cubic-bezier(.2,.8,.2,1.4),background-color var(--duration-fast, .1s) ease-out}.switch--checked .switch__track{background-color:var(--color-semantic-background-accent);border-color:var(--color-semantic-border-focus);box-shadow:var(--shadow-glow-xs),0 0 12px 0 var(--color-cga-amber-glow)}.switch--checked .switch__thumb{transform:translate(20px);background-color:var(--color-semantic-text-secondary);box-shadow:0 0 4px var(--color-cga-amber-glow)}.switch:hover:not(.switch--disabled) .switch__track{border-color:var(--color-semantic-border-hover)}.switch:hover:not(.switch--disabled):not(.switch--checked) .switch__thumb{background-color:var(--color-semantic-text-accent)}.switch:focus-visible .switch__track{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.switch--disabled{cursor:not-allowed;opacity:.5}.switch--disabled .switch__track{background-color:var(--color-semantic-background-secondary);border-color:var(--color-semantic-border-disabled)}.switch--disabled .switch__thumb{background-color:var(--color-semantic-text-disabled)}@media(prefers-contrast:high){.switch__track{border-width:3px}.switch--checked .switch__track,.switch--checked .switch__thumb{box-shadow:none}}@media(prefers-reduced-motion:reduce){.switch__track,.switch__thumb{transition:none}.switch--checked .switch__track,.switch--checked .switch__thumb{box-shadow:none}}.breadcrumb{font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);font-size:var(--typography-font-size-xs);text-transform:uppercase;letter-spacing:.35em}.breadcrumb__list{display:flex;flex-wrap:wrap;align-items:center;gap:8px;list-style:none;margin:0;padding:0}.breadcrumb__item{display:flex;align-items:center;gap:8px}.breadcrumb__link{display:inline-flex;align-items:center;gap:4px;color:var(--color-semantic-text-disabled);text-decoration:none;transition:color .15s ease}.breadcrumb__link:hover{color:var(--color-cga-amber, #ffb000)}.breadcrumb__link:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.breadcrumb__back-arrow{font-size:1em;line-height:1}.breadcrumb__separator{color:var(--color-semantic-text-disabled);opacity:.6;-webkit-user-select:none;user-select:none}.breadcrumb__current{color:var(--color-cga-amber, #ffb000)}@media(min-width:768px){.breadcrumb{font-size:var(--typography-font-size-sm)}}@media(prefers-contrast:high){.breadcrumb__link:focus-visible{outline-width:3px}}@media(prefers-reduced-motion:reduce){.breadcrumb__link{transition:none}}.retro-effects{--retro-intensity: 1;pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999}.retro-effects__scanlines{position:absolute;top:0;right:0;bottom:0;left:0;opacity:calc(.6 * var(--retro-intensity));mix-blend-mode:screen;background:repeating-linear-gradient(to bottom,var(--effects-scanline-light) 0px,var(--effects-scanline-dark) 1px,transparent 2px,transparent 4px);animation:retro-scanline 9s linear infinite;will-change:transform}.retro-effects__glow{position:absolute;top:0;right:0;bottom:0;left:0;opacity:var(--retro-intensity);box-shadow:inset 0 0 200px var(--effects-vignette-glow);background:radial-gradient(ellipse 120% 100% at center,transparent 0%,transparent 50%,var(--effects-vignette-edge) 80%,var(--effects-vignette-corner) 100%)}.retro-effects__flicker{position:absolute;top:0;right:0;bottom:0;left:0;opacity:calc(.04 * var(--retro-intensity));background-color:var(--effects-screen-tint);animation:retro-flicker .5s steps(4) infinite;will-change:opacity}.retro-effects__bloom{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:calc(.5 * var(--retro-intensity));box-shadow:inset 0 0 40px var(--effects-phosphor-glow),inset 0 0 80px var(--effects-bloom-outer);background:radial-gradient(ellipse at center,var(--effects-bloom-center) 0%,transparent 60%)}@keyframes retro-scanline{0%{transform:translateY(0)}to{transform:translateY(12px)}}@keyframes retro-flicker{0%{opacity:calc(.02 * var(--retro-intensity))}50%{opacity:calc(.06 * var(--retro-intensity))}to{opacity:calc(.02 * var(--retro-intensity))}}@keyframes retro-power-off{0%{transform:scale(.95);filter:blur(2px);opacity:1}50%{transform:scaleY(.005) scaleX(1);filter:blur(0);opacity:1}to{transform:scaleY(0) scaleX(0);filter:blur(0);opacity:0}}@keyframes retro-power-on{0%{transform:scaleY(0) scaleX(0);filter:blur(4px) brightness(.3);opacity:1}50%{transform:scaleY(.02) scaleX(1);filter:blur(2px) brightness(.6);opacity:1}to{transform:scaleY(1) scaleX(1);filter:blur(0) brightness(1);opacity:1}}.retro-effects--powering-off{animation:retro-power-off var(--duration-power-off, .4s) ease-in forwards;transform-origin:center center}.retro-effects--powering-on{animation:retro-power-on var(--duration-power-on, .6s) ease-out forwards;transform-origin:center center}.retro-effects--off{transform:scaleY(0) scaleX(0);opacity:0;pointer-events:none}@media(prefers-reduced-motion:reduce){.retro-effects__scanlines{animation:none}.retro-effects__flicker{animation:none;opacity:calc(.03 * var(--retro-intensity))}.retro-effects--powering-off{animation:none;transition:opacity .2s ease-out;opacity:0}.retro-effects--powering-on{animation:none;transition:opacity .3s ease-in;opacity:1}}@media(prefers-contrast:high){.retro-effects{display:none}}.timeline-node{display:inline-flex;align-items:center;gap:var(--spacing-2);font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback)}.timeline-node__marker{display:block;background:var(--color-cga-amber-dim);border:2px solid var(--color-cga-amber-dim);transition:all .15s ease;flex-shrink:0;animation:timeline-node-enter var(--duration-fast, .1s) ease-out}@keyframes timeline-node-enter{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.timeline-node--small .timeline-node__marker{width:8px;height:8px}.timeline-node--medium .timeline-node__marker{width:12px;height:12px}.timeline-node--large .timeline-node__marker{width:16px;height:16px}.timeline-node--circle .timeline-node__marker{border-radius:50%}.timeline-node--square .timeline-node__marker{border-radius:2px}.timeline-node--diamond .timeline-node__marker{transform:rotate(45deg)}.timeline-node--diamond.timeline-node--small .timeline-node__marker{width:7px;height:7px}.timeline-node--diamond.timeline-node--medium .timeline-node__marker{width:10px;height:10px}.timeline-node--diamond.timeline-node--large .timeline-node__marker{width:14px;height:14px}.timeline-node--default .timeline-node__marker{background:var(--color-cga-amber-dim);border-color:var(--color-cga-amber-dim)}.timeline-node--primary .timeline-node__marker{background:var(--color-cga-amber);border-color:var(--color-cga-amber)}.timeline-node--secondary .timeline-node__marker{background:var(--color-cga-amber, #ffb000);border-color:var(--color-cga-amber, #ffb000)}.timeline-node--accent .timeline-node__marker{background:var(--color-semantic-text-accent);border-color:var(--color-semantic-text-accent)}.timeline-node--interactive{cursor:pointer}.timeline-node--interactive:hover .timeline-node__marker{background:var(--color-cga-amber);border-color:var(--color-cga-amber);box-shadow:var(--shadow-glow-sm)}.timeline-node--active .timeline-node__marker{background:var(--color-cga-amber-bright);border-color:var(--color-cga-amber-bright);box-shadow:var(--shadow-glow-sm)}.timeline-node--active.timeline-node--interactive:hover .timeline-node__marker{box-shadow:var(--shadow-glow-md)}.timeline-node--interactive:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.timeline-node__label{color:var(--color-cga-amber);font-size:var(--typography-font-size-xs);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:12ch}.timeline-node--small .timeline-node__label{font-size:10px}.timeline-node--large .timeline-node__label{font-size:var(--typography-font-size-sm)}.timeline-node--label-left,.timeline-node--label-right{flex-direction:row}.timeline-node--label-top,.timeline-node--label-bottom{flex-direction:column}.timeline-node__label--left,.timeline-node__label--top{order:-1}@media(prefers-reduced-motion:reduce){.timeline-node__marker{transition:none;animation:none}}@media(prefers-contrast:high){.timeline-node__marker{border-width:3px}.timeline-node--interactive:focus-visible{outline-width:3px}}.timeline-zoom-controls{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) 0}.timeline-zoom-controls__level{background:none;border:none;cursor:pointer;padding:0}.timeline-zoom-controls__level:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}@container timeline (max-width: 768px){.timeline-zoom-controls .button{min-width:44px;min-height:44px}.timeline-zoom-controls__level{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}}.timeline-axis{position:relative;padding-left:var(--spacing-6)}.timeline-axis__line{position:absolute;top:0;bottom:0;left:7px;width:2px;background:var(--color-cga-amber-dim)}.timeline-axis__content{position:relative}.tag{display:inline-flex;align-items:center;gap:4px;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);font-weight:var(--typography-font-weight-regular);line-height:1;white-space:nowrap;-webkit-user-select:none;user-select:none;border-radius:2px;box-sizing:border-box;vertical-align:middle}.tag--small{font-size:10px;padding:2px 6px;min-height:18px}.tag--medium{font-size:12px;padding:4px 8px;min-height:22px}.tag--default,.tag--outlined{background:transparent;color:var(--tag-color, var(--color-cga-amber, #ffb000));border:1px solid var(--tag-color, var(--color-semantic-border-default))}.tag--filled{background-color:var(--tag-color, var(--color-semantic-background-accent));color:var(--color-semantic-text-secondary);border:1px solid transparent}.tag--selected{background-color:var(--tag-color, var(--color-semantic-background-accent));color:var(--color-semantic-text-secondary);box-shadow:var(--shadow-glow-xs)}.tag--interactive{cursor:pointer}.tag--interactive:hover:not(.tag--disabled){box-shadow:var(--shadow-glow-xs)}.tag--interactive:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:1px}.tag--disabled{opacity:var(--opacity-50);cursor:not-allowed;pointer-events:none}.tag__content{display:inline-flex;align-items:center;transform:translateY(1px)}.tag__close{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;padding:0;margin:0;font-family:inherit;font-size:inherit;line-height:1;color:inherit;cursor:pointer;opacity:var(--opacity-70)}.tag__close:hover{opacity:1}.tag__close:disabled{cursor:not-allowed;opacity:var(--opacity-30)}.tag--closeable{padding-right:4px}.tag--closeable.tag--small{padding-right:3px}.tag-group{display:flex;flex-wrap:wrap;align-items:center}.tag-group--tight{gap:4px}.tag-group--normal{gap:8px}.tag-group--loose{gap:12px}.tag-group--nowrap{flex-wrap:nowrap;overflow:hidden}@media(prefers-contrast:high){.tag{border-width:2px}.tag--selected{box-shadow:none;border:2px solid currentColor}.tag--interactive:hover:not(.tag--disabled){box-shadow:none;border-width:2px}}@keyframes tag-exit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.tag--closing{animation:tag-exit var(--duration-fast, .1s) ease-in forwards;pointer-events:none}@media(prefers-reduced-motion:reduce){.tag{transition:none}.tag--closing{animation:none}}.timeline-container{container:timeline / inline-size;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);color:var(--color-cga-amber, #ffb000);background:var(--color-semantic-background-primary);padding:var(--spacing-4);min-height:200px}.timeline-container:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:-2px}.timeline-container__empty{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-1);padding:var(--spacing-8) var(--spacing-4);color:var(--color-cga-amber);font-size:var(--typography-font-size-base)}.timeline-container__empty p{margin:0}.timeline-view{display:flex;flex-direction:column;gap:var(--spacing-4)}.timeline-view__bucket{display:flex;flex-direction:column;gap:var(--spacing-2)}.timeline-view__node{flex-shrink:0;margin-left:calc(-1 * var(--spacing-6))}.timeline-view__node:has(.timeline-node--small){margin-left:calc(-1 * var(--spacing-6) + 2px)}.timeline-view__node:has(.timeline-node--large){margin-left:calc(-1 * var(--spacing-6) - 2px)}.timeline-view__content{display:flex;flex-direction:column;gap:var(--spacing-3);min-width:0}.timeline-view__entry-card{transition:opacity .2s ease,transform .2s ease}.timeline-view__entry-button{background:none;border:none;color:inherit;font:inherit;cursor:pointer;text-align:left;padding:0;width:100%}.timeline-view__entry-button:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.timeline-view__entry-type{color:var(--color-cga-amber-dim);font-size:var(--typography-font-size-xs);text-transform:uppercase}.timeline-view__entry-preview{color:var(--color-cga-amber, #ffb000);font-size:var(--typography-font-size-sm);line-height:var(--typography-line-height-normal);margin:0}.timeline-view__timestamp{display:block;color:var(--color-cga-amber);font-size:var(--typography-font-size-xs);margin-bottom:var(--spacing-2)}.timeline-view__entry-content{color:var(--color-cga-amber, #ffb000);font-size:var(--typography-font-size-sm);line-height:var(--typography-line-height-normal);white-space:pre-wrap}.timeline-view__entry-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-2)}.timeline-view__bucket-button{display:flex;flex-direction:column;gap:var(--spacing-2);align-items:flex-start;background:none;border:none;color:inherit;font:inherit;cursor:pointer;text-align:left;padding:0;width:100%}.timeline-view__bucket-button:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.timeline-view{animation:timeline-fade-in .2s ease}@keyframes timeline-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@container timeline (max-width: 479px){.timeline-view .timeline-node__label{display:none}}@container timeline (min-width: 480px){.timeline-view{gap:var(--spacing-6)}}@container timeline (min-width: 768px){.timeline-view__content{max-width:65ch}}@media(prefers-reduced-motion:reduce){.timeline-view{animation:none}.timeline-view__entry-card{transition:none}}.modal{padding:0;border:none;background:transparent;color:var(--color-cga-amber, #ffb000);max-width:100vw;max-height:100vh}.modal::backdrop{background-color:var(--effects-overlay)}.modal__container{background-color:var(--color-semantic-background-primary);border:2px solid var(--color-cga-yellow);box-shadow:var(--shadow-drop);width:480px;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);display:flex;flex-direction:column;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback)}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4);border-bottom:1px solid var(--color-cga-dark-gray)}.modal__title{margin:0;font-size:16px;font-weight:400;color:var(--color-cga-yellow);line-height:1.4}.modal__close{display:flex;align-items:center;justify-content:center;background:none;border:none;padding:4px;cursor:pointer;color:var(--color-cga-light-gray)}.modal__close:hover{color:var(--color-cga-yellow)}.modal__close:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.modal__body{padding:var(--spacing-4);color:var(--color-cga-light-gray);font-size:14px;line-height:1.5;overflow-y:auto;flex:1}.modal__footer{display:flex;gap:var(--spacing-2);justify-content:flex-end;padding:var(--spacing-4);border-top:1px solid var(--color-cga-dark-gray);color:var(--color-cga-light-gray)}.modal[open]{animation:modal-crt-enter var(--duration-slow, .4s) ease-out}.modal[open]::backdrop{animation:backdrop-open var(--duration-normal, .2s) ease-out}@keyframes modal-crt-enter{0%{opacity:0;filter:blur(4px) brightness(.3);transform:scale(.95)}to{opacity:1;filter:blur(0) brightness(1);transform:scale(1)}}@keyframes backdrop-open{0%{opacity:0}to{opacity:1}}.modal--closing{animation:modal-crt-exit var(--duration-normal, .2s) ease-in forwards}.modal--closing::backdrop{animation:backdrop-close var(--duration-fast, .1s) ease-in forwards}@keyframes modal-crt-exit{0%{opacity:1;filter:blur(0) brightness(1);transform:scale(1)}to{opacity:0;filter:blur(2px) brightness(.5);transform:scale(.95)}}@keyframes backdrop-close{0%{opacity:1}to{opacity:0}}.modal__close{transition:color var(--duration-fast, .1s) ease-out}@media(prefers-reduced-motion:reduce){.modal[open],.modal[open]::backdrop,.modal--closing,.modal--closing::backdrop{animation:none}.modal__close{transition:none}}@media(prefers-contrast:high){.modal__container{border-width:3px}}.stat{display:flex;flex-direction:column;gap:4px;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);box-sizing:border-box}.stat--small{gap:2px}.stat--small .stat__label{font-size:10px}.stat--small .stat__value{font-size:18px}.stat--small .stat__trend{font-size:10px}.stat--medium{gap:4px}.stat--medium .stat__label{font-size:11px}.stat--medium .stat__value{font-size:24px}.stat--medium .stat__trend{font-size:11px}.stat--large{gap:6px}.stat--large .stat__label{font-size:12px}.stat--large .stat__value{font-size:32px}.stat--large .stat__trend{font-size:12px}.stat__label{color:var(--color-cga-amber, #ffb000);text-transform:uppercase;letter-spacing:.05em;line-height:1.2}.stat__value{color:var(--color-semantic-text-accent);font-weight:var(--typography-font-weight-bold);line-height:1;font-variant-numeric:tabular-nums}.stat__trend{display:inline-flex;align-items:center;gap:4px;line-height:1}.stat__trend--up{color:var(--color-cga-bright-green)}.stat__trend--down{color:var(--color-cga-bright-red)}.stat__trend--neutral{color:var(--color-cga-amber, #ffb000)}.stat__trend-icon{font-size:.8em}.stat__trend-value{font-variant-numeric:tabular-nums}@media(prefers-contrast:high){.stat__value,.stat__trend{font-weight:700}.stat__trend-icon{font-size:1em}}@media(prefers-reduced-motion:reduce){.stat{transition:none}}.filter-bar{display:inline-flex;align-items:center;gap:4px;padding:4px;background-color:var(--color-semantic-background-secondary);border:1px solid var(--color-semantic-border-default);border-radius:2px;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);box-sizing:border-box}.filter-bar__item{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:transparent;border:1px solid transparent;border-radius:2px;cursor:pointer;font-family:inherit;font-weight:var(--typography-font-weight-regular);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;color:var(--color-cga-amber, #ffb000);opacity:.7;transition:color var(--duration-fast, .1s) ease-out,background-color var(--duration-fast, .1s) ease-out,border-color var(--duration-fast, .1s) ease-out,opacity var(--duration-fast, .1s) ease-out,text-shadow var(--duration-fast, .1s) ease-out,box-shadow var(--duration-fast, .1s) ease-out}.filter-bar__item:hover:not(:disabled){opacity:1;text-shadow:0 0 4px currentColor;border-color:var(--color-semantic-border-default)}.filter-bar__item--active{opacity:1;background-color:var(--color-semantic-background-accent);color:var(--color-semantic-text-secondary);border-color:var(--color-semantic-border-default);box-shadow:inset 0 0 8px var(--color-cga-amber-glow);transition:color var(--duration-fast, .1s) ease-out,background-color var(--duration-normal, .2s) ease-out,border-color var(--duration-normal, .2s) ease-out,text-shadow var(--duration-normal, .2s) ease-out,box-shadow var(--duration-normal, .2s) ease-out}.filter-bar__item--active[style*=--filter-bar-item-color]{background-color:var(--filter-bar-item-color);color:var(--color-semantic-text-secondary);border-color:var(--filter-bar-item-color)}.filter-bar__item--active:hover:not(:disabled){text-shadow:0 0 6px currentColor}.filter-bar__item--disabled{cursor:not-allowed;opacity:.3}.filter-bar__label{display:inline-flex;align-items:center}.filter-bar__count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;line-height:1;border-radius:2px;background-color:var(--color-semantic-background-primary);color:var(--color-cga-amber, #ffb000);border:1px solid var(--color-semantic-border-default)}.filter-bar__item--active .filter-bar__count{background-color:var(--color-semantic-background-secondary);color:var(--color-cga-amber, #ffb000);border-color:var(--color-semantic-border-default)}.filter-bar--small .filter-bar__item{font-size:10px;padding:2px 6px}.filter-bar--small .filter-bar__count{min-width:14px;height:14px;font-size:9px;padding:0 3px}.filter-bar--medium .filter-bar__item{font-size:12px;padding:6px 12px}.filter-bar--large .filter-bar__item{font-size:14px;padding:8px 16px}.filter-bar--large .filter-bar__count{min-width:18px;height:18px;font-size:11px;padding:0 5px}.filter-bar__item:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}@media(prefers-contrast:high){.filter-bar,.filter-bar__item{border-width:2px}.filter-bar__item--active{border-color:var(--color-cga-amber, #ffb000);outline:1px solid var(--color-cga-amber, #ffb000);outline-offset:-1px;text-shadow:none;box-shadow:none}.filter-bar__count{border-width:2px}}@media(prefers-reduced-motion:reduce){.filter-bar__item{transition:none}.filter-bar__item--active{transition:none;text-shadow:none;box-shadow:none}}.inline-expand{display:inline}.inline-expand__trigger{all:unset;display:inline;font:inherit;color:var(--color-semantic-text-accent);cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:var(--border-width-thin, 1px);text-underline-offset:3px;transition:text-shadow var(--duration-fast, .1s) ease-out,color var(--duration-fast, .1s) ease-out}.inline-expand__trigger:hover{color:var(--color-cga-amber);text-shadow:0 0 4px var(--color-cga-amber-glow),0 0 12px var(--color-cga-amber-glow)}.inline-expand__trigger:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-semantic-border-focus);border-radius:var(--border-radius-sm, 2px)}.inline-expand--expanded .inline-expand__trigger{text-decoration-style:solid}.inline-expand__indicator{margin-left:var(--spacing-1, 4px);color:var(--color-cga-amber, #ffb000)}.inline-expand__trigger:active .inline-expand__indicator{text-shadow:0 0 6px var(--color-cga-amber-glow)}.inline-expand__content{display:block;visibility:hidden;opacity:0;filter:blur(1px) brightness(.5);transform:translateY(-.2rem);overflow:clip;max-height:0;transition:opacity var(--duration-fast, .1s) ease-in,visibility var(--duration-fast, .1s),filter var(--duration-fast, .1s) ease-in,transform var(--duration-fast, .1s) ease-in,max-height var(--duration-fast, .1s) ease-in}.inline-expand--expanded .inline-expand__content{visibility:visible;opacity:1;filter:blur(0) brightness(1);transform:translateY(0);max-height:500px;transition:opacity var(--duration-normal, .2s) cubic-bezier(.175,.885,.32,1.1),visibility var(--duration-normal, .2s),filter var(--duration-normal, .2s) cubic-bezier(.175,.885,.32,1.1),transform var(--duration-normal, .2s) cubic-bezier(.175,.885,.32,1.1),max-height var(--duration-normal, .2s) cubic-bezier(.175,.885,.32,1.1)}.inline-expand__inner{display:block;padding:var(--spacing-2, 8px) var(--spacing-3, 12px);margin-top:var(--spacing-1, 4px);border-left:var(--border-width-medium, 2px) solid var(--color-semantic-border-default);font-size:var(--typography-font-size-sm, 14px);line-height:var(--typography-line-height-normal, 1.5);color:var(--color-cga-amber, #ffb000)}.inline-expand__sources{display:flex;flex-wrap:wrap;gap:var(--spacing-2, 8px);margin-top:var(--spacing-2, 8px);padding-top:var(--spacing-2, 8px);border-top:var(--border-width-thin, 1px) solid var(--color-semantic-border-default)}.inline-expand__source-link{display:inline-flex;align-items:center;gap:var(--spacing-1, 4px);font-size:var(--typography-font-size-xs, 12px);color:var(--color-cga-brown);text-decoration:none;transition:color var(--duration-fast, .1s) ease-out}.inline-expand__source-link:hover{color:var(--color-cga-amber)}.inline-expand__source-favicon{width:16px;height:16px;border-radius:var(--border-radius-sm, 2px)}.inline-expand__source-icon{color:var(--color-cga-brown);font-size:var(--typography-font-size-xs, 12px)}.inline-expand__source-title{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}@media(prefers-reduced-motion:reduce){.inline-expand__trigger,.inline-expand__content,.inline-expand--expanded .inline-expand__content,.inline-expand__indicator,.inline-expand__source-link{transition:none}}@media(prefers-contrast:high){.inline-expand__trigger{text-decoration-thickness:2px;font-weight:var(--typography-font-weight-bold, 700)}.inline-expand__trigger:focus-visible{box-shadow:0 0 0 3px var(--color-semantic-border-focus)}.inline-expand__inner{border-left-width:4px}.inline-expand__source-link{text-decoration:underline}}.separator{flex-shrink:0;background-color:var(--color-semantic-border-default)}.separator--horizontal{height:1px;width:100%}.separator--vertical{width:1px;height:100%}@media(prefers-contrast:high){.separator{background-color:var(--color-cga-amber, #ffb000)}}.text-scramble{display:inline}.text-scramble--scrambling{opacity:.9}
|
|
1
|
+
.alert{width:100%;position:relative;overflow:hidden;text-align:left;font-size:var(--typography-font-size-base, 16px);font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);border:none;animation:alert-enter var(--duration-slow, .4s) ease-out}@keyframes alert-enter{0%{opacity:0;filter:blur(4px) brightness(.3)}to{opacity:1;filter:blur(0) brightness(1)}}.alert--info{background-color:var(--color-semantic-alert-info);color:var(--color-cga-amber)}.alert--success{background-color:var(--color-semantic-alert-success);color:var(--color-cga-bright-green)}.alert--warning{background-color:var(--color-semantic-alert-warning);color:var(--color-cga-amber)}.alert--error{background-color:var(--color-semantic-alert-error);color:var(--color-cga-bright-red)}.alert--large{max-width:1020px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:var(--spacing-4);box-sizing:border-box;gap:var(--spacing-1)}.alert--small{max-width:350px;min-height:40px;overflow:hidden;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;padding:0 var(--spacing-2);box-sizing:border-box;gap:var(--spacing-2)}.alert__header{align-self:stretch;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;width:100%}.alert__icon{display:flex;align-items:center;justify-content:center;align-self:flex-start;width:24px;height:24px;flex-shrink:0;margin-top:2px}.alert--small .alert__icon{width:20px;height:20px}.alert--small .alert__icon svg{width:20px!important;height:20px!important}.alert__title{flex:1;position:relative;line-height:140%}.alert__close{display:flex;align-items:center;justify-content:center;align-self:flex-start;width:20px;height:20px;flex-shrink:0;background:none;border:none;padding:0;margin-top:2px;cursor:pointer;color:inherit;transition:opacity var(--duration-fast, .1s) ease-out;opacity:.7}.alert__close:hover{opacity:1}.alert__close svg{width:20px!important;height:20px!important}.alert--small .alert__content{display:none}.alert__content{align-self:stretch;display:flex;flex-direction:row;align-items:flex-start;justify-content:flex-start;padding:0 0 0 32px;font-size:var(--typography-font-size-sm, 14px)}.alert__message{flex:1;position:relative;line-height:140%;color:var(--color-cga-amber-dim)}.alert__link{background:none;border:none;padding:0;cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;text-decoration:none;transition:text-shadow var(--duration-fast, .1s) ease-out}.alert__link:hover{text-shadow:0 0 6px currentColor}@keyframes alert-exit{0%{opacity:1;filter:blur(0) brightness(1);transform:scale(1)}to{opacity:0;filter:blur(2px) brightness(.5);transform:scale(.95)}}.alert--closing{animation:alert-exit var(--duration-normal, .2s) ease-in forwards}@media(prefers-reduced-motion:reduce){.alert,.alert--closing{animation:none}.alert__close,.alert__link{transition:none}}@media(prefers-contrast:high){.alert{border:2px solid currentColor}.alert__title{font-weight:700}.alert__close:focus-visible{outline:3px solid currentColor;outline-offset:2px}.alert__link{text-decoration:underline;font-weight:700}}.icon{display:inline-block;vertical-align:middle;fill:currentColor;color:var(--color-cga-amber, #ffb000)}.icon--l{width:56px;height:56px}.icon--s{width:24px;height:24px}.icon[role=button]{cursor:pointer}.icon[role=button]:hover{color:var(--color-semantic-link-hover)}@media(prefers-contrast:high){.icon[role=button]:focus-visible{outline:3px solid currentColor;outline-offset:2px}}.section{width:100%;border:1px solid var(--color-semantic-border-default);background-color:var(--color-semantic-background-primary);color:var(--color-cga-amber, #ffb000);font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback)}.section__header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:none;border:none;color:inherit;font-family:inherit;cursor:pointer;text-align:left}.section__title{flex:1;font-size:var(--typography-font-size-base, 16px);line-height:24px}.section__icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;margin-left:8px;color:inherit}.section__content{max-height:0;opacity:0;padding:0 16px;overflow:clip;visibility:hidden;border-top:1px solid var(--color-semantic-border-default);font-size:var(--typography-font-size-sm, 14px);line-height:20px;color:var(--color-cga-amber, #ffb000);transition:max-height var(--duration-normal, .2s) ease-in-out,opacity var(--duration-normal, .2s) ease-in-out,padding var(--duration-normal, .2s) ease-in-out,visibility 0s var(--duration-normal, .2s)}.section--expanded .section__content{max-height:500px;opacity:1;padding:16px;visibility:visible;transition:max-height var(--duration-normal, .2s) ease-in-out,opacity var(--duration-normal, .2s) ease-in-out,padding var(--duration-normal, .2s) ease-in-out,visibility 0s 0s}.section--hover .section__header,.section__header:hover{background-color:var(--color-semantic-background-accent);color:var(--color-semantic-text-secondary)}.section--active .section__header,.section__header:active{background-color:var(--color-semantic-background-secondary);color:var(--color-cga-amber);text-shadow:0 0 8px var(--color-cga-amber-glow)}.section--expanded{border-color:var(--color-semantic-text-secondary)}.section--expanded .section__header{background-color:var(--color-semantic-background-accent);color:var(--color-semantic-text-secondary)}.section__header:focus{outline:none;box-shadow:0 0 0 2px var(--color-semantic-border-focus)}.section__icon{transition:transform var(--duration-normal, .2s) ease-in-out}.section--expanded .section__icon{transform:rotate(180deg)}@media(prefers-contrast:high){.section{border-width:3px}.section__title{font-weight:700}.section__content{border-top-width:2px}.section__header:focus{box-shadow:0 0 0 3px var(--color-semantic-border-focus)}}@media(prefers-reduced-motion:reduce){.section__icon,.section__content{transition:none}}.accordion-fill{width:100%;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--spacing-2);text-align:left;font-size:var(--typography-font-size-base);font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);color:var(--color-cga-amber, #ffb000)}.accordion-fill>.section{margin-bottom:4px}.accordion-fill>.section:last-child{margin-bottom:0}@media(prefers-contrast:high){.accordion-fill{font-weight:600}}@keyframes phosphor-warmup{0%{filter:brightness(1)}15%{filter:brightness(1.3)}30%{filter:brightness(.97)}50%{filter:brightness(1.15)}70%{filter:brightness(1.02)}to{filter:brightness(1)}}@keyframes phosphor-energize{0%{filter:brightness(1)}40%{filter:brightness(1.4)}to{filter:brightness(1.08)}}.button{display:inline-flex;align-items:center;justify-content:center;position:relative;border:none;outline:none;cursor:pointer;text-decoration:none;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);font-weight:var(--typography-font-weight-bold);line-height:1;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:all .1s ease;box-sizing:border-box;border:2px solid;background-clip:padding-box}.button--primary{background-color:var(--color-semantic-background-accent);color:var(--color-semantic-text-secondary);border-color:var(--color-semantic-border-default);transition:background-color .6s cubic-bezier(.8,-.5,.2,1.4),border-color .6s cubic-bezier(.8,-.5,.2,1.4),box-shadow .6s cubic-bezier(.8,-.5,.2,1.4),filter .6s cubic-bezier(.8,-.5,.2,1.4),text-shadow .6s cubic-bezier(.8,-.5,.2,1.4)}.button--primary:hover:not(:disabled){background-color:var(--color-semantic-background-accent);border-color:var(--color-semantic-border-default);color:var(--color-semantic-text-secondary);box-shadow:0 0 8px 0 var(--color-cga-amber-glow),0 0 20px 2px var(--effects-phosphor-glow),0 0 40px 4px var(--effects-bloom-outer);text-shadow:0 0 4px var(--color-cga-amber-glow);will-change:filter,box-shadow;animation:phosphor-warmup var(--duration-slow, .4s) ease-out;transition:background-color var(--duration-slow, .4s) ease-out,border-color var(--duration-slow, .4s) ease-out,box-shadow var(--duration-slow, .4s) ease-out,text-shadow var(--duration-slow, .4s) ease-out}.button--primary:active:not(:disabled){background-color:var(--color-cga-amber-bright);border-color:var(--color-cga-amber-bright);box-shadow:0 0 12px 2px var(--color-cga-amber-glow),0 0 30px 4px var(--effects-phosphor-glow),0 0 50px 8px var(--effects-bloom-outer);text-shadow:0 0 6px var(--color-cga-amber-glow);animation:phosphor-energize .15s ease-out forwards;transition:background-color var(--duration-fast, .1s) ease-out,border-color var(--duration-fast, .1s) ease-out,box-shadow var(--duration-fast, .1s) ease-out}.button--primary:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;background:repeating-linear-gradient(to bottom,transparent 0px,transparent 3px,rgba(0,0,0,.06) 3px,rgba(0,0,0,.06) 4px);background-size:100% 4px;transition:opacity var(--duration-fast, .1s) ease-out}.button--primary:active:not(:disabled):after{opacity:1;animation:scanline-crawl 4s linear infinite}@keyframes scanline-crawl{0%{background-position:0 0}to{background-position:0 40px}}.button--secondary{background-color:var(--color-semantic-background-secondary);color:var(--color-cga-amber, #ffb000);border-color:var(--color-semantic-border-default);transition:background-color .4s cubic-bezier(.5,-.2,.2,1.2),border-color .4s cubic-bezier(.5,-.2,.2,1.2),box-shadow .4s cubic-bezier(.5,-.2,.2,1.2),filter .4s cubic-bezier(.5,-.2,.2,1.2),text-shadow .4s cubic-bezier(.5,-.2,.2,1.2)}.button--secondary:hover:not(:disabled){background-color:var(--color-cga-amber, #ffb000);color:var(--color-semantic-background-primary);border-color:var(--color-semantic-text-secondary);box-shadow:0 0 8px 0 var(--color-cga-amber-glow),0 0 20px 2px var(--effects-phosphor-glow);text-shadow:0 0 3px var(--color-cga-amber-glow);will-change:filter,box-shadow;animation:phosphor-warmup var(--duration-slow, .4s) ease-out;transition:background-color var(--duration-slow, .4s) ease-out,border-color var(--duration-slow, .4s) ease-out,box-shadow var(--duration-slow, .4s) ease-out,text-shadow var(--duration-slow, .4s) ease-out}.button--secondary:active:not(:disabled){background-color:var(--color-semantic-background-secondary);color:var(--color-cga-amber, #ffb000);border-color:var(--color-semantic-text-disabled);box-shadow:0 0 10px 2px var(--color-cga-amber-glow),0 0 24px 4px var(--effects-phosphor-glow);text-shadow:0 0 5px var(--color-cga-amber-glow);animation:phosphor-energize .15s ease-out forwards;transition:background-color var(--duration-fast, .1s) ease-out,border-color var(--duration-fast, .1s) ease-out,box-shadow var(--duration-fast, .1s) ease-out}.button--ghost{background-color:transparent;color:var(--color-cga-amber, #ffb000);border-color:var(--color-semantic-border-default);transition:background-color .3s cubic-bezier(.5,-.1,.2,1.1),border-color .3s cubic-bezier(.5,-.1,.2,1.1),box-shadow .3s cubic-bezier(.5,-.1,.2,1.1),filter .3s cubic-bezier(.5,-.1,.2,1.1),text-shadow .3s cubic-bezier(.5,-.1,.2,1.1)}.button--ghost:hover:not(:disabled){background-color:var(--color-cga-amber, #ffb000);color:var(--color-semantic-background-primary);border-color:var(--color-semantic-text-secondary);box-shadow:0 0 8px 0 var(--color-cga-amber-glow);text-shadow:0 0 3px var(--color-cga-amber-glow);will-change:filter,box-shadow;animation:phosphor-warmup var(--duration-normal, .2s) ease-out;transition:background-color var(--duration-normal, .2s) ease-out,border-color var(--duration-normal, .2s) ease-out,box-shadow var(--duration-normal, .2s) ease-out,text-shadow var(--duration-normal, .2s) ease-out}.button--ghost:active:not(:disabled){background-color:var(--color-semantic-background-secondary);color:var(--color-cga-amber, #ffb000);box-shadow:0 0 12px 2px var(--color-cga-amber-glow);text-shadow:0 0 4px var(--color-cga-amber-glow);animation:phosphor-energize .15s ease-out forwards;transition:background-color var(--duration-fast, .1s) ease-out,border-color var(--duration-fast, .1s) ease-out,box-shadow var(--duration-fast, .1s) ease-out}.button--link{background-color:transparent;color:var(--color-semantic-text-accent);border-color:transparent;text-decoration:underline}.button--link:hover:not(:disabled){color:var(--color-cga-amber-bright);background-color:transparent;border-color:transparent;text-shadow:0 0 4px var(--color-cga-amber-glow)}.button--link:active:not(:disabled){color:var(--color-semantic-text-disabled)}.button--small{font-size:var(--typography-font-size-sm, 14px);padding:.25rem 8px;min-height:1.5rem;gap:4px}.button--medium{font-size:var(--typography-font-size-base, 16px);padding:.5rem 16px;min-height:2rem;gap:6px}.button--large{font-size:var(--typography-font-size-lg, 18px);padding:.75rem 20px;min-height:2.5rem;gap:8px}.button--disabled,.button:disabled{cursor:not-allowed;opacity:.6;background-color:var(--color-semantic-background-secondary)!important;color:var(--color-semantic-text-disabled)!important;border-color:var(--color-semantic-text-disabled)!important}.button--loading{cursor:wait}.button--full-width{width:100%;justify-content:center}.button__loading-indicator{animation:blink 1s infinite;margin-right:4px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.button__content{display:inline-flex;align-items:center;justify-content:center}.button__content--loading{opacity:.7}.button:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}@media(prefers-contrast:high){.button{border-width:3px}}@media(prefers-reduced-motion:reduce){.button{transition:none}.button--primary:hover:not(:disabled),.button--primary:active:not(:disabled),.button--secondary:hover:not(:disabled),.button--secondary:active:not(:disabled),.button--ghost:hover:not(:disabled),.button--ghost:active:not(:disabled){animation:none;filter:none;transition:none}.button--primary:active:not(:disabled):after{animation:none}.button__loading-indicator{animation:none}}.card{background-color:var(--color-semantic-background-primary);border:var(--border-width-medium) solid var(--color-semantic-border-default);font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);color:var(--color-cga-amber, #ffb000);animation:card-enter var(--duration-normal, .2s) ease-out;transition:border-color var(--duration-normal, .2s) ease-out,box-shadow var(--duration-slow, .4s) ease-out}@keyframes card-enter{0%{opacity:0}to{opacity:1}}.card--default{border-color:var(--color-semantic-border-default)}.card--elevated{border-color:var(--color-semantic-text-secondary);box-shadow:4px 4px 0 0 var(--color-semantic-text-disabled)}.card--glow{border-color:var(--color-cga-amber);box-shadow:var(--shadow-glow-md)}.card--glow:hover{box-shadow:var(--shadow-glow-lg)}.card--bordered{border-color:var(--color-semantic-text-accent);border-width:var(--border-width-medium)}.card__header{padding:var(--spacing-2) var(--spacing-3);border-bottom:var(--border-width-thin) solid var(--color-semantic-text-disabled);background-color:var(--color-cga-amber-dim)}.card__title{color:var(--color-semantic-text-secondary);font-size:var(--typography-font-size-base);font-weight:var(--typography-font-weight-bold);text-transform:uppercase}.card__body{padding:var(--spacing-3)}.card__footer{padding:var(--spacing-2) var(--spacing-3);border-top:var(--border-width-thin) solid var(--color-semantic-text-disabled);background-color:var(--color-semantic-background-secondary)}.card:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}@media(prefers-contrast:high){.card{border-width:3px}.card__header{border-bottom-width:2px}.card__footer{border-top-width:2px}.card:focus-visible{outline-width:3px}}@media(prefers-reduced-motion:reduce){.card{transition:none;animation:none}}.checkbox{display:inline-flex;align-items:center;gap:var(--spacing-2);font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);font-size:var(--typography-font-size-base);color:var(--color-cga-amber, #ffb000);cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox--disabled{cursor:not-allowed;opacity:.6}.checkbox__input{position:absolute;opacity:0;width:0;height:0}.checkbox__box{display:inline-block;white-space:nowrap;text-align:center;color:var(--color-cga-amber, #ffb000);transition:color var(--duration-fast, .1s) ease-out}.checkbox__box:before{content:"[ ]"}.checkbox__input:checked+.checkbox__box:before{content:"[X]";color:var(--color-semantic-text-accent);text-shadow:0 0 4px var(--color-semantic-text-accent);animation:phosphor-energize .15s ease-out}.checkbox__input:focus-visible+.checkbox__box{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.checkbox:hover:not(.checkbox--disabled) .checkbox__box{color:var(--color-cga-amber-bright);text-shadow:0 0 4px var(--color-cga-amber-glow)}.checkbox:hover:not(.checkbox--disabled) .checkbox__input:checked+.checkbox__box:before{color:var(--color-cga-amber-bright);text-shadow:0 0 6px var(--color-cga-amber-glow)}.checkbox--disabled .checkbox__box{color:var(--color-semantic-text-disabled)}.checkbox--disabled .checkbox__input:checked+.checkbox__box:before{color:var(--color-semantic-text-disabled)}.checkbox__label{color:inherit}@media(prefers-contrast:high){.checkbox__box{font-weight:700}.checkbox__input:focus-visible+.checkbox__box{outline-width:3px}.checkbox__label{font-weight:600}}@media(prefers-reduced-motion:reduce){.checkbox__box{transition:none}.checkbox__input:checked+.checkbox__box:before{animation:none}}.command-prompt{display:flex;align-items:center;font-family:var(--typography-font-family-primary);font-size:var(--typography-font-size-base);background:var(--color-semantic-background-primary);color:var(--color-semantic-text-accent);padding:var(--spacing-2);max-width:100%;cursor:text}.command-prompt__prompt{color:var(--color-cga-amber, #ffb000);margin-right:var(--spacing-2);white-space:nowrap;-webkit-user-select:none;user-select:none}.command-prompt__input{flex:1;background:transparent;border:none;color:var(--color-cga-amber, #ffb000);font-family:inherit;font-size:inherit;outline:none;padding:0;margin:0;min-width:0}.command-prompt__input::placeholder{color:var(--color-semantic-text-disabled)}.command-prompt__cursor{color:var(--color-cga-amber, #ffb000);animation:blink 1s step-end infinite;-webkit-user-select:none;user-select:none}.command-prompt--disabled{opacity:.5;cursor:not-allowed}.command-prompt--disabled .command-prompt__cursor{animation:none}.command-prompt__input:focus+.command-prompt__cursor{display:none}@media(prefers-contrast:high){.command-prompt{border:3px solid var(--color-semantic-border-default)}.command-prompt__prompt{font-weight:700}.command-prompt__input:focus{outline:3px solid var(--color-semantic-border-focus);outline-offset:2px}}@media(prefers-reduced-motion:reduce){.command-prompt__cursor{animation:none}}.progress{display:inline-flex;align-items:center;gap:var(--spacing-2);font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback)}.progress--full-width{display:flex;width:100%}.progress--full-width .progress__track{flex:1;min-width:0;overflow:hidden}.progress--full-width .progress__bar{display:block;width:100%;overflow:clip;white-space:nowrap}.progress__track{display:inline-block;position:relative;border:var(--border-width-medium) solid var(--color-semantic-border-default);background-color:var(--color-semantic-background-secondary);padding:1px 3px;line-height:1;letter-spacing:0;box-shadow:inset 0 1px 3px 0 var(--effects-drop-shadow),0 0 6px 0 var(--effects-phosphor-glow)}.progress__track--borderless{border:none;background:none;padding:0;box-shadow:none}.progress__bar{display:inline-block;position:relative;line-height:1;letter-spacing:0;overflow:clip}.progress--small{font-size:var(--typography-font-size-xs)}.progress--medium{font-size:var(--typography-font-size-base)}.progress--large{font-size:var(--typography-font-size-lg)}.progress__fill{position:absolute;top:0;left:0;width:100%;color:var(--color-cga-amber, #ffb000);white-space:nowrap;clip-path:inset(0 calc(100% - var(--fill-pct, 0) * 1%) 0 0);transition:clip-path var(--duration-slow, .3s) ease-out}.progress__empty{color:var(--color-cga-brown)}.progress__transition{position:absolute;top:0;left:0;color:var(--color-cga-amber, #ffb000);opacity:var(--opacity-50);white-space:nowrap;transform:translate(calc(var(--fill-pct, 0) / 100 * 100%));transition:transform var(--duration-slow, .3s) ease-out}.progress__bracket{color:var(--color-semantic-border-default)}.progress--success .progress__fill{color:var(--color-semantic-status-success)}.progress--warning .progress__fill{color:var(--color-semantic-status-warning)}.progress--error .progress__fill{color:var(--color-semantic-status-error)}.progress--glow .progress__fill{text-shadow:0 0 4px var(--color-cga-amber-glow),0 0 10px var(--effects-phosphor-glow)}.progress--glow .progress__track{box-shadow:inset 0 1px 3px 0 var(--effects-drop-shadow),0 0 8px 0 var(--color-cga-amber-glow),0 0 20px 2px var(--effects-phosphor-glow)}.progress__label{color:var(--color-cga-amber, #ffb000);min-width:4ch;text-align:right}.progress--indeterminate .progress__bar{overflow:hidden}.progress--indeterminate .progress__scanner{position:absolute;top:0;left:0;color:var(--color-cga-amber, #ffb000);animation:dos-scan 2s ease-in-out infinite alternate}@keyframes dos-scan{0%{transform:translate(0)}to{transform:translate(calc(100% - 3ch))}}@media(prefers-contrast:high){.progress__track{border-width:3px;box-shadow:none}.progress__fill,.progress__label{font-weight:700}.progress--glow .progress__fill{text-shadow:none}.progress--glow .progress__track{box-shadow:none}}@media(prefers-reduced-motion:reduce){.progress,.progress__fill,.progress__transition{transition:none}.progress--glow .progress__fill{will-change:auto}.progress--indeterminate .progress__scanner{animation:none;transform:translate(calc(50% - 1.5ch))}}.input{background:var(--color-semantic-background-primary);color:var(--color-cga-amber, #ffb000);border:var(--border-width-medium) solid var(--color-semantic-border-default);font-family:var(--typography-font-family-primary);font-size:var(--typography-font-size-base);padding:var(--spacing-2);outline:none;width:100%;box-sizing:border-box;box-shadow:0 0 0 0 transparent;transition:border-color var(--duration-normal, .2s) ease-out,box-shadow var(--duration-slow, .4s) ease-out}.input::placeholder{color:var(--color-semantic-text-disabled)}.input:focus{border-color:var(--color-semantic-border-focus);box-shadow:var(--shadow-glow-sm)}.input--error{border-color:var(--color-semantic-status-error)}.input--error:focus{border-color:var(--color-semantic-status-error)}.input--disabled,.input:disabled{opacity:.5;cursor:not-allowed;background:var(--color-semantic-background-primary)}@media(prefers-reduced-motion:reduce){.input{transition:none}}@media(prefers-contrast:high){.input{border-width:3px}.input:focus{outline:3px solid var(--color-semantic-border-focus);outline-offset:2px}}:root{--terminal-bg: var(--color-semantic-background-primary);--terminal-border: var(--color-semantic-text-disabled);--terminal-border-active: var(--color-semantic-text-secondary);--terminal-title-bg: var(--color-semantic-background-secondary);--terminal-title-text: var(--color-semantic-text-secondary);--terminal-title-bg-inactive: var(--color-semantic-background-secondary);--terminal-title-text-inactive: var(--color-cga-amber, #ffb000);--terminal-text: var(--color-cga-amber, #ffb000);--terminal-control-bg: var(--color-cga-amber, #ffb000);--terminal-control-symbol: var(--color-semantic-background-primary)}.terminal{background-color:var(--terminal-bg);border:2px solid var(--terminal-border);color:var(--terminal-text);font-family:Perfect DOS VGA,monospace;display:flex;flex-direction:column;box-shadow:5px 5px 0 var(--effects-drop-shadow);max-width:100%;min-width:0;min-height:200px}.terminal:focus,.terminal--active{border-color:var(--terminal-border-active);outline:none}.terminal--active .terminal__title-bar{background-color:var(--color-semantic-background-accent)}.terminal--inactive{border-color:var(--terminal-border)}.terminal--inactive .terminal__title-bar{background-color:var(--terminal-title-bg-inactive);color:var(--terminal-title-text-inactive)}.terminal--small{width:480px;height:320px}.terminal--medium{width:640px;height:480px}.terminal--large{width:800px;height:600px}.terminal--maximized{width:100vw;height:100vh;position:fixed;top:0;left:0;border:none;box-shadow:none;z-index:1000}.terminal__title-bar{background-color:var(--terminal-title-bg);color:var(--terminal-title-text);padding:2px 4px;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none;cursor:default;height:24px}.terminal__title{display:flex;align-items:center;gap:4px}.terminal__controls{display:flex}.terminal__control{background-color:var(--terminal-control-bg);border:1px solid var(--terminal-control-symbol);width:20px;height:20px;margin-left:2px;cursor:default;display:flex;align-items:center;justify-content:center;color:var(--terminal-control-symbol)}.terminal__control:active{filter:invert(1)}.terminal__content{flex-grow:1;padding:8px;overflow:auto}.terminal__default-content{display:flex;flex-direction:column}.terminal__prompt{display:flex}.terminal__path{margin-right:4px}.terminal__cursor{background-color:var(--terminal-text);width:8px;height:16px;animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.terminal__resize-handle{position:absolute;bottom:0;right:0;width:16px;height:16px;cursor:nwse-resize}.terminal--minimized{display:none}.terminal__taskbar-item{display:inline-flex;align-items:center;background-color:var(--terminal-control-bg);border:1px solid var(--color-semantic-background-primary);padding:2px 8px;cursor:default;-webkit-user-select:none;user-select:none}.terminal__taskbar-title{margin-left:4px;color:var(--color-semantic-background-primary)}@media(prefers-contrast:high){.terminal{border-width:3px}.terminal__title{font-weight:700}.terminal__control{border-width:2px}.terminal:focus{outline:3px solid var(--color-semantic-border-focus);outline-offset:2px}}@media(prefers-reduced-motion:reduce){.terminal__cursor{animation:none}}.tabs{display:inline-flex;align-items:center;gap:0;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);box-sizing:border-box}.tabs__tab{position:relative;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;font-family:inherit;font-weight:var(--typography-font-weight-regular);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;transition:color var(--duration-fast, .1s) ease-out,border-color var(--duration-fast, .1s) ease-out,background-color var(--duration-fast, .1s) ease-out,opacity var(--duration-fast, .1s) ease-out,text-shadow var(--duration-fast, .1s) ease-out;color:var(--color-cga-amber, #ffb000);opacity:.7}.tabs__tab:hover:not(:disabled){opacity:1;text-shadow:0 0 4px currentColor}.tabs__tab--active{opacity:1}.tabs__tab--disabled{cursor:not-allowed;opacity:.3}.tabs--underline{position:relative;gap:4px}.tabs--underline .tabs__tab{padding:8px 16px;border-bottom:2px solid transparent}.tabs--underline .tabs__tab--active{border-bottom-color:transparent;color:var(--color-semantic-text-accent)}.tabs--underline .tabs__tab:hover:not(:disabled):not(.tabs__tab--active){border-bottom-color:var(--color-semantic-border-default)}.tabs__indicator{position:absolute;bottom:0;left:0;height:2px;background-color:var(--color-semantic-text-accent);transform:translate(var(--indicator-left, 0));width:var(--indicator-width, 0);transition:transform var(--duration-normal, .2s) cubic-bezier(.175,.885,.32,1.1),width var(--duration-normal, .2s) cubic-bezier(.175,.885,.32,1.1);pointer-events:none}.tabs--pills{gap:4px;padding:4px;background-color:var(--color-semantic-background-secondary);border:1px solid var(--color-semantic-border-default);border-radius:2px}.tabs--pills .tabs__tab{padding:6px 12px;border-radius:2px}.tabs--pills .tabs__tab--active{background-color:var(--color-semantic-background-accent);color:var(--color-semantic-text-secondary);text-shadow:0 0 6px currentColor;box-shadow:inset 0 0 8px var(--color-cga-amber-glow);transition:color var(--duration-fast, .1s) ease-out,background-color var(--duration-normal, .2s) ease-out,text-shadow var(--duration-normal, .2s) ease-out,box-shadow var(--duration-normal, .2s) ease-out}.tabs--pills .tabs__tab:hover:not(:disabled):not(.tabs__tab--active){background-color:var(--color-semantic-background-primary)}.tabs--small .tabs__tab{font-size:var(--typography-font-size-2xs, 10px);padding:4px 8px}.tabs--small.tabs--underline .tabs__tab{padding:4px 10px}.tabs--medium .tabs__tab{font-size:var(--typography-font-size-xs, 12px)}.tabs--large .tabs__tab{font-size:var(--typography-font-size-sm, 14px);padding:10px 20px}.tabs--large.tabs--underline .tabs__tab{padding:10px 20px}.tabs--large.tabs--pills .tabs__tab{padding:8px 16px}.tabs__tab:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}@media(prefers-contrast:high){.tabs--underline .tabs__tab{border-bottom-width:3px}.tabs--pills{border-width:2px}.tabs--pills .tabs__tab--active{text-shadow:none;box-shadow:none}}@media(prefers-reduced-motion:reduce){.tabs__tab,.tabs__indicator,.tabs--pills .tabs__tab--active{transition:none}}.badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);font-weight:var(--typography-font-weight-regular);line-height:1;white-space:nowrap;-webkit-user-select:none;user-select:none;border-radius:2px;text-transform:uppercase;letter-spacing:.05em;box-sizing:border-box;animation:badge-enter var(--duration-fast, .1s) ease-out}@keyframes badge-enter{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.badge--small{font-size:var(--typography-font-size-2xs, 10px);padding:.125rem 6px;min-height:1.125rem;gap:4px}.badge--medium{font-size:var(--typography-font-size-xs, 12px);padding:.25rem 8px;min-height:1.375rem;gap:6px}.badge--default{background-color:var(--color-semantic-background-secondary);color:var(--color-cga-amber, #ffb000);border:1px solid var(--color-semantic-border-default)}.badge--success{background-color:transparent;color:var(--color-cga-bright-green);border:1px solid var(--color-cga-bright-green)}.badge--warning{background-color:transparent;color:var(--color-cga-yellow);border:1px solid var(--color-cga-yellow)}.badge--error{background-color:transparent;color:var(--color-cga-bright-red);border:1px solid var(--color-cga-bright-red)}.badge--info{background-color:transparent;color:var(--color-cga-bright-cyan);border:1px solid var(--color-cga-bright-cyan)}.badge--accent{background-color:var(--color-semantic-background-accent);color:var(--color-semantic-text-secondary);border:1px solid var(--color-semantic-border-default)}.badge__dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.badge--default .badge__dot{background-color:var(--color-cga-amber, #ffb000)}.badge--success .badge__dot{background-color:var(--color-cga-bright-green)}.badge--warning .badge__dot{background-color:var(--color-cga-yellow)}.badge--error .badge__dot{background-color:var(--color-cga-bright-red)}.badge--info .badge__dot{background-color:var(--color-cga-bright-cyan)}.badge--accent .badge__dot{background-color:var(--color-semantic-text-secondary)}.badge__content{display:inline-flex;align-items:center;transform:translateY(1px)}@media(prefers-contrast:high){.badge{border-width:2px}}@media(prefers-reduced-motion:reduce){.badge{transition:none;animation:none}}.switch{display:inline-flex;align-items:center;justify-content:flex-start;padding:0;border:none;background:transparent;cursor:pointer;outline:none;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback)}.switch__track{position:relative;display:inline-flex;align-items:center;width:40px;height:20px;background-color:var(--color-semantic-background-secondary);border:2px solid var(--color-semantic-border-default);border-radius:2px;transition:background-color var(--duration-fast, .1s) ease-out,border-color var(--duration-fast, .1s) ease-out,box-shadow var(--duration-normal, .2s) ease-out}.switch__thumb{position:absolute;left:2px;width:12px;height:12px;background-color:var(--color-cga-amber, #ffb000);border-radius:1px;transition:transform var(--duration-normal, .2s) cubic-bezier(.2,.8,.2,1.4),background-color var(--duration-fast, .1s) ease-out}.switch--checked .switch__track{background-color:var(--color-semantic-background-accent);border-color:var(--color-semantic-border-focus);box-shadow:var(--shadow-glow-xs),0 0 12px 0 var(--color-cga-amber-glow)}.switch--checked .switch__thumb{transform:translate(20px);background-color:var(--color-semantic-text-secondary);box-shadow:0 0 4px var(--color-cga-amber-glow)}.switch:hover:not(.switch--disabled) .switch__track{border-color:var(--color-semantic-border-hover)}.switch:hover:not(.switch--disabled):not(.switch--checked) .switch__thumb{background-color:var(--color-semantic-text-accent)}.switch:focus-visible .switch__track{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.switch--disabled{cursor:not-allowed;opacity:.5}.switch--disabled .switch__track{background-color:var(--color-semantic-background-secondary);border-color:var(--color-semantic-border-disabled)}.switch--disabled .switch__thumb{background-color:var(--color-semantic-text-disabled)}@media(prefers-contrast:high){.switch__track{border-width:3px}.switch--checked .switch__track,.switch--checked .switch__thumb{box-shadow:none}}@media(prefers-reduced-motion:reduce){.switch__track,.switch__thumb{transition:none}.switch--checked .switch__track,.switch--checked .switch__thumb{box-shadow:none}}.breadcrumb{container:breadcrumb / inline-size;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);font-size:var(--typography-font-size-xs);text-transform:uppercase;letter-spacing:.35em}.breadcrumb__list{display:flex;flex-wrap:wrap;align-items:center;gap:8px;list-style:none;margin:0;padding:0}.breadcrumb__item{display:flex;align-items:center;gap:8px}.breadcrumb__link{display:inline-flex;align-items:center;gap:4px;color:var(--color-semantic-text-disabled);text-decoration:none;transition:color .15s ease}.breadcrumb__link:hover{color:var(--color-cga-amber, #ffb000)}.breadcrumb__link:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.breadcrumb__back-arrow{font-size:1em;line-height:1}.breadcrumb__separator{color:var(--color-semantic-text-disabled);opacity:.6;-webkit-user-select:none;user-select:none}.breadcrumb__current{color:var(--color-cga-amber, #ffb000)}@container breadcrumb (min-width: 768px){.breadcrumb__list{font-size:var(--typography-font-size-sm)}}@media(prefers-contrast:high){.breadcrumb__link:focus-visible{outline-width:3px}}@media(prefers-reduced-motion:reduce){.breadcrumb__link{transition:none}}.retro-effects{--retro-intensity: 1;pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999}.retro-effects__scanlines{position:absolute;top:0;right:0;bottom:0;left:0;opacity:calc(.6 * var(--retro-intensity));mix-blend-mode:screen;background:repeating-linear-gradient(to bottom,var(--effects-scanline-light) 0px,var(--effects-scanline-dark) 1px,transparent 2px,transparent 4px);animation:retro-scanline 9s linear infinite;will-change:transform}.retro-effects__glow{position:absolute;top:0;right:0;bottom:0;left:0;opacity:var(--retro-intensity);box-shadow:inset 0 0 200px var(--effects-vignette-glow);background:radial-gradient(ellipse 120% 100% at center,transparent 0%,transparent 50%,var(--effects-vignette-edge) 80%,var(--effects-vignette-corner) 100%)}.retro-effects__flicker{position:absolute;top:0;right:0;bottom:0;left:0;opacity:calc(.04 * var(--retro-intensity));background-color:var(--effects-screen-tint);animation:retro-flicker .5s steps(4) infinite;will-change:opacity}.retro-effects__bloom{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:calc(.5 * var(--retro-intensity));box-shadow:inset 0 0 40px var(--effects-phosphor-glow),inset 0 0 80px var(--effects-bloom-outer);background:radial-gradient(ellipse at center,var(--effects-bloom-center) 0%,transparent 60%)}@keyframes retro-scanline{0%{transform:translateY(0)}to{transform:translateY(12px)}}@keyframes retro-flicker{0%{opacity:calc(.02 * var(--retro-intensity))}50%{opacity:calc(.06 * var(--retro-intensity))}to{opacity:calc(.02 * var(--retro-intensity))}}@keyframes retro-power-off{0%{transform:scale(.95);filter:blur(2px);opacity:1}50%{transform:scaleY(.005) scaleX(1);filter:blur(0);opacity:1}to{transform:scaleY(0) scaleX(0);filter:blur(0);opacity:0}}@keyframes retro-power-on{0%{transform:scaleY(0) scaleX(0);filter:blur(4px) brightness(.3);opacity:1}50%{transform:scaleY(.02) scaleX(1);filter:blur(2px) brightness(.6);opacity:1}to{transform:scaleY(1) scaleX(1);filter:blur(0) brightness(1);opacity:1}}.retro-effects--powering-off{animation:retro-power-off var(--duration-power-off, .4s) ease-in forwards;transform-origin:center center}.retro-effects--powering-on{animation:retro-power-on var(--duration-power-on, .6s) ease-out forwards;transform-origin:center center}.retro-effects--off{transform:scaleY(0) scaleX(0);opacity:0;pointer-events:none}@media(prefers-reduced-motion:reduce){.retro-effects__scanlines{animation:none}.retro-effects__flicker{animation:none;opacity:calc(.03 * var(--retro-intensity))}.retro-effects--powering-off{animation:none;transition:opacity .2s ease-out;opacity:0}.retro-effects--powering-on{animation:none;transition:opacity .3s ease-in;opacity:1}}@media(prefers-contrast:high){.retro-effects{display:none}}.timeline-node{display:inline-flex;align-items:center;gap:var(--spacing-2);font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback)}.timeline-node__marker{display:block;background:var(--color-cga-amber-dim);border:2px solid var(--color-cga-amber-dim);transition:all .15s ease;flex-shrink:0;animation:timeline-node-enter var(--duration-fast, .1s) ease-out}@keyframes timeline-node-enter{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.timeline-node--small .timeline-node__marker{width:8px;height:8px}.timeline-node--medium .timeline-node__marker{width:12px;height:12px}.timeline-node--large .timeline-node__marker{width:16px;height:16px}.timeline-node--circle .timeline-node__marker{border-radius:50%}.timeline-node--square .timeline-node__marker{border-radius:2px}.timeline-node--diamond .timeline-node__marker{transform:rotate(45deg)}.timeline-node--diamond.timeline-node--small .timeline-node__marker{width:7px;height:7px}.timeline-node--diamond.timeline-node--medium .timeline-node__marker{width:10px;height:10px}.timeline-node--diamond.timeline-node--large .timeline-node__marker{width:14px;height:14px}.timeline-node--default .timeline-node__marker{background:var(--color-cga-amber-dim);border-color:var(--color-cga-amber-dim)}.timeline-node--primary .timeline-node__marker{background:var(--color-cga-amber);border-color:var(--color-cga-amber)}.timeline-node--secondary .timeline-node__marker{background:var(--color-cga-amber, #ffb000);border-color:var(--color-cga-amber, #ffb000)}.timeline-node--accent .timeline-node__marker{background:var(--color-semantic-text-accent);border-color:var(--color-semantic-text-accent)}.timeline-node--interactive{cursor:pointer}.timeline-node--interactive:hover .timeline-node__marker{background:var(--color-cga-amber);border-color:var(--color-cga-amber);box-shadow:var(--shadow-glow-sm)}.timeline-node--active .timeline-node__marker{background:var(--color-cga-amber-bright);border-color:var(--color-cga-amber-bright);box-shadow:var(--shadow-glow-sm)}.timeline-node--active.timeline-node--interactive:hover .timeline-node__marker{box-shadow:var(--shadow-glow-md)}.timeline-node--interactive:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.timeline-node__label{color:var(--color-cga-amber);font-size:var(--typography-font-size-xs);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:12ch}.timeline-node--small .timeline-node__label{font-size:var(--typography-font-size-2xs, 10px)}.timeline-node--large .timeline-node__label{font-size:var(--typography-font-size-sm)}.timeline-node--label-left,.timeline-node--label-right{flex-direction:row}.timeline-node--label-top,.timeline-node--label-bottom{flex-direction:column}.timeline-node__label--left,.timeline-node__label--top{order:-1}@media(prefers-reduced-motion:reduce){.timeline-node__marker{transition:none;animation:none}}@media(prefers-contrast:high){.timeline-node__marker{border-width:3px}.timeline-node--interactive:focus-visible{outline-width:3px}}.timeline-zoom-controls{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) 0}.timeline-zoom-controls__level{background:none;border:none;cursor:pointer;padding:0}.timeline-zoom-controls__level:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}@container timeline (max-width: 768px){.timeline-zoom-controls .button{min-width:44px;min-height:44px}.timeline-zoom-controls__level{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}}.timeline-axis{position:relative;padding-left:var(--spacing-6)}.timeline-axis__line{position:absolute;top:0;bottom:0;left:7px;width:2px;background:var(--color-cga-amber-dim)}.timeline-axis__content{position:relative}.tag{display:inline-flex;align-items:center;gap:4px;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);font-weight:var(--typography-font-weight-regular);line-height:1;white-space:nowrap;-webkit-user-select:none;user-select:none;border-radius:2px;box-sizing:border-box;vertical-align:middle}.tag--small{font-size:var(--typography-font-size-2xs, 10px);padding:.125rem 6px;min-height:1.125rem}.tag--medium{font-size:var(--typography-font-size-xs, 12px);padding:.25rem 8px;min-height:1.375rem}.tag--default,.tag--outlined{background:transparent;color:var(--tag-color, var(--color-cga-amber, #ffb000));border:1px solid var(--tag-color, var(--color-semantic-border-default))}.tag--filled{background-color:var(--tag-color, var(--color-semantic-background-accent));color:var(--color-semantic-text-secondary);border:1px solid transparent}.tag--selected{background-color:var(--tag-color, var(--color-semantic-background-accent));color:var(--color-semantic-text-secondary);box-shadow:var(--shadow-glow-xs)}.tag--interactive{cursor:pointer}.tag--interactive:hover:not(.tag--disabled){box-shadow:var(--shadow-glow-xs)}.tag--interactive:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:1px}.tag--disabled{opacity:var(--opacity-50);cursor:not-allowed;pointer-events:none}.tag__content{display:inline-flex;align-items:center;transform:translateY(1px)}.tag__close{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;padding:0;margin:0;font-family:inherit;font-size:inherit;line-height:1;color:inherit;cursor:pointer;opacity:var(--opacity-70)}.tag__close:hover{opacity:1}.tag__close:disabled{cursor:not-allowed;opacity:var(--opacity-30)}.tag--closeable{padding-right:4px}.tag--closeable.tag--small{padding-right:3px}.tag-group{display:flex;flex-wrap:wrap;align-items:center}.tag-group--tight{gap:4px}.tag-group--normal{gap:8px}.tag-group--loose{gap:12px}.tag-group--nowrap{flex-wrap:nowrap;overflow:hidden}@media(prefers-contrast:high){.tag{border-width:2px}.tag--selected{box-shadow:none;border:2px solid currentColor}.tag--interactive:hover:not(.tag--disabled){box-shadow:none;border-width:2px}}@keyframes tag-exit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.tag--closing{animation:tag-exit var(--duration-fast, .1s) ease-in forwards;pointer-events:none}@media(prefers-reduced-motion:reduce){.tag{transition:none}.tag--closing{animation:none}}.timeline-container{container:timeline / inline-size;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);color:var(--color-cga-amber, #ffb000);background:var(--color-semantic-background-primary);padding:var(--spacing-4);min-height:200px}.timeline-container:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:-2px}.timeline-container__empty{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-1);padding:var(--spacing-8) var(--spacing-4);color:var(--color-cga-amber);font-size:var(--typography-font-size-base)}.timeline-container__empty p{margin:0}.timeline-view{display:flex;flex-direction:column;gap:var(--spacing-4)}.timeline-view__bucket{display:flex;flex-direction:column;gap:var(--spacing-2)}.timeline-view__node{flex-shrink:0;margin-left:calc(-1 * var(--spacing-6))}.timeline-view__content{display:flex;flex-direction:column;gap:var(--spacing-3);min-width:0}.timeline-view__entry-card{transition:opacity .2s ease,transform .2s ease}.timeline-view__entry-button{background:none;border:none;color:inherit;font:inherit;cursor:pointer;text-align:left;padding:0;width:100%}.timeline-view__entry-button:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.timeline-view__entry-type{color:var(--color-cga-amber-dim);font-size:var(--typography-font-size-xs);text-transform:uppercase}.timeline-view__entry-preview{color:var(--color-cga-amber, #ffb000);font-size:var(--typography-font-size-sm);line-height:var(--typography-line-height-normal);margin:0}.timeline-view__timestamp{display:block;color:var(--color-cga-amber);font-size:var(--typography-font-size-xs);margin-bottom:var(--spacing-2)}.timeline-view__entry-content{color:var(--color-cga-amber, #ffb000);font-size:var(--typography-font-size-sm);line-height:var(--typography-line-height-normal);white-space:pre-wrap}.timeline-view__entry-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-2)}.timeline-view__bucket-button{display:flex;flex-direction:column;gap:var(--spacing-2);align-items:flex-start;background:none;border:none;color:inherit;font:inherit;cursor:pointer;text-align:left;padding:0;width:100%}.timeline-view__bucket-button:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.timeline-view{animation:timeline-fade-in .2s ease}@keyframes timeline-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@container timeline (max-width: 479px){.timeline-view .timeline-node__label{font-size:var(--typography-font-size-xs)}}@container timeline (min-width: 480px){.timeline-view{gap:var(--spacing-6)}}@container timeline (min-width: 768px){.timeline-view__content{max-width:65ch}}@media(prefers-reduced-motion:reduce){.timeline-view{animation:none}.timeline-view__entry-card{transition:none}}.modal{padding:0;border:none;background:transparent;color:var(--color-cga-amber, #ffb000);max-width:100vw;max-height:100vh}.modal::backdrop{background-color:var(--effects-overlay)}.modal__container{background-color:var(--color-semantic-background-primary);border:2px solid var(--color-cga-yellow);box-shadow:var(--shadow-drop);width:480px;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);display:flex;flex-direction:column;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback)}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4);border-bottom:1px solid var(--color-cga-dark-gray)}.modal__title{margin:0;font-size:var(--typography-font-size-base, 16px);font-weight:400;color:var(--color-cga-yellow);line-height:1.4}.modal__close{display:flex;align-items:center;justify-content:center;background:none;border:none;padding:4px;cursor:pointer;color:var(--color-cga-light-gray)}.modal__close:hover{color:var(--color-cga-yellow)}.modal__close:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}.modal__body{padding:var(--spacing-4);color:var(--color-cga-light-gray);font-size:var(--typography-font-size-sm, 14px);line-height:1.5;overflow-y:auto;flex:1}.modal__footer{display:flex;gap:var(--spacing-2);justify-content:flex-end;padding:var(--spacing-4);border-top:1px solid var(--color-cga-dark-gray);color:var(--color-cga-light-gray)}.modal[open]{animation:modal-crt-enter var(--duration-slow, .4s) ease-out}.modal[open]::backdrop{animation:backdrop-open var(--duration-normal, .2s) ease-out}@keyframes modal-crt-enter{0%{opacity:0;filter:blur(4px) brightness(.3);transform:scale(.95)}to{opacity:1;filter:blur(0) brightness(1);transform:scale(1)}}@keyframes backdrop-open{0%{opacity:0}to{opacity:1}}.modal--closing{animation:modal-crt-exit var(--duration-normal, .2s) ease-in forwards}.modal--closing::backdrop{animation:backdrop-close var(--duration-fast, .1s) ease-in forwards}@keyframes modal-crt-exit{0%{opacity:1;filter:blur(0) brightness(1);transform:scale(1)}to{opacity:0;filter:blur(2px) brightness(.5);transform:scale(.95)}}@keyframes backdrop-close{0%{opacity:1}to{opacity:0}}.modal__close{transition:color var(--duration-fast, .1s) ease-out}@media(prefers-reduced-motion:reduce){.modal[open],.modal[open]::backdrop,.modal--closing,.modal--closing::backdrop{animation:none}.modal__close{transition:none}}@media(prefers-contrast:high){.modal__container{border-width:3px}}.stat{display:flex;flex-direction:column;gap:4px;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);box-sizing:border-box}.stat--small{gap:2px}.stat--small .stat__label{font-size:var(--typography-font-size-2xs, 10px)}.stat--small .stat__value{font-size:var(--typography-font-size-lg, 18px)}.stat--small .stat__trend{font-size:var(--typography-font-size-2xs, 10px)}.stat--medium{gap:4px}.stat--medium .stat__label{font-size:var(--typography-font-size-2xs, 10px)}.stat--medium .stat__value{font-size:var(--typography-font-size-2xl, 24px)}.stat--medium .stat__trend{font-size:var(--typography-font-size-2xs, 10px)}.stat--large{gap:6px}.stat--large .stat__label{font-size:var(--typography-font-size-xs, 12px)}.stat--large .stat__value{font-size:var(--typography-font-size-4xl, 36px)}.stat--large .stat__trend{font-size:var(--typography-font-size-xs, 12px)}.stat__label{color:var(--color-cga-amber, #ffb000);text-transform:uppercase;letter-spacing:.05em;line-height:1.2}.stat__value{color:var(--color-semantic-text-accent);font-weight:var(--typography-font-weight-bold);line-height:1;font-variant-numeric:tabular-nums}.stat__trend{display:inline-flex;align-items:center;gap:4px;line-height:1}.stat__trend--up{color:var(--color-cga-bright-green)}.stat__trend--down{color:var(--color-cga-bright-red)}.stat__trend--neutral{color:var(--color-cga-amber, #ffb000)}.stat__trend-icon{font-size:.8em}.stat__trend-value{font-variant-numeric:tabular-nums}@media(prefers-contrast:high){.stat__value,.stat__trend{font-weight:700}.stat__trend-icon{font-size:1em}}@media(prefers-reduced-motion:reduce){.stat{transition:none}}.filter-bar{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px;padding:4px;background-color:var(--color-semantic-background-secondary);border:1px solid var(--color-semantic-border-default);border-radius:2px;font-family:var(--typography-font-family-primary),var(--typography-font-family-fallback);box-sizing:border-box;max-width:100%}.filter-bar__item{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:transparent;border:1px solid transparent;border-radius:2px;cursor:pointer;font-family:inherit;font-weight:var(--typography-font-weight-regular);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;color:var(--color-cga-amber, #ffb000);opacity:.7;transition:color var(--duration-fast, .1s) ease-out,background-color var(--duration-fast, .1s) ease-out,border-color var(--duration-fast, .1s) ease-out,opacity var(--duration-fast, .1s) ease-out,text-shadow var(--duration-fast, .1s) ease-out,box-shadow var(--duration-fast, .1s) ease-out}.filter-bar__item:hover:not(:disabled){opacity:1;text-shadow:0 0 4px currentColor;border-color:var(--color-semantic-border-default)}.filter-bar__item--active{opacity:1;background-color:var(--color-semantic-background-accent);color:var(--color-semantic-text-secondary);border-color:var(--color-semantic-border-default);box-shadow:inset 0 0 8px var(--color-cga-amber-glow);transition:color var(--duration-fast, .1s) ease-out,background-color var(--duration-normal, .2s) ease-out,border-color var(--duration-normal, .2s) ease-out,text-shadow var(--duration-normal, .2s) ease-out,box-shadow var(--duration-normal, .2s) ease-out}.filter-bar__item--active[style*=--filter-bar-item-color]{background-color:var(--filter-bar-item-color);color:var(--color-semantic-text-secondary);border-color:var(--filter-bar-item-color)}.filter-bar__item--active:hover:not(:disabled){text-shadow:0 0 6px currentColor}.filter-bar__item--disabled{cursor:not-allowed;opacity:.3}.filter-bar__label{display:inline-flex;align-items:center}.filter-bar__count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;font-size:var(--typography-font-size-2xs, 10px);line-height:1;border-radius:2px;background-color:var(--color-semantic-background-primary);color:var(--color-cga-amber, #ffb000);border:1px solid var(--color-semantic-border-default)}.filter-bar__item--active .filter-bar__count{background-color:var(--color-semantic-background-secondary);color:var(--color-cga-amber, #ffb000);border-color:var(--color-semantic-border-default)}.filter-bar--small .filter-bar__item{font-size:var(--typography-font-size-2xs, 10px);padding:2px 6px}.filter-bar--small .filter-bar__count{min-width:14px;height:14px;font-size:9px;padding:0 3px}.filter-bar--medium .filter-bar__item{font-size:var(--typography-font-size-xs, 12px);padding:6px 12px}.filter-bar--large .filter-bar__item{font-size:var(--typography-font-size-sm, 14px);padding:8px 16px}.filter-bar--large .filter-bar__count{min-width:18px;height:18px;font-size:var(--typography-font-size-2xs, 10px);padding:0 5px}.filter-bar__item:focus-visible{outline:2px solid var(--color-semantic-border-focus);outline-offset:2px}@media(prefers-contrast:high){.filter-bar,.filter-bar__item{border-width:2px}.filter-bar__item--active{border-color:var(--color-cga-amber, #ffb000);outline:1px solid var(--color-cga-amber, #ffb000);outline-offset:-1px;text-shadow:none;box-shadow:none}.filter-bar__count{border-width:2px}}@media(prefers-reduced-motion:reduce){.filter-bar__item{transition:none}.filter-bar__item--active{transition:none;text-shadow:none;box-shadow:none}}.inline-expand{display:inline}.inline-expand__trigger{all:unset;display:inline;font:inherit;color:var(--color-semantic-text-accent);cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:var(--border-width-thin, 1px);text-underline-offset:3px;transition:text-shadow var(--duration-fast, .1s) ease-out,color var(--duration-fast, .1s) ease-out}.inline-expand__trigger:hover{color:var(--color-cga-amber);text-shadow:0 0 4px var(--color-cga-amber-glow),0 0 12px var(--color-cga-amber-glow)}.inline-expand__trigger:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-semantic-border-focus);border-radius:var(--border-radius-sm, 2px)}.inline-expand--expanded .inline-expand__trigger{text-decoration-style:solid}.inline-expand__indicator{margin-left:var(--spacing-1, 4px);color:var(--color-cga-amber, #ffb000)}.inline-expand__trigger:active .inline-expand__indicator{text-shadow:0 0 6px var(--color-cga-amber-glow)}.inline-expand__content{display:block;visibility:hidden;opacity:0;filter:blur(1px) brightness(.5);transform:translateY(-.2rem);overflow:clip;max-height:0;transition:opacity var(--duration-fast, .1s) ease-in,visibility var(--duration-fast, .1s),filter var(--duration-fast, .1s) ease-in,transform var(--duration-fast, .1s) ease-in,max-height var(--duration-fast, .1s) ease-in}.inline-expand--expanded .inline-expand__content{visibility:visible;opacity:1;filter:blur(0) brightness(1);transform:translateY(0);max-height:500px;transition:opacity var(--duration-normal, .2s) cubic-bezier(.175,.885,.32,1.1),visibility var(--duration-normal, .2s),filter var(--duration-normal, .2s) cubic-bezier(.175,.885,.32,1.1),transform var(--duration-normal, .2s) cubic-bezier(.175,.885,.32,1.1),max-height var(--duration-normal, .2s) cubic-bezier(.175,.885,.32,1.1)}.inline-expand__inner{display:block;padding:var(--spacing-2, 8px) var(--spacing-3, 12px);margin-top:var(--spacing-1, 4px);border-left:var(--border-width-medium, 2px) solid var(--color-semantic-border-default);font-size:var(--typography-font-size-sm, 14px);line-height:var(--typography-line-height-normal, 1.5);color:var(--color-cga-amber, #ffb000)}.inline-expand__sources{display:flex;flex-wrap:wrap;gap:var(--spacing-2, 8px);margin-top:var(--spacing-2, 8px);padding-top:var(--spacing-2, 8px);border-top:var(--border-width-thin, 1px) solid var(--color-semantic-border-default)}.inline-expand__source-link{display:inline-flex;align-items:center;gap:var(--spacing-1, 4px);font-size:var(--typography-font-size-xs, 12px);color:var(--color-cga-brown);text-decoration:none;transition:color var(--duration-fast, .1s) ease-out}.inline-expand__source-link:hover{color:var(--color-cga-amber)}.inline-expand__source-favicon{width:16px;height:16px;border-radius:var(--border-radius-sm, 2px)}.inline-expand__source-icon{color:var(--color-cga-brown);font-size:var(--typography-font-size-xs, 12px)}.inline-expand__source-title{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}@media(prefers-reduced-motion:reduce){.inline-expand__trigger,.inline-expand__content,.inline-expand--expanded .inline-expand__content,.inline-expand__indicator,.inline-expand__source-link{transition:none}}@media(prefers-contrast:high){.inline-expand__trigger{text-decoration-thickness:2px;font-weight:var(--typography-font-weight-bold, 700)}.inline-expand__trigger:focus-visible{box-shadow:0 0 0 3px var(--color-semantic-border-focus)}.inline-expand__inner{border-left-width:4px}.inline-expand__source-link{text-decoration:underline}}.separator{flex-shrink:0;background-color:var(--color-semantic-border-default)}.separator--horizontal{height:1px;width:100%}.separator--vertical{width:1px;height:100%}@media(prefers-contrast:high){.separator{background-color:var(--color-cga-amber, #ffb000)}}.text-scramble{display:inline}.text-scramble--scrambling{opacity:.9}
|
package/dist/index.es.js
CHANGED
|
@@ -1125,7 +1125,7 @@ const He = ({
|
|
|
1125
1125
|
K,
|
|
1126
1126
|
{
|
|
1127
1127
|
shape: "circle",
|
|
1128
|
-
size: "
|
|
1128
|
+
size: "medium",
|
|
1129
1129
|
variant: "default",
|
|
1130
1130
|
label: a.label,
|
|
1131
1131
|
labelPosition: "right"
|
|
@@ -1143,7 +1143,7 @@ const He = ({
|
|
|
1143
1143
|
K,
|
|
1144
1144
|
{
|
|
1145
1145
|
shape: "circle",
|
|
1146
|
-
size: "
|
|
1146
|
+
size: "medium",
|
|
1147
1147
|
variant: "default",
|
|
1148
1148
|
label: a.label,
|
|
1149
1149
|
labelPosition: "right"
|
|
@@ -1364,8 +1364,8 @@ const me = R.memo(({
|
|
|
1364
1364
|
K,
|
|
1365
1365
|
{
|
|
1366
1366
|
shape: "circle",
|
|
1367
|
-
size: "
|
|
1368
|
-
variant: "
|
|
1367
|
+
size: "medium",
|
|
1368
|
+
variant: "default",
|
|
1369
1369
|
label: i.label,
|
|
1370
1370
|
labelPosition: "right"
|
|
1371
1371
|
}
|
package/dist/index.umd.js
CHANGED
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
${o?"section--expanded":""}
|
|
4
4
|
${s?"section--hover":""}
|
|
5
5
|
${n?"section--active":""}
|
|
6
|
-
`.trim(),children:[e.jsxs("button",{className:"section__header",onClick:d,"aria-expanded":o,children:[e.jsx("div",{className:"section__title",children:r}),e.jsx("div",{className:"section__icon",children:e.jsx(z,{name:o?"Chevron Up":"Chevron Down",size:"S"})})]}),e.jsx("div",{className:"section__content",inert:o?void 0:!0,children:a})]})},me=({sections:r,defaultExpandedIndex:a=-1})=>{const[,t]=c.useState(a),s=(n,l)=>{t(l?n:-1)};return e.jsx("div",{className:"accordion-fill",children:r.map((n,l)=>e.jsx(X,{title:n.title,defaultExpanded:l===a,onToggle:o=>s(l,o),children:n.content},l))})},Y=({variant:r="primary",size:a="medium",type:t="button",disabled:s=!1,loading:n=!1,children:l,onClick:o,className:i="",fullWidth:d=!1,...f})=>{const m=h=>{s||n||o==null||o(h)},u=["button",`button--${r}`,`button--${a}`,s&&"button--disabled",n&&"button--loading",d&&"button--full-width",i].filter(Boolean).join(" ");return e.jsxs("button",{type:t,className:u,onClick:m,disabled:s||n,"aria-disabled":s||n,...f,children:[n&&e.jsx("span",{className:"button__loading-indicator","aria-hidden":"true",children:"█"}),e.jsx("span",{className:`button__content ${n?"button__content--loading":""}`,children:l})]})},R=({title:r,children:a,footer:t,variant:s="default",className:n="",...l})=>{const o=["card",`card--${s}`,n].filter(Boolean).join(" ");return e.jsxs("div",{className:o,...l,children:[r&&e.jsx("div",{className:"card__header",children:e.jsx("span",{className:"card__title",children:r})}),e.jsx("div",{className:"card__body",children:a}),t&&e.jsx("div",{className:"card__footer",children:t})]})},pe=({checked:r,defaultChecked:a,onChange:t,label:s,disabled:n=!1,name:l,value:o,className:i="","aria-label":d,...f})=>{const m=h=>{n||t==null||t(h.target.checked)},u=["checkbox",n&&"checkbox--disabled",i].filter(Boolean).join(" ");return e.jsxs("label",{className:u,children:[e.jsx("input",{type:"checkbox",className:"checkbox__input",checked:r,defaultChecked:a,onChange:m,disabled:n,name:l,value:o,"aria-label":d||s,...f}),e.jsx("span",{className:"checkbox__box","aria-hidden":"true"}),s&&e.jsx("span",{className:"checkbox__label",children:s})]})},he=({prompt:r="C:\\>",onCommand:a,autoFocus:t=!1,className:s="",placeholder:n,disabled:l=!1})=>{const[o,i]=c.useState(""),d=c.useRef(null);c.useEffect(()=>{t&&d.current&&d.current.focus()},[t]);const f=u=>{u.key==="Enter"&&o.trim()&&!l&&(a(o.trim()),i(""))},m=()=>{!l&&d.current&&d.current.focus()};return e.jsxs("div",{className:`command-prompt ${l?"command-prompt--disabled":""} ${s}`.trim(),onClick:m,role:"textbox","aria-label":"Command prompt",children:[e.jsx("span",{className:"command-prompt__prompt","aria-hidden":"true",children:r}),e.jsx("input",{ref:d,className:"command-prompt__input",value:o,onChange:u=>i(u.target.value),onKeyDown:f,autoFocus:t,spellCheck:!1,autoComplete:"off",autoCapitalize:"off",autoCorrect:"off",placeholder:n,disabled:l,"aria-label":"Command input"}),e.jsx("span",{className:"command-prompt__cursor","aria-hidden":"true",children:"█"})]})},L="█",j="░",q="▓",_e="▒";function be(r,a,t){const s=a-r;if(t==="gradient"&&r>0&&r<a){const n=Math.min(2,s),l=s-n,o=(n>=1?q:"")+(n>=2?_e:"");return{filled:L.repeat(r),transition:o,empty:j.repeat(l)}}return{filled:L.repeat(r),transition:"",empty:j.repeat(s)}}function ge(r){return j.repeat(r)}const ve=({value:r=0,max:a=100,indeterminate:t=!1,variant:s="default",size:n="medium",trackStyle:l="block",blocks:o=20,showLabel:i=!1,fullWidth:d=!1,glow:f=!1,valueText:m,className:u="","aria-label":h,...g})=>{const b=Math.min(80,Math.max(3,Math.floor(o))),y=Math.min(100,Math.max(0,r/a*100)),p=Math.round(y/100*b),w=["progress",`progress--${s}`,`progress--${n}`,f&&"progress--glow",d&&"progress--full-width",t&&"progress--indeterminate",l==="bordered"&&"progress--bordered",u].filter(Boolean).join(" "),N={"aria-label":h||`Progress: ${t?"loading":`${Math.round(y)}%`}`};t||(N["aria-valuenow"]=r,N["aria-valuemin"]=0,N["aria-valuemax"]=a),m&&(N["aria-valuetext"]=m);const{...S}=g,_=l==="bordered";if(t){const D=ge(b);return e.jsxs("div",{className:w,role:"progressbar",...N,...S,children:[e.jsxs("span",{className:`progress__track${_?" progress__track--borderless":""}`,children:[_&&e.jsx("span",{className:"progress__bracket",children:"["}),e.jsxs("span",{className:"progress__bar",children:[e.jsx("span",{className:"progress__empty",children:D}),e.jsxs("span",{className:"progress__scanner",children:[q,L,q]})]}),_&&e.jsx("span",{className:"progress__bracket",children:"]"})]}),i&&e.jsx("span",{className:"progress__label",children:"..."})]})}const $=L.repeat(b),k=j.repeat(b),{transition:A}=be(p,b,l);return e.jsxs("div",{className:w,role:"progressbar",...N,...S,children:[e.jsxs("span",{className:`progress__track${_?" progress__track--borderless":""}`,children:[_&&e.jsx("span",{className:"progress__bracket",children:"["}),e.jsxs("span",{className:"progress__bar",children:[e.jsx("span",{className:"progress__empty",children:k}),e.jsx("span",{className:"progress__fill",style:{"--fill-pct":String(y)},children:$}),A&&e.jsx("span",{className:"progress__transition",style:{"--fill-pct":String(y)},children:A})]}),_&&e.jsx("span",{className:"progress__bracket",children:"]"})]}),i&&e.jsxs("span",{className:"progress__label",children:[Math.round(y),"%"]})]})},ee=c.forwardRef(({variant:r="default",className:a="",disabled:t,...s},n)=>{const l=["input",`input--${r}`,t&&"input--disabled",a].filter(Boolean).join(" ");return e.jsx("input",{ref:n,className:l,disabled:t,"aria-invalid":r==="error",...s})});ee.displayName="Input";const Ne=({size:r="medium",title:a="MS-DOS Terminal",state:t="active",resizable:s=!0,minimizable:n=!0,maximizable:l=!0,closeable:o=!0,children:i,onMinimize:d,onMaximize:f,onClose:m,onFocus:u,className:h="",autoFocus:g=!1})=>{const[b,y]=c.useState(t),[p,w]=c.useState(!1),N=c.useRef(null);c.useEffect(()=>{g&&N.current&&N.current.focus()},[g]);const S=()=>{y("minimized"),d==null||d()},_=()=>{w(!p),f==null||f()},$=()=>{m==null||m()},k=()=>{y("active"),u==null||u()},A=D=>{D.altKey&&D.key==="F4"&&o&&(D.preventDefault(),$())};return b==="minimized"?e.jsx("div",{className:`terminal terminal--minimized ${h}`.trim(),onClick:k,role:"button",tabIndex:0,"aria-label":`Restore ${a} window`,onKeyDown:D=>D.key==="Enter"&&k(),children:e.jsxs("div",{className:"terminal__taskbar-item",children:[e.jsx(z,{name:"App",size:"S"}),e.jsx("span",{className:"terminal__taskbar-title",children:a})]})}):e.jsxs("div",{ref:N,className:`terminal terminal--${r} terminal--${b} ${p?"terminal--maximized":""} ${h}`.trim(),tabIndex:0,role:"dialog","aria-label":`${a} terminal window`,onFocus:k,onKeyDown:A,children:[e.jsxs("div",{className:"terminal__title-bar",children:[e.jsxs("div",{className:"terminal__title",children:[e.jsx(z,{name:"App",size:"S","aria-hidden":"true"}),e.jsx("span",{className:"terminal__title-text",children:a})]}),e.jsxs("div",{className:"terminal__controls",children:[n&&e.jsx("button",{className:"terminal__control terminal__control--minimize",onClick:S,"aria-label":"Minimize window",title:"Minimize",children:e.jsx(z,{name:"Cancel",size:"S"})}),l&&e.jsx("button",{className:"terminal__control terminal__control--maximize",onClick:_,"aria-label":p?"Restore window":"Maximize window",title:p?"Restore":"Maximize",children:e.jsx(z,{name:p?"Fullscreen":"Add",size:"S"})}),o&&e.jsx("button",{className:"terminal__control terminal__control--close",onClick:$,"aria-label":"Close window",title:"Close",children:e.jsx(z,{name:"Close",size:"S"})})]})]}),e.jsx("div",{className:"terminal__content",role:"main",children:i||e.jsx("div",{className:"terminal__default-content",children:e.jsxs("div",{className:"terminal__prompt",children:[e.jsx("span",{className:"terminal__path",children:"C:\\\\>"}),e.jsx("span",{className:"terminal__cursor",children:"█"})]})})}),s&&e.jsx("div",{className:"terminal__resize-handle","aria-hidden":"true"})]})},ye=({tabs:r,variant:a="underline",size:t="medium",activeTab:s,defaultActiveTab:n,onTabChange:l,className:o="",...i})=>{var y;const[d,f]=c.useState(n||((y=r[0])==null?void 0:y.id)||""),m=s!==void 0?s:d,u=c.useCallback((p,w)=>{if(w)return;const N=s!==void 0?s:d;s===void 0&&f(p),l==null||l(p,N)},[s,d,l]),h=c.useCallback((p,w)=>{var $;const N=r.filter(k=>!k.disabled),S=N.findIndex(k=>k.id===r[w].id);let _=null;switch(p.key){case"ArrowLeft":case"ArrowUp":p.preventDefault(),_=S>0?S-1:N.length-1;break;case"ArrowRight":case"ArrowDown":p.preventDefault(),_=S<N.length-1?S+1:0;break;case"Home":p.preventDefault(),_=0;break;case"End":p.preventDefault(),_=N.length-1;break}if(_!==null){const k=N[_];u(k.id,k.disabled),($=document.querySelectorAll('[role="tab"]:not([disabled])')[_])==null||$.focus()}},[r,u]),g=c.useRef(null);c.useLayoutEffect(()=>{const p=g.current;if(!p||a!=="underline")return;const w=()=>{const S=p.querySelector(".tabs__tab--active");S&&(p.style.setProperty("--indicator-left",`${S.offsetLeft}px`),p.style.setProperty("--indicator-width",`${S.offsetWidth}px`))};w();const N=new ResizeObserver(w);return N.observe(p),()=>N.disconnect()},[m,a]);const b=["tabs",`tabs--${a}`,`tabs--${t}`,o].filter(Boolean).join(" ");return e.jsxs("div",{className:b,role:"tablist",ref:g,...i,children:[r.map((p,w)=>{const N=m===p.id,S=["tabs__tab",N&&"tabs__tab--active",p.disabled&&"tabs__tab--disabled"].filter(Boolean).join(" ");return e.jsx("button",{role:"tab",id:`tab-${p.id}`,"aria-selected":N,tabIndex:N?0:-1,disabled:p.disabled,className:S,onClick:()=>u(p.id,p.disabled),onKeyDown:_=>h(_,w),children:p.label},p.id)}),a==="underline"&&e.jsx("span",{className:"tabs__indicator","aria-hidden":"true"})]})},M=({variant:r="default",size:a="medium",dot:t=!1,children:s,className:n="",...l})=>{const o=["badge",`badge--${r}`,`badge--${a}`,t&&"badge--with-dot",n].filter(Boolean).join(" ");return e.jsxs("span",{className:o,...l,children:[t&&e.jsx("span",{className:"badge__dot","aria-hidden":"true"}),e.jsx("span",{className:"badge__content",children:s})]})},we=({checked:r,defaultChecked:a=!1,onCheckedChange:t,disabled:s=!1,name:n,value:l,className:o="",...i})=>{const[d,f]=c.useState(a),m=r!==void 0,u=m?r:d,h=()=>{if(s)return;const y=!u;m||f(y),t==null||t(y)},g=y=>{(y.key===" "||y.key==="Enter")&&(y.preventDefault(),h())},b=["switch",u&&"switch--checked",s&&"switch--disabled",o].filter(Boolean).join(" ");return e.jsxs("button",{type:"button",role:"switch","aria-checked":u,"aria-disabled":s,className:b,onClick:h,onKeyDown:g,disabled:s,...i,children:[e.jsx("span",{className:"switch__track",children:e.jsx("span",{className:"switch__thumb"})}),n&&e.jsx("input",{type:"hidden",name:n,value:u?l||"on":""})]})},Ce=({trail:r=[],currentLabel:a,showBackArrow:t=!0,separator:s="/",linkComponent:n,className:l=""})=>{const o=["breadcrumb",l].filter(Boolean).join(" "),i=(d,f)=>{const m=e.jsxs(e.Fragment,{children:[t&&f&&e.jsx("span",{className:"breadcrumb__back-arrow","aria-hidden":"true",children:"<"}),e.jsx("span",{children:d.label})]});return n?e.jsx(n,{href:d.href,className:"breadcrumb__link",children:m}):e.jsx("a",{href:d.href,className:"breadcrumb__link",children:m})};return e.jsx("nav",{"aria-label":"Breadcrumb",className:o,children:e.jsxs("ol",{className:"breadcrumb__list",children:[r.map((d,f)=>{const m=f===r.length-1,u=f<r.length-1;return e.jsxs("li",{className:"breadcrumb__item",children:[i(d,m),u&&e.jsx("span",{className:"breadcrumb__separator","aria-hidden":"true",children:s})]},`${d.href}-${d.label}`)}),r.length>0&&e.jsx("li",{className:"breadcrumb__item",children:e.jsx("span",{className:"breadcrumb__separator","aria-hidden":"true",children:s})}),e.jsx("li",{className:"breadcrumb__item breadcrumb__item--current","aria-current":"page",children:e.jsx("span",{className:"breadcrumb__current",children:a})})]})})},Se=({scanlines:r=!0,glow:a=!0,flicker:t=!0,bloom:s=!1,powered:n=!0,intensity:l=1,className:o="",onPowerStateChange:i,onPowerOn:d,onPowerOff:f})=>{const m=c.useRef(n),[u,h]=c.useState(n?"on":"off");c.useEffect(()=>{const S=m.current;if(m.current=n,S!==n){const _=n?"powering-on":"powering-off";h(_),i==null||i(_)}},[n,i]);const g=()=>{u==="powering-on"?(h("on"),i==null||i("on"),d==null||d()):u==="powering-off"&&(h("off"),i==null||i("off"),f==null||f())},b=S=>{S.animationName!=="retro-power-on"&&S.animationName!=="retro-power-off"||g()},y=S=>{S.propertyName==="opacity"&&(u!=="powering-on"&&u!=="powering-off"||g())},p=["retro-effects",u==="powering-off"&&"retro-effects--powering-off",u==="powering-on"&&"retro-effects--powering-on",u==="off"&&"retro-effects--off",o].filter(Boolean).join(" "),w={"--retro-intensity":l},N=u!=="off";return e.jsx("div",{className:p,style:w,"aria-hidden":"true",onAnimationEnd:b,onTransitionEnd:y,children:N&&e.jsxs(e.Fragment,{children:[r&&e.jsx("div",{className:"retro-effects__scanlines"}),a&&e.jsx("div",{className:"retro-effects__glow"}),t&&e.jsx("div",{className:"retro-effects__flicker"}),s&&e.jsx("div",{className:"retro-effects__bloom"})]})})},B=({shape:r="circle",variant:a="default",isActive:t=!1,label:s,labelPosition:n="right",size:l="medium",className:o="",onClick:i,...d})=>{const f=["timeline-node",`timeline-node--${r}`,`timeline-node--${a}`,`timeline-node--${l}`,`timeline-node--label-${n}`,t&&"timeline-node--active",i&&"timeline-node--interactive",o].filter(Boolean).join(" "),m=()=>{i&&i()},u=h=>{i&&(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),i())};return e.jsxs("div",{className:f,onClick:m,onKeyDown:u,role:i?"button":void 0,tabIndex:i?0:void 0,"aria-pressed":i?t:void 0,...d,children:[s&&n==="left"&&e.jsx("span",{className:"timeline-node__label timeline-node__label--left",children:s}),s&&n==="top"&&e.jsx("span",{className:"timeline-node__label timeline-node__label--top",children:s}),e.jsx("span",{className:"timeline-node__marker","aria-hidden":"true"}),s&&n==="right"&&e.jsx("span",{className:"timeline-node__label timeline-node__label--right",children:s}),s&&n==="bottom"&&e.jsx("span",{className:"timeline-node__label timeline-node__label--bottom",children:s})]})},x=["year","month","day","hour"];function ke({zoomLevel:r,defaultZoomLevel:a="month",onZoomChange:t}={}){const[s,n]=c.useState(a),l=r??s,o=r!==void 0,i=x.indexOf(l),d=i<x.length-1,f=i>0,m=c.useRef(i),u=c.useRef(o),h=c.useRef(t);c.useEffect(()=>{m.current=i,u.current=o,h.current=t});const g=c.useCallback(w=>{var N;u.current||n(w),(N=h.current)==null||N.call(h,w)},[]),b=c.useCallback(()=>{const w=x[m.current+1];w!==void 0&&g(w)},[g]),y=c.useCallback(()=>{const w=x[m.current-1];w!==void 0&&g(w)},[g]),p=c.useCallback(()=>{g(a)},[a,g]);return{zoomLevel:l,zoomIn:b,zoomOut:y,reset:p,canZoomIn:d,canZoomOut:f}}function $e({selectedEntryId:r,defaultSelectedEntryId:a=null,onSelectEntry:t}={}){const[s,n]=c.useState(a),l=r!==void 0,o=r!==void 0?r:s,i=c.useRef(o),d=c.useRef(l),f=c.useRef(t);c.useEffect(()=>{i.current=o,d.current=l,f.current=t});const m=c.useCallback(b=>{var y;d.current||n(b),(y=f.current)==null||y.call(f,b)},[]),u=c.useCallback(b=>{m(b)},[m]),h=c.useCallback(()=>{m(null)},[m]),g=c.useCallback(b=>{var y;d.current?(y=f.current)==null||y.call(f,i.current===b?null:b):n(p=>{var N;const w=p===b?null:b;return(N=f.current)==null||N.call(f,w),w})},[]);return{selectedEntryId:o,select:u,deselect:h,toggle:g}}const Ie=["January","February","March","April","May","June","July","August","September","October","November","December"],Z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function U(r){return new Date(r).getUTCFullYear()}function J(r){return new Date(r).getUTCMonth()}function re(r){return new Date(r).getUTCDate()}function Ee(r){return new Date(r).getUTCHours()}function De(r){return String(r)}function ze(r,a){return`${Ie[a]} ${r}`}function Ae(r,a,t){return`${Z[a]} ${t}`}function Te(r,a,t,s){const n=s>=12?"pm":"am",l=s===0?12:s>12?s-12:s;return`${Z[a]} ${t}, ${l}${n}`}function Be(r){const a=new Date(r),t=Z[a.getUTCMonth()],s=a.getUTCDate(),n=a.getUTCFullYear(),l=a.getUTCHours(),o=a.getUTCMinutes(),i=l>=12?"pm":"am",d=l===0?12:l>12?l-12:l,f=o>0?`:${String(o).padStart(2,"0")}`:"";return`${t} ${s}, ${n} at ${d}${f}${i}`}function Me(r){return new Date(Date.UTC(r,0,1)).toISOString()}function xe(r,a){return new Date(Date.UTC(r,a,1)).toISOString()}function Ke(r,a,t){return new Date(Date.UTC(r,a,t)).toISOString()}function Le(r,a,t,s){return new Date(Date.UTC(r,a,t,s)).toISOString()}function F(r,a,t,s,n){const l=new Map,o=[];for(const i of r){const d=a(i),f=l.get(d);f?f.push(i):(l.set(d,[i]),o.push(d))}o.sort((i,d)=>n==="asc"?i.localeCompare(d):d.localeCompare(i));for(const[,i]of l)i.sort((d,f)=>{const m=d.date.localeCompare(f.date);return n==="asc"?m:-m});return o.map(i=>({label:t(i),periodStart:s(i),entries:l.get(i)??[]}))}function je(r){return String(U(r.date))}function Ue(r){const a=U(r.date),t=J(r.date);return`${a}-${String(t).padStart(2,"0")}`}function Fe(r){const a=U(r.date),t=J(r.date),s=re(r.date);return`${a}-${String(t).padStart(2,"0")}-${String(s).padStart(2,"0")}`}function He(r){const a=U(r.date),t=J(r.date),s=re(r.date),n=Ee(r.date);return`${a}-${String(t).padStart(2,"0")}-${String(s).padStart(2,"0")}-${String(n).padStart(2,"0")}`}function ne(r){return{year:parseInt(r)}}function ae(r){const[a,t]=r.split("-");return{year:parseInt(a),month:parseInt(t)}}function te(r){const[a,t,s]=r.split("-");return{year:parseInt(a),month:parseInt(t),day:parseInt(s)}}function se(r){const[a,t,s,n]=r.split("-");return{year:parseInt(a),month:parseInt(t),day:parseInt(s),hour:parseInt(n)}}function Ve(r,a,t="desc"){if(r.length===0)return[];const s=r.filter(n=>!isNaN(new Date(n.date).getTime()));if(s.length===0)return[];switch(a){case"year":return F(s,je,n=>{const{year:l}=ne(n);return De(l)},n=>{const{year:l}=ne(n);return Me(l)},t);case"month":return F(s,Ue,n=>{const{year:l,month:o}=ae(n);return ze(l,o)},n=>{const{year:l,month:o}=ae(n);return xe(l,o)},t);case"day":return F(s,Fe,n=>{const{year:l,month:o,day:i}=te(n);return Ae(l,o,i)},n=>{const{year:l,month:o,day:i}=te(n);return Ke(l,o,i)},t);case"hour":return F(s,He,n=>{const{year:l,month:o,day:i,hour:d}=se(n);return Te(l,o,i,d)},n=>{const{year:l,month:o,day:i,hour:d}=se(n);return Le(l,o,i,d)},t)}}const Ye=({zoomLevel:r,canZoomIn:a,canZoomOut:t,onZoomIn:s,onZoomOut:n,onReset:l})=>e.jsxs("div",{className:"timeline-zoom-controls",role:"toolbar","aria-label":"Timeline zoom controls",children:[e.jsx(Y,{variant:"secondary",size:"small",onClick:n,disabled:!t,"aria-label":"Zoom out",children:"[-]"}),e.jsx("button",{type:"button",className:"timeline-zoom-controls__level",onClick:l,"aria-label":`Current zoom: ${r}. Click to reset.`,children:e.jsx(M,{variant:"accent",size:"medium",children:r.toUpperCase()})}),e.jsx(Y,{variant:"secondary",size:"small",onClick:s,disabled:!a,"aria-label":"Zoom in",children:"[+]"})]}),qe=({children:r})=>e.jsxs("div",{className:"timeline-axis",children:[e.jsx("div",{className:"timeline-axis__line","aria-hidden":"true"}),e.jsx("div",{className:"timeline-axis__content",children:r})]}),le=c.memo(({buckets:r,onBucketClick:a})=>e.jsx("div",{className:"timeline-view timeline-view--year",role:"list",children:r.map(t=>e.jsx("div",{className:"timeline-view__bucket timeline-view__bucket--year",role:"listitem",children:a?e.jsxs("button",{type:"button",className:"timeline-view__bucket-button",onClick:()=>a(t),children:[e.jsx("div",{className:"timeline-view__node",children:e.jsx(B,{shape:"circle",size:"small",variant:"default",label:t.label,labelPosition:"right"})}),e.jsx("div",{className:"timeline-view__content",children:e.jsxs(M,{variant:"default",size:"small",children:[t.entries.length," ",t.entries.length===1?"entry":"entries"]})})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"timeline-view__node",children:e.jsx(B,{shape:"circle",size:"small",variant:"default",label:t.label,labelPosition:"right"})}),e.jsx("div",{className:"timeline-view__content",children:e.jsxs(M,{variant:"default",size:"small",children:[t.entries.length," ",t.entries.length===1?"entry":"entries"]})})]})},t.periodStart))}));le.displayName="YearView";const H=c.memo(({entry:r,isSelected:a,onSelect:t,footer:s,children:n})=>e.jsx(R,{title:r.title,variant:a?"glow":"default",className:"timeline-view__entry-card",footer:s,children:e.jsx("button",{type:"button",className:"timeline-view__entry-button",onClick:()=>t==null?void 0:t(r.id),"aria-pressed":a,children:n})}));H.displayName="TimelineEntryCard";const ie=c.memo(({buckets:r,selectedEntryId:a,onEntrySelect:t,onBucketClick:s})=>e.jsx("div",{className:"timeline-view timeline-view--month",role:"list",children:r.map(n=>e.jsxs("div",{className:"timeline-view__bucket timeline-view__bucket--month",role:"listitem",children:[e.jsx("div",{className:"timeline-view__node",children:e.jsx(B,{shape:"circle",size:"medium",variant:"default",label:n.label,labelPosition:"right",onClick:()=>s==null?void 0:s(n)})}),e.jsx("div",{className:"timeline-view__content",children:n.entries.map(l=>e.jsx(H,{entry:l,isSelected:a===l.id,onSelect:t,children:e.jsxs("span",{className:"timeline-view__entry-type",children:["[",l.type,"]"]})},l.id))})]},n.periodStart))}));ie.displayName="MonthView";const O=({children:r,variant:a="default",size:t="medium",color:s,selected:n=!1,closeable:l=!1,disabled:o=!1,onClick:i,onClose:d,className:f="","aria-label":m,...u})=>{const h=!!i&&!o,{isClosing:g,triggerClose:b,handleAnimationEnd:y}=Q("tag-exit",d),p=["tag",`tag--${a}`,`tag--${t}`,n&&"tag--selected",o&&"tag--disabled",l&&"tag--closeable",g&&"tag--closing",h&&"tag--interactive",f].filter(Boolean).join(" "),w=k=>{o||((k.key==="Enter"||k.key===" ")&&i&&(k.preventDefault(),i(k)),(k.key==="Delete"||k.key==="Backspace")&&l&&d&&(k.preventDefault(),b()))},N=k=>{k.stopPropagation(),o||b()},S=k=>{o||i==null||i(k)},_=s?{"--tag-color":`var(${s})`}:void 0,$=h?{role:"button",tabIndex:0}:{};return e.jsxs("span",{className:p,style:_,onClick:h?S:void 0,onKeyDown:w,onAnimationEnd:y,"aria-label":m,"aria-selected":n||void 0,"aria-disabled":o||void 0,...$,...u,children:[e.jsx("span",{className:"tag__content",children:r}),l&&e.jsx("button",{className:"tag__close",type:"button","aria-label":`Remove ${typeof r=="string"?r:"tag"}`,tabIndex:-1,onClick:N,disabled:o,children:"[x]"})]})},P=({children:r,gap:a="normal",wrap:t=!0,className:s="","aria-label":n,...l})=>{const o=["tag-group",`tag-group--${a}`,!t&&"tag-group--nowrap",s].filter(Boolean).join(" ");return e.jsx("div",{className:o,role:"group","aria-label":n,...l,children:r})},oe=c.memo(({buckets:r,selectedEntryId:a,onEntrySelect:t})=>e.jsx("div",{className:"timeline-view timeline-view--day",role:"list",children:r.map(s=>e.jsxs("div",{className:"timeline-view__bucket timeline-view__bucket--day",role:"listitem",children:[e.jsx("div",{className:"timeline-view__node",children:e.jsx(B,{shape:"circle",size:"medium",variant:"default",label:s.label,labelPosition:"right"})}),e.jsx("div",{className:"timeline-view__content",children:s.entries.map(n=>e.jsx(H,{entry:n,isSelected:a===n.id,onSelect:t,footer:n.tags.length>0?e.jsx(P,{gap:"tight","aria-label":`Tags for ${n.title}`,children:n.tags.map(l=>e.jsx(O,{size:"small",variant:"outlined",children:l},l))}):void 0,children:e.jsxs("p",{className:"timeline-view__entry-preview",children:[n.content.slice(0,120),n.content.length>120?"...":""]})},n.id))})]},s.periodStart))}));oe.displayName="DayView";const ce=c.memo(({buckets:r,selectedEntryId:a,onEntrySelect:t})=>e.jsx("div",{className:"timeline-view timeline-view--hour",role:"list",children:r.map(s=>e.jsxs("div",{className:"timeline-view__bucket timeline-view__bucket--hour",role:"listitem",children:[e.jsx("div",{className:"timeline-view__node",children:e.jsx(B,{shape:"circle",size:"large",variant:"primary",label:s.label,labelPosition:"right"})}),e.jsx("div",{className:"timeline-view__content",children:s.entries.map(n=>e.jsxs(H,{entry:n,isSelected:a===n.id,onSelect:t,footer:e.jsxs("div",{className:"timeline-view__entry-footer",children:[n.tags.length>0&&e.jsx(P,{gap:"tight","aria-label":`Tags for ${n.title}`,children:n.tags.map(l=>e.jsx(O,{size:"small",variant:"outlined",children:l},l))}),e.jsx(M,{variant:"default",size:"small",children:n.type})]}),children:[e.jsx("time",{className:"timeline-view__timestamp",dateTime:n.date,children:Be(n.date)}),e.jsx("div",{className:"timeline-view__entry-content",children:n.content})]},n.id))})]},s.periodStart))}));ce.displayName="HourView";const Ze=({zoomLevel:r,buckets:a,selectedEntryId:t,onEntrySelect:s,onBucketClick:n})=>{switch(r){case"year":return e.jsx(le,{buckets:a,onBucketClick:n});case"month":return e.jsx(ie,{buckets:a,selectedEntryId:t,onEntrySelect:s,onBucketClick:n});case"day":return e.jsx(oe,{buckets:a,selectedEntryId:t,onEntrySelect:s});case"hour":return e.jsx(ce,{buckets:a,selectedEntryId:t,onEntrySelect:s});default:return r}},Je=({entries:r,zoomLevel:a,defaultZoomLevel:t="month",onZoomChange:s,selectedEntryId:n,defaultSelectedEntryId:l,onSelectEntry:o,sortOrder:i="desc",scrollToZoom:d=!0,keyboardShortcuts:f=!0,...m})=>{const u=c.useRef(null),{zoomLevel:h,zoomIn:g,zoomOut:b,reset:y,canZoomIn:p,canZoomOut:w}=ke({zoomLevel:a,defaultZoomLevel:t,onZoomChange:s}),{selectedEntryId:N,toggle:S,deselect:_}=$e({selectedEntryId:n,defaultSelectedEntryId:l,onSelectEntry:o}),$=c.useMemo(()=>Ve(r,h,i),[r,h,i]);c.useEffect(()=>{if(!d)return;const D=u.current;if(!D)return;let v=null;const I=E=>{!E.ctrlKey&&!E.metaKey||(E.preventDefault(),v===null&&(v=requestAnimationFrame(()=>{E.deltaY<0?g():E.deltaY>0&&b(),v=null})))};return D.addEventListener("wheel",I,{passive:!1}),()=>{D.removeEventListener("wheel",I),v!==null&&cancelAnimationFrame(v)}},[d,g,b]),c.useEffect(()=>{if(!f)return;const D=v=>{var E;if(!((E=u.current)!=null&&E.contains(document.activeElement))&&document.activeElement!==u.current)return;const I=v.ctrlKey||v.metaKey;I&&v.key==="="?(v.preventDefault(),g()):I&&v.key==="-"?(v.preventDefault(),b()):I&&v.key==="0"?(v.preventDefault(),y()):v.key==="Escape"&&(v.preventDefault(),_())};return document.addEventListener("keydown",D),()=>document.removeEventListener("keydown",D)},[f,g,b,y,_]);const k=c.useCallback(D=>{(h==="year"||h==="month")&&g()},[h,g]),A=["timeline-container",m.className].filter(Boolean).join(" ");return e.jsxs("div",{ref:u,...m,className:A,role:"region","aria-label":m["aria-label"]??"Timeline",tabIndex:0,children:[e.jsx(Ye,{zoomLevel:h,canZoomIn:p,canZoomOut:w,onZoomIn:g,onZoomOut:b,onReset:y}),r.length===0?e.jsxs("div",{className:"timeline-container__empty",role:"status",children:[e.jsx("p",{children:"C:\\TIMELINE> No entries found."}),e.jsx("p",{children:"_"})]}):e.jsx(qe,{children:e.jsx(Ze,{zoomLevel:h,buckets:$,selectedEntryId:N,onEntrySelect:S,onBucketClick:k})})]})};function Oe(r){if(typeof document>"u")return null;const a=c.useRef(null);if(!a.current){const t=document.createElement("div");t.setAttribute("data-eidotter-portal",""),a.current=t}return c.useEffect(()=>{const t=a.current;return document.body.appendChild(t),()=>{t.remove()}},[]),c.useEffect(()=>{const t=r.current,s=a.current;if(!t)return;const n=t.closest("[data-theme]");function l(){const i=n==null?void 0:n.getAttribute("data-theme");i?s.setAttribute("data-theme",i):s.removeAttribute("data-theme")}if(l(),!n)return;const o=new MutationObserver(l);return o.observe(n,{attributes:!0,attributeFilter:["data-theme"]}),()=>o.disconnect()},[r]),a.current}const Pe=({isOpen:r,onClose:a,onOpenChange:t,title:s,children:n,footer:l,className:o=""})=>{const i=c.useRef(null),d=c.useRef(r),f=c.useRef(!1),m=c.useRef(null),u=c.useId(),[h,g]=c.useState(!1),b=Oe(m),y=c.useCallback(()=>{const _=i.current;if(!(!_||!_.open||f.current)){if(K()){_.close();return}f.current=!0,g(!0)}},[]),p=c.useCallback(_=>{if(_.animationName==="modal-crt-exit"&&f.current){f.current=!1,g(!1);const $=i.current;$!=null&&$.open&&$.close()}},[]);c.useEffect(()=>{const _=i.current;_&&(r&&f.current?(f.current=!1,g(!1)):r&&!_.open?(f.current=!1,g(!1),_.showModal()):!r&&_.open&&y(),r!==d.current&&(d.current=r,t==null||t(r)))},[r,t,y]);const w=()=>{a()},N=_=>{_.target===i.current&&a()},S=["modal",h?"modal--closing":"",o].filter(Boolean).join(" ");return e.jsxs(e.Fragment,{children:[e.jsx("span",{ref:m,style:{display:"none"},"aria-hidden":"true"}),b&&de.createPortal(e.jsx("dialog",{ref:i,className:S,"aria-labelledby":u,onClose:w,onClick:N,onAnimationEnd:p,children:e.jsxs("div",{className:"modal__container",children:[e.jsxs("header",{className:"modal__header",children:[e.jsx("h2",{id:u,className:"modal__title",children:s}),e.jsx("button",{type:"button",className:"modal__close",onClick:a,"aria-label":"Close modal",children:e.jsx(z,{name:"Close",size:"S"})})]}),e.jsx("div",{className:"modal__body",children:n}),l&&e.jsx("footer",{className:"modal__footer",children:l})]})}),b)]})},We="░▒▓█│┤┐└┴┬├─┼",Ge=4;function W(r,a){const{speed:t=40,characters:s=We,enabled:n=!0,delay:l=0}=a??{},[o,i]=c.useState(()=>{if(!n||K())return r;let u="";for(let h=0;h<r.length;h++)r[h]===" "?u+=" ":u+=s[Math.floor(Math.random()*s.length)];return u}),[d,f]=c.useState(!1),m=c.useRef(0);return c.useEffect(()=>{if(!n||K()){i(r),f(!1);return}let u=0,h=0,g=0,b=l;f(!0);const y=p=>{g||(g=p);const w=p-g;if(b>0){b-=w,g=p,m.current=requestAnimationFrame(y);return}if(w>=t){if(g=p,h++,h>=Ge&&(u++,h=0),u>=r.length){i(r),f(!1);return}let N="";for(let S=0;S<r.length;S++)S<u?N+=r[S]:r[S]===" "?N+=" ":N+=s[Math.floor(Math.random()*s.length)];i(N)}m.current=requestAnimationFrame(y)};return m.current=requestAnimationFrame(y),()=>{m.current&&cancelAnimationFrame(m.current)}},[r,t,s,n,l]),{text:o,isScrambling:d}}const Qe=({label:r,value:a,trend:t,trendValue:s,size:n="medium",scramble:l=!1,className:o="",...i})=>{const{text:d}=W(String(a),{speed:30,enabled:l}),f=l?d:String(a),m=["stat",`stat--${n}`,o].filter(Boolean).join(" "),u=["stat__trend",t&&`stat__trend--${t}`].filter(Boolean).join(" "),h=()=>{switch(t){case"up":return"▲";case"down":return"▼";case"neutral":return"►";default:return null}},g=()=>{switch(t){case"up":return"increasing";case"down":return"decreasing";case"neutral":return"unchanged";default:return""}};return e.jsxs("div",{className:m,...i,children:[e.jsx("span",{className:"stat__label",children:r}),e.jsx("span",{className:"stat__value",children:f}),t&&e.jsxs("span",{className:u,"aria-label":`Trend: ${g()}${s?`, ${s}`:""}`,children:[e.jsx("span",{className:"stat__trend-icon","aria-hidden":"true",children:h()}),s&&e.jsx("span",{className:"stat__trend-value",children:s})]})]})},Xe=({items:r,activeIds:a,defaultActiveIds:t=[],mode:s="multi",showAll:n=!1,allLabel:l="All",size:o="medium",onChange:i,className:d="",...f})=>{const[m,u]=c.useState(t),h=c.useRef(null),g=a!==void 0,b=g?a:m,y=r.filter(v=>!v.disabled).map(v=>v.id),p=b.length===0,w=c.useCallback(v=>{g||u(v),i==null||i(v)},[g,i]),N=c.useCallback(v=>{if(s==="single"){const I=b.includes(v)?[]:[v];w(I)}else{const I=b.includes(v)?b.filter(E=>E!==v):[...b,v];w(I)}},[s,b,w]),S=c.useCallback(()=>{w([])},[w]),_=c.useCallback(()=>h.current?Array.from(h.current.querySelectorAll("button:not([disabled])")):[],[]),$=c.useCallback(v=>{const I=_(),E=I.indexOf(v.target);if(E===-1)return;let T=null;switch(v.key){case"ArrowLeft":case"ArrowUp":v.preventDefault(),T=E>0?E-1:I.length-1;break;case"ArrowRight":case"ArrowDown":v.preventDefault(),T=E<I.length-1?E+1:0;break;case"Home":v.preventDefault(),T=0;break;case"End":v.preventDefault(),T=I.length-1;break}T!==null&&I[T].focus()},[_]),A=n&&p?"__all__":b.length>0?b[0]:n?"__all__":y[0]||null,D=["filter-bar",`filter-bar--${o}`,d].filter(Boolean).join(" ");return e.jsxs("div",{ref:h,className:D,role:"toolbar",onKeyDown:$,...f,children:[n&&e.jsx("button",{type:"button",className:["filter-bar__item","filter-bar__item--all",p&&"filter-bar__item--active"].filter(Boolean).join(" "),"aria-pressed":p,tabIndex:A==="__all__"?0:-1,onClick:S,children:e.jsx("span",{className:"filter-bar__label",children:l})}),r.map(v=>{const I=b.includes(v.id),E=["filter-bar__item",I&&"filter-bar__item--active",v.disabled&&"filter-bar__item--disabled"].filter(Boolean).join(" "),T=I&&v.color?{"--filter-bar-item-color":`var(${v.color})`}:void 0;return e.jsxs("button",{type:"button",className:E,"aria-pressed":I,tabIndex:A===v.id?0:-1,disabled:v.disabled,onClick:()=>N(v.id),style:T,children:[e.jsx("span",{className:"filter-bar__label",children:v.label}),v.count!==void 0&&e.jsx("span",{className:"filter-bar__count","aria-label":`${v.count} items`,children:v.count})]},v.id)})]})},G=r=>{if(!r)return!1;try{const a=new URL(r);return["http:","https:","mailto:"].includes(a.protocol)}catch{return!1}},Re=({children:r,content:a,defaultExpanded:t=!1,expanded:s,onToggle:n,sources:l=[],className:o="",...i})=>{const[d,f]=c.useState(t),[m,u]=c.useState(new Set),h=c.useRef(t),g=c.useId(),b=c.useRef(null),y=s!==void 0,p=y?s:d;p&&(h.current=!0);const w=()=>{const _=!p;y||f(_),n==null||n(_)},N=_=>{var $;_.key==="Escape"&&p&&(_.stopPropagation(),w(),($=b.current)==null||$.focus())},S=["inline-expand",p&&"inline-expand--expanded",o].filter(Boolean).join(" ");return e.jsxs("span",{className:S,onKeyDown:N,...i,children:[e.jsxs("button",{ref:b,type:"button",className:"inline-expand__trigger","aria-expanded":p,"aria-controls":g,onClick:w,children:[r,e.jsx("span",{className:"inline-expand__indicator","aria-hidden":"true",children:p?"[-]":"[+]"})]}),e.jsxs("span",{id:g,className:"inline-expand__content",role:"region",inert:!p,children:[e.jsx("span",{className:"inline-expand__inner",children:a}),l.length>0&&e.jsx("span",{className:"inline-expand__sources",role:"list",children:l.map(_=>e.jsx("span",{className:"inline-expand__source-item",role:"listitem",children:e.jsxs("a",{href:G(_.url)?_.url:void 0,className:"inline-expand__source-link",target:"_blank",rel:"noopener noreferrer","aria-label":`${_.title} (opens external website)`,children:[h.current&&_.favicon&&G(_.favicon)&&!m.has(_.url)?e.jsx("img",{className:"inline-expand__source-favicon",src:_.favicon,alt:"",width:16,height:16,decoding:"async",onError:()=>u($=>new Set($).add(_.url))}):e.jsx("span",{className:"inline-expand__source-icon","aria-hidden":"true",children:"[→]"}),e.jsx("span",{className:"inline-expand__source-title",children:_.title})]})},_.url))})]})]})},er=({orientation:r="horizontal",className:a=""})=>{const t=["separator",`separator--${r}`,a].filter(Boolean).join(" ");return e.jsx("div",{role:"separator","aria-orientation":r,className:t})},rr=({children:r,speed:a,characters:t,delay:s,className:n="",...l})=>{const{text:o,isScrambling:i}=W(r,{speed:a,characters:t,delay:s}),d=["text-scramble",i&&"text-scramble--scrambling",n].filter(Boolean).join(" ");return e.jsx("span",{className:d,...l,children:o})},nr={eidotter:{displayName:"eiDotter"},spacewar:{displayName:"Spacewar!"},rizomorf:{displayName:"rizomorf"},"pomodoke-calendar":{displayName:"PomoDoke Calendar"},keepcoin:{displayName:"KeepCoin"},steuerdash:{displayName:"Steuerdash"},sella:{displayName:"sella"},lifelines:{displayName:"Lifelines"},betamorf:{displayName:"betamorf"}},V={Alert:{origin:"eidotter",consumers:["rizomorf","steuerdash"]},Accordion:{origin:"eidotter",consumers:["rizomorf"]},AccordionFill:{origin:"eidotter",consumers:["rizomorf"]},Badge:{origin:"eidotter",consumers:["rizomorf","steuerdash"]},Breadcrumb:{origin:"rizomorf",consumers:["rizomorf"]},Button:{origin:"eidotter",consumers:["spacewar","rizomorf","pomodoke-calendar","steuerdash"]},Card:{origin:"eidotter",consumers:["rizomorf","steuerdash"]},Checkbox:{origin:"eidotter",consumers:["steuerdash"]},CommandPrompt:{origin:"eidotter",consumers:["rizomorf"]},Icon:{origin:"eidotter",consumers:["rizomorf"]},Input:{origin:"eidotter",consumers:["steuerdash"]},Modal:{origin:"eidotter",consumers:["pomodoke-calendar"]},Progress:{origin:"eidotter",consumers:["steuerdash"],since:"0.3.0"},RetroEffects:{origin:"spacewar",consumers:["spacewar","rizomorf"],originNote:"CRT scanline/glow effects from Spacewar!"},Stat:{origin:"steuerdash",consumers:["steuerdash"],originNote:"Key-value display created for tax dashboard"},Switch:{origin:"eidotter",consumers:[]},FilterBar:{origin:"eidotter",consumers:["lifelines","rizomorf"],originNote:"Multi-select toggle group for faceted filtering"},Tag:{origin:"eidotter",consumers:["lifelines","rizomorf"],originNote:"Interactive labels for tags, categories, and filter chips"},Tabs:{origin:"eidotter",consumers:["steuerdash"]},Terminal:{origin:"eidotter",consumers:["rizomorf"]},TimelineNode:{origin:"lifelines",consumers:["lifelines","rizomorf"],originNote:"Timeline markers from Lifelines project"},InlineExpand:{origin:"rizomorf",consumers:["rizomorf"],originNote:"Inline disclosure widget for expanding text within prose"},Separator:{origin:"rizomorf",consumers:["rizomorf"],originNote:"Horizontal/vertical divider for content separation"},TimelineContainer:{origin:"lifelines",consumers:["lifelines"],originNote:"Multi-zoom timeline with year/month/day/hour views"}};function ar(r){return V[r]}function tr(r){return Object.entries(V).filter(([,a])=>a.origin===r).map(([a])=>a)}function sr(r){return Object.entries(V).filter(([,a])=>a.consumers.includes(r)).map(([a])=>a)}const lr="0.10.0";C.AccordionFill=me,C.Alert=ue,C.Badge=M,C.Breadcrumb=Ce,C.Button=Y,C.Card=R,C.Checkbox=pe,C.CommandPrompt=he,C.FilterBar=Xe,C.Icon=z,C.InlineExpand=Re,C.Input=ee,C.Modal=Pe,C.Progress=ve,C.RetroEffects=Se,C.Section=X,C.Separator=er,C.Stat=Qe,C.Switch=we,C.Tabs=ye,C.Tag=O,C.TagGroup=P,C.Terminal=Ne,C.TextScramble=rr,C.TimelineContainer=Je,C.TimelineNode=B,C.ZOOM_LEVELS=x,C.componentRegistry=V,C.getComponentMeta=ar,C.getComponentsByConsumer=sr,C.getComponentsByOrigin=tr,C.isSafeUrl=G,C.projects=nr,C.useTextScramble=W,C.version=lr,Object.defineProperty(C,Symbol.toStringTag,{value:"Module"})}));
|
|
6
|
+
`.trim(),children:[e.jsxs("button",{className:"section__header",onClick:d,"aria-expanded":o,children:[e.jsx("div",{className:"section__title",children:r}),e.jsx("div",{className:"section__icon",children:e.jsx(z,{name:o?"Chevron Up":"Chevron Down",size:"S"})})]}),e.jsx("div",{className:"section__content",inert:o?void 0:!0,children:a})]})},me=({sections:r,defaultExpandedIndex:a=-1})=>{const[,t]=c.useState(a),s=(n,l)=>{t(l?n:-1)};return e.jsx("div",{className:"accordion-fill",children:r.map((n,l)=>e.jsx(X,{title:n.title,defaultExpanded:l===a,onToggle:o=>s(l,o),children:n.content},l))})},Y=({variant:r="primary",size:a="medium",type:t="button",disabled:s=!1,loading:n=!1,children:l,onClick:o,className:i="",fullWidth:d=!1,...f})=>{const m=h=>{s||n||o==null||o(h)},u=["button",`button--${r}`,`button--${a}`,s&&"button--disabled",n&&"button--loading",d&&"button--full-width",i].filter(Boolean).join(" ");return e.jsxs("button",{type:t,className:u,onClick:m,disabled:s||n,"aria-disabled":s||n,...f,children:[n&&e.jsx("span",{className:"button__loading-indicator","aria-hidden":"true",children:"█"}),e.jsx("span",{className:`button__content ${n?"button__content--loading":""}`,children:l})]})},R=({title:r,children:a,footer:t,variant:s="default",className:n="",...l})=>{const o=["card",`card--${s}`,n].filter(Boolean).join(" ");return e.jsxs("div",{className:o,...l,children:[r&&e.jsx("div",{className:"card__header",children:e.jsx("span",{className:"card__title",children:r})}),e.jsx("div",{className:"card__body",children:a}),t&&e.jsx("div",{className:"card__footer",children:t})]})},pe=({checked:r,defaultChecked:a,onChange:t,label:s,disabled:n=!1,name:l,value:o,className:i="","aria-label":d,...f})=>{const m=h=>{n||t==null||t(h.target.checked)},u=["checkbox",n&&"checkbox--disabled",i].filter(Boolean).join(" ");return e.jsxs("label",{className:u,children:[e.jsx("input",{type:"checkbox",className:"checkbox__input",checked:r,defaultChecked:a,onChange:m,disabled:n,name:l,value:o,"aria-label":d||s,...f}),e.jsx("span",{className:"checkbox__box","aria-hidden":"true"}),s&&e.jsx("span",{className:"checkbox__label",children:s})]})},he=({prompt:r="C:\\>",onCommand:a,autoFocus:t=!1,className:s="",placeholder:n,disabled:l=!1})=>{const[o,i]=c.useState(""),d=c.useRef(null);c.useEffect(()=>{t&&d.current&&d.current.focus()},[t]);const f=u=>{u.key==="Enter"&&o.trim()&&!l&&(a(o.trim()),i(""))},m=()=>{!l&&d.current&&d.current.focus()};return e.jsxs("div",{className:`command-prompt ${l?"command-prompt--disabled":""} ${s}`.trim(),onClick:m,role:"textbox","aria-label":"Command prompt",children:[e.jsx("span",{className:"command-prompt__prompt","aria-hidden":"true",children:r}),e.jsx("input",{ref:d,className:"command-prompt__input",value:o,onChange:u=>i(u.target.value),onKeyDown:f,autoFocus:t,spellCheck:!1,autoComplete:"off",autoCapitalize:"off",autoCorrect:"off",placeholder:n,disabled:l,"aria-label":"Command input"}),e.jsx("span",{className:"command-prompt__cursor","aria-hidden":"true",children:"█"})]})},L="█",j="░",q="▓",_e="▒";function be(r,a,t){const s=a-r;if(t==="gradient"&&r>0&&r<a){const n=Math.min(2,s),l=s-n,o=(n>=1?q:"")+(n>=2?_e:"");return{filled:L.repeat(r),transition:o,empty:j.repeat(l)}}return{filled:L.repeat(r),transition:"",empty:j.repeat(s)}}function ge(r){return j.repeat(r)}const ve=({value:r=0,max:a=100,indeterminate:t=!1,variant:s="default",size:n="medium",trackStyle:l="block",blocks:o=20,showLabel:i=!1,fullWidth:d=!1,glow:f=!1,valueText:m,className:u="","aria-label":h,...g})=>{const b=Math.min(80,Math.max(3,Math.floor(o))),y=Math.min(100,Math.max(0,r/a*100)),p=Math.round(y/100*b),w=["progress",`progress--${s}`,`progress--${n}`,f&&"progress--glow",d&&"progress--full-width",t&&"progress--indeterminate",l==="bordered"&&"progress--bordered",u].filter(Boolean).join(" "),N={"aria-label":h||`Progress: ${t?"loading":`${Math.round(y)}%`}`};t||(N["aria-valuenow"]=r,N["aria-valuemin"]=0,N["aria-valuemax"]=a),m&&(N["aria-valuetext"]=m);const{...S}=g,_=l==="bordered";if(t){const D=ge(b);return e.jsxs("div",{className:w,role:"progressbar",...N,...S,children:[e.jsxs("span",{className:`progress__track${_?" progress__track--borderless":""}`,children:[_&&e.jsx("span",{className:"progress__bracket",children:"["}),e.jsxs("span",{className:"progress__bar",children:[e.jsx("span",{className:"progress__empty",children:D}),e.jsxs("span",{className:"progress__scanner",children:[q,L,q]})]}),_&&e.jsx("span",{className:"progress__bracket",children:"]"})]}),i&&e.jsx("span",{className:"progress__label",children:"..."})]})}const $=L.repeat(b),k=j.repeat(b),{transition:A}=be(p,b,l);return e.jsxs("div",{className:w,role:"progressbar",...N,...S,children:[e.jsxs("span",{className:`progress__track${_?" progress__track--borderless":""}`,children:[_&&e.jsx("span",{className:"progress__bracket",children:"["}),e.jsxs("span",{className:"progress__bar",children:[e.jsx("span",{className:"progress__empty",children:k}),e.jsx("span",{className:"progress__fill",style:{"--fill-pct":String(y)},children:$}),A&&e.jsx("span",{className:"progress__transition",style:{"--fill-pct":String(y)},children:A})]}),_&&e.jsx("span",{className:"progress__bracket",children:"]"})]}),i&&e.jsxs("span",{className:"progress__label",children:[Math.round(y),"%"]})]})},ee=c.forwardRef(({variant:r="default",className:a="",disabled:t,...s},n)=>{const l=["input",`input--${r}`,t&&"input--disabled",a].filter(Boolean).join(" ");return e.jsx("input",{ref:n,className:l,disabled:t,"aria-invalid":r==="error",...s})});ee.displayName="Input";const Ne=({size:r="medium",title:a="MS-DOS Terminal",state:t="active",resizable:s=!0,minimizable:n=!0,maximizable:l=!0,closeable:o=!0,children:i,onMinimize:d,onMaximize:f,onClose:m,onFocus:u,className:h="",autoFocus:g=!1})=>{const[b,y]=c.useState(t),[p,w]=c.useState(!1),N=c.useRef(null);c.useEffect(()=>{g&&N.current&&N.current.focus()},[g]);const S=()=>{y("minimized"),d==null||d()},_=()=>{w(!p),f==null||f()},$=()=>{m==null||m()},k=()=>{y("active"),u==null||u()},A=D=>{D.altKey&&D.key==="F4"&&o&&(D.preventDefault(),$())};return b==="minimized"?e.jsx("div",{className:`terminal terminal--minimized ${h}`.trim(),onClick:k,role:"button",tabIndex:0,"aria-label":`Restore ${a} window`,onKeyDown:D=>D.key==="Enter"&&k(),children:e.jsxs("div",{className:"terminal__taskbar-item",children:[e.jsx(z,{name:"App",size:"S"}),e.jsx("span",{className:"terminal__taskbar-title",children:a})]})}):e.jsxs("div",{ref:N,className:`terminal terminal--${r} terminal--${b} ${p?"terminal--maximized":""} ${h}`.trim(),tabIndex:0,role:"dialog","aria-label":`${a} terminal window`,onFocus:k,onKeyDown:A,children:[e.jsxs("div",{className:"terminal__title-bar",children:[e.jsxs("div",{className:"terminal__title",children:[e.jsx(z,{name:"App",size:"S","aria-hidden":"true"}),e.jsx("span",{className:"terminal__title-text",children:a})]}),e.jsxs("div",{className:"terminal__controls",children:[n&&e.jsx("button",{className:"terminal__control terminal__control--minimize",onClick:S,"aria-label":"Minimize window",title:"Minimize",children:e.jsx(z,{name:"Cancel",size:"S"})}),l&&e.jsx("button",{className:"terminal__control terminal__control--maximize",onClick:_,"aria-label":p?"Restore window":"Maximize window",title:p?"Restore":"Maximize",children:e.jsx(z,{name:p?"Fullscreen":"Add",size:"S"})}),o&&e.jsx("button",{className:"terminal__control terminal__control--close",onClick:$,"aria-label":"Close window",title:"Close",children:e.jsx(z,{name:"Close",size:"S"})})]})]}),e.jsx("div",{className:"terminal__content",role:"main",children:i||e.jsx("div",{className:"terminal__default-content",children:e.jsxs("div",{className:"terminal__prompt",children:[e.jsx("span",{className:"terminal__path",children:"C:\\\\>"}),e.jsx("span",{className:"terminal__cursor",children:"█"})]})})}),s&&e.jsx("div",{className:"terminal__resize-handle","aria-hidden":"true"})]})},ye=({tabs:r,variant:a="underline",size:t="medium",activeTab:s,defaultActiveTab:n,onTabChange:l,className:o="",...i})=>{var y;const[d,f]=c.useState(n||((y=r[0])==null?void 0:y.id)||""),m=s!==void 0?s:d,u=c.useCallback((p,w)=>{if(w)return;const N=s!==void 0?s:d;s===void 0&&f(p),l==null||l(p,N)},[s,d,l]),h=c.useCallback((p,w)=>{var $;const N=r.filter(k=>!k.disabled),S=N.findIndex(k=>k.id===r[w].id);let _=null;switch(p.key){case"ArrowLeft":case"ArrowUp":p.preventDefault(),_=S>0?S-1:N.length-1;break;case"ArrowRight":case"ArrowDown":p.preventDefault(),_=S<N.length-1?S+1:0;break;case"Home":p.preventDefault(),_=0;break;case"End":p.preventDefault(),_=N.length-1;break}if(_!==null){const k=N[_];u(k.id,k.disabled),($=document.querySelectorAll('[role="tab"]:not([disabled])')[_])==null||$.focus()}},[r,u]),g=c.useRef(null);c.useLayoutEffect(()=>{const p=g.current;if(!p||a!=="underline")return;const w=()=>{const S=p.querySelector(".tabs__tab--active");S&&(p.style.setProperty("--indicator-left",`${S.offsetLeft}px`),p.style.setProperty("--indicator-width",`${S.offsetWidth}px`))};w();const N=new ResizeObserver(w);return N.observe(p),()=>N.disconnect()},[m,a]);const b=["tabs",`tabs--${a}`,`tabs--${t}`,o].filter(Boolean).join(" ");return e.jsxs("div",{className:b,role:"tablist",ref:g,...i,children:[r.map((p,w)=>{const N=m===p.id,S=["tabs__tab",N&&"tabs__tab--active",p.disabled&&"tabs__tab--disabled"].filter(Boolean).join(" ");return e.jsx("button",{role:"tab",id:`tab-${p.id}`,"aria-selected":N,tabIndex:N?0:-1,disabled:p.disabled,className:S,onClick:()=>u(p.id,p.disabled),onKeyDown:_=>h(_,w),children:p.label},p.id)}),a==="underline"&&e.jsx("span",{className:"tabs__indicator","aria-hidden":"true"})]})},M=({variant:r="default",size:a="medium",dot:t=!1,children:s,className:n="",...l})=>{const o=["badge",`badge--${r}`,`badge--${a}`,t&&"badge--with-dot",n].filter(Boolean).join(" ");return e.jsxs("span",{className:o,...l,children:[t&&e.jsx("span",{className:"badge__dot","aria-hidden":"true"}),e.jsx("span",{className:"badge__content",children:s})]})},we=({checked:r,defaultChecked:a=!1,onCheckedChange:t,disabled:s=!1,name:n,value:l,className:o="",...i})=>{const[d,f]=c.useState(a),m=r!==void 0,u=m?r:d,h=()=>{if(s)return;const y=!u;m||f(y),t==null||t(y)},g=y=>{(y.key===" "||y.key==="Enter")&&(y.preventDefault(),h())},b=["switch",u&&"switch--checked",s&&"switch--disabled",o].filter(Boolean).join(" ");return e.jsxs("button",{type:"button",role:"switch","aria-checked":u,"aria-disabled":s,className:b,onClick:h,onKeyDown:g,disabled:s,...i,children:[e.jsx("span",{className:"switch__track",children:e.jsx("span",{className:"switch__thumb"})}),n&&e.jsx("input",{type:"hidden",name:n,value:u?l||"on":""})]})},Ce=({trail:r=[],currentLabel:a,showBackArrow:t=!0,separator:s="/",linkComponent:n,className:l=""})=>{const o=["breadcrumb",l].filter(Boolean).join(" "),i=(d,f)=>{const m=e.jsxs(e.Fragment,{children:[t&&f&&e.jsx("span",{className:"breadcrumb__back-arrow","aria-hidden":"true",children:"<"}),e.jsx("span",{children:d.label})]});return n?e.jsx(n,{href:d.href,className:"breadcrumb__link",children:m}):e.jsx("a",{href:d.href,className:"breadcrumb__link",children:m})};return e.jsx("nav",{"aria-label":"Breadcrumb",className:o,children:e.jsxs("ol",{className:"breadcrumb__list",children:[r.map((d,f)=>{const m=f===r.length-1,u=f<r.length-1;return e.jsxs("li",{className:"breadcrumb__item",children:[i(d,m),u&&e.jsx("span",{className:"breadcrumb__separator","aria-hidden":"true",children:s})]},`${d.href}-${d.label}`)}),r.length>0&&e.jsx("li",{className:"breadcrumb__item",children:e.jsx("span",{className:"breadcrumb__separator","aria-hidden":"true",children:s})}),e.jsx("li",{className:"breadcrumb__item breadcrumb__item--current","aria-current":"page",children:e.jsx("span",{className:"breadcrumb__current",children:a})})]})})},Se=({scanlines:r=!0,glow:a=!0,flicker:t=!0,bloom:s=!1,powered:n=!0,intensity:l=1,className:o="",onPowerStateChange:i,onPowerOn:d,onPowerOff:f})=>{const m=c.useRef(n),[u,h]=c.useState(n?"on":"off");c.useEffect(()=>{const S=m.current;if(m.current=n,S!==n){const _=n?"powering-on":"powering-off";h(_),i==null||i(_)}},[n,i]);const g=()=>{u==="powering-on"?(h("on"),i==null||i("on"),d==null||d()):u==="powering-off"&&(h("off"),i==null||i("off"),f==null||f())},b=S=>{S.animationName!=="retro-power-on"&&S.animationName!=="retro-power-off"||g()},y=S=>{S.propertyName==="opacity"&&(u!=="powering-on"&&u!=="powering-off"||g())},p=["retro-effects",u==="powering-off"&&"retro-effects--powering-off",u==="powering-on"&&"retro-effects--powering-on",u==="off"&&"retro-effects--off",o].filter(Boolean).join(" "),w={"--retro-intensity":l},N=u!=="off";return e.jsx("div",{className:p,style:w,"aria-hidden":"true",onAnimationEnd:b,onTransitionEnd:y,children:N&&e.jsxs(e.Fragment,{children:[r&&e.jsx("div",{className:"retro-effects__scanlines"}),a&&e.jsx("div",{className:"retro-effects__glow"}),t&&e.jsx("div",{className:"retro-effects__flicker"}),s&&e.jsx("div",{className:"retro-effects__bloom"})]})})},B=({shape:r="circle",variant:a="default",isActive:t=!1,label:s,labelPosition:n="right",size:l="medium",className:o="",onClick:i,...d})=>{const f=["timeline-node",`timeline-node--${r}`,`timeline-node--${a}`,`timeline-node--${l}`,`timeline-node--label-${n}`,t&&"timeline-node--active",i&&"timeline-node--interactive",o].filter(Boolean).join(" "),m=()=>{i&&i()},u=h=>{i&&(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),i())};return e.jsxs("div",{className:f,onClick:m,onKeyDown:u,role:i?"button":void 0,tabIndex:i?0:void 0,"aria-pressed":i?t:void 0,...d,children:[s&&n==="left"&&e.jsx("span",{className:"timeline-node__label timeline-node__label--left",children:s}),s&&n==="top"&&e.jsx("span",{className:"timeline-node__label timeline-node__label--top",children:s}),e.jsx("span",{className:"timeline-node__marker","aria-hidden":"true"}),s&&n==="right"&&e.jsx("span",{className:"timeline-node__label timeline-node__label--right",children:s}),s&&n==="bottom"&&e.jsx("span",{className:"timeline-node__label timeline-node__label--bottom",children:s})]})},x=["year","month","day","hour"];function ke({zoomLevel:r,defaultZoomLevel:a="month",onZoomChange:t}={}){const[s,n]=c.useState(a),l=r??s,o=r!==void 0,i=x.indexOf(l),d=i<x.length-1,f=i>0,m=c.useRef(i),u=c.useRef(o),h=c.useRef(t);c.useEffect(()=>{m.current=i,u.current=o,h.current=t});const g=c.useCallback(w=>{var N;u.current||n(w),(N=h.current)==null||N.call(h,w)},[]),b=c.useCallback(()=>{const w=x[m.current+1];w!==void 0&&g(w)},[g]),y=c.useCallback(()=>{const w=x[m.current-1];w!==void 0&&g(w)},[g]),p=c.useCallback(()=>{g(a)},[a,g]);return{zoomLevel:l,zoomIn:b,zoomOut:y,reset:p,canZoomIn:d,canZoomOut:f}}function $e({selectedEntryId:r,defaultSelectedEntryId:a=null,onSelectEntry:t}={}){const[s,n]=c.useState(a),l=r!==void 0,o=r!==void 0?r:s,i=c.useRef(o),d=c.useRef(l),f=c.useRef(t);c.useEffect(()=>{i.current=o,d.current=l,f.current=t});const m=c.useCallback(b=>{var y;d.current||n(b),(y=f.current)==null||y.call(f,b)},[]),u=c.useCallback(b=>{m(b)},[m]),h=c.useCallback(()=>{m(null)},[m]),g=c.useCallback(b=>{var y;d.current?(y=f.current)==null||y.call(f,i.current===b?null:b):n(p=>{var N;const w=p===b?null:b;return(N=f.current)==null||N.call(f,w),w})},[]);return{selectedEntryId:o,select:u,deselect:h,toggle:g}}const Ie=["January","February","March","April","May","June","July","August","September","October","November","December"],Z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function U(r){return new Date(r).getUTCFullYear()}function J(r){return new Date(r).getUTCMonth()}function re(r){return new Date(r).getUTCDate()}function Ee(r){return new Date(r).getUTCHours()}function De(r){return String(r)}function ze(r,a){return`${Ie[a]} ${r}`}function Ae(r,a,t){return`${Z[a]} ${t}`}function Te(r,a,t,s){const n=s>=12?"pm":"am",l=s===0?12:s>12?s-12:s;return`${Z[a]} ${t}, ${l}${n}`}function Be(r){const a=new Date(r),t=Z[a.getUTCMonth()],s=a.getUTCDate(),n=a.getUTCFullYear(),l=a.getUTCHours(),o=a.getUTCMinutes(),i=l>=12?"pm":"am",d=l===0?12:l>12?l-12:l,f=o>0?`:${String(o).padStart(2,"0")}`:"";return`${t} ${s}, ${n} at ${d}${f}${i}`}function Me(r){return new Date(Date.UTC(r,0,1)).toISOString()}function xe(r,a){return new Date(Date.UTC(r,a,1)).toISOString()}function Ke(r,a,t){return new Date(Date.UTC(r,a,t)).toISOString()}function Le(r,a,t,s){return new Date(Date.UTC(r,a,t,s)).toISOString()}function F(r,a,t,s,n){const l=new Map,o=[];for(const i of r){const d=a(i),f=l.get(d);f?f.push(i):(l.set(d,[i]),o.push(d))}o.sort((i,d)=>n==="asc"?i.localeCompare(d):d.localeCompare(i));for(const[,i]of l)i.sort((d,f)=>{const m=d.date.localeCompare(f.date);return n==="asc"?m:-m});return o.map(i=>({label:t(i),periodStart:s(i),entries:l.get(i)??[]}))}function je(r){return String(U(r.date))}function Ue(r){const a=U(r.date),t=J(r.date);return`${a}-${String(t).padStart(2,"0")}`}function Fe(r){const a=U(r.date),t=J(r.date),s=re(r.date);return`${a}-${String(t).padStart(2,"0")}-${String(s).padStart(2,"0")}`}function He(r){const a=U(r.date),t=J(r.date),s=re(r.date),n=Ee(r.date);return`${a}-${String(t).padStart(2,"0")}-${String(s).padStart(2,"0")}-${String(n).padStart(2,"0")}`}function ne(r){return{year:parseInt(r)}}function ae(r){const[a,t]=r.split("-");return{year:parseInt(a),month:parseInt(t)}}function te(r){const[a,t,s]=r.split("-");return{year:parseInt(a),month:parseInt(t),day:parseInt(s)}}function se(r){const[a,t,s,n]=r.split("-");return{year:parseInt(a),month:parseInt(t),day:parseInt(s),hour:parseInt(n)}}function Ve(r,a,t="desc"){if(r.length===0)return[];const s=r.filter(n=>!isNaN(new Date(n.date).getTime()));if(s.length===0)return[];switch(a){case"year":return F(s,je,n=>{const{year:l}=ne(n);return De(l)},n=>{const{year:l}=ne(n);return Me(l)},t);case"month":return F(s,Ue,n=>{const{year:l,month:o}=ae(n);return ze(l,o)},n=>{const{year:l,month:o}=ae(n);return xe(l,o)},t);case"day":return F(s,Fe,n=>{const{year:l,month:o,day:i}=te(n);return Ae(l,o,i)},n=>{const{year:l,month:o,day:i}=te(n);return Ke(l,o,i)},t);case"hour":return F(s,He,n=>{const{year:l,month:o,day:i,hour:d}=se(n);return Te(l,o,i,d)},n=>{const{year:l,month:o,day:i,hour:d}=se(n);return Le(l,o,i,d)},t)}}const Ye=({zoomLevel:r,canZoomIn:a,canZoomOut:t,onZoomIn:s,onZoomOut:n,onReset:l})=>e.jsxs("div",{className:"timeline-zoom-controls",role:"toolbar","aria-label":"Timeline zoom controls",children:[e.jsx(Y,{variant:"secondary",size:"small",onClick:n,disabled:!t,"aria-label":"Zoom out",children:"[-]"}),e.jsx("button",{type:"button",className:"timeline-zoom-controls__level",onClick:l,"aria-label":`Current zoom: ${r}. Click to reset.`,children:e.jsx(M,{variant:"accent",size:"medium",children:r.toUpperCase()})}),e.jsx(Y,{variant:"secondary",size:"small",onClick:s,disabled:!a,"aria-label":"Zoom in",children:"[+]"})]}),qe=({children:r})=>e.jsxs("div",{className:"timeline-axis",children:[e.jsx("div",{className:"timeline-axis__line","aria-hidden":"true"}),e.jsx("div",{className:"timeline-axis__content",children:r})]}),le=c.memo(({buckets:r,onBucketClick:a})=>e.jsx("div",{className:"timeline-view timeline-view--year",role:"list",children:r.map(t=>e.jsx("div",{className:"timeline-view__bucket timeline-view__bucket--year",role:"listitem",children:a?e.jsxs("button",{type:"button",className:"timeline-view__bucket-button",onClick:()=>a(t),children:[e.jsx("div",{className:"timeline-view__node",children:e.jsx(B,{shape:"circle",size:"medium",variant:"default",label:t.label,labelPosition:"right"})}),e.jsx("div",{className:"timeline-view__content",children:e.jsxs(M,{variant:"default",size:"small",children:[t.entries.length," ",t.entries.length===1?"entry":"entries"]})})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"timeline-view__node",children:e.jsx(B,{shape:"circle",size:"medium",variant:"default",label:t.label,labelPosition:"right"})}),e.jsx("div",{className:"timeline-view__content",children:e.jsxs(M,{variant:"default",size:"small",children:[t.entries.length," ",t.entries.length===1?"entry":"entries"]})})]})},t.periodStart))}));le.displayName="YearView";const H=c.memo(({entry:r,isSelected:a,onSelect:t,footer:s,children:n})=>e.jsx(R,{title:r.title,variant:a?"glow":"default",className:"timeline-view__entry-card",footer:s,children:e.jsx("button",{type:"button",className:"timeline-view__entry-button",onClick:()=>t==null?void 0:t(r.id),"aria-pressed":a,children:n})}));H.displayName="TimelineEntryCard";const ie=c.memo(({buckets:r,selectedEntryId:a,onEntrySelect:t,onBucketClick:s})=>e.jsx("div",{className:"timeline-view timeline-view--month",role:"list",children:r.map(n=>e.jsxs("div",{className:"timeline-view__bucket timeline-view__bucket--month",role:"listitem",children:[e.jsx("div",{className:"timeline-view__node",children:e.jsx(B,{shape:"circle",size:"medium",variant:"default",label:n.label,labelPosition:"right",onClick:()=>s==null?void 0:s(n)})}),e.jsx("div",{className:"timeline-view__content",children:n.entries.map(l=>e.jsx(H,{entry:l,isSelected:a===l.id,onSelect:t,children:e.jsxs("span",{className:"timeline-view__entry-type",children:["[",l.type,"]"]})},l.id))})]},n.periodStart))}));ie.displayName="MonthView";const O=({children:r,variant:a="default",size:t="medium",color:s,selected:n=!1,closeable:l=!1,disabled:o=!1,onClick:i,onClose:d,className:f="","aria-label":m,...u})=>{const h=!!i&&!o,{isClosing:g,triggerClose:b,handleAnimationEnd:y}=Q("tag-exit",d),p=["tag",`tag--${a}`,`tag--${t}`,n&&"tag--selected",o&&"tag--disabled",l&&"tag--closeable",g&&"tag--closing",h&&"tag--interactive",f].filter(Boolean).join(" "),w=k=>{o||((k.key==="Enter"||k.key===" ")&&i&&(k.preventDefault(),i(k)),(k.key==="Delete"||k.key==="Backspace")&&l&&d&&(k.preventDefault(),b()))},N=k=>{k.stopPropagation(),o||b()},S=k=>{o||i==null||i(k)},_=s?{"--tag-color":`var(${s})`}:void 0,$=h?{role:"button",tabIndex:0}:{};return e.jsxs("span",{className:p,style:_,onClick:h?S:void 0,onKeyDown:w,onAnimationEnd:y,"aria-label":m,"aria-selected":n||void 0,"aria-disabled":o||void 0,...$,...u,children:[e.jsx("span",{className:"tag__content",children:r}),l&&e.jsx("button",{className:"tag__close",type:"button","aria-label":`Remove ${typeof r=="string"?r:"tag"}`,tabIndex:-1,onClick:N,disabled:o,children:"[x]"})]})},P=({children:r,gap:a="normal",wrap:t=!0,className:s="","aria-label":n,...l})=>{const o=["tag-group",`tag-group--${a}`,!t&&"tag-group--nowrap",s].filter(Boolean).join(" ");return e.jsx("div",{className:o,role:"group","aria-label":n,...l,children:r})},oe=c.memo(({buckets:r,selectedEntryId:a,onEntrySelect:t})=>e.jsx("div",{className:"timeline-view timeline-view--day",role:"list",children:r.map(s=>e.jsxs("div",{className:"timeline-view__bucket timeline-view__bucket--day",role:"listitem",children:[e.jsx("div",{className:"timeline-view__node",children:e.jsx(B,{shape:"circle",size:"medium",variant:"default",label:s.label,labelPosition:"right"})}),e.jsx("div",{className:"timeline-view__content",children:s.entries.map(n=>e.jsx(H,{entry:n,isSelected:a===n.id,onSelect:t,footer:n.tags.length>0?e.jsx(P,{gap:"tight","aria-label":`Tags for ${n.title}`,children:n.tags.map(l=>e.jsx(O,{size:"small",variant:"outlined",children:l},l))}):void 0,children:e.jsxs("p",{className:"timeline-view__entry-preview",children:[n.content.slice(0,120),n.content.length>120?"...":""]})},n.id))})]},s.periodStart))}));oe.displayName="DayView";const ce=c.memo(({buckets:r,selectedEntryId:a,onEntrySelect:t})=>e.jsx("div",{className:"timeline-view timeline-view--hour",role:"list",children:r.map(s=>e.jsxs("div",{className:"timeline-view__bucket timeline-view__bucket--hour",role:"listitem",children:[e.jsx("div",{className:"timeline-view__node",children:e.jsx(B,{shape:"circle",size:"medium",variant:"default",label:s.label,labelPosition:"right"})}),e.jsx("div",{className:"timeline-view__content",children:s.entries.map(n=>e.jsxs(H,{entry:n,isSelected:a===n.id,onSelect:t,footer:e.jsxs("div",{className:"timeline-view__entry-footer",children:[n.tags.length>0&&e.jsx(P,{gap:"tight","aria-label":`Tags for ${n.title}`,children:n.tags.map(l=>e.jsx(O,{size:"small",variant:"outlined",children:l},l))}),e.jsx(M,{variant:"default",size:"small",children:n.type})]}),children:[e.jsx("time",{className:"timeline-view__timestamp",dateTime:n.date,children:Be(n.date)}),e.jsx("div",{className:"timeline-view__entry-content",children:n.content})]},n.id))})]},s.periodStart))}));ce.displayName="HourView";const Ze=({zoomLevel:r,buckets:a,selectedEntryId:t,onEntrySelect:s,onBucketClick:n})=>{switch(r){case"year":return e.jsx(le,{buckets:a,onBucketClick:n});case"month":return e.jsx(ie,{buckets:a,selectedEntryId:t,onEntrySelect:s,onBucketClick:n});case"day":return e.jsx(oe,{buckets:a,selectedEntryId:t,onEntrySelect:s});case"hour":return e.jsx(ce,{buckets:a,selectedEntryId:t,onEntrySelect:s});default:return r}},Je=({entries:r,zoomLevel:a,defaultZoomLevel:t="month",onZoomChange:s,selectedEntryId:n,defaultSelectedEntryId:l,onSelectEntry:o,sortOrder:i="desc",scrollToZoom:d=!0,keyboardShortcuts:f=!0,...m})=>{const u=c.useRef(null),{zoomLevel:h,zoomIn:g,zoomOut:b,reset:y,canZoomIn:p,canZoomOut:w}=ke({zoomLevel:a,defaultZoomLevel:t,onZoomChange:s}),{selectedEntryId:N,toggle:S,deselect:_}=$e({selectedEntryId:n,defaultSelectedEntryId:l,onSelectEntry:o}),$=c.useMemo(()=>Ve(r,h,i),[r,h,i]);c.useEffect(()=>{if(!d)return;const D=u.current;if(!D)return;let v=null;const I=E=>{!E.ctrlKey&&!E.metaKey||(E.preventDefault(),v===null&&(v=requestAnimationFrame(()=>{E.deltaY<0?g():E.deltaY>0&&b(),v=null})))};return D.addEventListener("wheel",I,{passive:!1}),()=>{D.removeEventListener("wheel",I),v!==null&&cancelAnimationFrame(v)}},[d,g,b]),c.useEffect(()=>{if(!f)return;const D=v=>{var E;if(!((E=u.current)!=null&&E.contains(document.activeElement))&&document.activeElement!==u.current)return;const I=v.ctrlKey||v.metaKey;I&&v.key==="="?(v.preventDefault(),g()):I&&v.key==="-"?(v.preventDefault(),b()):I&&v.key==="0"?(v.preventDefault(),y()):v.key==="Escape"&&(v.preventDefault(),_())};return document.addEventListener("keydown",D),()=>document.removeEventListener("keydown",D)},[f,g,b,y,_]);const k=c.useCallback(D=>{(h==="year"||h==="month")&&g()},[h,g]),A=["timeline-container",m.className].filter(Boolean).join(" ");return e.jsxs("div",{ref:u,...m,className:A,role:"region","aria-label":m["aria-label"]??"Timeline",tabIndex:0,children:[e.jsx(Ye,{zoomLevel:h,canZoomIn:p,canZoomOut:w,onZoomIn:g,onZoomOut:b,onReset:y}),r.length===0?e.jsxs("div",{className:"timeline-container__empty",role:"status",children:[e.jsx("p",{children:"C:\\TIMELINE> No entries found."}),e.jsx("p",{children:"_"})]}):e.jsx(qe,{children:e.jsx(Ze,{zoomLevel:h,buckets:$,selectedEntryId:N,onEntrySelect:S,onBucketClick:k})})]})};function Oe(r){if(typeof document>"u")return null;const a=c.useRef(null);if(!a.current){const t=document.createElement("div");t.setAttribute("data-eidotter-portal",""),a.current=t}return c.useEffect(()=>{const t=a.current;return document.body.appendChild(t),()=>{t.remove()}},[]),c.useEffect(()=>{const t=r.current,s=a.current;if(!t)return;const n=t.closest("[data-theme]");function l(){const i=n==null?void 0:n.getAttribute("data-theme");i?s.setAttribute("data-theme",i):s.removeAttribute("data-theme")}if(l(),!n)return;const o=new MutationObserver(l);return o.observe(n,{attributes:!0,attributeFilter:["data-theme"]}),()=>o.disconnect()},[r]),a.current}const Pe=({isOpen:r,onClose:a,onOpenChange:t,title:s,children:n,footer:l,className:o=""})=>{const i=c.useRef(null),d=c.useRef(r),f=c.useRef(!1),m=c.useRef(null),u=c.useId(),[h,g]=c.useState(!1),b=Oe(m),y=c.useCallback(()=>{const _=i.current;if(!(!_||!_.open||f.current)){if(K()){_.close();return}f.current=!0,g(!0)}},[]),p=c.useCallback(_=>{if(_.animationName==="modal-crt-exit"&&f.current){f.current=!1,g(!1);const $=i.current;$!=null&&$.open&&$.close()}},[]);c.useEffect(()=>{const _=i.current;_&&(r&&f.current?(f.current=!1,g(!1)):r&&!_.open?(f.current=!1,g(!1),_.showModal()):!r&&_.open&&y(),r!==d.current&&(d.current=r,t==null||t(r)))},[r,t,y]);const w=()=>{a()},N=_=>{_.target===i.current&&a()},S=["modal",h?"modal--closing":"",o].filter(Boolean).join(" ");return e.jsxs(e.Fragment,{children:[e.jsx("span",{ref:m,style:{display:"none"},"aria-hidden":"true"}),b&&de.createPortal(e.jsx("dialog",{ref:i,className:S,"aria-labelledby":u,onClose:w,onClick:N,onAnimationEnd:p,children:e.jsxs("div",{className:"modal__container",children:[e.jsxs("header",{className:"modal__header",children:[e.jsx("h2",{id:u,className:"modal__title",children:s}),e.jsx("button",{type:"button",className:"modal__close",onClick:a,"aria-label":"Close modal",children:e.jsx(z,{name:"Close",size:"S"})})]}),e.jsx("div",{className:"modal__body",children:n}),l&&e.jsx("footer",{className:"modal__footer",children:l})]})}),b)]})},We="░▒▓█│┤┐└┴┬├─┼",Ge=4;function W(r,a){const{speed:t=40,characters:s=We,enabled:n=!0,delay:l=0}=a??{},[o,i]=c.useState(()=>{if(!n||K())return r;let u="";for(let h=0;h<r.length;h++)r[h]===" "?u+=" ":u+=s[Math.floor(Math.random()*s.length)];return u}),[d,f]=c.useState(!1),m=c.useRef(0);return c.useEffect(()=>{if(!n||K()){i(r),f(!1);return}let u=0,h=0,g=0,b=l;f(!0);const y=p=>{g||(g=p);const w=p-g;if(b>0){b-=w,g=p,m.current=requestAnimationFrame(y);return}if(w>=t){if(g=p,h++,h>=Ge&&(u++,h=0),u>=r.length){i(r),f(!1);return}let N="";for(let S=0;S<r.length;S++)S<u?N+=r[S]:r[S]===" "?N+=" ":N+=s[Math.floor(Math.random()*s.length)];i(N)}m.current=requestAnimationFrame(y)};return m.current=requestAnimationFrame(y),()=>{m.current&&cancelAnimationFrame(m.current)}},[r,t,s,n,l]),{text:o,isScrambling:d}}const Qe=({label:r,value:a,trend:t,trendValue:s,size:n="medium",scramble:l=!1,className:o="",...i})=>{const{text:d}=W(String(a),{speed:30,enabled:l}),f=l?d:String(a),m=["stat",`stat--${n}`,o].filter(Boolean).join(" "),u=["stat__trend",t&&`stat__trend--${t}`].filter(Boolean).join(" "),h=()=>{switch(t){case"up":return"▲";case"down":return"▼";case"neutral":return"►";default:return null}},g=()=>{switch(t){case"up":return"increasing";case"down":return"decreasing";case"neutral":return"unchanged";default:return""}};return e.jsxs("div",{className:m,...i,children:[e.jsx("span",{className:"stat__label",children:r}),e.jsx("span",{className:"stat__value",children:f}),t&&e.jsxs("span",{className:u,"aria-label":`Trend: ${g()}${s?`, ${s}`:""}`,children:[e.jsx("span",{className:"stat__trend-icon","aria-hidden":"true",children:h()}),s&&e.jsx("span",{className:"stat__trend-value",children:s})]})]})},Xe=({items:r,activeIds:a,defaultActiveIds:t=[],mode:s="multi",showAll:n=!1,allLabel:l="All",size:o="medium",onChange:i,className:d="",...f})=>{const[m,u]=c.useState(t),h=c.useRef(null),g=a!==void 0,b=g?a:m,y=r.filter(v=>!v.disabled).map(v=>v.id),p=b.length===0,w=c.useCallback(v=>{g||u(v),i==null||i(v)},[g,i]),N=c.useCallback(v=>{if(s==="single"){const I=b.includes(v)?[]:[v];w(I)}else{const I=b.includes(v)?b.filter(E=>E!==v):[...b,v];w(I)}},[s,b,w]),S=c.useCallback(()=>{w([])},[w]),_=c.useCallback(()=>h.current?Array.from(h.current.querySelectorAll("button:not([disabled])")):[],[]),$=c.useCallback(v=>{const I=_(),E=I.indexOf(v.target);if(E===-1)return;let T=null;switch(v.key){case"ArrowLeft":case"ArrowUp":v.preventDefault(),T=E>0?E-1:I.length-1;break;case"ArrowRight":case"ArrowDown":v.preventDefault(),T=E<I.length-1?E+1:0;break;case"Home":v.preventDefault(),T=0;break;case"End":v.preventDefault(),T=I.length-1;break}T!==null&&I[T].focus()},[_]),A=n&&p?"__all__":b.length>0?b[0]:n?"__all__":y[0]||null,D=["filter-bar",`filter-bar--${o}`,d].filter(Boolean).join(" ");return e.jsxs("div",{ref:h,className:D,role:"toolbar",onKeyDown:$,...f,children:[n&&e.jsx("button",{type:"button",className:["filter-bar__item","filter-bar__item--all",p&&"filter-bar__item--active"].filter(Boolean).join(" "),"aria-pressed":p,tabIndex:A==="__all__"?0:-1,onClick:S,children:e.jsx("span",{className:"filter-bar__label",children:l})}),r.map(v=>{const I=b.includes(v.id),E=["filter-bar__item",I&&"filter-bar__item--active",v.disabled&&"filter-bar__item--disabled"].filter(Boolean).join(" "),T=I&&v.color?{"--filter-bar-item-color":`var(${v.color})`}:void 0;return e.jsxs("button",{type:"button",className:E,"aria-pressed":I,tabIndex:A===v.id?0:-1,disabled:v.disabled,onClick:()=>N(v.id),style:T,children:[e.jsx("span",{className:"filter-bar__label",children:v.label}),v.count!==void 0&&e.jsx("span",{className:"filter-bar__count","aria-label":`${v.count} items`,children:v.count})]},v.id)})]})},G=r=>{if(!r)return!1;try{const a=new URL(r);return["http:","https:","mailto:"].includes(a.protocol)}catch{return!1}},Re=({children:r,content:a,defaultExpanded:t=!1,expanded:s,onToggle:n,sources:l=[],className:o="",...i})=>{const[d,f]=c.useState(t),[m,u]=c.useState(new Set),h=c.useRef(t),g=c.useId(),b=c.useRef(null),y=s!==void 0,p=y?s:d;p&&(h.current=!0);const w=()=>{const _=!p;y||f(_),n==null||n(_)},N=_=>{var $;_.key==="Escape"&&p&&(_.stopPropagation(),w(),($=b.current)==null||$.focus())},S=["inline-expand",p&&"inline-expand--expanded",o].filter(Boolean).join(" ");return e.jsxs("span",{className:S,onKeyDown:N,...i,children:[e.jsxs("button",{ref:b,type:"button",className:"inline-expand__trigger","aria-expanded":p,"aria-controls":g,onClick:w,children:[r,e.jsx("span",{className:"inline-expand__indicator","aria-hidden":"true",children:p?"[-]":"[+]"})]}),e.jsxs("span",{id:g,className:"inline-expand__content",role:"region",inert:!p,children:[e.jsx("span",{className:"inline-expand__inner",children:a}),l.length>0&&e.jsx("span",{className:"inline-expand__sources",role:"list",children:l.map(_=>e.jsx("span",{className:"inline-expand__source-item",role:"listitem",children:e.jsxs("a",{href:G(_.url)?_.url:void 0,className:"inline-expand__source-link",target:"_blank",rel:"noopener noreferrer","aria-label":`${_.title} (opens external website)`,children:[h.current&&_.favicon&&G(_.favicon)&&!m.has(_.url)?e.jsx("img",{className:"inline-expand__source-favicon",src:_.favicon,alt:"",width:16,height:16,decoding:"async",onError:()=>u($=>new Set($).add(_.url))}):e.jsx("span",{className:"inline-expand__source-icon","aria-hidden":"true",children:"[→]"}),e.jsx("span",{className:"inline-expand__source-title",children:_.title})]})},_.url))})]})]})},er=({orientation:r="horizontal",className:a=""})=>{const t=["separator",`separator--${r}`,a].filter(Boolean).join(" ");return e.jsx("div",{role:"separator","aria-orientation":r,className:t})},rr=({children:r,speed:a,characters:t,delay:s,className:n="",...l})=>{const{text:o,isScrambling:i}=W(r,{speed:a,characters:t,delay:s}),d=["text-scramble",i&&"text-scramble--scrambling",n].filter(Boolean).join(" ");return e.jsx("span",{className:d,...l,children:o})},nr={eidotter:{displayName:"eiDotter"},spacewar:{displayName:"Spacewar!"},rizomorf:{displayName:"rizomorf"},"pomodoke-calendar":{displayName:"PomoDoke Calendar"},keepcoin:{displayName:"KeepCoin"},steuerdash:{displayName:"Steuerdash"},sella:{displayName:"sella"},lifelines:{displayName:"Lifelines"},betamorf:{displayName:"betamorf"}},V={Alert:{origin:"eidotter",consumers:["rizomorf","steuerdash"]},Accordion:{origin:"eidotter",consumers:["rizomorf"]},AccordionFill:{origin:"eidotter",consumers:["rizomorf"]},Badge:{origin:"eidotter",consumers:["rizomorf","steuerdash"]},Breadcrumb:{origin:"rizomorf",consumers:["rizomorf"]},Button:{origin:"eidotter",consumers:["spacewar","rizomorf","pomodoke-calendar","steuerdash"]},Card:{origin:"eidotter",consumers:["rizomorf","steuerdash"]},Checkbox:{origin:"eidotter",consumers:["steuerdash"]},CommandPrompt:{origin:"eidotter",consumers:["rizomorf"]},Icon:{origin:"eidotter",consumers:["rizomorf"]},Input:{origin:"eidotter",consumers:["steuerdash"]},Modal:{origin:"eidotter",consumers:["pomodoke-calendar"]},Progress:{origin:"eidotter",consumers:["steuerdash"],since:"0.3.0"},RetroEffects:{origin:"spacewar",consumers:["spacewar","rizomorf"],originNote:"CRT scanline/glow effects from Spacewar!"},Stat:{origin:"steuerdash",consumers:["steuerdash"],originNote:"Key-value display created for tax dashboard"},Switch:{origin:"eidotter",consumers:[]},FilterBar:{origin:"eidotter",consumers:["lifelines","rizomorf"],originNote:"Multi-select toggle group for faceted filtering"},Tag:{origin:"eidotter",consumers:["lifelines","rizomorf"],originNote:"Interactive labels for tags, categories, and filter chips"},Tabs:{origin:"eidotter",consumers:["steuerdash"]},Terminal:{origin:"eidotter",consumers:["rizomorf"]},TimelineNode:{origin:"lifelines",consumers:["lifelines","rizomorf"],originNote:"Timeline markers from Lifelines project"},InlineExpand:{origin:"rizomorf",consumers:["rizomorf"],originNote:"Inline disclosure widget for expanding text within prose"},Separator:{origin:"rizomorf",consumers:["rizomorf"],originNote:"Horizontal/vertical divider for content separation"},TimelineContainer:{origin:"lifelines",consumers:["lifelines"],originNote:"Multi-zoom timeline with year/month/day/hour views"}};function ar(r){return V[r]}function tr(r){return Object.entries(V).filter(([,a])=>a.origin===r).map(([a])=>a)}function sr(r){return Object.entries(V).filter(([,a])=>a.consumers.includes(r)).map(([a])=>a)}const lr="0.10.0";C.AccordionFill=me,C.Alert=ue,C.Badge=M,C.Breadcrumb=Ce,C.Button=Y,C.Card=R,C.Checkbox=pe,C.CommandPrompt=he,C.FilterBar=Xe,C.Icon=z,C.InlineExpand=Re,C.Input=ee,C.Modal=Pe,C.Progress=ve,C.RetroEffects=Se,C.Section=X,C.Separator=er,C.Stat=Qe,C.Switch=we,C.Tabs=ye,C.Tag=O,C.TagGroup=P,C.Terminal=Ne,C.TextScramble=rr,C.TimelineContainer=Je,C.TimelineNode=B,C.ZOOM_LEVELS=x,C.componentRegistry=V,C.getComponentMeta=ar,C.getComponentsByConsumer=sr,C.getComponentsByOrigin=tr,C.isSafeUrl=G,C.projects=nr,C.useTextScramble=W,C.version=lr,Object.defineProperty(C,Symbol.toStringTag,{value:"Module"})}));
|
package/package.json
CHANGED
|
@@ -31,14 +31,15 @@
|
|
|
31
31
|
--color-cga-white-glow: rgba(255, 255, 255, 0.5); /** White glow at 50% opacity */
|
|
32
32
|
--typography-font-family-primary: 'JetBrains Mono', 'JetBrainsMono Nerd Font', Consolas, Monaco, monospace; /** JetBrains Mono with Nerd Font fallback */
|
|
33
33
|
--typography-font-family-fallback: Consolas, Monaco, 'Courier New', monospace; /** System monospace fallback */
|
|
34
|
-
--typography-font-size-
|
|
35
|
-
--typography-font-size-
|
|
36
|
-
--typography-font-size-
|
|
37
|
-
--typography-font-size-
|
|
38
|
-
--typography-font-size-
|
|
39
|
-
--typography-font-size-
|
|
40
|
-
--typography-font-size-
|
|
41
|
-
--typography-font-size-
|
|
34
|
+
--typography-font-size-2xs: 0.625rem; /** Compact UI chrome (badges, counts, small labels) */
|
|
35
|
+
--typography-font-size-xs: 0.75rem;
|
|
36
|
+
--typography-font-size-sm: 0.875rem;
|
|
37
|
+
--typography-font-size-base: 1rem;
|
|
38
|
+
--typography-font-size-lg: 1.125rem;
|
|
39
|
+
--typography-font-size-xl: 1.25rem;
|
|
40
|
+
--typography-font-size-2xl: 1.5rem;
|
|
41
|
+
--typography-font-size-3xl: 1.875rem;
|
|
42
|
+
--typography-font-size-4xl: 2.25rem;
|
|
42
43
|
--typography-font-weight-regular: 400;
|
|
43
44
|
--typography-font-weight-semibold: 600;
|
|
44
45
|
--typography-font-weight-bold: 700;
|
|
@@ -35,14 +35,15 @@
|
|
|
35
35
|
--color-semantic-alert-error: #430000;
|
|
36
36
|
--typography-font-family-primary: 'JetBrains Mono', 'JetBrainsMono Nerd Font', Consolas, Monaco, monospace; /** JetBrains Mono with Nerd Font fallback */
|
|
37
37
|
--typography-font-family-fallback: Consolas, Monaco, 'Courier New', monospace; /** System monospace fallback */
|
|
38
|
-
--typography-font-size-
|
|
39
|
-
--typography-font-size-
|
|
40
|
-
--typography-font-size-
|
|
41
|
-
--typography-font-size-
|
|
42
|
-
--typography-font-size-
|
|
43
|
-
--typography-font-size-
|
|
44
|
-
--typography-font-size-
|
|
45
|
-
--typography-font-size-
|
|
38
|
+
--typography-font-size-2xs: 0.625rem; /** Compact UI chrome (badges, counts, small labels) */
|
|
39
|
+
--typography-font-size-xs: 0.75rem;
|
|
40
|
+
--typography-font-size-sm: 0.875rem;
|
|
41
|
+
--typography-font-size-base: 1rem;
|
|
42
|
+
--typography-font-size-lg: 1.125rem;
|
|
43
|
+
--typography-font-size-xl: 1.25rem;
|
|
44
|
+
--typography-font-size-2xl: 1.5rem;
|
|
45
|
+
--typography-font-size-3xl: 1.875rem;
|
|
46
|
+
--typography-font-size-4xl: 2.25rem;
|
|
46
47
|
--typography-font-weight-regular: 400;
|
|
47
48
|
--typography-font-weight-semibold: 600;
|
|
48
49
|
--typography-font-weight-bold: 700;
|
|
@@ -54,14 +54,15 @@
|
|
|
54
54
|
--color-semantic-alert-error: #000000;
|
|
55
55
|
--typography-font-family-primary: 'JetBrains Mono', 'JetBrainsMono Nerd Font', Consolas, Monaco, monospace; /** JetBrains Mono with Nerd Font fallback */
|
|
56
56
|
--typography-font-family-fallback: Consolas, Monaco, 'Courier New', monospace; /** System monospace fallback */
|
|
57
|
-
--typography-font-size-
|
|
58
|
-
--typography-font-size-
|
|
59
|
-
--typography-font-size-
|
|
60
|
-
--typography-font-size-
|
|
61
|
-
--typography-font-size-
|
|
62
|
-
--typography-font-size-
|
|
63
|
-
--typography-font-size-
|
|
64
|
-
--typography-font-size-
|
|
57
|
+
--typography-font-size-2xs: 0.625rem; /** Compact UI chrome (badges, counts, small labels) */
|
|
58
|
+
--typography-font-size-xs: 0.75rem;
|
|
59
|
+
--typography-font-size-sm: 0.875rem;
|
|
60
|
+
--typography-font-size-base: 1rem;
|
|
61
|
+
--typography-font-size-lg: 1.125rem;
|
|
62
|
+
--typography-font-size-xl: 1.25rem;
|
|
63
|
+
--typography-font-size-2xl: 1.5rem;
|
|
64
|
+
--typography-font-size-3xl: 1.875rem;
|
|
65
|
+
--typography-font-size-4xl: 2.25rem;
|
|
65
66
|
--typography-font-weight-regular: 400;
|
|
66
67
|
--typography-font-weight-semibold: 600;
|
|
67
68
|
--typography-font-weight-bold: 700;
|
|
@@ -54,14 +54,15 @@
|
|
|
54
54
|
--color-semantic-alert-error: #000000;
|
|
55
55
|
--typography-font-family-primary: 'JetBrains Mono', 'JetBrainsMono Nerd Font', Consolas, Monaco, monospace; /** JetBrains Mono with Nerd Font fallback */
|
|
56
56
|
--typography-font-family-fallback: Consolas, Monaco, 'Courier New', monospace; /** System monospace fallback */
|
|
57
|
-
--typography-font-size-
|
|
58
|
-
--typography-font-size-
|
|
59
|
-
--typography-font-size-
|
|
60
|
-
--typography-font-size-
|
|
61
|
-
--typography-font-size-
|
|
62
|
-
--typography-font-size-
|
|
63
|
-
--typography-font-size-
|
|
64
|
-
--typography-font-size-
|
|
57
|
+
--typography-font-size-2xs: 0.625rem; /** Compact UI chrome (badges, counts, small labels) */
|
|
58
|
+
--typography-font-size-xs: 0.75rem;
|
|
59
|
+
--typography-font-size-sm: 0.875rem;
|
|
60
|
+
--typography-font-size-base: 1rem;
|
|
61
|
+
--typography-font-size-lg: 1.125rem;
|
|
62
|
+
--typography-font-size-xl: 1.25rem;
|
|
63
|
+
--typography-font-size-2xl: 1.5rem;
|
|
64
|
+
--typography-font-size-3xl: 1.875rem;
|
|
65
|
+
--typography-font-size-4xl: 2.25rem;
|
|
65
66
|
--typography-font-weight-regular: 400;
|
|
66
67
|
--typography-font-weight-semibold: 600;
|
|
67
68
|
--typography-font-weight-bold: 700;
|
|
@@ -54,14 +54,15 @@
|
|
|
54
54
|
--color-semantic-alert-error: #000000;
|
|
55
55
|
--typography-font-family-primary: 'JetBrains Mono', 'JetBrainsMono Nerd Font', Consolas, Monaco, monospace; /** JetBrains Mono with Nerd Font fallback */
|
|
56
56
|
--typography-font-family-fallback: Consolas, Monaco, 'Courier New', monospace; /** System monospace fallback */
|
|
57
|
-
--typography-font-size-
|
|
58
|
-
--typography-font-size-
|
|
59
|
-
--typography-font-size-
|
|
60
|
-
--typography-font-size-
|
|
61
|
-
--typography-font-size-
|
|
62
|
-
--typography-font-size-
|
|
63
|
-
--typography-font-size-
|
|
64
|
-
--typography-font-size-
|
|
57
|
+
--typography-font-size-2xs: 0.625rem; /** Compact UI chrome (badges, counts, small labels) */
|
|
58
|
+
--typography-font-size-xs: 0.75rem;
|
|
59
|
+
--typography-font-size-sm: 0.875rem;
|
|
60
|
+
--typography-font-size-base: 1rem;
|
|
61
|
+
--typography-font-size-lg: 1.125rem;
|
|
62
|
+
--typography-font-size-xl: 1.25rem;
|
|
63
|
+
--typography-font-size-2xl: 1.5rem;
|
|
64
|
+
--typography-font-size-3xl: 1.875rem;
|
|
65
|
+
--typography-font-size-4xl: 2.25rem;
|
|
65
66
|
--typography-font-weight-regular: 400;
|
|
66
67
|
--typography-font-weight-semibold: 600;
|
|
67
68
|
--typography-font-weight-bold: 700;
|
package/src/styles/tokens.css
CHANGED
|
@@ -35,14 +35,15 @@
|
|
|
35
35
|
--color-semantic-alert-error: #430000; /** Dark red for error alerts */
|
|
36
36
|
--typography-font-family-primary: 'JetBrains Mono', 'JetBrainsMono Nerd Font', Consolas, Monaco, monospace; /** JetBrains Mono with Nerd Font fallback */
|
|
37
37
|
--typography-font-family-fallback: Consolas, Monaco, 'Courier New', monospace; /** System monospace fallback */
|
|
38
|
-
--typography-font-size-
|
|
39
|
-
--typography-font-size-
|
|
40
|
-
--typography-font-size-
|
|
41
|
-
--typography-font-size-
|
|
42
|
-
--typography-font-size-
|
|
43
|
-
--typography-font-size-
|
|
44
|
-
--typography-font-size-
|
|
45
|
-
--typography-font-size-
|
|
38
|
+
--typography-font-size-2xs: 0.625rem; /** Compact UI chrome (badges, counts, small labels) */
|
|
39
|
+
--typography-font-size-xs: 0.75rem;
|
|
40
|
+
--typography-font-size-sm: 0.875rem;
|
|
41
|
+
--typography-font-size-base: 1rem;
|
|
42
|
+
--typography-font-size-lg: 1.125rem;
|
|
43
|
+
--typography-font-size-xl: 1.25rem;
|
|
44
|
+
--typography-font-size-2xl: 1.5rem;
|
|
45
|
+
--typography-font-size-3xl: 1.875rem;
|
|
46
|
+
--typography-font-size-4xl: 2.25rem;
|
|
46
47
|
--typography-font-weight-regular: 400;
|
|
47
48
|
--typography-font-weight-semibold: 600;
|
|
48
49
|
--typography-font-weight-bold: 700;
|
package/guidelines/tokens.md
DELETED
|
@@ -1,260 +0,0 @@
|
|
|
1
|
-
# Design Tokens
|
|
2
|
-
|
|
3
|
-
Complete reference for eidotter design tokens. Use CSS variables or Tailwind classes.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## Color System
|
|
8
|
-
|
|
9
|
-
eidotter uses an amber phosphor CRT palette. **Always use semantic tokens** for components.
|
|
10
|
-
|
|
11
|
-
### Semantic Colors (Primary Use)
|
|
12
|
-
|
|
13
|
-
Use these for all component styling:
|
|
14
|
-
|
|
15
|
-
#### Backgrounds
|
|
16
|
-
|
|
17
|
-
| Purpose | CSS Variable | Tailwind |
|
|
18
|
-
|---------|--------------|----------|
|
|
19
|
-
| Page background | `var(--color-semantic-background-primary)` | `bg-dos-bg-primary` |
|
|
20
|
-
| Surface/card background | `var(--color-semantic-background-secondary)` | `bg-dos-bg-secondary` |
|
|
21
|
-
| Accent background (buttons) | `var(--color-semantic-background-accent)` | `bg-dos-bg-accent` |
|
|
22
|
-
|
|
23
|
-
#### Text
|
|
24
|
-
|
|
25
|
-
| Purpose | CSS Variable | Tailwind |
|
|
26
|
-
|---------|--------------|----------|
|
|
27
|
-
| Body text | `var(--color-semantic-text-primary)` | `text-dos-text-primary` |
|
|
28
|
-
| Dark text (on accent bg) | `var(--color-semantic-text-secondary)` | `text-dos-text-secondary` |
|
|
29
|
-
| Highlighted text | `var(--color-semantic-text-accent)` | `text-dos-text-accent` |
|
|
30
|
-
| Disabled text | `var(--color-semantic-text-disabled)` | `text-dos-text-disabled` |
|
|
31
|
-
|
|
32
|
-
#### Borders
|
|
33
|
-
|
|
34
|
-
| Purpose | CSS Variable | Tailwind |
|
|
35
|
-
|---------|--------------|----------|
|
|
36
|
-
| Default border | `var(--color-semantic-border-default)` | `border-dos-border-default` |
|
|
37
|
-
| Focus border | `var(--color-semantic-border-focus)` | `border-dos-border-focus` |
|
|
38
|
-
| Hover border | `var(--color-semantic-border-hover)` | `border-dos-border-hover` |
|
|
39
|
-
| Disabled border | `var(--color-semantic-border-disabled)` | `border-dos-border-disabled` |
|
|
40
|
-
|
|
41
|
-
#### Status Colors
|
|
42
|
-
|
|
43
|
-
| Status | CSS Variable | Tailwind |
|
|
44
|
-
|--------|--------------|----------|
|
|
45
|
-
| Success | `var(--color-semantic-status-success)` | `text-dos-status-success` |
|
|
46
|
-
| Warning | `var(--color-semantic-status-warning)` | `text-dos-status-warning` |
|
|
47
|
-
| Error | `var(--color-semantic-status-error)` | `text-dos-status-error` |
|
|
48
|
-
| Info | `var(--color-semantic-status-info)` | `text-dos-status-info` |
|
|
49
|
-
|
|
50
|
-
#### Links
|
|
51
|
-
|
|
52
|
-
| State | CSS Variable | Tailwind |
|
|
53
|
-
|-------|--------------|----------|
|
|
54
|
-
| Default | `var(--color-semantic-link-default)` | `text-dos-link-default` |
|
|
55
|
-
| Hover | `var(--color-semantic-link-hover)` | `text-dos-link-hover` |
|
|
56
|
-
| Active | `var(--color-semantic-link-active)` | `text-dos-link-active` |
|
|
57
|
-
| Visited | `var(--color-semantic-link-visited)` | `text-dos-link-visited` |
|
|
58
|
-
|
|
59
|
-
### Raw CGA Colors (Advanced Use)
|
|
60
|
-
|
|
61
|
-
Use only when semantic tokens don't fit:
|
|
62
|
-
|
|
63
|
-
| Color | CSS Variable | Hex | Tailwind |
|
|
64
|
-
|-------|--------------|-----|----------|
|
|
65
|
-
| Black | `var(--color-cga-black)` | `#020003` | `bg-cga-black` |
|
|
66
|
-
| Dark Gray | `var(--color-cga-dark-gray)` | `#010103` | `bg-cga-darkGray` |
|
|
67
|
-
| Brown | `var(--color-cga-brown)` | `#5f340e` | `text-cga-brown` |
|
|
68
|
-
| Light Gray | `var(--color-cga-light-gray)` | `#b87c1a` | `text-cga-lightGray` |
|
|
69
|
-
| Yellow | `var(--color-cga-yellow)` | `#e5b936` | `text-cga-yellow` |
|
|
70
|
-
| White | `var(--color-cga-white)` | `#ba8225` | `text-cga-white` |
|
|
71
|
-
| Amber | `var(--color-cga-amber)` | `#ffb000` | `text-cga-amber` |
|
|
72
|
-
| Amber Bright | `var(--color-cga-amber-bright)` | `#fdca9f` | `text-cga-amberBright` |
|
|
73
|
-
| Amber Dim | `var(--color-cga-amber-dim)` | `#9a5700` | `text-cga-amberDim` |
|
|
74
|
-
|
|
75
|
-
### Alert Background Colors
|
|
76
|
-
|
|
77
|
-
Specialized backgrounds for Alert components:
|
|
78
|
-
|
|
79
|
-
| Alert Type | CSS Variable |
|
|
80
|
-
|------------|--------------|
|
|
81
|
-
| Info | `var(--color-semantic-alert-info)` |
|
|
82
|
-
| Success | `var(--color-semantic-alert-success)` |
|
|
83
|
-
| Warning | `var(--color-semantic-alert-warning)` |
|
|
84
|
-
| Error | `var(--color-semantic-alert-error)` |
|
|
85
|
-
|
|
86
|
-
---
|
|
87
|
-
|
|
88
|
-
## Typography
|
|
89
|
-
|
|
90
|
-
### Font Family
|
|
91
|
-
|
|
92
|
-
```css
|
|
93
|
-
font-family: var(--typography-font-family-primary);
|
|
94
|
-
/* JetBrains Mono, JetBrainsMono Nerd Font, Consolas, Monaco, monospace */
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
Tailwind: `font-dos`
|
|
98
|
-
|
|
99
|
-
### Font Sizes
|
|
100
|
-
|
|
101
|
-
| Size | CSS Variable | Value | Tailwind |
|
|
102
|
-
|------|--------------|-------|----------|
|
|
103
|
-
| XS | `var(--typography-font-size-xs)` | 12px | `text-xs` |
|
|
104
|
-
| SM | `var(--typography-font-size-sm)` | 14px | `text-sm` |
|
|
105
|
-
| Base | `var(--typography-font-size-base)` | 16px | `text-base` |
|
|
106
|
-
| LG | `var(--typography-font-size-lg)` | 18px | `text-lg` |
|
|
107
|
-
| XL | `var(--typography-font-size-xl)` | 20px | `text-xl` |
|
|
108
|
-
| 2XL | `var(--typography-font-size-2xl)` | 24px | `text-2xl` |
|
|
109
|
-
| 3XL | `var(--typography-font-size-3xl)` | 30px | `text-3xl` |
|
|
110
|
-
| 4XL | `var(--typography-font-size-4xl)` | 36px | `text-4xl` |
|
|
111
|
-
|
|
112
|
-
### Font Weights
|
|
113
|
-
|
|
114
|
-
| Weight | CSS Variable | Value |
|
|
115
|
-
|--------|--------------|-------|
|
|
116
|
-
| Regular | `var(--typography-font-weight-regular)` | 400 |
|
|
117
|
-
| Semibold | `var(--typography-font-weight-semibold)` | 600 |
|
|
118
|
-
| Bold | `var(--typography-font-weight-bold)` | 700 |
|
|
119
|
-
|
|
120
|
-
### Line Heights
|
|
121
|
-
|
|
122
|
-
| Height | CSS Variable | Value |
|
|
123
|
-
|--------|--------------|-------|
|
|
124
|
-
| Tight | `var(--typography-line-height-tight)` | 1.2 |
|
|
125
|
-
| Normal | `var(--typography-line-height-normal)` | 1.5 |
|
|
126
|
-
| Loose | `var(--typography-line-height-loose)` | 1.8 |
|
|
127
|
-
|
|
128
|
-
---
|
|
129
|
-
|
|
130
|
-
## Spacing
|
|
131
|
-
|
|
132
|
-
8px base grid system:
|
|
133
|
-
|
|
134
|
-
| Token | CSS Variable | Value | Tailwind |
|
|
135
|
-
|-------|--------------|-------|----------|
|
|
136
|
-
| 0 | `var(--spacing-0)` | 0px | `p-0`, `m-0` |
|
|
137
|
-
| 1 | `var(--spacing-1)` | 4px | `p-1`, `m-1` |
|
|
138
|
-
| 2 | `var(--spacing-2)` | 8px | `p-2`, `m-2` |
|
|
139
|
-
| 3 | `var(--spacing-3)` | 12px | `p-3`, `m-3` |
|
|
140
|
-
| 4 | `var(--spacing-4)` | 16px | `p-4`, `m-4` |
|
|
141
|
-
| 5 | `var(--spacing-5)` | 20px | `p-5`, `m-5` |
|
|
142
|
-
| 6 | `var(--spacing-6)` | 24px | `p-6`, `m-6` |
|
|
143
|
-
| 8 | `var(--spacing-8)` | 32px | `p-8`, `m-8` |
|
|
144
|
-
| 10 | `var(--spacing-10)` | 40px | `p-10`, `m-10` |
|
|
145
|
-
| 12 | `var(--spacing-12)` | 48px | `p-12`, `m-12` |
|
|
146
|
-
| 16 | `var(--spacing-16)` | 64px | `p-16`, `m-16` |
|
|
147
|
-
|
|
148
|
-
---
|
|
149
|
-
|
|
150
|
-
## Border Radius
|
|
151
|
-
|
|
152
|
-
DOS aesthetic uses minimal rounded corners:
|
|
153
|
-
|
|
154
|
-
| Token | CSS Variable | Value | Tailwind |
|
|
155
|
-
|-------|--------------|-------|----------|
|
|
156
|
-
| None | `var(--border-radius-none)` | 0px | `rounded-none` |
|
|
157
|
-
| SM | `var(--border-radius-sm)` | 2px | `rounded-dos-sm` |
|
|
158
|
-
| Base | `var(--border-radius-base)` | 4px | `rounded-dos-base` |
|
|
159
|
-
|
|
160
|
-
**Important:** Never use `rounded-lg`, `rounded-xl`, `rounded-full` - these break the DOS aesthetic.
|
|
161
|
-
|
|
162
|
-
---
|
|
163
|
-
|
|
164
|
-
## Border Width
|
|
165
|
-
|
|
166
|
-
| Token | CSS Variable | Value |
|
|
167
|
-
|-------|--------------|-------|
|
|
168
|
-
| Thin | `var(--border-width-thin)` | 1px |
|
|
169
|
-
| Medium | `var(--border-width-medium)` | 2px |
|
|
170
|
-
| Thick | `var(--border-width-thick)` | 4px |
|
|
171
|
-
|
|
172
|
-
---
|
|
173
|
-
|
|
174
|
-
## Shadows
|
|
175
|
-
|
|
176
|
-
### DOS Drop Shadow
|
|
177
|
-
|
|
178
|
-
```css
|
|
179
|
-
box-shadow: var(--shadow-drop);
|
|
180
|
-
/* 2px 2px 0px 0px #000000 */
|
|
181
|
-
```
|
|
182
|
-
|
|
183
|
-
Tailwind: `shadow-dos-drop`
|
|
184
|
-
|
|
185
|
-
### Phosphor Glow Effects
|
|
186
|
-
|
|
187
|
-
| Size | CSS Variable | Tailwind |
|
|
188
|
-
|------|--------------|----------|
|
|
189
|
-
| XS | `var(--shadow-glow-xs)` | `shadow-dos-glowXs` |
|
|
190
|
-
| SM | `var(--shadow-glow-sm)` | `shadow-dos-glowSm` |
|
|
191
|
-
| MD | `var(--shadow-glow-md)` | `shadow-dos-glowMd` |
|
|
192
|
-
| LG | `var(--shadow-glow-lg)` | `shadow-dos-glowLg` |
|
|
193
|
-
|
|
194
|
-
---
|
|
195
|
-
|
|
196
|
-
## Animation Durations
|
|
197
|
-
|
|
198
|
-
| Token | CSS Variable | Value |
|
|
199
|
-
|-------|--------------|-------|
|
|
200
|
-
| Instant | `var(--duration-instant)` | 0ms |
|
|
201
|
-
| Fast | `var(--duration-fast)` | 100ms |
|
|
202
|
-
| Normal | `var(--duration-normal)` | 200ms |
|
|
203
|
-
| Slow | `var(--duration-slow)` | 400ms |
|
|
204
|
-
|
|
205
|
-
---
|
|
206
|
-
|
|
207
|
-
## Opacity
|
|
208
|
-
|
|
209
|
-
| Token | CSS Variable | Value | Use Case |
|
|
210
|
-
|-------|--------------|-------|----------|
|
|
211
|
-
| 0 | `var(--opacity-0)` | 0 | Hidden |
|
|
212
|
-
| 10 | `var(--opacity-10)` | 0.1 | Subtle hover |
|
|
213
|
-
| 25 | `var(--opacity-25)` | 0.25 | Light overlay |
|
|
214
|
-
| 50 | `var(--opacity-50)` | 0.5 | Disabled, medium |
|
|
215
|
-
| 75 | `var(--opacity-75)` | 0.75 | Heavy overlay |
|
|
216
|
-
| 80 | `var(--opacity-80)` | 0.8 | Modal backdrop |
|
|
217
|
-
| 100 | `var(--opacity-100)` | 1 | Full opacity |
|
|
218
|
-
|
|
219
|
-
---
|
|
220
|
-
|
|
221
|
-
## Z-Index Scale
|
|
222
|
-
|
|
223
|
-
| Token | CSS Variable | Value | Use Case |
|
|
224
|
-
|-------|--------------|-------|----------|
|
|
225
|
-
| Base | `var(--z-index-base)` | 0 | Default |
|
|
226
|
-
| Dropdown | `var(--z-index-dropdown)` | 1000 | Dropdowns |
|
|
227
|
-
| Sticky | `var(--z-index-sticky)` | 1020 | Sticky headers |
|
|
228
|
-
| Fixed | `var(--z-index-fixed)` | 1030 | Fixed elements |
|
|
229
|
-
| Modal | `var(--z-index-modal)` | 1040 | Modals |
|
|
230
|
-
| Popover | `var(--z-index-popover)` | 1050 | Popovers |
|
|
231
|
-
| Tooltip | `var(--z-index-tooltip)` | 1060 | Tooltips |
|
|
232
|
-
|
|
233
|
-
---
|
|
234
|
-
|
|
235
|
-
## CRT Effects
|
|
236
|
-
|
|
237
|
-
For RetroEffects component:
|
|
238
|
-
|
|
239
|
-
| Effect | CSS Variable |
|
|
240
|
-
|--------|--------------|
|
|
241
|
-
| Overlay | `var(--effects-overlay)` |
|
|
242
|
-
| Scanline Light | `var(--effects-scanline-light)` |
|
|
243
|
-
| Scanline Dark | `var(--effects-scanline-dark)` |
|
|
244
|
-
| Vignette Glow | `var(--effects-vignette-glow)` |
|
|
245
|
-
| Vignette Edge | `var(--effects-vignette-edge)` |
|
|
246
|
-
| Vignette Corner | `var(--effects-vignette-corner)` |
|
|
247
|
-
| Screen Tint | `var(--effects-screen-tint)` |
|
|
248
|
-
| Drop Shadow | `var(--effects-drop-shadow)` |
|
|
249
|
-
|
|
250
|
-
---
|
|
251
|
-
|
|
252
|
-
## Focus Ring
|
|
253
|
-
|
|
254
|
-
For accessibility:
|
|
255
|
-
|
|
256
|
-
| Token | CSS Variable | Value |
|
|
257
|
-
|-------|--------------|-------|
|
|
258
|
-
| Width | `var(--focus-ring-width)` | 2px |
|
|
259
|
-
| Offset | `var(--focus-ring-offset)` | 2px |
|
|
260
|
-
| Color | `var(--focus-ring-color)` | Accent yellow |
|