:root{--theme-bg: #000000;--theme-text: #ffffff;--theme-text-muted: rgba(255, 255, 255, .7);--theme-border: rgba(255, 255, 255, .12);--theme-hover-bg: rgba(255, 255, 255, .06);--theme-focus-ring: rgba(255, 255, 255, .3);--theme-danger: #ff6b6b;--theme-primary: #ffffff}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--theme-bg);color:var(--theme-text);min-height:100vh}#root{min-height:100vh}a{color:var(--theme-text);text-decoration:none}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0006}.hover-glow{transition:box-shadow .2s ease,border-color .2s ease}.hover-glow:hover{box-shadow:0 0 20px #ffffff14;border-color:#fff3}.hover-bg{transition:background .2s ease}.hover-bg:hover{background:var(--theme-hover-bg)}.hover-scale{transition:transform .2s ease}.hover-scale:hover{transform:scale(1.02)}.hover-underline:after{content:"";display:block;width:0;height:1px;background:var(--theme-text);transition:width .2s ease}.hover-underline:hover:after{width:100%}.fullscreen-center{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem}.text-muted{color:var(--theme-text-muted)}.layout{min-height:100vh;display:flex;flex-direction:column}.layout .header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--theme-border);background:var(--theme-bg)}.layout .nav{display:flex;gap:1.5rem}.layout .nav-link{color:var(--theme-text-muted);transition:color .2s ease}.layout .nav-link:hover,.layout .nav-link.active{color:var(--theme-text)}.layout .header-user{display:flex;align-items:center;gap:1rem}.layout .main{flex:1;padding:1.5rem}.card{background:var(--theme-bg);border:1px solid var(--theme-border);border-radius:8px;padding:1.5rem}.btn-primary{background:var(--theme-primary);color:var(--theme-bg);border:none;padding:.6rem 1.2rem;border-radius:6px;font-weight:600}.btn-ghost{background:transparent;color:var(--theme-text);border:1px solid var(--theme-border);padding:.5rem 1rem;border-radius:6px}.btn-secondary{background:transparent;color:var(--theme-text);border:1px solid var(--theme-border);padding:.6rem 1.2rem;border-radius:6px}.btn-secondary.hover-lift:hover,.btn-primary.hover-lift:hover{opacity:.9}.error-msg{color:var(--theme-danger);font-size:.9rem;margin:.5rem 0}.login-page .login-card{max-width:360px;width:100%;text-align:center}.login-title{margin:0 0 .5rem;font-size:1.5rem}.login-subtitle{margin:0 0 1.5rem}.login-btn{width:100%}.input-field{width:100%;background:var(--theme-bg);border:1px solid var(--theme-border);color:var(--theme-text);padding:.6rem .8rem;border-radius:6px;margin-bottom:.75rem;transition:border-color .2s ease}.input-field:focus{outline:none;border-color:var(--theme-focus-ring)}textarea.input-field{min-height:120px;resize:vertical}.page-title{margin:0 0 1.5rem;font-size:1.75rem}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.dashboard-section,.section{margin-bottom:1.5rem}.section-title{margin:0 0 .75rem;font-size:1.1rem}.section-title:first-child{margin-top:0}.label{display:block;margin-bottom:.5rem;font-size:.9rem}.meeting-list{list-style:none;padding:0;margin:0}.meeting-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border-radius:6px;margin-bottom:.25rem}.meeting-id{font-weight:500}.commits-controls{margin-bottom:1rem}.commit-list{list-style:none;padding:0;margin:0}.commit-item{padding:.75rem;border-radius:6px;margin-bottom:.25rem}.commit-sublist{list-style:none;padding-left:1rem;margin:.25rem 0 0;font-size:.9rem}.commit-grouped .commit-group{padding:1rem;border-radius:6px;margin-bottom:.5rem}.commit-json{font-size:.85rem;overflow:auto;margin:.5rem 0 0;white-space:pre-wrap}.meetings-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.meeting-card{display:block;padding:1.25rem}.meeting-card .meeting-id{display:block;margin-bottom:.25rem}.meeting-date{display:block;font-size:.9rem;margin-bottom:.5rem}.meeting-summary{font-size:.9rem;margin:0;line-height:1.4}.empty-state{text-align:center;padding:2rem}.empty-state .btn-primary{margin-top:1rem}.meeting-notes-page .section{margin-bottom:1.25rem}.meeting-page-with-sidebar{display:flex;gap:0;margin-top:1rem;min-height:420px}.context-sidebar{flex-shrink:0;width:280px;background:var(--theme-bg);border:1px solid var(--theme-border);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;transition:width .2s ease,min-width .2s ease}.context-sidebar.collapsed{width:48px;min-width:48px}.context-sidebar.collapsed .context-sidebar-body,.context-sidebar.collapsed .context-sidebar-title{display:none}.context-sidebar-header{display:flex;align-items:center;gap:.5rem;padding:.6rem .75rem;border-bottom:1px solid var(--theme-border);background:#ffffff05}.context-sidebar-toggle{flex-shrink:0;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:var(--theme-text);cursor:pointer;font-size:.75rem}.context-sidebar-toggle:hover{background:var(--theme-hover-bg)}.context-sidebar-title{font-weight:600;font-size:.95rem}.context-sidebar-body{flex:1;overflow:auto;padding:.75rem;display:flex;flex-direction:column;gap:.75rem;max-height:70vh}.context-sidebar-hint{font-size:.85rem;color:var(--theme-text-muted);margin:0 0 .25rem}.context-sidebar-repo-select{width:100%;font-size:.9rem}.context-sidebar-tree{border:1px solid var(--theme-border);border-radius:6px;padding:.5rem;background:#0003;overflow:auto;max-height:280px}.context-sidebar-tree .repo-breadcrumb{margin-bottom:.5rem}.repo-dir-list-sidebar .repo-dir-item{padding:.3rem .5rem;font-size:.85rem}.repo-tree-list,.repo-tree-children{list-style:none;margin:0;padding:0}.repo-tree-dir,.repo-tree-file{list-style:none;margin:0}.repo-tree-dir-children{list-style:none;margin:0;padding:0}.repo-tree-row{display:flex;align-items:center;width:100%;text-align:left;padding:.35rem .5rem;font-size:.85rem;border:none;border-radius:4px;gap:.25rem}.repo-tree-chevron{width:1rem;flex-shrink:0;font-size:.65rem;color:var(--theme-text-muted)}.repo-tree-chevron-placeholder{visibility:hidden}.repo-tree-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.repo-tree-loading,.repo-tree-loading-row{font-size:.85rem;color:var(--theme-text-muted);padding:.35rem .5rem}.context-sidebar-selected{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--theme-border)}.context-sidebar-selected .context-path-code{font-size:.8rem}.meeting-main-content{flex:1;min-width:0;padding-left:1rem}.meeting-notes-page .actions{margin-top:1.5rem}.meeting-project-repo .meeting-project-hint{margin:0 0 .75rem;font-size:.9rem}.meeting-select-row{margin-bottom:.75rem}.meeting-select-row:last-child{margin-bottom:0}.meeting-select-row .label-inline{display:block;margin-bottom:.25rem;font-weight:500}.meeting-select-row .input-field{width:100%;max-width:24rem}.repo-file-browser{margin-top:.5rem;border:1px solid var(--theme-border);border-radius:6px;padding:.75rem;background:var(--theme-bg);max-height:280px;overflow:auto}.repo-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:0 .25rem;margin-bottom:.5rem;font-size:.9rem}.repo-breadcrumb-group{display:inline-flex;align-items:center}.repo-breadcrumb-sep{color:var(--theme-text-muted);margin-right:.25rem}.repo-breadcrumb-item{padding:.15rem .35rem;border-radius:4px;font-size:inherit}.repo-dir-list{list-style:none;margin:0;padding:0}.repo-dir-item{display:flex;align-items:center;width:100%;text-align:left;padding:.35rem .5rem;border-radius:4px;font-size:.9rem}.repo-dir-icon{margin-right:.5rem}.repo-dir-added{margin-left:auto;color:var(--theme-primary)}.context-paths-list{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--theme-border)}.context-paths-list .label-inline{display:block;margin-bottom:.35rem;font-weight:500}.context-paths-ul{list-style:none;margin:0;padding:0}.context-path-item{display:flex;align-items:center;gap:.5rem;padding:.35rem 0;border-bottom:1px solid var(--theme-border)}.context-path-item:last-child{border-bottom:none}.context-path-code{flex:1;font-size:.85rem;word-break:break-all}.context-path-remove{flex-shrink:0;padding:.2rem .4rem;font-size:.85rem}.meeting-stepper{padding:1rem 1.25rem}.meeting-stepper-list{display:flex;flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0;gap:.5rem}.meeting-stepper-item{display:flex;align-items:center}.meeting-stepper-item.active .meeting-stepper-title{font-weight:600}.meeting-stepper-item.done .meeting-stepper-num{opacity:.7}.meeting-stepper-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .75rem;border-radius:6px;background:transparent;border:1px solid var(--theme-border);color:var(--theme-text);font-size:.9rem}.meeting-stepper-btn:hover{background:var(--theme-hover-bg)}.meeting-stepper-item.active .meeting-stepper-btn{border-color:var(--theme-focus-ring);background:var(--theme-hover-bg)}.meeting-stepper-num{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--theme-border);font-size:.8rem}.meeting-stepper-item.active .meeting-stepper-num{background:var(--theme-primary);color:var(--theme-bg)}.meeting-stepper-sep{color:var(--theme-text-muted);margin-left:.25rem}.meeting-stage-actions{display:flex;gap:.75rem;margin-top:1.25rem;flex-wrap:wrap}.meeting-revise-actions{display:flex;gap:.75rem;margin-top:1rem;flex-wrap:wrap}.repo-check-list{list-style:none;margin:.5rem 0 0;padding:0}.repo-check-item{margin-bottom:.5rem}.repo-check-label{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;cursor:pointer;padding:.35rem 0}.repo-check-label input{margin-right:.25rem}.repo-check-tags{font-weight:500;min-width:6rem}.repo-check-url{font-size:.85rem;word-break:break-all}.repo-check-also{font-size:.8rem;color:var(--theme-text-muted);font-style:italic}.meeting-features-section .feature-list{list-style:none;margin:1rem 0 0;padding:0}.feature-item{margin-bottom:1rem;padding:1rem}.feature-item-head{display:flex;gap:.5rem;align-items:center;margin-bottom:.75rem}.feature-name-input{flex:1;min-width:0}.feature-work{margin:.5rem 0;font-size:.9rem}.feature-work-list{margin:.25rem 0 0 1rem;padding-left:1rem}.feature-context-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem}.feature-context-block{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--theme-border)}.feature-context-label{display:block;font-weight:600;margin-bottom:.25rem}.feature-context-hint{font-size:.85rem;margin:0 0 .5rem}.feature-context-empty{font-size:.85rem;margin:.35rem 0 0}.feature-context-paths{margin-top:.35rem}.feature-context-row .input-field{max-width:20rem}.feature-context-row button.active{border-color:var(--theme-focus-ring)}.context-sidebar-target{padding:.5rem 0;margin-bottom:.5rem;border-bottom:1px solid var(--theme-border);display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.context-sidebar-target-label{font-size:.85rem;color:var(--theme-text-muted)}.context-sidebar-target-name{font-size:.9rem}.context-sidebar-switch{font-size:.8rem;margin-left:auto}.context-sidebar-switch-hint{font-size:.8rem;width:100%;margin-top:.25rem}.task-list{margin:.5rem 0 0;padding-left:1.25rem}.task-list li{margin-bottom:.25rem}.doc-list{list-style:none;padding:0;margin:.5rem 0 0}.doc-list-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--theme-border)}.doc-list-item:last-child{border-bottom:none}.doc-remove-btn{background:transparent;border:1px solid var(--theme-border);color:var(--theme-danger);padding:.25rem .5rem;cursor:pointer;border-radius:4px;font-size:.875rem;transition:all .2s}.doc-remove-btn:hover{background:var(--theme-danger);color:var(--theme-bg)}.meeting-summary-text{margin:0;white-space:pre-wrap;color:var(--theme-text)}.attachment-list{list-style:none;padding:0;margin:0}.attachment-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--theme-border)}.attachment-item:last-child{border-bottom:none}.attachment-name{font-weight:500;color:var(--theme-text)}.attachment-download{font-size:.9rem;color:var(--theme-primary)}.file-upload-root{display:flex;flex-direction:column;gap:1rem}.file-upload-header h2{margin:0;font-size:1.1rem}.file-upload-header p{margin:.25rem 0 0;color:var(--theme-text-muted)}.file-input-label{display:inline-flex;align-items:center;padding:.55rem 1.1rem;border-radius:999px;border:1px dashed var(--theme-border);background:var(--theme-bg);color:var(--theme-text);font-size:.85rem;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.file-input-label:hover{background:var(--theme-hover-bg);border-color:var(--theme-focus-ring);transform:translateY(-1px)}.file-input-label input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.file-upload-status{display:inline-flex;align-items:center;gap:.6rem;font-size:.85rem;color:var(--theme-text-muted)}.status-spinner{width:18px;height:18px;border-radius:999px;border:2px solid var(--theme-border);border-top-color:var(--theme-primary);animation:theme-spin .9s linear infinite}@keyframes theme-spin{to{transform:rotate(360deg)}}.file-upload-output{margin:.75rem 0 0;padding:.75rem .9rem;border-radius:.75rem;background:var(--theme-hover-bg);border:1px solid var(--theme-border);font-size:.8rem;max-height:220px;overflow:auto;white-space:pre-wrap;color:var(--theme-text)}.landing-layout{min-height:100vh;display:flex;flex-direction:column}.landing-header{position:sticky;top:0;z-index:100;border-bottom:1px solid var(--theme-border);background:var(--theme-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.landing-header-inner{max-width:1200px;margin:0 auto;padding:.75rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.landing-logo{display:inline-flex;flex-direction:column;line-height:1.2;text-decoration:none;color:var(--theme-text)}.landing-logo-text{font-size:1.5rem;font-weight:700;letter-spacing:.02em}.landing-logo-sub{font-size:.7rem;color:var(--theme-text-muted);text-transform:uppercase;letter-spacing:.08em}.landing-nav{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap}.landing-nav-link{padding:.5rem .85rem;border-radius:6px;color:var(--theme-text-muted);font-size:.9rem;font-weight:500;transition:color .2s ease,background .2s ease}.landing-nav-link:hover,.landing-nav-link.active{color:var(--theme-text);background:var(--theme-hover-bg)}.landing-header-actions{display:flex;align-items:center;gap:.5rem}.landing-main{flex:1}.landing-footer{border-top:1px solid var(--theme-border);background:var(--theme-bg);margin-top:auto}.landing-footer-inner{max-width:1200px;margin:0 auto;padding:2rem 1.5rem;display:flex;flex-direction:column;gap:1.25rem;align-items:center;text-align:center}.landing-footer-brand{display:flex;flex-direction:column;align-items:center;gap:.25rem}.landing-footer-logo{font-size:1.25rem;font-weight:700;letter-spacing:.02em}.landing-footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.landing-footer-link{color:var(--theme-text-muted);font-size:.9rem;text-decoration:none}.landing-footer-link:hover{color:var(--theme-text)}.landing-footer-copy{margin:0;font-size:.8rem}.landing-hero{position:relative;min-height:60vh;display:flex;align-items:center;justify-content:center;padding:4rem 1.5rem;overflow:hidden}.landing-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 60% at 50% 20%,rgba(255,255,255,.06) 0%,transparent 55%);pointer-events:none}.landing-hero-content{position:relative;max-width:640px;text-align:center}.landing-hero-title{margin:0 0 1rem;font-size:clamp(2.25rem,5vw,3.5rem);font-weight:700;letter-spacing:-.02em;line-height:1.15}.landing-hero-subtitle{margin:0 0 2rem;font-size:1.15rem;color:var(--theme-text-muted);line-height:1.5}.landing-hero-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.landing-cta{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.landing-cta.primary{background:var(--theme-primary);color:var(--theme-bg);border:none}.landing-cta.secondary{background:transparent;color:var(--theme-text);border:1px solid var(--theme-border)}.landing-cta:hover{transform:translateY(-2px);opacity:.95}.landing-cta.primary:hover{box-shadow:0 6px 20px #ffffff26}.landing-cta.secondary:hover{border-color:var(--theme-focus-ring);box-shadow:0 4px 16px #0003}.landing-features{padding:4rem 1.5rem}.landing-features-inner{max-width:1000px;margin:0 auto}.landing-section-title{margin:0 0 2rem;font-size:1.5rem;font-weight:600;text-align:center}.landing-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.landing-feature{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem}.landing-feature-icon{font-size:2rem;line-height:1;opacity:.9}.landing-feature h3{margin:0;font-size:1.1rem;font-weight:600}.landing-feature p{margin:0;font-size:.95rem;line-height:1.45}.landing-feature code{font-size:.85em;padding:.15rem .35rem;border-radius:4px;background:var(--theme-hover-bg)}.landing-cta-block{padding:4rem 1.5rem}.landing-cta-block-inner{max-width:480px;margin:0 auto;text-align:center}.landing-cta-block-p{margin:0 0 1.5rem}.landing-section-inner{max-width:720px;margin:0 auto;padding:3rem 1.5rem}.landing-page-title{margin:0 0 .5rem;font-size:2rem;font-weight:700}.landing-lead{margin:0 0 2rem;font-size:1.05rem;line-height:1.5}.landing-card-section{margin-bottom:1.5rem;padding:1.5rem}.landing-card-section .landing-section-title{margin:0 0 .75rem;text-align:left}.landing-inline-link{color:var(--theme-text);text-decoration:underline;text-underline-offset:2px}.landing-inline-link:hover{color:var(--theme-focus-ring)}.landing-code{font-size:.9em;padding:.2rem .4rem;border-radius:4px;background:var(--theme-hover-bg)}.api-list{margin:1rem 0 0;padding-left:1.25rem;line-height:1.7}.api-list li{margin-bottom:.5rem}.api-list code{font-size:.88em}.team-links{list-style:none;padding:0;margin:1rem 0 0}.team-links li{margin-bottom:.5rem}.public-tools-page .landing-cta,.dev-team-page .landing-cta{margin-top:.5rem;display:inline-block}.projects-page .landing-section-inner{max-width:800px}.projects-search-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.25rem}.projects-search-input{max-width:320px;margin-bottom:0}.projects-search-hint{font-size:.9rem}.projects-grid{display:flex;flex-direction:column;gap:.75rem}.project-card{padding:0;overflow:hidden}.project-card-head{width:100%;display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:transparent;border:none;color:var(--theme-text);font-size:1rem;font-weight:600;text-align:left;cursor:pointer;transition:background .2s ease}.project-card-head:hover{background:var(--theme-hover-bg)}.project-card-chevron{color:var(--theme-text-muted);font-size:.75rem}.project-card-body{padding:0 1.25rem 1.25rem;border-top:1px solid var(--theme-border);display:flex;flex-direction:column;gap:1rem}.project-card-tabs{display:flex;gap:.25rem;margin:-.25rem 0 0;padding-bottom:.75rem;border-bottom:1px solid var(--theme-border)}.project-tab{padding:.5rem 1rem;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--theme-text-muted);font-size:.9rem;font-weight:500;cursor:pointer;transition:color .2s ease,background .2s ease,border-color .2s ease}.project-tab:hover{color:var(--theme-text);background:var(--theme-hover-bg)}.project-tab.active{color:var(--theme-text);background:var(--theme-hover-bg);border-color:var(--theme-border)}.project-detail{display:flex;flex-direction:column;gap:.35rem}.project-detail-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--theme-text-muted)}.project-repos{display:flex;flex-wrap:wrap;gap:.75rem}.project-repo-link{color:var(--theme-text);text-decoration:underline;text-underline-offset:2px}.project-repo-link:hover{color:var(--theme-focus-ring)}.project-download-btn{align-self:flex-start}.project-version-log{margin:0;padding:.75rem 1rem;border-radius:6px;background:var(--theme-hover-bg);border:1px solid var(--theme-border);font-size:.85rem;line-height:1.5;white-space:pre-wrap;overflow:auto;max-height:12rem;color:var(--theme-text)}.project-version-list-hint{margin:0 0 .5rem;font-size:.85rem}.project-sql-version-rows{margin-top:.25rem}.project-sql-version-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.project-sql-version-row{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1rem;padding:.6rem .75rem;border-radius:6px;background:var(--theme-hover-bg);border:1px solid var(--theme-border)}.project-version-list-scroll,.project-log-scroll{max-height:20rem;overflow-y:auto;border:1px solid var(--theme-border);border-radius:6px;background:var(--theme-hover-bg)}.project-version-item{border-bottom:1px solid var(--theme-border);padding:.75rem 1rem}.project-version-item:last-child{border-bottom:none}.project-version-item-head{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:.5rem}.project-version-badge{font-size:.8rem;font-weight:600;padding:.2rem .5rem;border-radius:4px;background:var(--theme-border);color:var(--theme-text)}.project-version-date{font-size:.8rem}.project-version-download{margin-left:auto}.project-version-sql{margin:0;padding:.5rem 0;font-size:.8rem;line-height:1.45;white-space:pre-wrap;overflow-x:auto;color:var(--theme-text)}.project-log-scroll{max-height:18rem}.project-log-entry{border-bottom:1px solid var(--theme-border);padding:.75rem 1rem}.project-log-entry:last-child{border-bottom:none}.project-log-entry-head{display:flex;align-items:center;gap:.5rem 1rem;margin-bottom:.35rem}.project-log-entry-content{margin:0;font-size:.85rem;line-height:1.5;white-space:pre-wrap;color:var(--theme-text)}.project-git-history{margin-top:.5rem}.git-history-content{display:flex;flex-direction:column;gap:1.25rem}.git-history-section{display:flex;flex-direction:column;gap:.5rem}.git-history-section .project-detail-label{margin-bottom:.25rem}.git-history-scroll{max-height:22rem;overflow-y:auto;border:1px solid var(--theme-border);border-radius:6px;background:var(--theme-hover-bg);padding:.75rem 1rem}.git-history-branches{max-height:14rem}.git-branch-repo-block{margin-bottom:1rem}.git-branch-repo-block:last-child{margin-bottom:0}.git-branch-repo-name{margin:0 0 .5rem;font-size:.9rem;font-weight:600;color:var(--theme-text)}.git-branch-list{list-style:none;padding:0;margin:0}.git-branch-item{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:.4rem 0;border-bottom:1px solid var(--theme-border);font-size:.85rem}.git-branch-item:last-child{border-bottom:none}.git-branch-name{font-weight:600;color:var(--theme-text)}.git-branch-sha{font-family:ui-monospace,monospace;font-size:.8rem}.git-branch-date,.git-branch-message{font-size:.8rem}.git-history-author-block{margin-bottom:.5rem;border:1px solid var(--theme-border);border-radius:6px;overflow:hidden;background:var(--theme-bg)}.git-history-author-block:last-child{margin-bottom:0}.git-history-author-head{width:100%;display:flex;align-items:center;gap:.5rem;padding:.6rem .75rem;border:none;background:var(--theme-hover-bg);color:var(--theme-text);font-size:.9rem;text-align:left;cursor:pointer;transition:background .2s ease}.git-history-author-head:hover{background:var(--theme-border)}.git-history-author-chevron{font-size:.7rem;color:var(--theme-text-muted);flex-shrink:0}.git-history-author{font-weight:600;flex:1;min-width:0}.git-history-author-count{font-size:.85rem;flex-shrink:0}.git-history-commit-list{list-style:none;padding:0;margin:0}.git-history-commit{padding:.5rem 0;border-bottom:1px solid var(--theme-border);display:flex;flex-direction:column;gap:.2rem}.git-history-commit:last-child{border-bottom:none}.git-history-commit-date,.git-history-commit-repo{font-size:.8rem}.git-history-commit-message{margin:0;font-size:.9rem;line-height:1.4;color:var(--theme-text)}.git-history-commit-author{font-size:.8rem}.git-repo-mini-section{margin-bottom:1.5rem}.git-repo-mini-section:last-child{margin-bottom:0}.git-repo-mini-title{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:var(--theme-text)}.git-repo-mini-hint{margin:0 0 .5rem;font-size:.85rem}.git-repo-branch-tabs{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:.75rem}.git-branch-tab{padding:.4rem .75rem;border-radius:6px;border:1px solid var(--theme-border);background:transparent;color:var(--theme-text-muted);font-size:.85rem;cursor:pointer;transition:color .2s ease,background .2s ease,border-color .2s ease}.git-branch-tab:hover{color:var(--theme-text);background:var(--theme-hover-bg)}.git-branch-tab.active{color:var(--theme-text);background:var(--theme-hover-bg);border-color:var(--theme-focus-ring)}.git-branch-tab-count{font-size:.8em;color:var(--theme-text-muted)}.git-repo-commits{display:flex;flex-direction:column;gap:.5rem}.project-readme{margin-top:.5rem;padding:1rem;border-radius:6px;background:var(--theme-hover-bg);border:1px solid var(--theme-border);font-size:.9rem;line-height:1.55;overflow:auto;max-height:28rem}.project-readme h1,.project-readme h2,.project-readme h3{margin:1rem 0 .5rem;font-weight:600}.project-readme h1{font-size:1.35rem}.project-readme h2{font-size:1.15rem}.project-readme h3{font-size:1rem}.project-readme h1:first-child,.project-readme h2:first-child,.project-readme h3:first-child{margin-top:0}.project-readme p{margin:0 0 .5rem}.project-readme ul,.project-readme ol{margin:.5rem 0;padding-left:1.5rem}.project-readme code{font-size:.9em;padding:.15rem .35rem;border-radius:4px;background:var(--theme-bg);border:1px solid var(--theme-border)}.project-readme pre{margin:.5rem 0;padding:.75rem 1rem;border-radius:6px;background:var(--theme-bg);border:1px solid var(--theme-border);overflow:auto;font-size:.85rem}.project-readme pre code{padding:0;background:none;border:none}.project-readme a{color:var(--theme-text);text-decoration:underline}.project-readme a:hover{color:var(--theme-focus-ring)}.notification-container{position:fixed;top:1rem;right:1rem;z-index:9999;display:flex;flex-direction:column;gap:.75rem;max-width:400px;pointer-events:none}.notification{pointer-events:all;background:var(--theme-bg);border:1px solid var(--theme-border);border-radius:8px;padding:1rem;display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;box-shadow:0 4px 12px #00000026;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translate(120%);opacity:0}to{transform:translate(0);opacity:1}}.notification-content{display:flex;align-items:flex-start;gap:.5rem;flex:1}.notification-icon{font-size:1.25rem;font-weight:700;line-height:1;flex-shrink:0}.notification-message{font-size:.9rem;line-height:1.4;color:var(--theme-text)}.notification-close{background:transparent;border:none;color:var(--theme-text-muted);cursor:pointer;font-size:1.25rem;line-height:1;padding:0;flex-shrink:0;transition:color .2s}.notification-close:hover{color:var(--theme-text)}.notification-success{border-left:4px solid #22c55e}.notification-success .notification-icon{color:#22c55e}.notification-error{border-left:4px solid var(--theme-danger)}.notification-error .notification-icon{color:var(--theme-danger)}.notification-warning{border-left:4px solid #f59e0b}.notification-warning .notification-icon{color:#f59e0b}.notification-info{border-left:4px solid #3b82f6}.notification-info .notification-icon{color:#3b82f6}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem}.loading-spinner-small .spinner-circle{width:20px;height:20px;border-width:2px}.loading-spinner-medium .spinner-circle{width:40px;height:40px;border-width:3px}.loading-spinner-large .spinner-circle{width:60px;height:60px;border-width:4px}.spinner-circle{border:3px solid var(--theme-border);border-top-color:var(--theme-text);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.spinner-message{font-size:.9rem;margin:0}.loading-skeleton-container{width:100%}.loading-skeleton{background:linear-gradient(90deg,var(--theme-border) 25%,var(--theme-hover-bg) 50%,var(--theme-border) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ping-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;z-index:9998;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.ping-modal{width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;animation:scaleIn .2s ease}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.ping-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--theme-border)}.ping-title{margin:0;font-size:1.5rem;font-weight:600}.ping-close{background:transparent;border:none;color:var(--theme-text);font-size:1.5rem;cursor:pointer;padding:0;line-height:1;transition:color .2s}.ping-close:hover{color:var(--theme-danger)}.ping-body{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.ping-section{display:flex;flex-direction:column;gap:.5rem}.ping-users{max-height:200px;overflow-y:auto;border:1px solid var(--theme-border);border-radius:6px;padding:.5rem;display:flex;flex-direction:column;gap:.25rem}.ping-user-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-radius:4px;cursor:pointer;transition:background .2s}.ping-user-item:hover{background:var(--theme-hover-bg)}.ping-user-item input[type=checkbox]{cursor:pointer}.ping-user-name{font-weight:500}.ping-user-email{margin-left:auto;font-size:.85rem}.ping-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid var(--theme-border)}.chat-fab{position:fixed;bottom:1.5rem;right:1.5rem;width:56px;height:56px;border-radius:50%;border:1px solid var(--theme-border);background:var(--theme-bg);color:var(--theme-text);font-size:1.5rem;cursor:pointer;box-shadow:0 4px 12px #0003;z-index:9997;transition:transform .2s,box-shadow .2s}.chat-fab:hover{transform:scale(1.05);box-shadow:0 6px 16px #00000040}.chat-panel{position:fixed;bottom:5rem;right:1.5rem;width:380px;max-width:calc(100vw - 2rem);height:480px;max-height:calc(100vh - 6rem);background:var(--theme-bg);border:1px solid var(--theme-border);border-radius:12px;box-shadow:0 8px 24px #00000040;z-index:9996;display:flex;flex-direction:column;animation:chatSlideUp .25s ease}@keyframes chatSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-panel-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--theme-border)}.chat-panel-title{margin:0;font-size:1.1rem;font-weight:600}.chat-panel-close{background:transparent;border:none;color:var(--theme-text);font-size:1.25rem;cursor:pointer;padding:0;line-height:1}.chat-panel-body{flex:1;display:flex;min-height:0}.chat-contacts{width:120px;flex-shrink:0;border-right:1px solid var(--theme-border);display:flex;flex-direction:column}.chat-contacts-header{padding:.5rem .75rem;font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--theme-text-muted)}.chat-contact-list{list-style:none;padding:0;margin:0;overflow-y:auto;flex:1}.chat-contact-item{width:100%;padding:.5rem .75rem;text-align:left;background:transparent;border:none;color:var(--theme-text);cursor:pointer;font-size:.9rem;border-left:3px solid transparent;transition:background .2s}.chat-contact-item:hover,.chat-contact-item.active{background:var(--theme-hover-bg)}.chat-contact-item.active{border-left-color:var(--theme-primary)}.chat-contact-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-empty{padding:1rem;margin:0;font-size:.9rem}.chat-messages-wrap{flex:1;display:flex;flex-direction:column;min-width:0}.chat-messages-header{padding:.5rem .75rem;border-bottom:1px solid var(--theme-border);font-weight:600;font-size:.9rem}.chat-messages{flex:1;overflow-y:auto;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.chat-message{max-width:85%;padding:.5rem .75rem;border-radius:8px;align-self:flex-start}.chat-message.sent{align-self:flex-end;background:var(--theme-primary);color:var(--theme-bg)}.chat-message.received{background:var(--theme-hover-bg);border:1px solid var(--theme-border)}.chat-message-text{margin:0 0 .25rem;font-size:.9rem}.chat-message-meta{font-size:.7rem}.chat-input-wrap{display:flex;gap:.5rem;padding:.5rem .75rem;border-top:1px solid var(--theme-border)}.chat-input{flex:1;min-width:0}.chat-send{flex-shrink:0}.org-members-page .page-lead{margin-top:.25rem;margin-bottom:1.5rem}.invite-section{margin-bottom:1.5rem}.invite-form{display:flex;gap:.75rem;align-items:center;margin-top:.75rem}.invite-form .input-field{flex:1;max-width:320px}.org-member-list{list-style:none;padding:0;margin:0}.org-member-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--theme-border)}.org-member-item:last-child{border-bottom:none}.org-member-name{font-weight:500}.org-member-email{font-size:.9rem}.header-org{font-size:.85rem;margin-right:.5rem;padding:.2rem .5rem;border-radius:4px;background:var(--theme-hover-bg)}.organizations-page .section{margin-bottom:1.5rem}.org-switcher{max-width:320px}.org-create-form{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.org-create-form .input-field{min-width:160px}.org-delete-section .input-field{max-width:320px;display:block;margin-top:.5rem}.org-member-item-manage{flex-wrap:wrap;gap:.5rem}.org-member-actions{display:flex;gap:.5rem;margin-left:auto}.org-action-btn{font-size:.85rem;padding:.25rem .5rem}
