:root{--text-primary:#333333;--text-secondary:#666666;--text-muted:#999999;--text-light:#888888;--text-tertiary:#999999;--bg-primary:#f5f5f5;--bg-secondary:#ffffff;--bg-tertiary:#f9f9f9;--bg-hover:#e5e7eb;--border-hover:#9ca3af;--background-primary:var(--bg-primary);--background-secondary:var(--bg-secondary);--background-tertiary:var(--bg-tertiary);--border-light:#e0e0e0;--border-medium:#ddd;--border-dark:#ccc;--shadow-sm:0 1px 2px rgba(0,0,0,0.1);--shadow-md:0 2px 4px rgba(0,0,0,0.1);--shadow-lg:0 4px 6px rgba(0,0,0,0.1);--accent-primary:#007bff;--accent-primary-alpha:rgba(0,123,255,0.2);--accent-primary-dark:#0056b3;--diff-background-color:#ffffff;--diff-text-color:#24292e;--diff-font-family:Consolas,Courier,monospace;--diff-selection-background-color:#b3d7ff;--diff-selection-text-color:var(--diff-text-color);--diff-gutter-insert-background-color:#d6fedb;--diff-gutter-insert-text-color:var(--diff-text-color);--diff-gutter-delete-background-color:#fadde0;--diff-gutter-delete-text-color:var(--diff-text-color);--diff-gutter-selected-background-color:#fffce0;--diff-gutter-selected-text-color:var(--diff-text-color);--diff-code-insert-background-color:#eaffee;--diff-code-insert-text-color:var(--diff-text-color);--diff-code-delete-background-color:#fdeff0;--diff-code-delete-text-color:var(--diff-text-color);--diff-code-insert-edit-background-color:#c0dc91;--diff-code-insert-edit-text-color:var(--diff-text-color);--diff-code-delete-edit-background-color:#f39ea2;--diff-code-delete-edit-text-color:var(--diff-text-color);--diff-code-selected-background-color:#fffce0;--diff-code-selected-text-color:var(--diff-text-color);--diff-omit-gutter-line-color:#cb2a1d}[data-theme=dark]{--text-primary:#f8f9fa;--text-secondary:#dee2e6;--text-muted:#adb5bd;--text-light:#6c757d;--text-tertiary:#adb5bd;--bg-primary:#0d1117;--bg-secondary:#161b22;--bg-tertiary:#21262d;--bg-hover:#2a2f36;--border-hover:#3a3f46;--background-primary:var(--bg-primary);--background-secondary:var(--bg-secondary);--background-tertiary:var(--bg-tertiary);--border-light:#30363d;--border-medium:#21262d;--border-dark:#6e7681;--shadow-sm:0 1px 2px rgba(0,0,0,0.4);--shadow-md:0 2px 4px rgba(0,0,0,0.4);--shadow-lg:0 4px 6px rgba(0,0,0,0.4);--accent-primary:#4dabf7;--accent-primary-alpha:rgba(77,171,247,0.2);--accent-primary-dark:#339af0;--diff-background-color:#0d1117;--diff-text-color:#f0f6fc;--diff-font-family:Consolas,Courier,monospace;--diff-selection-background-color:#264f78;--diff-selection-text-color:var(--diff-text-color);--diff-gutter-insert-background-color:#1a472a;--diff-gutter-insert-text-color:var(--diff-text-color);--diff-gutter-delete-background-color:#5c1a1a;--diff-gutter-delete-text-color:var(--diff-text-color);--diff-gutter-selected-background-color:#4a3c00;--diff-gutter-selected-text-color:var(--diff-text-color);--diff-code-insert-background-color:#0d2818;--diff-code-insert-text-color:var(--diff-text-color);--diff-code-delete-background-color:#2d1616;--diff-code-delete-text-color:var(--diff-text-color);--diff-code-insert-edit-background-color:#1a472a;--diff-code-insert-edit-text-color:var(--diff-text-color);--diff-code-delete-edit-background-color:#5c1a1a;--diff-code-delete-edit-text-color:var(--diff-text-color);--diff-code-selected-background-color:#4a3c00;--diff-code-selected-text-color:var(--diff-text-color);--diff-omit-gutter-line-color:#ff6b6b}:root{--icon-size-xs:12px;--icon-size-sm:16px;--icon-size-md:18px;--icon-size-lg:22px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.projects-page::-webkit-scrollbar{width:6px}.projects-page::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:3px}.projects-page::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:3px}.projects-page::-webkit-scrollbar-thumb:hover{background:var(--border-dark)}.projects-page{padding:0 24px 24px;height:100%;overflow:auto}.projects-page .format-section-header{display:flex;align-items:center;gap:8px;justify-content:flex-end;width:100%;margin-bottom:8px}.projects-page .format-section-header .cover-select-trigger{border:none;border-radius:4px;font-weight:600;justify-content:center;text-decoration:none;outline:none}.projects-page .format-section-header .cover-select-trigger:focus{outline:2px solid rgba(0,0,0,0);outline-offset:2px}.projects-page .format-section-header .cover-select-trigger:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.projects-page .format-section-header .cover-select-trigger{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:12px;color:var(--text-secondary);font-size:.75rem;font-weight:500;white-space:nowrap;cursor:pointer;transition:all .2s ease}.projects-page .format-section-header .cover-select-trigger:hover{background:var(--bg-secondary);border-color:var(--border-medium)}.projects-page .format-section-header .cover-select-trigger:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary-alpha)}.projects-page .format-section-header .cover-select-trigger svg:last-child{opacity:.7;transition:transform .2s ease}.projects-page .error,.projects-page .loading{padding:24px}.projects-page .page-header{display:flex;align-items:center;justify-content:space-between;margin-top:16px}.projects-page .page-header .header-content h1{margin:0}.projects-page .page-header .header-content p{margin-top:4px}.projects-page .page-header .new-project-link{padding:8px 12px;border-radius:8px;border:none;border-radius:4px;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;outline:none}.projects-page .page-header .new-project-link:focus{outline:2px solid rgba(0,0,0,0);outline-offset:2px}.projects-page .page-header .new-project-link:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.projects-page .page-header .new-project-link{background-color:#007bff;color:#fff}.projects-page .page-header .new-project-link:hover:not(:disabled){background-color:#0056b3;transform:translateY(-1px)}.projects-page .page-header .new-project-link:active:not(:disabled){transform:translateY(0)}.projects-page .page-header .header-actions{display:flex;align-items:center;gap:8px}.projects-page .page-header .view-toggle{display:inline-flex;gap:8px;background:rgba(0,0,0,0);border:1px solid var(--border-light);border-radius:999px;padding:4px}.projects-page .page-header .view-toggle .toggle-option{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;cursor:pointer;user-select:none;font-size:.8rem}.projects-page .page-header .view-toggle .toggle-option input{display:none}.projects-page .page-header .view-toggle .toggle-option.active{background:var(--background-secondary);border:1px solid var(--border-medium)}.projects-page .projects-controls{margin-top:16px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;background:var(--bg-primary);padding-top:12px;padding-bottom:12px;border-bottom:1px solid var(--border-light)}.projects-page .projects-controls .projects-search{flex:1 1 280px;min-width:240px;padding:8px 10px;border:1px solid var(--border-light);border-radius:8px;background:var(--background-secondary);color:var(--text-primary)}.projects-page .projects-controls .grouping-controls{display:inline-flex;gap:8px;height:33px;background:rgba(0,0,0,0);border:1px solid var(--border-light);border-radius:8px;padding:4px}.projects-page .projects-controls .grouping-controls .group-option{display:inline-flex;align-items:center;gap:6px;padding:1px 10px;border-radius:8px;font-size:.8rem;cursor:pointer;user-select:none}.projects-page .projects-controls .grouping-controls .group-option input{display:none}.projects-page .projects-controls .grouping-controls .group-option.active{background:var(--background-secondary);border:1px solid var(--border-medium)}.projects-page .projects-controls .group-pills{display:flex;flex-wrap:wrap;gap:8px;align-items:center;max-width:100%;flex-basis:100%;margin-top:6px}.projects-page .projects-controls .group-pill{border:1px solid var(--border-light);background:var(--background-secondary);color:var(--text-primary);border-radius:999px;padding:6px 10px;cursor:pointer;font-size:12px;line-height:1;white-space:nowrap;transition:background .15s ease,border-color .15s ease,transform .1s ease;animation:pills-enter .3s ease-out both}.projects-page .projects-controls .group-pill:hover{background:var(--background-tertiary);border-color:var(--border-medium)}.projects-page .projects-controls .group-pill:active{transform:translateY(1px)}.projects-page .projects-controls .group-pill:first-child{animation-delay:20ms}.projects-page .projects-controls .group-pill:nth-child(2){animation-delay:40ms}.projects-page .projects-controls .group-pill:nth-child(3){animation-delay:60ms}.projects-page .projects-controls .group-pill:nth-child(4){animation-delay:80ms}.projects-page .projects-controls .group-pill:nth-child(5){animation-delay:.1s}.projects-page .projects-controls .group-pill:nth-child(6){animation-delay:.12s}.projects-page .projects-controls .group-pill:nth-child(7){animation-delay:.14s}.projects-page .projects-controls .group-pill:nth-child(8){animation-delay:.16s}.projects-page .projects-controls .group-pill:nth-child(9){animation-delay:.18s}.projects-page .projects-controls .group-pill:nth-child(10){animation-delay:.2s}.projects-page .projects-controls .group-pill:nth-child(11){animation-delay:.22s}.projects-page .projects-controls .group-pill:nth-child(12){animation-delay:.24s}.projects-page .projects-section{margin-top:16px}.projects-page .projects-section__header{margin:12px 0 8px;font-size:14px;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.02em}.projects-page .projects-grid{margin:.75rem 0 1.5rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.projects-page .project-card{border:1px solid var(--border-medium);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;position:relative}.projects-page .project-card--not-accessible{opacity:1;position:relative}.projects-page .project-card--not-accessible:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.1);pointer-events:none;z-index:1}.projects-page .project-card .carousel-dots{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);display:flex;gap:6px;padding:4px 6px;background:rgba(0,0,0,.35);border-radius:12px;pointer-events:auto;z-index:2}.projects-page .project-card .carousel-dots .dot{width:8px;height:8px;border-radius:50%;border:0;background:hsla(0,0%,100%,.7);padding:0;cursor:pointer;transition:background .2s ease,transform .2s ease}.projects-page .project-card .carousel-dots .dot.active{background:#fff;transform:scale(1.15)}.projects-page .project-card .project-info{padding:16px;flex:1;display:flex;flex-direction:column;justify-content:space-between}.projects-page .project-card .project-info h3{margin-top:0;margin-bottom:8px}.projects-page .project-card .project-info .project-meta p{margin-top:4px;color:var(--text-secondary)}.projects-page .project-card .project-info .project-meta p.project-name{margin-top:8px;font-size:12px}.projects-page .project-card .format-cover-controls{margin-top:0;margin-bottom:.5rem;display:flex;width:100%;align-items:center;justify-content:flex-end;gap:8px}.projects-page .project-card .format-cover-controls .format-pills{display:flex;gap:6px;background:rgba(0,0,0,0);border:1px solid var(--border-light);border-radius:999px;padding:4px}.projects-page .project-card .format-cover-controls .format-pills .format-pill{border:1px solid rgba(0,0,0,0);background:var(--background-secondary);color:var(--text-primary);border-radius:999px;padding:6px 10px;cursor:pointer;font-size:12px;line-height:1;white-space:nowrap;transition:background .15s ease,border-color .15s ease,transform .1s ease,color .15s ease}.projects-page .project-card .format-cover-controls .format-pills .format-pill:hover{background:var(--background-tertiary);border-color:var(--border-medium)}.projects-page .project-card .format-cover-controls .format-pills .format-pill:active{transform:translateY(1px)}.projects-page .project-card .format-cover-controls .format-pills .format-pill.active{background:#007bff;color:#fff;border-color:#0056b3}.projects-page .project-card .formats{display:flex;flex-direction:column;gap:.75rem;padding:0}.projects-page .project-card .format-section{display:flex;flex-direction:column;gap:.3rem}.projects-page .project-card .format-section h5{color:var(--text-primary);margin:0 0 8px;font-size:.9rem;font-weight:600}.projects-page .project-card .format-row{display:flex;align-items:center;justify-content:space-between;padding:6px;flex-direction:column;background:var(--bg-tertiary);border-radius:4px;border:1px solid var(--border-light);margin-bottom:.4rem;transition:all .2s ease;box-shadow:0 1px 3px rgba(0,0,0,.1)}.projects-page .project-card .format-row:hover{background:var(--bg-secondary);border-color:var(--border-dark);box-shadow:0 2px 6px rgba(0,0,0,.15);transform:translateY(-1px)}.projects-page .project-card .format-info{display:flex;flex-direction:column;align-items:flex-start;gap:8px;flex:0 1 auto;min-width:0;max-width:140px;margin-right:16px}.projects-page .project-card .format-info .format-info-header{display:flex;align-items:center;gap:8px;width:100%;flex-shrink:0}.projects-page .project-card .format-info .download-info-hint{display:flex;align-items:center;gap:.3rem;padding:.2rem .4rem;font-size:.65rem;color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:3px;cursor:help;width:100%;flex-shrink:0;white-space:nowrap}.projects-page .project-card .format-info .download-info-hint .hint-text{font-weight:500;opacity:.85}.projects-page .project-card .format-info .download-info-hint svg{opacity:.7;flex-shrink:0}.projects-page .project-card .format-name{font-weight:500;color:var(--text-primary);font-size:.8rem}.projects-page .project-card .status-icon{width:18px;display:inline-flex;justify-content:center}.projects-page .project-card .format-actions{display:flex;flex-direction:column;gap:6px;flex:1 1 auto;width:100%;min-width:160px}.projects-page .project-card .format-actions .format-actions-container{display:flex;gap:6px;flex-wrap:nowrap;flex-direction:row;width:100%}.projects-page .project-card .format-actions .format-actions-container .action-button{flex:1;min-width:0}.projects-page .project-card .format-actions .zip-download-container .download-button-wrapper{display:flex;flex-direction:column;gap:.25rem;width:100%}.projects-page .project-card .format-actions .zip-download-container .zip-download-button{border:none;border-radius:4px;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;text-decoration:none;outline:none}.projects-page .project-card .format-actions .zip-download-container .zip-download-button:focus{outline:2px solid rgba(0,0,0,0);outline-offset:2px}.projects-page .project-card .format-actions .zip-download-container .zip-download-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.projects-page .project-card .format-actions .zip-download-container .zip-download-button{background-color:#6c757d;color:#fff}.projects-page .project-card .format-actions .zip-download-container .zip-download-button:hover:not(:disabled){background-color:#5a6268;transform:translateY(-1px)}.projects-page .project-card .format-actions .zip-download-container .zip-download-button:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .format-actions .zip-download-container .zip-download-button{padding:.3rem .5rem;font-size:.8rem;border-radius:3px;width:100%;display:flex;align-items:center;justify-content:center;gap:.4rem}.projects-page .project-card .format-actions .zip-download-container .zip-download-button.zip-available{background-color:#28a745;color:#fff}.projects-page .project-card .format-actions .zip-download-container .zip-download-button.zip-available:hover:not(:disabled){background-color:#218838;transform:translateY(-1px)}.projects-page .project-card .format-actions .zip-download-container .zip-download-button.zip-available:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .format-actions .zip-download-container .zip-download-button.zip-available{border:1px solid var(--border-medium)}.projects-page .project-card .format-actions .zip-download-container .zip-download-button.pdf-only{background-color:#6c757d;color:#fff}.projects-page .project-card .format-actions .zip-download-container .zip-download-button.pdf-only:hover:not(:disabled){background-color:#5a6268;transform:translateY(-1px)}.projects-page .project-card .format-actions .zip-download-container .zip-download-button.pdf-only:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .format-actions .zip-download-container .zip-download-button.pdf-only{border:1px solid var(--border-medium)}.projects-page .project-card .format-actions .zip-download-container .zip-download-button .download-type-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;opacity:.9}.projects-page .project-card .action-button{border:none;border-radius:4px;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;outline:none}.projects-page .project-card .action-button:focus{outline:2px solid rgba(0,0,0,0);outline-offset:2px}.projects-page .project-card .action-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.projects-page .project-card .action-button{background-color:#6c757d;color:#fff}.projects-page .project-card .action-button:hover:not(:disabled){background-color:#5a6268;transform:translateY(-1px)}.projects-page .project-card .action-button:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .action-button{padding:.3rem .5rem;font-size:.8rem;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;height:28px}.projects-page .project-card .action-button.view-button{background-color:#007bff;color:#fff}.projects-page .project-card .action-button.view-button:hover:not(:disabled){background-color:#0056b3;transform:translateY(-1px)}.projects-page .project-card .action-button.view-button:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .action-button.download-button{background-color:#28a745;color:#fff}.projects-page .project-card .action-button.download-button:hover:not(:disabled){background-color:#218838;transform:translateY(-1px)}.projects-page .project-card .action-button.download-button:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .action-button.download-button{padding:4px 8px;border:1px solid var(--border-medium);border-radius:6px}.projects-page .project-card .action-button.disabled,.projects-page .project-card .action-button:disabled{opacity:.6;cursor:not-allowed}.projects-page .project-card .format-loading-spinner{width:14px;height:14px;border:2px solid var(--border-light);border-top:2px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;display:inline-block}.projects-page .project-card .no-formats{color:var(--text-muted);font-style:italic}.projects-page .project-card .format-section.actions-section{margin-top:8px}.projects-page .project-card .format-section.actions-section .actions-container{display:flex;gap:8px;flex-wrap:wrap;flex-direction:row;width:100%}.projects-page .project-card .format-button{border:none;border-radius:4px;font-weight:600;cursor:pointer;outline:none}.projects-page .project-card .format-button:focus{outline:2px solid rgba(0,0,0,0);outline-offset:2px}.projects-page .project-card .format-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.projects-page .project-card .format-button{padding:6px 10px;border:1px solid var(--border-medium);border-radius:6px;text-decoration:none;display:inline-flex;align-items:center;gap:.4rem;transition:all .2s ease;font-weight:500;flex:1 1 calc(50% - 8px);max-width:100%;box-sizing:border-box;justify-content:center}.projects-page .project-card .format-button.markdown-button{background-color:#28a745;color:#fff}.projects-page .project-card .format-button.markdown-button:hover:not(:disabled){background-color:#218838;transform:translateY(-1px)}.projects-page .project-card .format-button.markdown-button:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .format-button.config-button{background-color:#6f42c1;color:#fff}.projects-page .project-card .format-button.config-button:hover:not(:disabled){background-color:#5a32a3;transform:translateY(-1px)}.projects-page .project-card .format-button.config-button:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .format-button.members-button{background-color:#17a2b8;color:#fff}.projects-page .project-card .format-button.members-button:hover:not(:disabled){background-color:#138496;transform:translateY(-1px)}.projects-page .project-card .format-button.members-button:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .format-button.covers-button{background-color:#ffc107;color:#fff}.projects-page .project-card .format-button.covers-button:hover:not(:disabled){background-color:#e8650e;transform:translateY(-1px)}.projects-page .project-card .format-button.covers-button:active:not(:disabled){transform:translateY(0)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}