*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}button,input,select,textarea{font:inherit}.crest-theme{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;min-height:100vh;color:var(--crest-color-text);background:var(--crest-color-canvas);font-family:var(--crest-font-family-body);font-size:var(--crest-font-size-base);line-height:var(--crest-line-height)}.crest-theme h1,.crest-theme h2,.crest-theme h3,.crest-theme .crest-brand{font-family:var(--crest-font-family-heading)}.crest-theme[data-color-mode=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.crest-theme[data-contrast=high]{--crest-color-border:var(--crest-color-text)}.crest-theme[data-underline-links=true] a{text-decoration:underline}.crest-theme[data-reduce-motion=true] *,.crest-theme[data-reduce-motion=true] :before,.crest-theme[data-reduce-motion=true] :after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.crest-theme :focus-visible{outline:3px solid var(--crest-color-focus);outline-offset:3px}.crest-theme[data-focus=enhanced] :focus-visible{outline-width:5px}.crest-startup-state{place-items:center;min-height:100vh;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:grid}.crest-skip-link{z-index:100;color:var(--crest-color-brand-contrast);background:var(--crest-color-brand);padding:.75rem 1rem;position:fixed;inset:0 auto auto 0;transform:translateY(-120%)}.crest-skip-link:focus{transform:translateY(0)}.crest-shell{grid-template-columns:var(--crest-sidebar-width) minmax(0, 1fr);min-height:100vh;display:grid}.crest-sidebar{height:100vh;color:var(--crest-color-text);background:var(--crest-color-surface);border-inline-end:1px solid var(--crest-color-border);flex-direction:column;gap:1.5rem;padding:1.25rem;display:flex;position:sticky;top:0}.crest-brand{min-height:2.5rem;font-size:calc(var(--crest-font-size-base) * var(--crest-heading-scale));align-items:center;gap:.75rem;font-weight:750;display:flex}.crest-brand-logo{object-fit:contain;width:2.5rem;height:2.5rem}.crest-navigation-list{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.crest-navigation-link{color:var(--crest-color-text-muted);border-radius:calc(var(--crest-card-radius) * .65);padding:.7rem .8rem;text-decoration:none;display:block}.crest-navigation-link:hover,.crest-navigation-link.is-active{color:var(--crest-color-brand-contrast);background:var(--crest-color-brand)}.crest-sidebar-footer{color:var(--crest-color-text-muted);margin-top:auto;font-size:.875em}.crest-mobile-header{display:none}.crest-main,.crest-shell-main{min-width:0}.crest-shell-toolbar{z-index:30;background:color-mix(in srgb, var(--crest-color-canvas) 92%, transparent);border-block-end:1px solid var(--crest-color-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:flex-end;align-items:center;min-height:3.75rem;padding:.5rem clamp(1rem,3vw,2.5rem);display:flex;position:sticky;top:0}.crest-system-notification-bell{position:relative}.crest-system-notification-bell-button,.crest-system-notification-close,.crest-system-notification-read-action,.crest-system-notification-mark-all,.crest-system-notification-count-failure button,.crest-system-notification-partial button,.crest-system-notification-operations button{min-height:var(--crest-control-min-height);color:var(--crest-color-text);background:var(--crest-color-surface);border:1px solid var(--crest-color-border);border-radius:var(--crest-control-radius);cursor:pointer}.crest-system-notification-bell-button{border-radius:var(--crest-radius-pill);place-items:center;width:2.75rem;height:2.75rem;display:grid;position:relative}.crest-system-notification-bell-button:hover,.crest-system-notification-close:hover,.crest-system-notification-read-action:hover,.crest-system-notification-mark-all:hover,.crest-system-notification-count-failure button:hover,.crest-system-notification-partial button:hover,.crest-system-notification-operations button:hover{color:var(--crest-color-brand-contrast);background:var(--crest-color-brand);border-color:var(--crest-color-brand)}.crest-system-notification-bell-button svg{fill:currentColor;width:1.35rem;height:1.35rem}.crest-system-notification-badge{color:#fff;background:var(--crest-color-danger);border:2px solid var(--crest-color-canvas);border-radius:var(--crest-radius-pill);text-align:center;min-width:1.35rem;padding:.08rem .3rem;font-size:.7rem;font-weight:750;line-height:1.1rem;position:absolute;inset:-.25rem -.4rem auto auto}.crest-system-notification-panel{z-index:50;width:min(26rem,100vw - 2rem);max-width:var(--crest-card-max-width);max-height:var(--crest-notification-panel-max-height);padding:var(--crest-space-3);color:var(--crest-color-text);background:var(--crest-color-surface-elevated);border:1px solid var(--crest-color-border);border-radius:var(--crest-radius-card);box-shadow:var(--crest-card-shadow);animation-name:crest-system-notification-panel-enter;animation-duration:var(--crest-motion-duration);animation-timing-function:var(--crest-motion-easing);position:absolute;inset:calc(100% + .65rem) 0 auto auto;overflow:auto}@keyframes crest-system-notification-panel-enter{0%{opacity:0;transform:translateY(-.25rem)}to{opacity:1;transform:translateY(0)}}.crest-system-notification-header{z-index:1;top:calc(-1 * var(--crest-space-3));justify-content:space-between;align-items:center;gap:var(--crest-space-2);padding-block:var(--crest-space-2);background:var(--crest-color-surface-elevated);display:flex;position:sticky}.crest-system-notification-header h2{font-size:var(--crest-font-size-lg);margin:0}.crest-system-notification-close{width:2.5rem;padding:0;font-size:1.5rem;line-height:1}.crest-system-notification-mark-all,.crest-system-notification-read-action,.crest-system-notification-count-failure button,.crest-system-notification-partial button,.crest-system-notification-operations button{padding:.45rem .7rem}.crest-system-notification-mark-all,.crest-system-notification-read-action{min-height:var(--crest-field-action-min-height);border-radius:var(--crest-button-radius);corner-shape:var(--crest-button-shape)}.crest-system-notification-operations button{min-height:var(--crest-field-action-min-height)}.crest-system-notification-close{min-height:var(--crest-button-min-height);border-radius:var(--crest-button-radius);corner-shape:var(--crest-button-shape)}.crest-system-notification-mark-all{margin-block-end:var(--crest-space-2)}.crest-system-notification-list{gap:var(--crest-space-2);margin:0;padding:0;list-style:none;display:grid}.crest-system-notification-day{color:var(--crest-color-text-muted);font-size:var(--crest-font-size-sm);padding-block-start:var(--crest-space-2);font-weight:700}.crest-system-notification-entry{gap:var(--crest-space-2);padding:var(--crest-space-3);background:var(--crest-color-surface);border:1px solid var(--crest-color-border);border-inline-start:var(--crest-border-width-strong) solid var(--crest-color-brand);border-radius:var(--crest-radius-md);display:grid}.crest-system-notification-entry[data-density=compact]{gap:var(--crest-space-1);padding:var(--crest-space-2)}.crest-system-notification-entry[data-read=true]{border-inline-start-color:var(--crest-color-border)}.crest-system-notification-entry-link{gap:var(--crest-space-1);color:inherit;text-decoration:none;display:grid}.crest-system-notification-entry-link>span,.crest-system-notification-entry-link time{color:var(--crest-color-text-muted)}.crest-system-notification-entry-link time{font-size:var(--crest-font-size-sm)}.crest-system-notification-read-action{justify-self:start}.crest-system-notification-empty,.crest-system-notification-count-failure,.crest-system-notification-partial,.crest-system-notification-operations{gap:var(--crest-space-2);padding:var(--crest-space-3);background:var(--crest-color-surface);border:1px solid var(--crest-color-border);border-radius:var(--crest-radius-md);display:grid}.crest-system-notification-empty p,.crest-system-notification-count-failure p,.crest-system-notification-partial span,.crest-system-notification-operations p{margin:0}.crest-system-notification-operations{padding:var(--crest-space-3);color:var(--crest-color-attention-contrast);background-color:var(--crest-color-attention);border-radius:var(--crest-control-radius);margin-block-start:var(--crest-space-3)}.crest-system-notification-operations dl{gap:var(--crest-space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.crest-system-notification-operations dl>div{justify-content:space-between;gap:var(--crest-space-1);display:flex}.crest-system-notification-operations dd{margin:0;font-weight:700}.crest-content{width:min(100%, var(--crest-content-max-width));margin-inline:auto;padding:clamp(1rem,3vw,2.5rem)}.crest-page-heading{justify-content:space-between;align-items:start;gap:1rem;margin-block-end:1.5rem;display:flex}.crest-page-heading h1{font-size:calc(var(--crest-font-size-base) * var(--crest-heading-scale) * var(--crest-heading-scale));margin:0}.crest-card-grid{grid-template-columns:repeat(auto-fill, minmax(min(100%, var(--crest-card-min-width)), 1fr));gap:var(--crest-card-gap);display:grid}.crest-card{max-width:var(--crest-card-max-width);padding:var(--crest-card-padding);background:var(--crest-color-surface-elevated);border:1px solid var(--crest-color-border);border-radius:var(--crest-card-radius);box-shadow:var(--crest-card-shadow)}.crest-link{color:inherit;text-decoration:none}.crest-stack{gap:var(--crest-card-gap);display:grid}.crest-button{min-height:var(--crest-button-min-height);color:var(--crest-color-brand-contrast);background:var(--crest-color-brand);border:1px solid var(--crest-color-brand);border-radius:var(--crest-button-radius);corner-shape:var(--crest-button-shape);cursor:pointer;padding:.65rem 1rem}.crest-button:disabled{cursor:not-allowed;opacity:.55}.crest-button-row{flex-wrap:wrap;gap:.75rem;display:flex}.crest-field{gap:.35rem;display:grid}.crest-field .crest-button,.crest-system-notification-mark-all,.crest-system-notification-read-action{min-height:var(--crest-field-action-min-height)}.crest-check-row{background:var(--crest-color-surface);border:1px solid var(--crest-color-border);border-radius:calc(var(--crest-card-radius) * .5);align-items:start;gap:.75rem;padding:.75rem;display:flex}.crest-check-row input{width:1.1rem;height:1.1rem;accent-color:var(--crest-color-brand);margin-block-start:.15rem}.crest-input,.crest-select,.crest-textarea{width:100%;min-height:var(--crest-control-min-height);color:var(--crest-color-text);background:var(--crest-color-surface);border:1px solid var(--crest-color-border);border-radius:var(--crest-control-radius);padding:.6rem .7rem}.crest-textarea{resize:vertical;min-height:7rem}.crest-form-grid{gap:var(--crest-card-gap);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));display:grid}.crest-settings-grid{gap:calc(var(--crest-card-gap) * 1.5);grid-template-columns:minmax(0,1.25fr) minmax(18rem,.75fr);margin-block-end:2rem;display:grid}.crest-settings-editor{gap:var(--crest-card-gap);display:grid}.crest-settings-fieldset{gap:var(--crest-card-gap);padding:var(--crest-card-padding);border:1px solid var(--crest-color-border);border-radius:var(--crest-card-radius);margin:0;display:grid}.crest-settings-fieldset legend{padding-inline:.4rem;font-weight:700}.crest-settings-color-grid{gap:var(--crest-card-gap);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));display:grid}.crest-settings-color{gap:.4rem;display:grid}.crest-settings-color>span:last-child{align-items:center;gap:.65rem;display:flex}.crest-color-input{background:var(--crest-color-surface);border:1px solid var(--crest-color-border);border-radius:calc(var(--crest-card-radius) * .5);width:3.2rem;height:2.5rem;padding:.15rem}.crest-json-editor{resize:vertical;min-height:24rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;line-height:1.4}.crest-preview{min-height:24rem}.crest-error-text{color:var(--crest-color-danger)}.crest-muted{color:var(--crest-color-text-muted)}.crest-status{align-items:center;gap:.4rem;display:inline-flex}.crest-status:before{background:var(--projects-stage-accent,var(--crest-color-text-muted));content:"";border-radius:999px;width:.65rem;height:.65rem}@media (width<=760px){.crest-shell{grid-template-columns:1fr}.crest-sidebar{display:none}.crest-mobile-header{z-index:40;justify-content:space-between;align-items:center;gap:var(--crest-space-3);min-width:0;min-height:4rem;padding:var(--crest-space-2) var(--crest-space-3);background:var(--crest-color-surface);border-block-end:1px solid var(--crest-color-border);box-shadow:var(--crest-card-shadow);display:flex;position:sticky;top:0}.crest-mobile-header .crest-brand{min-width:0}.crest-mobile-header .crest-brand span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.crest-mobile-navigation{flex:none;position:relative}.crest-mobile-navigation summary{min-height:var(--crest-control-min-height);color:var(--crest-color-brand-contrast);background:var(--crest-color-brand);border-radius:var(--crest-button-radius);corner-shape:var(--crest-button-shape);cursor:pointer;align-items:center;padding:.55rem .8rem;font-weight:700;list-style:none;display:inline-flex}.crest-mobile-navigation summary::-webkit-details-marker{display:none}.crest-mobile-navigation nav{inset:calc(100% + var(--crest-space-2)) 0 auto auto;width:min(22rem, calc(100vw - (2 * var(--crest-space-3))));max-height:calc(100dvh - 5.5rem);padding:var(--crest-space-2);background:var(--crest-color-surface-elevated);border:1px solid var(--crest-color-border);border-radius:var(--crest-radius-card);box-shadow:var(--crest-card-shadow);position:absolute;overflow:auto}.crest-mobile-navigation:not([open]) nav{display:none}.crest-settings-grid{grid-template-columns:1fr}.crest-shell-toolbar{top:0}}@media (width<=560px){.crest-system-notification-panel{width:100%;max-height:min(var(--crest-notification-panel-max-height), calc(100dvh - 3rem));border-radius:var(--crest-radius-card) var(--crest-radius-card) 0 0;border-width:1px 0 0;position:fixed;inset:auto 0 0}}@media (prefers-reduced-motion:reduce){.crest-system-notification-panel,.crest-system-notification-bell-button{scroll-behavior:auto;transition:none;animation:none}}
