@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;600;700&display=swap");:root{--md-sys-color-primary:#0061a4;--md-sys-color-on-primary:#ffffff;--md-sys-color-primary-container:#d1e4ff;--md-sys-color-on-primary-container:#001d36;--md-sys-color-secondary:#535f70;--md-sys-color-on-secondary:#ffffff;--md-sys-color-secondary-container:#d7e3f7;--md-sys-color-on-secondary-container:#101c2b;--md-sys-color-surface:#fdfcff;--md-sys-color-on-surface:#1a1c1e;--md-sys-color-surface-variant:#dfe2eb;--md-sys-color-on-surface-variant:#43474e;--md-sys-color-background:#fdfcff;--md-sys-color-on-background:#1a1c1e;--md-sys-color-outline:#73777f;--md-sys-color-surface-container-lowest:#ffffff;--md-sys-color-surface-container-low:#f7f3f9;--md-sys-color-surface-container:#f1edf4;--md-sys-color-surface-container-high:#ebe7ef;--md-sys-color-surface-container-highest:#e6e2ea;--md-sys-elevation-1:0px 1px 2px 0px rgba(0,0,0,0.3),0px 1px 3px 1px rgba(0,0,0,0.15);--md-sys-elevation-2:0px 1px 2px 0px rgba(0,0,0,0.3),0px 2px 6px 2px rgba(0,0,0,0.15);--md-sys-elevation-3:0px 1px 3px 0px rgba(0,0,0,0.3),0px 4px 8px 3px rgba(0,0,0,0.15);--md-sys-typescale-body-large-font:"Roboto",sans-serif;--md-sys-typescale-body-medium-font:"Roboto",sans-serif;--md-sys-typescale-body-small-font:"Roboto",sans-serif;--md-sys-typescale-label-large-font:"Roboto",sans-serif;--md-sys-typescale-label-medium-font:"Roboto",sans-serif;--md-sys-typescale-label-small-font:"Roboto",sans-serif;--md-sys-typescale-title-large-font:"Roboto",sans-serif;--md-sys-typescale-title-medium-font:"Roboto",sans-serif;--md-sys-typescale-title-small-font:"Roboto",sans-serif;--md-sys-typescale-headline-large-font:"Roboto",sans-serif;--md-sys-typescale-headline-medium-font:"Roboto",sans-serif;--md-sys-typescale-headline-small-font:"Roboto",sans-serif;--md-sys-typescale-display-large-font:"Roboto",sans-serif;--md-sys-typescale-display-medium-font:"Roboto",sans-serif;--md-sys-typescale-display-small-font:"Roboto",sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{min-height:100%;margin:0;font-family:var(--md-sys-typescale-body-large-font,"Roboto",sans-serif);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--md-sys-color-background);color:var(--md-sys-color-on-background)}.site-shell{display:flex;min-height:100vh;flex-direction:column}.site-content{flex:1 0 auto}.site-footer{align-items:center;background:var(--md-sys-color-surface-container-low);border-top:1px solid var(--md-sys-color-surface-variant);display:flex;flex-wrap:wrap;gap:16px 24px;justify-content:space-between;padding:20px 24px}.site-footer a,.site-footer-brand{color:var(--md-sys-color-primary);font-weight:600}.site-footer-links{display:flex;flex-wrap:wrap;gap:10px 20px;list-style:none}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button,input{font:inherit}.auth-page,.center-page{align-items:center;display:flex;justify-content:center;min-height:100vh}.auth-page{padding:24px}.auth-panel{background:var(--md-sys-color-surface-container-lowest);border:1px solid var(--md-sys-color-surface-variant);border-radius:12px;box-shadow:var(--md-sys-elevation-1);display:flex;flex-direction:column;gap:16px;max-width:440px;padding:28px;width:100%}.auth-panel h1{color:var(--md-sys-color-primary);font-size:1.8rem;margin:0 0 6px}.auth-panel p{color:var(--md-sys-color-on-surface-variant);margin:0}.auth-panel label,.field-label{color:var(--md-sys-color-on-surface);display:flex;flex-direction:column;font-size:.9rem;font-weight:600;gap:6px}.auth-panel input,.field-label input{border:1px solid var(--md-sys-color-outline);border-radius:8px;color:var(--md-sys-color-on-surface);min-height:42px;padding:10px 12px;width:100%}.auth-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.auth-mode-row{background:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-surface-variant);border-radius:8px;display:grid;grid-gap:4px;gap:4px;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px}.auth-mode-row button{background:transparent;border:0;border-radius:6px;color:var(--md-sys-color-on-surface-variant);cursor:pointer;min-height:36px}.auth-mode-row .auth-mode-active{background:var(--md-sys-color-surface-container-lowest);color:var(--md-sys-color-primary);font-weight:700}.auth-error{background:color-mix(in srgb,#b3261e 10%,transparent);border:1px solid #b3261e;border-radius:8px;color:#b3261e}.auth-error,.auth-status{font-size:.9rem;padding:10px 12px}.auth-status{background:color-mix(in srgb,var(--md-sys-color-primary) 10%,transparent);border:1px solid var(--md-sys-color-primary);border-radius:8px;color:var(--md-sys-color-primary)}.auth-switch{font-size:.9rem;text-align:center}.auth-inline-link,.auth-switch a{color:var(--md-sys-color-primary);font-weight:600}.auth-inline-link{align-self:flex-start;background:transparent;border:0;cursor:pointer;padding:0;text-decoration:underline}.field-help{color:var(--md-sys-color-on-surface-variant);font-size:.85rem;margin:0}.settings-shell{display:flex;justify-content:center;min-height:100vh;padding-top:32px}.settings-panel{display:flex;flex-direction:column;gap:24px;max-width:640px;width:100%}.settings-panel h1{color:var(--md-sys-color-primary);margin:0 0 6px}.settings-section{border-top:1px solid var(--md-sys-color-outline);display:grid;grid-gap:14px;gap:14px;padding-top:24px}.settings-section h2{margin:0}.settings-muted{color:var(--md-sys-color-on-surface-variant);margin:0}.settings-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.settings-saved{color:var(--md-sys-color-primary);font-size:.9rem}.session-list{display:grid;grid-gap:12px;gap:12px;list-style:none;padding:0}.session-card{align-items:center;background:var(--md-sys-color-surface-container-low);border:1px solid var(--md-sys-color-surface-variant);border-radius:12px;display:flex;gap:12px;justify-content:space-between;min-width:0;padding:16px}.session-description{min-width:0;overflow-wrap:anywhere}.settings-danger-zone{border:1px solid color-mix(in srgb,#b3261e 55%,transparent);border-radius:12px;color:#7d1914;padding:20px}.app-btn{align-items:center;background:var(--md-sys-color-primary);border:1px solid transparent;border-radius:9999px;color:var(--md-sys-color-on-primary);cursor:pointer;display:inline-flex;flex-shrink:1;font-size:14px;font-weight:600;gap:8px;justify-content:center;line-height:20px;max-inline-size:100%;min-block-size:40px;min-inline-size:0;overflow:hidden;padding:9px 20px;text-decoration:none;text-overflow:ellipsis;transition:background-color .12s ease,border-color .12s ease,color .12s ease,opacity .12s ease;vertical-align:middle;white-space:nowrap}.app-btn:hover:not(:disabled){filter:brightness(.95)}.app-btn:active:not(:disabled){filter:brightness(.9)}.app-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--md-sys-color-primary) 65%,white);outline-offset:2px}.app-btn:disabled{cursor:not-allowed;opacity:.5}.app-btn-full{inline-size:100%}.app-btn-filled{background:var(--md-sys-color-primary);border-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.app-btn-outlined{background:transparent;border-color:var(--md-sys-color-outline);color:var(--md-sys-color-primary)}.app-btn-outlined:hover:not(:disabled){background:color-mix(in srgb,var(--md-sys-color-primary) 8%,transparent);filter:none}.app-btn-danger{border-color:#b3261e;color:#b3261e}.app-btn-danger:hover:not(:disabled){background:color-mix(in srgb,#b3261e 8%,transparent)}.app-btn-text{background:transparent;border-color:transparent;color:var(--md-sys-color-primary);padding-inline:12px}.app-btn-icon{display:inline-flex;flex:0 0 18px;place-content:center;place-items:center}.app-btn-icon,.app-btn-icon>svg{block-size:18px;inline-size:18px}.app-btn-icon>svg{font-size:18px}.app-btn-label{min-inline-size:0;overflow:hidden;text-overflow:ellipsis}.md-card{background-color:var(--md-sys-color-surface-container-lowest);border-radius:16px;box-shadow:var(--md-sys-elevation-1);padding:24px}@media (max-width:600px){.md-card{padding:16px;border-radius:12px}}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}md-dialog{--md-dialog-container-color:var(--md-sys-color-surface-container-lowest);--md-dialog-headline-color:var(--md-sys-color-on-surface);--md-dialog-headline-font:var(--md-sys-typescale-headline-small-font);--md-dialog-headline-size:1.25rem;--md-dialog-headline-weight:600;--md-dialog-supporting-text-color:var(--md-sys-color-on-surface-variant);--md-dialog-supporting-text-font:var(--md-sys-typescale-body-medium-font);--md-dialog-supporting-text-size:0.95rem;--md-dialog-container-shape:16px}.page-pad{padding:40px 24px}.legal-shell{margin:0 auto;max-width:820px}.feedback-panel,.legal-content{display:grid;grid-gap:28px;gap:28px}.feedback-form,.feedback-panel header,.legal-content header,.legal-content section{display:grid;grid-gap:12px;gap:12px}.feedback-panel h1,.legal-content h1{color:var(--md-sys-color-primary);font-size:clamp(1.8rem,5vw,2.5rem)}.legal-content h2{font-size:1.2rem}.feedback-panel header p,.legal-content li,.legal-content p{color:var(--md-sys-color-on-surface-variant);line-height:1.65}.legal-content ul{display:grid;grid-gap:8px;gap:8px;padding-left:24px}.legal-eyebrow{color:var(--md-sys-color-primary)!important;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.feedback-form{gap:18px}.feedback-form select,.feedback-form textarea{background:var(--md-sys-color-surface-container-lowest);border:1px solid var(--md-sys-color-outline);border-radius:8px;color:var(--md-sys-color-on-surface);font:inherit;padding:10px 12px;width:100%}.feedback-form select{min-height:44px}.feedback-form textarea{line-height:1.5;resize:vertical}.feedback-consent input:focus-visible,.feedback-form select:focus-visible,.feedback-form textarea:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}.feedback-consent{align-items:flex-start;color:var(--md-sys-color-on-surface-variant);display:flex;gap:10px;line-height:1.5}.feedback-consent input{flex:0 0 auto;height:20px;margin-top:2px;width:20px}.support-action{justify-self:start}.dashboard-shell{display:grid;grid-gap:24px;gap:24px;margin:0 auto;max-width:960px}.dashboard-heading{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.dashboard-heading h1{color:var(--md-sys-color-primary);font-size:1.8rem;margin:0}.dashboard-action-link,.dashboard-create-link{align-items:center;border:1px solid var(--md-sys-color-outline);border-radius:9999px;color:var(--md-sys-color-primary);display:inline-flex;font-size:.9rem;font-weight:600;gap:8px;justify-content:center;min-height:40px;padding:8px 16px;text-decoration:none}.dashboard-create-link{background:var(--md-sys-color-primary);border-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.dashboard-action-link:focus-visible,.dashboard-action-link:hover{background:color-mix(in srgb,var(--md-sys-color-primary) 8%,transparent)}.dashboard-action-link[aria-disabled=true]{cursor:not-allowed;opacity:.5}.dashboard-code-search{align-items:flex-end;display:flex;gap:12px}.dashboard-section{display:grid;grid-gap:16px;gap:16px}.dashboard-section h2{font-size:1.15rem;margin:0}.dashboard-event-list{display:grid;grid-gap:12px;gap:12px}.dashboard-event-card{background:var(--md-sys-color-surface-container-low);border:1px solid var(--md-sys-color-surface-variant);border-radius:12px;display:grid;grid-gap:16px;gap:16px;padding:16px}.dashboard-event-summary{display:grid;grid-gap:8px;gap:8px;min-width:0}.dashboard-event-title{color:var(--md-sys-color-on-surface);font-size:1rem;font-weight:700;overflow-wrap:anywhere;text-decoration:none}.dashboard-event-title:focus-visible,.dashboard-event-title:hover{color:var(--md-sys-color-primary);text-decoration:underline}.dashboard-event-meta{color:var(--md-sys-color-on-surface-variant);display:flex;flex-wrap:wrap;font-size:.85rem;gap:8px 14px}.dashboard-event-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.dashboard-event-actions .app-btn,.dashboard-event-actions .dashboard-action-link{min-height:36px;padding-block:7px}.dashboard-message{border:1px solid;border-radius:10px;padding:12px 16px}.dashboard-error{background:color-mix(in srgb,#b3261e 10%,transparent);border-color:#b3261e;color:#8c1d18}.dashboard-status{background:color-mix(in srgb,var(--md-sys-color-primary) 10%,transparent);border-color:var(--md-sys-color-primary);color:var(--md-sys-color-primary)}.dashboard-empty{color:var(--md-sys-color-on-surface-variant);font-style:italic;margin:0}.dashboard-delete-panel,.event-form-warning{background:color-mix(in srgb,#b3261e 6%,var(--md-sys-color-surface));border:1px solid color-mix(in srgb,#b3261e 65%,transparent);border-radius:12px;color:#7d1914;display:grid;grid-gap:14px;gap:14px;padding:20px}.dashboard-delete-panel h2,.dashboard-delete-panel p,.event-form-warning p{margin:0}.dashboard-delete-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.event-form-warning label{align-items:flex-start;display:flex;gap:8px}.event-form-warning input{margin-top:3px}.event-form-cancel{color:var(--md-sys-color-primary);font-size:.9rem;font-weight:600;text-align:center}.two-pane{gap:24px}.event-header,.two-pane{display:flex;flex-wrap:wrap}.event-header{align-items:center;justify-content:space-between;gap:12px;padding:12px 24px;background-color:var(--md-sys-color-surface);border-bottom:1px solid var(--md-sys-color-surface-variant);position:-webkit-sticky;position:sticky;top:0;z-index:10}.event-header>*{min-width:0}.schedule-inner{display:inline-flex;flex-direction:column;min-width:420px;width:100%}@media (max-width:600px){.auth-page{align-items:flex-start;padding:12px}.auth-panel{padding:20px 16px}.auth-grid{grid-template-columns:1fr}.md-card{padding:14px;border-radius:12px}.page-pad{padding:16px 12px}.site-footer{align-items:flex-start;flex-direction:column;padding:20px 16px}.site-footer-links{gap:12px 18px}.dashboard-heading{align-items:stretch}.dashboard-create-link{width:100%}.dashboard-code-search{align-items:stretch;flex-direction:column}.dashboard-code-search .app-btn,.dashboard-delete-actions .app-btn,.dashboard-event-actions .app-btn,.dashboard-event-actions .dashboard-action-link{width:100%}.dashboard-delete-actions,.dashboard-event-actions{align-items:stretch;flex-direction:column}.event-header{padding:10px 12px;gap:8px}.event-header h1{font-size:1rem}.two-pane{flex-direction:column}.organizer-title{font-size:1.4rem!important}.schedule-inner{min-width:280px}.chip-row{gap:6px}.time-row{flex-direction:column}md-dialog{--md-dialog-container-max-inline-size:95vw}.time-row>div{width:100%}.settings-shell{padding-top:12px}.session-card{align-items:stretch;flex-direction:column}.session-card .app-btn,.settings-actions .app-btn{width:100%}}@media (min-width:601px) and (max-width:900px){.page-pad{padding:24px 16px}.schedule-inner{min-width:360px}}