: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;--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;--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}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.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 .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 .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;background:rgba(0,0,0,0);border:1px solid var(--border-light);border-radius:999px;padding:4px}.projects-page .projects-controls .grouping-controls .group-option{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;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-top:24px;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:12px;display:flex;align-items:center;justify-content:space-between;gap:8px}.projects-page .project-card .format-cover-controls .format-pills{display:inline-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 .interiors-section{margin-top:12px}.projects-page .project-card .interiors-section .interiors-header{display:flex;align-items:center;justify-content:flex-end;gap:8px}.projects-page .project-card .interiors-section .interiors-header .format-select-dropdown{padding:6px 8px;border:1px solid var(--border-medium);border-radius:6px;background:var(--background-primary);color:var(--text-primary)}.projects-page .project-card .interiors-section .interiors-list{display:flex;flex-direction:column;gap:6px}.projects-page .project-card .interiors-section .interiors-list .format-row{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border:1px solid var(--border-light);border-radius:6px;background:var(--background-secondary)}.projects-page .project-card .interiors-section .interiors-list .format-row .format-info{display:flex;align-items:center;gap:8px}.projects-page .project-card .interiors-section .interiors-list .format-row .format-info .row-title{font-size:11px;text-transform:uppercase;background:var(--background-tertiary);color:var(--text-secondary);padding:2px 6px;border-radius:4px}.projects-page .project-card .interiors-section .interiors-list .format-row .format-info .format-name{font-weight:600}.projects-page .project-card .interiors-section .interiors-list .format-row .format-actions{display:flex;gap:6px}.projects-page .project-card .interiors-section .interiors-list .format-row .format-actions .action-button{width:32px;height:28px;border-radius:6px;background:var(--background-primary);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 .project-card .interiors-section .interiors-list .format-row .format-actions .action-button:focus{outline:2px solid rgba(0,0,0,0);outline-offset:2px}.projects-page .project-card .interiors-section .interiors-list .format-row .format-actions .action-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.projects-page .project-card .interiors-section .interiors-list .format-row .format-actions .action-button{background-color:#6c757d;color:#fff}.projects-page .project-card .interiors-section .interiors-list .format-row .format-actions .action-button:hover:not(:disabled){background-color:#5a6268;transform:translateY(-1px)}.projects-page .project-card .interiors-section .interiors-list .format-row .format-actions .action-button:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .interiors-section .interiors-list .format-row .format-actions .action-button.disabled{pointer-events:none;opacity:.5}.projects-page .project-card .interiors-section .no-interiors{color:var(--text-secondary)}.projects-page .project-card .covers-section{margin-top:12px}.projects-page .project-card .covers-section .covers-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.projects-page .project-card .covers-section .covers-header .cover-select-dropdown,.projects-page .project-card .covers-section .covers-header .format-select-dropdown{padding:6px 8px;border:1px solid var(--border-medium);border-radius:6px;background:var(--background-primary);color:var(--text-primary)}.projects-page .project-card .covers-section .covers-list{display:flex;flex-direction:column;gap:6px}.projects-page .project-card .covers-section .covers-list .format-row{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border:1px solid var(--border-light);border-radius:6px;background:var(--background-secondary)}.projects-page .project-card .covers-section .covers-list .format-row .format-info{display:flex;align-items:center;gap:8px}.projects-page .project-card .covers-section .covers-list .format-row .format-info .row-title{font-size:11px;text-transform:uppercase;background:var(--background-tertiary);color:var(--text-secondary);padding:2px 6px;border-radius:4px}.projects-page .project-card .covers-section .covers-list .format-row .format-info .format-name{font-weight:600}.projects-page .project-card .covers-section .covers-list .format-row .format-actions{display:flex;gap:6px}.projects-page .project-card .covers-section .covers-list .format-row .format-actions .action-button{width:32px;height:28px;border-radius:6px;background:var(--background-primary);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 .project-card .covers-section .covers-list .format-row .format-actions .action-button:focus{outline:2px solid rgba(0,0,0,0);outline-offset:2px}.projects-page .project-card .covers-section .covers-list .format-row .format-actions .action-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.projects-page .project-card .covers-section .covers-list .format-row .format-actions .action-button{background-color:#6c757d;color:#fff}.projects-page .project-card .covers-section .covers-list .format-row .format-actions .action-button:hover:not(:disabled){background-color:#5a6268;transform:translateY(-1px)}.projects-page .project-card .covers-section .covers-list .format-row .format-actions .action-button:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .actions-section{margin-top:12px;display:flex;gap:8px;width:100%;flex-wrap:wrap;align-items:stretch}.projects-page .project-card .actions-section a{padding:6px 10px;border-radius:6px;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 .project-card .actions-section a:focus{outline:2px solid rgba(0,0,0,0);outline-offset:2px}.projects-page .project-card .actions-section a:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.projects-page .project-card .actions-section a{background-color:#6c757d;color:#fff}.projects-page .project-card .actions-section a:hover:not(:disabled){background-color:#5a6268;transform:translateY(-1px)}.projects-page .project-card .actions-section a:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .actions-section a{flex:1 1 calc(50% - 8px);max-width:100%;box-sizing:border-box;text-align:center}.projects-page .project-card .actions-section a.markdown-button{background-color:#28a745;color:#fff}.projects-page .project-card .actions-section a.markdown-button:hover:not(:disabled){background-color:#218838;transform:translateY(-1px)}.projects-page .project-card .actions-section a.markdown-button:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .actions-section a.config-button{background-color:#6f42c1;color:#fff}.projects-page .project-card .actions-section a.config-button:hover:not(:disabled){background-color:#5a32a3;transform:translateY(-1px)}.projects-page .project-card .actions-section a.config-button:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .actions-section a.members-button{background-color:#17a2b8;color:#fff}.projects-page .project-card .actions-section a.members-button:hover:not(:disabled){background-color:#138496;transform:translateY(-1px)}.projects-page .project-card .actions-section a.members-button:active:not(:disabled){transform:translateY(0)}.projects-page .project-card .actions-section a.cover-button{background-color:#ffc107;color:#fff}.projects-page .project-card .actions-section a.cover-button:hover:not(:disabled){background-color:#e8650e;transform:translateY(-1px)}.projects-page .project-card .actions-section a.cover-button:active:not(:disabled){transform:translateY(0)}