.brand-mark{display:inline-flex;align-items:baseline;font-family:var(--md-sys-typescale-title-large-family);font-weight:700;letter-spacing:.08em;line-height:1;white-space:nowrap}.brand-mark--sm{font-size:.92rem}.brand-mark--md{font-size:1.05rem}.brand-mark--lg{font-size:1.18rem}.brand-mark__base{color:var(--md-sys-color-on-surface)}.brand-mark__accent{color:var(--md-sys-color-primary)}.dashboard-switcher{display:inline-flex;gap:.35rem;padding:.22rem;border-radius:999px;background:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--md-sys-elevation-level1)}.dashboard-switcher__button{display:inline-flex;align-items:center;gap:.4rem;padding:.42rem .92rem;border:1px solid var(--auto-color-001);border-radius:999px;background:var(--auto-color-001);color:var(--md-sys-color-on-surface-variant);font-weight:600;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:all .2s ease}.dashboard-switcher__button:hover{background:var(--md-sys-color-surface-container-high);color:var(--md-sys-color-on-surface)}.dashboard-switcher__button.is-active{background:var(--md-sys-color-surface-container-lowest);border:1px solid var(--md-sys-color-outline-variant);color:var(--md-sys-color-on-surface);box-shadow:var(--md-sys-elevation-level1)}@media(max-width:768px){.dashboard-switcher{flex-wrap:wrap;border-radius:16px}.dashboard-switcher__button{flex:1 1 auto;justify-content:center}}.ui-button{appearance:none;border:1px solid var(--auto-color-001);border-radius:999px;font-family:var(--md-sys-typescale-label-large-family);font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;line-height:1;transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .06s ease,border-color .16s ease}.ui-button--md{min-height:40px;padding:.72rem 1rem;font-size:.9rem}.ui-button--sm{min-height:34px;padding:.45rem .78rem;font-size:.8rem}.ui-button--primary{color:var(--md-sys-color-on-primary);border-color:var(--md-sys-color-primary);background:var(--md-sys-color-primary);box-shadow:var(--md-sys-elevation-level1)}.ui-button--primary:hover{background:color-mix(in srgb,var(--md-sys-color-primary) 86%,var(--auto-color-002))}.ui-button--secondary{color:var(--md-sys-color-on-secondary-container);border-color:var(--md-sys-color-secondary-container);background:var(--md-sys-color-secondary-container)}.ui-button--secondary:hover{background:color-mix(in srgb,var(--md-sys-color-secondary-container) 86%,var(--auto-color-002))}.ui-button--ghost{background:var(--auto-color-001);color:var(--md-sys-color-on-surface);border-color:var(--md-sys-color-outline-variant)}.ui-button--ghost:hover{background:var(--md-sys-color-surface-container-high)}.ui-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.ui-button:active:not(:disabled){transform:translateY(1px)}.ui-button:focus-visible{outline:3px solid color-mix(in srgb,var(--md-sys-color-primary) 40%,var(--auto-color-001));outline-offset:2px}.ui-button.fn-button-primary{color:var(--md-sys-color-on-primary);border-color:var(--md-sys-color-primary);background:var(--md-sys-color-primary)}.ui-button.fn-button-secondary{color:var(--md-sys-color-on-secondary-container);border-color:var(--md-sys-color-secondary-container);background:var(--md-sys-color-secondary-container)}.ui-card{background:var(--md-sys-color-surface-container-low);border:1px solid var(--md-sys-color-outline-variant);border-radius:20px;padding:16px;box-shadow:var(--md-sys-elevation-level1)}.app--backoffice .ui-card{border-radius:20px;border:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--md-sys-elevation-level1);background:var(--md-sys-color-surface-container-low);color:var(--md-sys-color-on-surface)}html[data-theme=dark] .app--backoffice .ui-card{border-color:var(--md-sys-color-outline-variant);background:var(--md-sys-color-surface-container-low)}.ui-checkbox{display:flex;flex-direction:column;gap:.35rem}.ui-checkbox__label{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.82rem;color:var(--auto-color-058)}.ui-checkbox__input{width:16px;height:16px;margin:0;accent-color:var(--auto-color-059)}.ui-checkbox__input.is-error{outline:1px solid var(--auto-color-054)}.ui-checkbox__text{line-height:1.2}.ui-checkbox__help{font-size:.72rem;color:var(--auto-color-058)}.ui-checkbox__help.is-error{color:var(--auto-color-054)}.ui-container{width:min(1180px,100%);margin-inline:auto}.ui-stack{display:grid}.ui-stack--gap-1{gap:4px}.ui-stack--gap-2{gap:8px}.ui-stack--gap-3{gap:12px}.ui-stack--gap-4{gap:16px}.ui-stack--gap-5{gap:20px}.ui-stack--gap-6{gap:24px}.ui-stack--gap-8{gap:32px}.ui-grid{display:grid}.ui-grid--cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.ui-grid--cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-grid--cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.ui-grid--cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.ui-grid--gap-1{gap:4px}.ui-grid--gap-2{gap:8px}.ui-grid--gap-3{gap:12px}.ui-grid--gap-4{gap:16px}.ui-grid--gap-5{gap:20px}.ui-grid--gap-6{gap:24px}.ui-grid--gap-8{gap:32px}@media(max-width:960px){.ui-grid--cols-2,.ui-grid--cols-3,.ui-grid--cols-4{grid-template-columns:1fr}}.ui-dialog{position:fixed;inset:0;display:grid;place-items:center;z-index:1300}.ui-dialog__backdrop{position:absolute;inset:0;border:none;padding:0;margin:0;background:var(--auto-color-094)}.ui-dialog__surface{position:relative;z-index:1;width:min(580px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;border-radius:20px;border:1px solid var(--md-sys-color-outline-variant);background:var(--md-sys-color-surface-container-high);box-shadow:var(--md-sys-elevation-level3)}.ui-dialog__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--md-sys-color-outline-variant)}.ui-dialog__header h2{margin:0;font-size:1.15rem;color:var(--md-sys-color-on-surface)}.ui-dialog__body{padding:20px}.ui-field{display:flex;flex-direction:column;gap:var(--space-2)}.ui-field__label{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-primary)}.ui-field__required{color:var(--status-danger-text);margin-left:2px}.ui-field__help{min-height:1rem}.ui-field__help-text{font-size:var(--text-xs);color:var(--text-muted)}.ui-field__help-text.is-error{color:var(--status-danger-text)}.app--backoffice .ui-field__label{font-size:.85rem;color:var(--text-secondary);letter-spacing:.01em}.app--backoffice .ui-field__help-text{font-size:.72rem}.ui-input{position:relative;display:flex;align-items:center;gap:.55rem;padding:0 .9rem;min-height:48px;background:var(--auto-color-007);border:1px solid var(--auto-color-095);border-radius:12px;transition:border-color .16s ease,box-shadow .16s ease}.ui-input:focus-within{border-color:var(--auto-color-052);box-shadow:0 0 0 3px var(--auto-color-070)}.ui-input.is-error{border-color:var(--auto-color-054);box-shadow:0 0 0 3px var(--auto-color-055)}.ui-input__icon{color:var(--auto-color-056);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.ui-input__icon svg{width:16px;height:16px}.ui-input__field{width:100%;min-height:40px;padding:.35rem 0;background:var(--auto-color-001);border:none;font-size:.95rem;font-family:var(--fn-font-sans, "Inter", "Segoe UI", sans-serif);color:var(--auto-color-019)}.ui-input__field::placeholder{color:var(--auto-color-096)}.ui-input__field:focus{outline:none}.ui-input__action{display:inline-flex;align-items:center}.ui-input__action button{border:none;background:var(--auto-color-001);color:var(--auto-color-057);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:.25rem}.ui-input__action button:hover{color:var(--auto-color-019)}.ui-select{position:relative;display:flex;align-items:center;gap:var(--space-3);width:100%}.ui-select.is-error .ui-select__trigger{border-color:var(--status-danger-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--status-danger-text) 15%,var(--auto-color-001))}.ui-select__icon{color:var(--text-muted);display:inline-flex;align-items:center}.ui-select__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:.6rem .9rem;border-radius:12px;border:1px solid var(--admin-border);background:var(--bg-primary);color:var(--text-primary);font-size:var(--text-sm);font-weight:600;cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.ui-select__trigger:disabled{opacity:.6;cursor:not-allowed}.ui-select__trigger:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--admin-focus-ring)}.ui-select__label{display:inline-flex;align-items:center;gap:.5rem}.ui-select__chevron{color:var(--text-muted);font-size:.95rem}.ui-select__native{position:absolute;opacity:0;pointer-events:none;height:0;width:0}.ui-select__menu{position:fixed;background:var(--bg-primary);border:1px solid var(--admin-border);border-radius:12px;box-shadow:var(--shadow-lg);padding:.35rem;max-height:240px;overflow-y:auto;z-index:50}.ui-select__menu li{list-style:none}.ui-select__option{width:100%;border:none;background:var(--auto-color-001);color:var(--text-primary);text-align:left;padding:.55rem .75rem;border-radius:10px;font-size:.9rem;cursor:pointer;display:flex;align-items:center;gap:.5rem}.ui-select__option:hover{background:var(--admin-highlight-soft)}.ui-select__option.is-selected{background:color-mix(in srgb,var(--color-accent) 16%,var(--auto-color-001));font-weight:700}html[data-theme=dark] .ui-select__trigger{background:var(--auto-color-087)}html[data-theme=dark] .ui-select__menu{background:var(--auto-color-097)}.ui-snackbar{position:fixed;top:max(8px,env(safe-area-inset-top));left:8px;right:8px;display:grid;grid-template-columns:auto 1fr auto auto auto;align-items:start;gap:8px;padding:12px;border-radius:12px;border:1px solid color-mix(in srgb,var(--md-sys-color-outline-variant) 70%,transparent);background:var(--md-sys-color-surface-container-high);color:var(--md-sys-color-on-surface);box-shadow:0 6px 18px color-mix(in srgb,var(--md-sys-color-shadow, var(--md-sys-color-on-surface)) 14%,transparent),var(--md-sys-elevation-level1);z-index:4000;overflow:hidden}.ui-snackbar:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:var(--snackbar-progress, 100%);background:color-mix(in srgb,var(--md-sys-color-primary) 70%,transparent);transition:width .12s linear}.ui-snackbar--error{border-color:color-mix(in srgb,var(--md-sys-color-error, #ff6b6b) 38%,var(--md-sys-color-outline-variant));box-shadow:inset 3px 0 0 0 var(--md-sys-color-error, #ff6b6b),0 6px 18px color-mix(in srgb,var(--md-sys-color-error, #ff6b6b) 18%,transparent),var(--md-sys-elevation-level1)}.ui-snackbar--error:after{background:color-mix(in srgb,var(--md-sys-color-error, #ff6b6b) 78%,transparent)}html[data-theme=dark] .ui-snackbar{border-color:color-mix(in srgb,var(--md-sys-color-on-surface) 14%,transparent)}.ui-snackbar.is-entering{animation:snackbar-in .18s cubic-bezier(.2,.8,.2,1) forwards}.ui-snackbar.is-exiting{animation:snackbar-out .14s ease forwards}@keyframes snackbar-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes snackbar-out{0%{opacity:1}to{opacity:0}}.ui-snackbar__icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-top:2px}.ui-snackbar--error .ui-snackbar__icon{color:var(--md-sys-color-error, #ff6b6b)}.ui-snackbar__content{display:grid;gap:4px;min-width:0}.ui-snackbar__title{margin:0;color:var(--md-sys-color-on-surface);font-size:.88rem;font-weight:700;line-height:1.2}.ui-snackbar__detail{margin:0;color:color-mix(in srgb,var(--md-sys-color-on-surface) 72%,transparent);font-size:.82rem;line-height:1.3}.ui-snackbar__action{appearance:none;border:1px solid color-mix(in srgb,var(--md-sys-color-primary) 30%,transparent);background:color-mix(in srgb,var(--md-sys-color-primary) 14%,transparent);color:var(--md-sys-color-primary);text-decoration:none;font-size:.82rem;font-weight:700;padding:0 12px;min-width:44px;min-height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;white-space:nowrap;transition:background-color .16s ease,border-color .16s ease,transform .12s ease}.ui-snackbar__action:hover{background:color-mix(in srgb,var(--md-sys-color-primary) 26%,transparent);border-color:color-mix(in srgb,var(--md-sys-color-primary) 42%,transparent)}.ui-snackbar__action:active{transform:translateY(1px)}.ui-snackbar__action:focus-visible{outline:2px solid var(--admin-focus-ring);outline-offset:2px}.ui-snackbar__countdown{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 8px;border-radius:12px;font-size:.76rem;font-weight:700;letter-spacing:.03em;color:color-mix(in srgb,var(--md-sys-color-on-surface) 72%,transparent);background:color-mix(in srgb,var(--md-sys-color-on-surface) 8%,transparent)}.ui-snackbar__dismiss{appearance:none;border:1px solid color-mix(in srgb,var(--md-sys-color-on-surface) 16%,transparent);background:color-mix(in srgb,var(--md-sys-color-on-surface) 6%,transparent);color:color-mix(in srgb,var(--md-sys-color-on-surface) 84%,transparent);padding:0 10px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:.78rem;font-weight:600;min-width:44px;min-height:44px;cursor:pointer;transition:background-color .16s ease,border-color .16s ease}.ui-snackbar__dismiss:hover{background:color-mix(in srgb,var(--md-sys-color-on-surface) 12%,transparent);border-color:color-mix(in srgb,var(--md-sys-color-on-surface) 24%,transparent)}.ui-snackbar__dismiss:focus-visible{outline:2px solid var(--admin-focus-ring);outline-offset:2px}@media(max-width:640px){.ui-snackbar{grid-template-columns:auto 1fr auto}.ui-snackbar__action{grid-column:2 / span 1;justify-self:start}.ui-snackbar__countdown{grid-column:3;grid-row:2}.ui-snackbar__dismiss{grid-column:3;grid-row:1}.ui-snackbar__dismiss span{display:none}}.ui-table-wrap{border:1px solid var(--md-sys-color-outline-variant);border-radius:16px;background:var(--md-sys-color-surface);overflow:auto}.ui-table{width:100%;border-collapse:collapse}.ui-table caption{padding:12px 16px;text-align:left;color:var(--md-sys-color-on-surface-variant);font-size:.82rem;font-weight:600}.ui-table th,.ui-table td{padding:12px 16px;border-bottom:1px solid var(--md-sys-color-outline-variant);text-align:left}.ui-table th{font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--md-sys-color-on-surface-variant)}.ui-table td{font-size:.92rem;color:var(--md-sys-color-on-surface)}.ui-tabs{display:flex;flex-wrap:wrap;gap:8px}.ui-tabs__item{min-height:40px;display:inline-flex;align-items:center;padding:0 14px;border-radius:999px;border:1px solid var(--md-sys-color-outline-variant);background:var(--md-sys-color-surface-container-low);color:var(--md-sys-color-on-surface-variant);text-decoration:none;font-size:.86rem;font-weight:600}.ui-tabs__item:hover{background:var(--md-sys-color-surface-container-high);color:var(--md-sys-color-on-surface)}.ui-tabs__item.is-active{background:var(--md-sys-color-primary-container);border-color:color-mix(in srgb,var(--md-sys-color-primary) 55%,var(--md-sys-color-outline-variant));color:var(--md-sys-color-on-primary-container)}.ui-text{font-family:var(--font-sans);color:var(--text-primary);margin:0}.ui-text--h1{font-size:var(--text-2xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.ui-text--h2{font-size:var(--text-xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.ui-text--h3{font-size:var(--text-lg);font-weight:var(--weight-semibold)}.ui-text--body{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-normal)}.ui-text--caption{font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.app--backoffice .ui-text--h1,.app--backoffice .ui-text--h2,.app--backoffice .ui-text--h3{font-family:var(--font-heading, var(--font-sans));letter-spacing:-.01em}.app--backoffice .ui-text--h1{font-size:2rem}.app--backoffice .ui-text--h2{font-size:1.45rem}.app--backoffice .ui-text--h3{font-size:1.15rem}.app--backoffice .ui-text--body{font-size:.95rem;color:var(--text-secondary)}.app--backoffice .ui-text--caption{color:var(--text-muted);letter-spacing:.12em}.ui-textarea{position:relative;display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border:1px solid var(--admin-border);border-radius:12px;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.ui-textarea:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 4px var(--admin-focus-ring)}.ui-textarea.is-error{border-color:var(--status-danger-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--status-danger-text) 15%,var(--auto-color-001))}.ui-textarea__icon{color:var(--text-muted);display:inline-flex;align-items:flex-start;padding-top:2px}.ui-textarea__field{width:100%;min-height:96px;background:var(--auto-color-001);border:none;font-size:var(--text-sm);color:var(--text-primary);resize:vertical;font-family:var(--font-sans)}.ui-textarea__field::placeholder{color:var(--text-muted)}.ui-textarea__field:focus{outline:none}.app--backoffice .ui-textarea{background:var(--admin-surface);border-radius:12px;border:1px solid var(--admin-border);box-shadow:var(--shadow-sm)}.app--backoffice .ui-textarea:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--admin-focus-ring)}.app--backoffice .ui-textarea__field{font-size:.92rem}html[data-theme=dark] .app--backoffice .ui-textarea{background:var(--auto-color-087)}.app-shell{--app-sidebar-width: 272px;--app-sidebar-collapsed-width: 88px;display:grid;grid-template-columns:var(--app-sidebar-width) minmax(0,1fr);height:100dvh;background:var(--md-sys-color-surface-container-lowest);color:var(--md-sys-color-on-surface);overflow:hidden}.app-shell.is-collapsed{grid-template-columns:var(--app-sidebar-collapsed-width) minmax(0,1fr)}.app-shell--no-sidebar{grid-template-columns:minmax(0,1fr)}.app-shell__sidebar{background:var(--md-sys-color-surface-container);border-right:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--md-sys-elevation-level1);padding:16px 12px;display:flex;flex-direction:column;gap:16px;z-index:20}.app-shell__brand{display:flex;align-items:center;justify-content:space-between;min-height:48px}.app-shell__close{display:none}.app-shell__nav{display:flex;flex-direction:column;align-items:stretch;gap:8px;flex:1}.app-shell__sidebar-tools{padding-top:8px;border-top:1px solid var(--md-sys-color-outline-variant);display:inline-flex;justify-content:flex-start}.app-shell__nav-item{width:100%;min-height:40px;display:inline-flex;align-items:center;gap:8px;padding:0 12px;border-radius:999px;font-size:.9rem;font-weight:600;text-decoration:none;color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-container-low);border:1px solid var(--md-sys-color-outline-variant);transition:border-color .16s ease,background-color .16s ease,color .16s ease}.app-shell__nav-item:hover{background:var(--md-sys-color-surface-container-high);border-color:var(--md-sys-color-outline);color:var(--md-sys-color-on-surface)}.app-shell__nav-item.is-active{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container);border-color:color-mix(in srgb,var(--md-sys-color-primary) 42%,var(--md-sys-color-outline-variant))}.app-shell__nav-item:focus-visible{outline:2px solid var(--admin-focus-ring);outline-offset:2px}.app-shell__frame{display:grid;grid-template-rows:72px minmax(0,1fr) 52px;min-width:0;background:var(--md-sys-color-surface-container-lowest)}.app-shell__header{position:relative;z-index:10;display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(120px,1fr);align-items:center;gap:16px;padding:0 20px;border-bottom:1px solid var(--md-sys-color-outline-variant);background:var(--md-sys-color-surface-container-low);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.app-shell__header-left{display:inline-flex;align-items:center;gap:10px;justify-content:flex-start}.app-shell__header-center{display:inline-flex;align-items:center;justify-content:center}.app-shell__header-right{display:inline-flex;align-items:center;justify-content:flex-end}.app-shell__avatar{width:34px;height:34px;border-radius:999px;border:1px solid var(--md-sys-color-outline-variant);background:var(--md-sys-color-surface-container-high);color:var(--md-sys-color-on-surface);font-size:.78rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.app-shell__menu-btn{color:var(--md-sys-color-on-surface)}.app-shell__menu-btn--mobile{display:none}.app-shell__main{min-height:0;overflow:auto;padding:20px}.app-shell__loading{border:1px solid var(--md-sys-color-outline-variant);border-radius:20px;background:var(--md-sys-color-surface-container-low);padding:24px;display:grid;gap:12px}.app-shell__loading-line{height:12px;border-radius:999px;background:linear-gradient(90deg,var(--md-sys-color-surface-container) 0%,var(--md-sys-color-surface-container-high) 50%,var(--md-sys-color-surface-container) 100%);background-size:220% 100%;animation:app-shell-pulse 1.4s ease infinite}.app-shell__loading-line--short{width:45%}.app-shell__footer{display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-top:1px solid var(--md-sys-color-outline-variant);background:var(--md-sys-color-surface-container-low);font-size:.82rem;color:var(--md-sys-color-on-surface-variant)}.app-shell__footer p{margin:0}.app-shell__backdrop{display:none}.app-shell.is-collapsed .brand-mark,.app-shell.is-collapsed .app-shell__nav-item{white-space:nowrap;overflow:hidden;text-overflow:clip}@media(max-width:960px){.app-shell{grid-template-columns:minmax(0,1fr)}.app-shell__sidebar{position:fixed;inset:0 auto 0 0;width:min(86vw,296px);transform:translate(-100%);transition:transform .2s ease}.app-shell__sidebar.is-mobile-open{transform:translate(0)}.app-shell__close{display:inline-flex}.app-shell__menu-btn--desktop{display:none}.app-shell__menu-btn--mobile{display:inline-flex}.app-shell__backdrop{position:fixed;inset:0;border:none;padding:0;margin:0;background:var(--auto-color-084);display:block;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:10}.app-shell__backdrop.is-open{opacity:1;pointer-events:auto}.app-shell__frame{grid-template-rows:72px minmax(0,1fr) 56px}.app-shell__header{grid-template-columns:auto 1fr auto}.app-shell__header-center{justify-content:flex-start;overflow:auto}}@keyframes app-shell-pulse{0%{background-position:0% 0}to{background-position:100% 0}}.stacked-layout{display:grid;grid-template-rows:auto 1fr auto;height:100dvh;overflow:auto;background:var(--md-sys-color-surface-container-lowest);color:var(--md-sys-color-on-surface)}.stacked-layout__nav{position:sticky;top:0;z-index:20;background:var(--md-sys-color-surface-container-low);border-bottom:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--md-sys-elevation-level1)}.stacked-layout__nav-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 20px}.stacked-layout__brand{text-decoration:none}.stacked-layout__actions{display:inline-flex;align-items:center;gap:8px}.stacked-layout__footer{border-top:1px solid var(--md-sys-color-outline-variant);background:var(--md-sys-color-surface-container-low)}.stacked-layout__footer-inner{min-height:48px;display:flex;align-items:center;justify-content:space-between;font-size:.8rem;color:var(--md-sys-color-on-surface-variant)}.stacked-layout__footer-inner p{margin:0}.stacked-layout__footer-link{color:var(--md-sys-color-on-surface-variant);text-decoration:none}.stacked-layout__footer-link:focus-visible{outline:3px solid color-mix(in srgb,var(--md-sys-color-primary) 40%,var(--auto-color-001));outline-offset:2px}.stacked-layout__loading{border:1px solid var(--md-sys-color-outline-variant);border-radius:20px;background:var(--md-sys-color-surface-container-low);padding:24px;display:grid;gap:12px}.stacked-layout__loading-line{height:12px;border-radius:999px;background:linear-gradient(90deg,var(--md-sys-color-surface-container) 0%,var(--md-sys-color-surface-container-high) 50%,var(--md-sys-color-surface-container) 100%);background-size:220% 100%;animation:stacked-pulse 1.4s ease infinite}.stacked-layout__loading-line--short{width:54%}@keyframes stacked-pulse{0%{background-position:0% 0}to{background-position:100% 0}}
