.video-detail-page{max-width:1000px;margin:0 auto;padding:2rem;overflow-x:hidden}.video-processing-message{padding:12px 16px;background:#f0f9ff;border:1px solid #0ea5e9;border-radius:8px;color:#0369a1;margin-bottom:16px;text-align:center}.video-failed-message{padding:12px 16px;background:#fef2f2;border:1px solid #dc3545;border-radius:8px;color:#dc3545;margin-bottom:16px;text-align:center}.video-player-section{margin-bottom:1.5rem}.video-container{background:#000;border-radius:12px;overflow:hidden}.video-player{width:100%;display:block;max-height:70vh}.video-content{margin-bottom:2rem}.video-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.video-title{font-size:1.75rem;font-weight:600;margin:0;color:var(--text-primary, #333);flex:1;min-width:0;overflow-wrap:break-word;word-break:break-word}.privacy-badge{padding:.25rem .5rem;background:var(--text-secondary, #666);color:#fff;border-radius:4px;font-size:.75rem;font-weight:500;white-space:nowrap}.edit-button{padding:.5rem 1rem;background:var(--accent-color, #007aff);color:#fff;text-decoration:none;border-radius:6px;font-size:.875rem;font-weight:500;white-space:nowrap}.edit-button:hover{opacity:.9}.video-header-actions{display:flex;align-items:center;gap:.75rem}.favorite-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #ddd;border-radius:50%;background:#fff;cursor:pointer;transition:all .2s}.favorite-button:hover:not(:disabled){border-color:#e91e63;background:#fce4ec}.favorite-button.favorited{border-color:#e91e63;background:#e91e63}.favorite-button:disabled{opacity:.5;cursor:not-allowed}.heart-icon{font-size:1.25rem;color:#e91e63}.favorite-button.favorited .heart-icon{color:#fff}.collection-dropdown{position:relative}.collection-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #ddd;border-radius:50%;background:#fff;cursor:pointer;transition:all .2s}.collection-button:hover{border-color:var(--accent-color, #007aff);background:#f0f7ff}.collection-button.in-collection{border-color:var(--accent-color, #007aff);background:var(--accent-color, #007aff)}.bookmark-icon{width:18px;height:18px;color:var(--text-secondary, #666)}.collection-button:hover .bookmark-icon{color:var(--accent-color, #007aff)}.collection-button.in-collection .bookmark-icon{color:#fff}.collection-menu{position:absolute;top:100%;right:0;margin-top:.5rem;min-width:180px;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:100;overflow:hidden}.collection-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;border:none;background:#fff;cursor:pointer;text-align:left;font-size:.875rem;color:var(--text-primary, #333);transition:background .15s}.collection-menu-item:hover:not(:disabled){background:#f5f5f5}.collection-menu-item:disabled{opacity:.5;cursor:not-allowed}.collection-menu-item.in-collection{background:#f0f7ff}.check-icon{width:1rem;color:var(--accent-color, #007aff);font-weight:700}.collection-create-form{display:flex;gap:.5rem;padding:.5rem;border-top:1px solid #eee}.collection-create-input{flex:1;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem}.collection-create-input:focus{outline:none;border-color:var(--accent-color, #007aff)}.collection-create-button{padding:.5rem .75rem;border:none;border-radius:4px;background:var(--accent-color, #007aff);color:#fff;font-size:1rem;font-weight:700;cursor:pointer}.collection-create-button:hover:not(:disabled){opacity:.9}.collection-create-button:disabled{background:#ccc;cursor:not-allowed}.video-meta{display:flex;gap:1.5rem;color:var(--text-secondary, #666);font-size:.9rem;margin-bottom:1rem}.view-tab-bar{display:flex;gap:.25rem;background:#f0f0f0;padding:.25rem;border-radius:8px 8px 0 0;margin-bottom:0}.view-tab-button{flex:1;padding:.75rem 1rem;background:transparent;border:none;border-radius:6px 6px 0 0;font-size:.9rem;font-weight:500;color:var(--text-secondary, #666);cursor:pointer;transition:background .2s,color .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}.view-tab-button:hover{background:#e0e0e0}.view-tab-button.active{background:#f9f9f9;color:var(--accent-color, #007aff)}.view-tab-count{background:var(--text-secondary, #666);color:#fff;font-size:.7rem;padding:.15rem .4rem;border-radius:10px;min-width:1rem;text-align:center}.view-tab-button.active .view-tab-count{background:var(--accent-color, #007aff)}.view-tab-content{margin-top:0}.description-section{background:#f9f9f9;border-radius:0 0 12px 12px;padding:1.5rem}.video-description{margin:0;color:var(--text-primary, #333);font-size:1rem;line-height:1.6;white-space:pre-wrap;word-break:break-word}.no-description{margin:0;color:var(--text-secondary, #666);font-style:italic}.meta-item{display:flex;align-items:center}.loading-text{color:var(--text-secondary, #666);text-align:center;padding:2rem}.error-message{background:#fee;color:#c00;padding:1.5rem;border-radius:8px;text-align:center;margin-bottom:1rem}.annotations-section{background:#f9f9f9;border-radius:0 0 12px 12px;padding:1.5rem}.empty-annotations{text-align:center;padding:1.5rem;color:var(--text-secondary, #666)}.empty-annotations a{color:var(--accent-color, #007aff)}.annotations-list{display:flex;flex-direction:column;gap:.5rem}.annotation-item{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#fff;border:1px solid #eee;border-radius:8px}.annotation-timestamp{font-family:monospace;font-size:.875rem;padding:.25rem .5rem;background:var(--accent-color, #007aff);color:#fff;border:none;border-radius:4px;cursor:pointer;white-space:nowrap}.annotation-timestamp:hover{opacity:.9}.annotation-title{flex:1;min-width:0;font-weight:500;color:var(--text-primary, #333);overflow-wrap:break-word;word-break:break-word}.annotation-duration{color:var(--text-secondary, #666);font-size:.8rem}.view-standalone{padding:.25rem .5rem;font-size:.8rem;color:var(--accent-color, #007aff);text-decoration:none;border:1px solid var(--accent-color, #007aff);border-radius:4px}.view-standalone:hover{background:var(--accent-color, #007aff);color:#fff}.video-actions{padding-top:1rem;border-top:1px solid #eee}.back-link{color:var(--accent-color, #007aff);text-decoration:none;font-size:.9rem}.back-link:hover{text-decoration:underline}@media(max-width:600px){.video-detail-page{padding:1rem}.video-header{flex-direction:column}.video-meta{flex-wrap:wrap;gap:.75rem}.annotation-item{flex-wrap:wrap}.annotation-title{width:100%;order:1}.annotation-timestamp{order:2}.annotation-duration{order:3;flex:1}.view-standalone{order:4}}
