:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#228be6;--accent-bg:#228be61a;--accent-border:#228be680;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--radius-xs:2px;--radius-sm:4px;--radius:8px;--radius-lg:16px;--radius-xl:32px;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--heading:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#4dabf7;--accent-bg:#4dabf726;--accent-border:#4dabf780;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}#root.is-full-bleed{border-inline:none;width:100%}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);border-radius:var(--radius-sm);color:var(--text-h);display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.app-loading{color:var(--text);flex-grow:1;justify-content:center;align-items:center;padding:32px 20px;display:flex}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0}.login-page{flex-grow:1;justify-content:center;align-items:center;padding:32px 20px;display:flex}.login-card{border:1px solid var(--border);box-sizing:border-box;border-radius:12px;flex-direction:column;align-items:center;gap:8px;width:100%;max-width:360px;padding:48px 40px;display:flex}.login-title{margin:0 0 4px}.login-subtitle{color:var(--text);text-align:center;margin-bottom:28px}.login-microsoft-button{color:var(--text-h);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:12px;padding:10px 20px;font-size:15px;text-decoration:none;transition:box-shadow .3s,border-color .3s;display:inline-flex}.login-microsoft-button:hover{box-shadow:var(--shadow);border-color:var(--accent-border)}.login-microsoft-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.search-palette-trigger{border:1px solid var(--border);border-radius:var(--radius);height:40px;color:var(--text-h);font:inherit;cursor:pointer;background:0 0;align-items:center;gap:8px;padding:0 12px;font-size:14px;display:flex}.search-palette-trigger:hover{border-color:var(--accent-border);background:color-mix(in srgb, var(--bg), var(--accent) 5%)}.search-palette-trigger-icon{opacity:.75;font-size:15px}.search-palette-trigger-kbd{border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--mono);color:var(--text);opacity:.75;padding:2px 6px;font-size:11px}.search-palette-overlay{z-index:200;background:#0006;justify-content:center;align-items:flex-start;padding-top:14vh;display:flex;position:fixed;inset:0}.search-palette{background:var(--bg);width:90%;max-width:560px;max-height:70vh;color:var(--text);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);flex-direction:column;display:flex;overflow:hidden}.search-palette-input{border:none;border-bottom:1px solid var(--border);color:var(--text-h);font:inherit;background:0 0;outline:none;padding:16px 18px;font-size:16px}.search-palette-results{padding:8px;overflow-y:auto}.search-palette-hint,.search-palette-empty{color:var(--text);opacity:.65;text-align:center;margin:0;padding:14px 10px;font-size:13px}.search-palette-group{flex-direction:column;margin-bottom:6px;display:flex}.search-palette-group-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text);opacity:.55;padding:8px 10px 4px;font-size:11px;font-weight:600}.search-palette-item{border-radius:var(--radius-sm);width:100%;color:var(--text-h);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;display:flex}.search-palette-item.is-active{background:var(--accent-bg)}.search-palette-item-title{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:14px;font-weight:500;overflow:hidden}.search-palette-item-subtitle{color:var(--text);opacity:.65;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:12px;overflow:hidden}.search-palette-footer{border-top:1px solid var(--border);color:var(--text);opacity:.65;gap:16px;padding:10px 16px;font-size:12px;display:flex}.search-palette-footer kbd{border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--mono);margin-right:2px;padding:1px 5px;font-size:11px}.nav-menu{position:relative}.nav-menu-trigger{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;padding:0;display:flex}.nav-menu-trigger:hover{border-color:var(--accent-border);background:color-mix(in srgb, var(--bg), var(--accent) 5%)}.nav-menu-bar{background:var(--text-h);border-radius:2px;width:18px;height:2px;display:block}.nav-menu-dropdown{z-index:10;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);min-width:190px;box-shadow:var(--shadow);flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.nav-menu-link{border-radius:var(--radius-sm);color:var(--text-h);text-align:left;padding:10px 12px;font-size:14px;text-decoration:none}.nav-menu-link:hover{background:color-mix(in srgb, var(--bg), var(--accent) 5%)}.applications-menu{position:relative}.applications-menu-trigger{border:1px solid var(--border);border-radius:var(--radius);width:40px;height:40px;color:var(--text-h);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:0;display:flex}.applications-menu-trigger:hover{border-color:var(--accent-border);background:color-mix(in srgb, var(--bg), var(--accent) 5%)}.applications-menu-panel{z-index:10;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);width:min(480px,90vw);box-shadow:var(--shadow);position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.applications-menu-panel-header{border-bottom:1px solid var(--border);justify-content:flex-end;padding:10px 14px;display:flex}.applications-menu-toggle{color:var(--accent);letter-spacing:.3px;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;font-size:13px;font-weight:600;display:flex}.applications-menu-toggle:hover{text-decoration:underline}.applications-menu-body{max-height:340px;padding:14px 16px 4px;overflow-y:auto}.applications-menu-body.is-expanded{max-height:70vh}.applications-menu-group{border-bottom:1px solid var(--border);margin-bottom:14px;padding-bottom:14px}.applications-menu-group:last-child{border-bottom:none;margin-bottom:0}.applications-menu-group-label{letter-spacing:.6px;color:var(--text);opacity:.75;margin-bottom:10px;font-size:11px;font-weight:700}.applications-menu-grid{grid-template-columns:repeat(4,1fr);gap:12px 8px;display:grid}.applications-menu-app{border-radius:var(--radius-sm);flex-direction:column;align-items:center;gap:6px;padding:4px;text-decoration:none;display:flex}.applications-menu-app:hover{background:color-mix(in srgb, var(--bg), var(--accent) 5%)}.applications-menu-app-icon{border-radius:var(--radius-sm);object-fit:contain;background:var(--code-bg);width:36px;height:36px}.applications-menu-app-icon-fallback{color:var(--text-h);justify-content:center;align-items:center;font-size:15px;font-weight:600;display:flex}.applications-menu-app-name{text-align:center;color:var(--text-h);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:130%;display:-webkit-box;overflow:hidden}.applications-menu-status{color:var(--text);text-align:center;padding:12px 0 16px;font-size:13px}.applications-menu-status.is-error{color:#e03131}@media (width<=640px){.applications-menu-grid{grid-template-columns:repeat(3,1fr)}}.app-header{z-index:50;border-bottom:1px solid var(--border);background:var(--bg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px 32px;display:flex;position:sticky;top:0}.app-header-brand{letter-spacing:-.3px;color:var(--text-h);font-size:20px;font-weight:600;text-decoration:none}.app-header-brand:hover{color:var(--accent)}.app-header-actions{align-items:center;gap:12px;display:flex}.app-header-user{color:var(--text-h);opacity:.75;white-space:nowrap;font-size:14px}@media (width<=640px){.app-header-user{display:none}}.app-header-logout{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-h);cursor:pointer;font:inherit;white-space:nowrap;background:0 0;padding:8px 16px;font-size:14px}.app-header-logout:hover{border-color:var(--accent-border);background:color-mix(in srgb, var(--bg), var(--accent) 5%)}.event-modal-backdrop{z-index:100;background:#0006;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.event-modal{background:var(--bg);border:1px solid var(--border);box-sizing:border-box;text-align:left;border-radius:12px;flex-direction:column;gap:14px;width:100%;max-width:420px;max-height:90vh;padding:24px;display:flex;overflow-y:auto}.event-modal h2{margin:0;font-size:20px}.event-modal-field{color:var(--text);flex-direction:column;flex:1;gap:4px;font-size:13px;display:flex}.event-modal-field input,.event-modal-field textarea{font:inherit;color:var(--text-h);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);box-sizing:border-box;width:100%;padding:8px 10px;font-size:15px}:is(.event-modal-field input,.event-modal-field textarea):focus-visible{outline:2px solid var(--accent);outline-offset:1px}.event-modal-field textarea{resize:vertical;font-family:inherit}.event-modal-row{gap:12px;display:flex}.event-modal-checkbox{color:var(--text);align-items:center;gap:8px;font-size:14px;display:flex}.event-modal-error{color:#e5484d;margin:0;font-size:13px}.event-modal-actions{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.event-modal-actions-right{gap:8px;margin-left:auto;display:flex}.event-modal button{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-h);cursor:pointer;font:inherit;background:0 0;padding:8px 16px;font-size:14px}.event-modal button:hover:not(:disabled){border-color:var(--accent-border)}.event-modal button:disabled{opacity:.6;cursor:default}.event-modal-save{color:var(--accent);background:var(--accent-bg);border-color:var(--accent-border)}.event-modal-delete{color:#e5484d;border-color:#e5484d}.feed-link{position:relative}.feed-link>button{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-h);cursor:pointer;font:inherit;background:0 0;padding:6px 12px;font-size:14px}.feed-link>button:hover{border-color:var(--accent-border)}.feed-link-panel{z-index:20;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);width:320px;max-width:80vw;box-shadow:var(--shadow);text-align:left;flex-direction:column;gap:10px;padding:16px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.feed-link-hint{color:var(--text);margin:0;font-size:12px}.feed-link-row{gap:8px;display:flex}.feed-link-row input{min-width:0;font-size:12px;font-family:var(--mono);border:1px solid var(--border);border-radius:var(--radius);background:var(--code-bg);color:var(--text-h);flex:1;padding:6px 8px}.feed-link-row button,.feed-link-regenerate{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-h);cursor:pointer;font:inherit;white-space:nowrap;background:0 0;padding:6px 10px;font-size:12px}:is(.feed-link-row button,.feed-link-regenerate):hover:not(:disabled){border-color:var(--accent-border)}.week-calendar{box-sizing:border-box;text-align:left;width:100%;padding:24px 32px}.week-calendar-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.week-calendar-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.week-calendar-actions>button{border:1px solid var(--accent-border);border-radius:var(--radius);background:var(--accent-bg);color:var(--accent);cursor:pointer;font:inherit;padding:6px 12px;font-size:14px}.week-calendar-actions>button:hover{border-color:var(--accent)}.week-calendar-fullpage-link{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-h);padding:6px 12px;font-size:14px;text-decoration:none}.week-calendar-fullpage-link:hover{border-color:var(--accent-border)}.week-calendar-nav{gap:8px;display:flex}.week-calendar-nav button{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-h);cursor:pointer;font:inherit;background:0 0;padding:6px 12px;font-size:14px}.week-calendar-nav button:hover:not(:disabled){border-color:var(--accent-border)}.week-calendar-nav button:disabled{opacity:.5;cursor:default}.week-calendar-status{text-align:center;color:var(--text);padding:24px}.week-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}@media (width<=800px){.week-calendar-grid{grid-template-columns:1fr}}.week-day{border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:8px;min-height:140px;padding:10px;display:flex}.week-day-today{border-color:var(--accent-border);background:var(--accent-bg)}.week-day-label{color:var(--text-h);text-align:left;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;font-weight:600}.week-day-label:hover{color:var(--accent)}.week-day-events{flex-direction:column;gap:6px;display:flex}.week-day-empty{color:var(--text);opacity:.5;font-size:13px}.week-event{border-radius:var(--radius);background:var(--code-bg);text-align:left;cursor:pointer;box-sizing:border-box;border:none;flex-direction:column;width:100%;padding:6px 8px;font-family:inherit;font-size:12px;display:flex;overflow:hidden}.week-event:hover{box-shadow:var(--shadow)}.week-event-time{color:var(--text);opacity:.8;font-size:11px}.week-event-subject{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.week-event-location{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.app-sidebar{background:var(--dash-sidebar-bg);border-right:1px solid var(--dash-border);text-align:left;flex-direction:column;flex-shrink:0;gap:4px;width:220px;padding:20px 12px;display:flex;overflow-y:auto}.app-sidebar-logo{font-family:var(--mono);letter-spacing:.5px;color:var(--dash-text-h);padding:4px 8px 20px;font-size:15px;font-weight:700}.app-sidebar-logo-bracket{color:var(--dash-accent)}.app-sidebar-section{margin-top:14px}.app-sidebar-section:first-of-type{margin-top:0}.app-sidebar-section-label{font-family:var(--mono);letter-spacing:.6px;color:var(--dash-text);opacity:.6;padding:0 8px 6px;font-size:11px}.app-sidebar-bracket{opacity:.7}.app-sidebar-link{border-radius:var(--radius);color:var(--dash-text);align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;text-decoration:none;display:flex}.app-sidebar-link:hover{background:color-mix(in srgb, var(--dash-sidebar-bg), white 8%);color:var(--dash-text-h)}.app-sidebar-link.is-active{background:var(--dash-accent);color:#fff}.app-sidebar-link.is-active .app-sidebar-icon-chip{color:#fff;background:#fff3}.app-sidebar-icon-chip{background:color-mix(in srgb, var(--chip-color), transparent 82%);width:22px;height:22px;color:var(--chip-color);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.home-page{--dash-bg:#0a0a0d;--dash-surface:#17171d;--dash-sidebar-bg:#0b0b0f;--dash-border:#26262e;--dash-text:#9a9aa5;--dash-text-h:#f1f1f4;--dash-accent:#4c6ef5;text-align:left;flex:1;min-height:0;display:flex}.home-main{background-color:var(--dash-bg);background-image:radial-gradient(circle, color-mix(in srgb, var(--dash-text), transparent 75%) 1px, transparent 1px);background-size:18px 18px;flex:1;min-width:0;overflow-y:auto}.home-header{padding:24px 32px 0}.home-welcome{color:var(--dash-text-h);margin:0;font-size:32px}.home-main .week-calendar-header h2{color:var(--dash-text-h)}.home-main .week-calendar-status{color:var(--dash-text)}.home-main .week-calendar-actions button,.home-main .week-calendar-fullpage-link,.home-main .week-calendar-nav button{border-color:var(--dash-border);color:var(--dash-text-h);background:var(--dash-surface)}.home-main .week-calendar-actions>button{border-color:var(--dash-accent);background:color-mix(in srgb, var(--dash-accent), transparent 82%);color:var(--dash-accent)}.home-main .week-day{border-color:var(--dash-border);background:var(--dash-surface)}.home-main .week-day-today{border-color:var(--dash-accent);background:color-mix(in srgb, var(--dash-accent), transparent 85%)}.home-main .week-day-label{color:var(--dash-text-h)}.home-main .week-day-empty{color:var(--dash-text)}.home-main .week-event{background:color-mix(in srgb, var(--dash-surface), white 6%)}.home-main .week-event-subject{color:var(--dash-text-h)}.home-main .week-event-time,.home-main .week-event-location{color:var(--dash-text)}.modal-overlay{z-index:100;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-panel{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);width:90%;max-width:480px;max-height:85vh;box-shadow:var(--shadow);flex-direction:column;gap:.75rem;padding:1.5rem;display:flex;overflow-y:auto}.modal-panel h3{margin:0 0 .25rem}.modal-field{opacity:.85;flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}.modal-field input,.modal-field textarea{font:inherit;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);resize:vertical;padding:.4rem .6rem}.modal-error{color:#e5484d;margin:0;font-size:.85rem}.modal-actions{justify-content:space-between;align-items:center;margin-top:.5rem;display:flex}.modal-actions-right{gap:.5rem;margin-left:auto;display:flex}.modal-delete{color:#e5484d;border-radius:var(--radius);cursor:pointer;background:0 0;border:1px solid #e5484d;padding:.4rem .8rem}.modal-save{background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:.4rem .8rem}.modal-tabs{border-bottom:1px solid var(--border);gap:.25rem;margin-bottom:.25rem;display:flex}.modal-tab{color:var(--text);opacity:.6;font:inherit;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.4rem .6rem;font-size:.85rem}.modal-tab:hover{opacity:.85}.modal-tab-active{opacity:1;border-bottom-color:var(--accent)}.card-panel{flex-direction:column;gap:.6rem;display:flex}.card-panel-status{opacity:.7;margin:0;font-size:.85rem}.card-comment-list,.card-attachment-list,.card-activity-list{flex-direction:column;gap:.5rem;max-height:240px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.card-comment{border:1px solid var(--border);border-radius:var(--radius);padding:.5rem .6rem}.card-comment-meta{opacity:.65;justify-content:space-between;margin-bottom:.25rem;font-size:.75rem;display:flex}.card-comment p{white-space:pre-wrap;margin:0;font-size:.9rem}.card-comment-form{flex-direction:column;gap:.4rem;display:flex}.card-comment-form textarea{font:inherit;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);resize:vertical;padding:.4rem .6rem}.card-comment-form button{background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;align-self:flex-end;padding:.35rem .75rem}.card-comment-form button:disabled{opacity:.5;cursor:default}.card-attachment{border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:.5rem;padding:.4rem .6rem;display:flex}.card-attachment-name{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.85rem;text-decoration:none;overflow:hidden}.card-attachment-name:hover{text-decoration:underline}.card-attachment-size{opacity:.6;white-space:nowrap;font-size:.75rem}.card-attachment-remove{color:#e5484d;cursor:pointer;background:0 0;border:none;padding:.1rem .3rem;font-size:1rem;line-height:1}.card-attachment-add{border:1px solid var(--border);border-radius:var(--radius);color:var(--text);cursor:pointer;background:0 0;align-self:flex-start;padding:.35rem .75rem}.card-attachment-add:disabled{opacity:.5;cursor:default}.card-activity{border-bottom:1px solid var(--border);justify-content:space-between;gap:.5rem;padding:.35rem 0;font-size:.85rem;display:flex}.card-activity:last-child{border-bottom:none}.card-activity-text{flex:1}.card-activity-time{opacity:.55;white-space:nowrap;font-size:.75rem}.kanban-board{text-align:left;width:100%;max-width:1200px;margin:0 auto;padding:1.5rem}.kanban-board-header{margin-bottom:1rem}.kanban-status{opacity:.75;margin:.25rem 0}.kanban-columns{grid-template-columns:repeat(3,1fr);align-items:start;gap:1rem;display:grid}@media (width<=900px){.kanban-columns{grid-template-columns:1fr}}.kanban-column{border-radius:var(--radius);border:1px solid #8080804d;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.kanban-column-header{justify-content:space-between;align-items:center;display:flex}.kanban-column-header h3{margin:0;font-size:1rem}.kanban-column-count{opacity:.6;font-size:.8rem}.kanban-column-cards{flex-direction:column;gap:.5rem;min-height:2.5rem;max-height:60vh;display:flex;overflow:auto}.kanban-column-empty{opacity:.6;margin:0;font-size:.9rem}.kanban-card{text-align:left;border-radius:var(--radius);width:100%;color:inherit;cursor:grab;touch-action:none;background:0 0;border:1px solid #80808033;flex-direction:column;gap:.25rem;padding:.6rem;font-family:inherit;display:flex}.kanban-card:hover{background:#80808026}.kanban-card-title{font-weight:600}.kanban-card-desc{opacity:.8;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.85rem;display:-webkit-box;overflow:hidden}.kanban-deadline{opacity:.7;align-self:flex-start;font-size:.75rem}.kanban-deadline.overdue{color:#e5484d;opacity:1;font-weight:600}.kanban-add-card{border-radius:var(--radius);cursor:pointer;color:inherit;opacity:.75;background:0 0;border:1px dashed #80808066;padding:.4rem}.kanban-add-card:hover{opacity:1;background:#8080801a}.kanban-page{text-align:left;padding-top:24px}.kanban-back-link{color:var(--text);opacity:.75;margin:0 32px 4px;font-size:14px;text-decoration:none;display:block}.kanban-back-link:hover{opacity:1}.epitech-avatar{background:var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.epitech-avatar-img{object-fit:cover;width:100%;height:100%}.epitech-avatar-fallback{color:var(--text-h);opacity:.7;font-weight:600}.epitech-stats-page{padding-top:24px;padding-bottom:48px}.epitech-stats-back-link{color:var(--text);opacity:.75;margin:0 32px 4px;font-size:14px;text-decoration:none;display:block}.epitech-stats-back-link:hover{opacity:1}.epitech-stats-header{margin-bottom:16px;padding:0 32px}.epitech-stats-header-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.epitech-stats-synced-at{color:var(--text-h);opacity:.65;margin:4px 0 0;font-size:13px}.epitech-panel-button{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-h);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;padding:6px 12px;font-size:13px}.epitech-panel-button:hover:not(:disabled){border-color:var(--accent-border)}.epitech-panel-button:disabled{opacity:.6;cursor:default}.epitech-panel-error{color:#e05a5a;font-size:13px}.epitech-stats-status{padding:16px 32px}.epitech-stats-section{margin-top:32px;padding:0 32px}.epitech-stats-section h2{margin:0 0 12px;font-size:20px}.epitech-stats-controls{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:12px;display:flex}.epitech-stats-checkbox{color:var(--text-h);opacity:.85;cursor:pointer;white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:flex}.epitech-stats-filter{border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:420px;color:var(--text-h);font:inherit;background:0 0;padding:8px 12px;font-size:14px}.epitech-card-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.epitech-person-card{border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:12px;min-width:0;padding:10px 12px;display:flex}.epitech-person-card:hover{border-color:var(--accent-border);background:color-mix(in srgb, var(--bg), var(--accent) 5%)}.epitech-person-card.is-inactive{opacity:.55}.epitech-person-card.is-hidden{opacity:.55;border-style:dashed}.epitech-person-card.is-highlighted{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-border)}.epitech-person-info{flex:1;min-width:0}.epitech-person-hide-button{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-h);font:inherit;opacity:.6;cursor:pointer;background:0 0;flex-shrink:0;padding:4px 8px;font-size:12px}.epitech-person-hide-button:hover{opacity:1;border-color:var(--accent-border)}.epitech-person-name{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;font-size:14px;font-weight:600;display:flex;overflow:hidden}.epitech-person-detail{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.epitech-person-detail-muted{opacity:.65}.epitech-person-badge{border-radius:var(--radius-sm);background:var(--border);color:var(--text-h);opacity:.85;white-space:nowrap;padding:1px 6px;font-size:11px;font-weight:500}.epitech-person-badge.badge-inactive{background:#80808040}.epitech-person-badge.badge-hidden{border:1px dashed var(--border);background:0 0}.epitech-person-badge.badge-repeating{color:#f59f00;background:#f59f0040}.epitech-person-badge.badge-forecast{background:var(--accent-bg);color:var(--accent)}.epitech-stats-promotions{flex-direction:column;gap:8px;display:flex}.epitech-stats-promotion{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.epitech-stats-promotion-header{width:100%;color:var(--text-h);cursor:pointer;font:inherit;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;font-size:14px;display:flex}.epitech-stats-promotion-header:hover{border-color:var(--accent-border)}.epitech-stats-promotion-meta{color:var(--text-h);opacity:.7;white-space:nowrap;font-size:13px}.epitech-stats-promotion-body{flex-direction:column;gap:12px;padding:0 16px 16px;display:flex}.epitech-person-card.is-clickable{cursor:pointer}.epitech-projects-promotion-group h4{color:var(--text-h);opacity:.75;margin:8px 0 6px;font-size:13px;font-weight:600}.epitech-stats-promotion-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.epitech-stats-promotion-toolbar .epitech-stats-synced-at{margin:0}.epitech-project-description{color:var(--text-h);opacity:.85;margin:8px 0 0;font-size:14px}.epitech-project-meta-row{flex-wrap:wrap;gap:20px;margin-top:16px;display:flex}.epitech-project-meta-item{color:var(--text-h);flex-direction:column;gap:2px;font-size:14px;display:flex}.epitech-project-meta-label{opacity:.65;font-size:12px}.epitech-project-links{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.epitech-teams-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.epitech-team-card{border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:10px;padding:14px;display:flex}.epitech-team-card-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.epitech-team-name{color:var(--text-h);flex:1;font-size:14px;font-weight:600}.epitech-team-leader{align-items:center;gap:10px;display:flex}.epitech-team-members{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.epitech-team-member{align-items:center;gap:8px;display:flex}.epitech-team-repo-button{align-self:flex-start;text-decoration:none}.units-page{--dash-bg:#0a0a0d;--dash-surface:#17171d;--dash-sidebar-bg:#0b0b0f;--dash-border:#26262e;--dash-text:#9a9aa5;--dash-text-h:#f1f1f4;--dash-accent:#4c6ef5;text-align:left;flex:1;min-height:0;display:flex}.units-main{background-color:var(--dash-bg);background-image:radial-gradient(circle, color-mix(in srgb, var(--dash-text), transparent 75%) 1px, transparent 1px);background-size:18px 18px;flex:1;min-width:0;padding:24px 32px 48px;overflow-y:auto}.units-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.units-header h1{color:var(--dash-text-h);text-transform:uppercase;letter-spacing:.5px;margin:0;font-size:32px}.units-count{color:var(--dash-text);margin:4px 0 0;font-size:14px}.units-header-filters{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.units-filter{color:var(--dash-text);text-transform:uppercase;letter-spacing:.5px;flex-direction:column;gap:4px;font-size:11px;display:flex}.units-filter input,.units-filter select{font:inherit;text-transform:none;letter-spacing:normal;color:var(--dash-text-h);background:var(--dash-surface);border:1px solid var(--dash-border);border-radius:var(--radius-sm);min-width:160px;padding:7px 10px;font-size:14px}.units-refresh{border:1px solid var(--dash-border);border-radius:var(--radius-sm);background:var(--dash-surface);color:var(--dash-text-h);cursor:pointer;font:inherit;padding:8px 14px;font-size:13.5px}.units-refresh:hover{border-color:var(--dash-accent);background:color-mix(in srgb, var(--dash-surface), var(--dash-accent) 12%)}.units-refresh:disabled{opacity:.6;cursor:default}.units-synced-at{color:var(--dash-text);margin:8px 0 0;font-size:12.5px}.units-status{color:var(--dash-text);margin-top:24px}.units-status-error{color:#ff6b6b}.units-panels{flex-direction:column;gap:24px;margin-top:24px;display:flex}.units-panel{border:1px solid var(--dash-border);border-radius:var(--radius);background:var(--dash-surface);overflow:hidden}.units-panel-header{border-bottom:1px solid var(--dash-border);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.units-panel-header h2{color:var(--dash-text-h);margin:0;font-size:15px}.units-empty{color:var(--dash-text);margin:0;padding:18px}.units-table-scroll{overflow-x:auto}.units-table{border-collapse:collapse;width:100%;font-size:13.5px}.units-table th{text-align:left;color:var(--dash-text);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--dash-border);white-space:nowrap;padding:10px 16px;font-size:12px;font-weight:600}.units-table td{color:var(--dash-text-h);border-bottom:1px solid var(--dash-border);white-space:nowrap;padding:12px 16px}.units-col-expand{width:32px}.units-name-cell{white-space:normal;min-width:220px}.units-row{cursor:pointer}.units-row:hover td{background:color-mix(in srgb, var(--dash-surface), white 5%)}.units-row.is-expanded td{background:color-mix(in srgb, var(--dash-accent), transparent 90%)}.units-row:last-child td,.units-detail-row:last-child td{border-bottom:none}.units-chevron{color:var(--dash-text);transition:transform .15s;display:inline-block}.units-chevron.is-open{color:var(--dash-accent);transform:rotate(180deg)}.units-badges{flex-wrap:wrap;gap:6px;display:flex}.units-badge{font-family:var(--mono);letter-spacing:.3px;border-radius:var(--radius-xs);border:1px solid var(--dash-accent);color:var(--dash-accent);background:color-mix(in srgb, var(--dash-accent), transparent 88%);white-space:nowrap;padding:2px 7px;font-size:11px}.units-detail-row td{background:color-mix(in srgb, var(--dash-bg), white 2%);white-space:normal;cursor:default}.units-detail-status{color:var(--dash-text);margin:0;padding:4px 0;font-size:13px}.units-detail-error{color:#ff6b6b}.units-detail{flex-direction:column;gap:14px;padding:6px 0;display:flex}.units-detail-group h4{text-transform:uppercase;letter-spacing:.4px;color:var(--dash-text);margin:0 0 6px;font-size:12px}.units-detail-chips{flex-wrap:wrap;gap:6px;display:flex}.units-detail-chip{border:1px solid var(--dash-border);color:var(--dash-text-h);background:var(--dash-surface);border-radius:999px;padding:3px 9px;font-size:12.5px}.units-detail-list{color:var(--dash-text-h);margin:0;padding-left:18px;font-size:13px}.units-detail-list li{padding:2px 0}.units-detail-list-meta{color:var(--dash-text);font-size:12px}.units-pagination{border-top:1px solid var(--dash-border);color:var(--dash-text);justify-content:flex-end;align-items:center;gap:20px;padding:12px 16px;font-size:13px;display:flex}.units-pagination label{align-items:center;gap:8px;display:flex}.units-pagination select{font:inherit;color:var(--dash-text-h);background:var(--dash-surface);border:1px solid var(--dash-border);border-radius:var(--radius-xs);padding:3px 6px}.units-pagination-nav{gap:6px;display:flex}.units-pagination-nav button{border:1px solid var(--dash-border);background:var(--dash-surface);color:var(--dash-text-h);border-radius:var(--radius-xs);cursor:pointer;width:26px;height:26px;font:inherit}.units-pagination-nav button:disabled{opacity:.4;cursor:default}.units-pagination-nav button:not(:disabled):hover{border-color:var(--dash-accent)}.epitech-event-modal{max-width:640px}.epitech-event-modal-header{align-items:center;gap:10px;display:flex}.epitech-event-modal-time{color:var(--text-h);opacity:.85;margin:0;font-size:14px}.epitech-event-modal-registrations,.epitech-event-modal-slots{border-top:1px solid var(--border);padding-top:14px}:is(.epitech-event-modal-registrations,.epitech-event-modal-slots) h3{margin:0 0 10px;font-size:15px}.epitech-slots-banner{color:#e8590c;border-radius:var(--radius);background:#e677001f;border:1px solid #e6770066;align-items:center;gap:8px;margin-bottom:10px;padding:8px 12px;font-size:13px;display:flex}.epitech-slots-list{flex-direction:column;gap:6px;max-height:320px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.epitech-slot-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:6px 4px;font-size:12px;display:flex}.epitech-slot-time{color:var(--text-h);white-space:nowrap;flex:none;align-items:center;gap:6px;font-weight:600;display:flex}.epitech-slot-tag{border:1px solid var(--accent-border);background:var(--accent-bg);color:var(--accent);border-radius:var(--radius-sm);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;padding:3px 8px;font-family:ui-monospace,monospace;font-size:10px;overflow:hidden}.epitech-slot-tag--empty{border-style:dashed;border-color:var(--border);color:var(--text);opacity:.75;background:0 0}.epitech-slot-repo-link{border:1px solid var(--accent-border);border-radius:var(--radius-sm);color:var(--accent);background:var(--accent-bg);flex:none;padding:3px 10px;font-size:11px;font-weight:600;text-decoration:none}.epitech-slot-repo-link:hover{border-color:var(--accent)}.time-grid{border:1px solid var(--dash-border);border-radius:var(--radius);background:var(--dash-surface);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.time-grid-headrow,.time-grid-allday{grid-template-columns:var(--time-grid-columns);border-bottom:1px solid var(--dash-border);flex-shrink:0;display:grid}.time-grid-corner{color:var(--dash-text);border-right:1px solid var(--dash-border);justify-content:center;align-items:center;gap:4px;padding:10px 4px;font-size:11px;display:flex}.time-grid-corner strong{color:var(--dash-text-h);font-size:12px}.time-grid-daylabel{border:none;border-right:1px solid var(--dash-border);cursor:pointer;font:inherit;background:0 0;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;display:flex}.time-grid-daylabel:last-child{border-right:none}.time-grid-daylabel:hover{background:color-mix(in srgb, var(--dash-surface), white 5%)}.time-grid-daylabel-weekday{color:var(--dash-text);text-transform:capitalize;font-size:12px}.time-grid-daylabel-date{color:var(--dash-text-h);font-size:13px;font-weight:600}.time-grid-daylabel.is-today .time-grid-daylabel-weekday,.time-grid-daylabel.is-today .time-grid-daylabel-date{color:var(--dash-accent)}.time-grid-daylabel.is-weekend .time-grid-daylabel-weekday{opacity:.7}.time-grid-allday-label{color:var(--dash-text);border-right:1px solid var(--dash-border);align-items:center;padding:6px 8px;font-size:11px;display:flex}.time-grid-allday-cell{border-right:1px solid var(--dash-border);flex-direction:column;gap:3px;padding:4px 6px;display:flex}.time-grid-allday-cell:last-child{border-right:none}.time-grid-allday-chip{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--planning-accent), transparent 78%);color:var(--planning-accent);font:inherit;text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border:none;padding:3px 6px;font-size:11px;overflow:hidden}.time-grid-allday-chip:hover{background:color-mix(in srgb, var(--planning-accent), transparent 65%)}.time-grid-body{grid-template-columns:var(--time-grid-columns);flex:1;min-height:0;display:grid;overflow-y:auto}.time-grid-hours{border-right:1px solid var(--dash-border)}.time-grid-hour{height:var(--hour-height);position:relative}.time-grid-hour span{color:var(--dash-text);background:var(--dash-surface);padding:0 2px;font-size:11px;position:absolute;top:0;right:8px;transform:translateY(-50%)}.time-grid-daycol{height:calc(var(--hour-height) * 24);border-right:1px solid var(--dash-border);background-image:repeating-linear-gradient(to bottom, var(--dash-border) 0, var(--dash-border) 1px, transparent 1px, transparent var(--hour-height));cursor:pointer;position:relative}.time-grid-daycol:last-child{border-right:none}.time-grid-daycol.is-weekend{background-color:color-mix(in srgb, var(--dash-bg), transparent 40%)}.time-grid-daycol.is-today{background-color:color-mix(in srgb, var(--dash-accent), transparent 94%)}.time-grid-event{border:none;border-left:3px solid color-mix(in srgb, var(--planning-accent), black 25%);border-radius:var(--radius-sm);background:linear-gradient(180deg, color-mix(in srgb, var(--planning-accent), transparent 8%), color-mix(in srgb, var(--planning-accent), black 18%));color:#eafff5;font:inherit;text-align:left;cursor:pointer;box-sizing:border-box;flex-direction:column;gap:1px;padding:4px 8px;display:flex;position:absolute;overflow:hidden}.time-grid-event:hover{box-shadow:var(--shadow);z-index:2}.time-grid-event--epitech{background:linear-gradient(#7048e8eb,#5c3bbe);border-left-color:#5436ae}.time-grid-event-time{opacity:.85;font-size:10px}.time-grid-event-title{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.time-grid-event-desc,.time-grid-event-location{opacity:.85;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.calendar-page{--dash-bg:#0a0a0d;--dash-surface:#17171d;--dash-sidebar-bg:#0b0b0f;--dash-border:#26262e;--dash-text:#9a9aa5;--dash-text-h:#f1f1f4;--dash-accent:#4c6ef5;--planning-accent:#12b886;box-sizing:border-box;text-align:left;height:100svh;display:flex}.calendar-main{box-sizing:border-box;background-color:var(--dash-bg);background-image:radial-gradient(circle, color-mix(in srgb, var(--dash-text), transparent 75%) 1px, transparent 1px);background-size:18px 18px;flex-direction:column;flex:1;min-width:0;min-height:0;padding:24px 32px;display:flex;overflow-y:auto}.calendar-toolbar{grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin-bottom:16px;display:grid}.calendar-nav-pill{border:1px solid var(--dash-border);border-radius:var(--radius);width:fit-content;display:inline-flex;overflow:hidden}.calendar-nav-pill button{background:var(--dash-surface);color:var(--dash-text-h);font:inherit;cursor:pointer;border:none;border-right:1px solid var(--dash-border);padding:7px 14px;font-size:14px}.calendar-nav-pill button:last-child{border-right:none}.calendar-nav-pill button:hover{background:color-mix(in srgb, var(--dash-surface), white 8%)}.calendar-nav-today{font-weight:600;color:var(--planning-accent)!important}.calendar-title{color:var(--dash-text-h);text-align:center;white-space:nowrap;margin:0;font-size:22px;font-weight:600}.calendar-view-switch{border:1px solid var(--dash-border);border-radius:var(--radius);justify-self:end;display:flex;overflow:hidden}.calendar-view-switch button{background:var(--dash-surface);color:var(--dash-text);font:inherit;letter-spacing:.4px;cursor:pointer;border:none;border-right:1px solid var(--dash-border);padding:7px 14px;font-size:13px;font-weight:600}.calendar-view-switch button:last-child{border-right:none}.calendar-view-switch button:hover{color:var(--dash-text-h)}.calendar-view-switch button.active{background:var(--planning-accent);color:#06231a}.calendar-subtoolbar{align-items:center;gap:10px;margin-bottom:14px;display:flex}.calendar-page-new{border:1px solid color-mix(in srgb, var(--planning-accent), transparent 40%);border-radius:var(--radius);background:color-mix(in srgb, var(--planning-accent), transparent 85%);color:var(--planning-accent);cursor:pointer;font:inherit;padding:6px 14px;font-size:13px}.calendar-page-new:hover{border-color:var(--planning-accent)}.calendar-subtoolbar .feed-link>button{border-color:var(--dash-border);color:var(--dash-text-h);background:var(--dash-surface)}.calendar-subtoolbar .feed-link>button:hover{border-color:var(--planning-accent)}.calendar-subtoolbar .feed-link-panel{background:var(--dash-surface);border-color:var(--dash-border)}.calendar-subtoolbar .feed-link-hint{color:var(--dash-text)}.calendar-subtoolbar .feed-link-row input{background:var(--dash-bg);border-color:var(--dash-border);color:var(--dash-text-h)}.calendar-subtoolbar .feed-link-row button,.calendar-subtoolbar .feed-link-regenerate{border-color:var(--dash-border);color:var(--dash-text-h);background:var(--dash-bg)}:is(.calendar-subtoolbar .feed-link-row button,.calendar-subtoolbar .feed-link-regenerate):hover:not(:disabled){border-color:var(--planning-accent)}.calendar-epitech-status{font-size:12px}.calendar-epitech-status.error{color:#e03131}.calendar-page-status{text-align:center;color:var(--dash-text);padding:40px}.calendar-empty{color:var(--dash-text);opacity:.5;font-size:13px}.calendar-month-weekdays{grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:6px;display:grid}.calendar-month-weekdays div{text-align:center;color:var(--dash-text);opacity:.7;font-size:12px}.calendar-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.calendar-month-cell{border:1px solid var(--dash-border);border-radius:var(--radius);background:var(--dash-surface);flex-direction:column;gap:4px;min-height:100px;padding:6px;display:flex}.calendar-month-cell.dimmed{opacity:.45}.calendar-month-cell.today{border-color:var(--dash-accent);background:color-mix(in srgb, var(--dash-accent), transparent 90%)}.calendar-month-daynum{color:var(--dash-text-h);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-self:flex-start;padding:2px 4px;font-family:inherit;font-size:13px;font-weight:600}.calendar-month-daynum:hover{background:color-mix(in srgb, var(--dash-surface), white 8%);color:var(--planning-accent)}.calendar-month-events{flex-direction:column;gap:3px;display:flex}.calendar-month-event,.calendar-month-more{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--planning-accent), transparent 78%);color:var(--dash-text-h);text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border:none;padding:3px 6px;font-family:inherit;font-size:11px;overflow:hidden}:is(.calendar-month-event,.calendar-month-more):hover{box-shadow:var(--shadow)}.calendar-month-event--epitech{color:#7048e8;background:#7048e838}.calendar-month-more{color:var(--dash-text);opacity:.75;background:0 0}@media (width<=800px){.calendar-toolbar{grid-template-columns:1fr;justify-items:center}.calendar-view-switch{justify-self:center}}.alerts-page{text-align:left;padding-top:24px;padding-bottom:48px}.alerts-back-link{color:var(--text);opacity:.75;margin:0 32px 4px;font-size:14px;text-decoration:none;display:block}.alerts-back-link:hover{opacity:1}.alerts-header{margin-bottom:16px;padding:0 32px}.alerts-subtitle{opacity:.75;font-size:15px}.alerts-banner{border-radius:var(--radius);margin:0 32px 16px;padding:10px 14px;font-size:14px}.alerts-banner-error{color:var(--text-h);background:#dc26261a;border:1px solid #dc262666}.alerts-banner-status{background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--text-h)}.alerts-section{margin-bottom:32px;padding:0 32px}.alerts-section h2{margin:0 0 12px;font-size:20px}.alerts-contacts-form{flex-direction:column;gap:12px;max-width:520px;display:flex}.alerts-field{opacity:.9;flex-direction:column;gap:6px;font-size:13px;display:flex}.alerts-field span{color:var(--text-h);font-weight:500}.alerts-field-hint{opacity:.7;margin:0;font-size:12px}.alerts-field input{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-h);font:inherit;background:0 0;padding:8px 12px;font-size:14px}.alerts-field input:disabled{opacity:.6}.alerts-test-btn,.alerts-save-btn{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-h);font:inherit;cursor:pointer;background:0 0;align-self:flex-start;padding:6px 14px;font-size:13px}:is(.alerts-test-btn,.alerts-save-btn):hover:not(:disabled){border-color:var(--accent-border)}:is(.alerts-test-btn,.alerts-save-btn):disabled{opacity:.5;cursor:default}.alerts-save-btn{background:var(--accent-bg);border-color:var(--accent-border);margin-top:4px;font-weight:500}.alerts-prefs-list{flex-direction:column;gap:12px;display:flex}.alerts-pref-card{border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:16px;padding:14px 16px;display:flex}.alerts-pref-title{color:var(--text-h);flex:220px;font-weight:600}.alerts-pref-channels{flex:2 260px;gap:14px;display:flex}.alerts-channel-toggle{cursor:pointer;align-items:center;gap:6px;font-size:14px;display:flex}.alerts-lead-select{align-items:center;gap:8px;font-size:13px;display:flex}.alerts-lead-select select{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-h);font:inherit;background:0 0;padding:6px 10px;font-size:13px}.github-explorer{text-align:left;width:100%;max-width:1200px;margin:0 auto;padding:1.5rem}.gh-forms{flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem;display:flex}.gh-form{flex-direction:column;flex:1;gap:.35rem;min-width:240px;display:flex}.gh-form label{opacity:.75;font-size:.85rem}.gh-form-row{gap:.5rem;display:flex}.gh-form-row input{flex:1;padding:.4rem .6rem}.gh-status{opacity:.75;margin:.25rem 0}.gh-error{color:#e5484d}.gh-empty{opacity:.6;font-size:.9rem}.gh-layout{grid-template-columns:1.3fr 1fr 1.7fr;align-items:start;gap:1rem;display:grid}@media (width<=900px){.gh-layout{grid-template-columns:1fr}}.gh-panel{border-radius:var(--radius);border:1px solid #8080804d;max-height:70vh;padding:.75rem;overflow:auto}.gh-panel h2{margin:0 0 .5rem;font-size:1rem}.repo-item{text-align:left;border-radius:var(--radius);cursor:pointer;background:0 0;border:none;flex-direction:column;gap:.15rem;width:100%;padding:.5rem;display:flex}.repo-item:hover,.repo-item.selected{background:#80808026}.repo-name{font-weight:600}.repo-desc{opacity:.8;font-size:.85rem}.repo-meta{opacity:.6;font-size:.75rem}.tree-root,.tree-children{margin:0;padding-left:.75rem;list-style:none}.tree-root{padding-left:0}.tree-item{text-align:left;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;width:100%;padding:.15rem .3rem;font-family:inherit;display:block}.tree-item:hover,.tree-item.selected{background:#80808026}.tree-item.file{opacity:.9}.file-content{white-space:pre-wrap;word-break:break-word;margin:0;font-size:.85rem}
