.mission-list-skeleton{padding:var(--space-md) 0;flex-direction:column;display:flex}.mission-list-container{max-width:800px;padding:var(--space-lg);margin:0 auto}.user-profile-section{color:#fff;border-radius:var(--radius-xl);padding:var(--space-xl);margin-bottom:var(--space-xl);text-align:center;box-shadow:var(--shadow-card);background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.user-profile-section h2{margin:0 0 var(--space-md) 0;font-size:var(--font-size-2xl);font-weight:700}.user-stats{justify-content:center;gap:var(--space-lg);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.stat-item{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3}.user-profile-section p{opacity:.9;font-size:var(--font-size-lg);margin:0}.tab-navigation{border-radius:var(--radius-lg);margin-bottom:var(--space-xl);background:#f8fafc;padding:4px;display:flex;box-shadow:inset 0 1px 3px #0000001a}.tab-button{padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-medium);cursor:pointer;background:0 0;border:none;flex:1;font-weight:500;transition:all .2s}.tab-button:hover{color:var(--color-text-dark);background:#ffffff80}.tab-button.active{color:var(--color-text-dark);background:#fff;font-weight:600;box-shadow:0 1px 3px #0000001f}.mission-list-header{margin-bottom:var(--space-xl);justify-content:space-between;align-items:center;display:flex}.mission-list-header h1{font-size:var(--font-size-2xl);color:var(--color-text-dark);margin:0;font-weight:700}.add-mission-button{color:#fff;border-radius:var(--radius-lg);padding:var(--space-md) var(--space-xl);font-family:var(--font-family);font-size:var(--font-size-base);cursor:pointer;transition:all var(--transition);align-items:center;gap:var(--space-sm);box-shadow:var(--shadow-card);background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;font-weight:600;display:flex}.add-mission-button:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.add-mission-button:active{transform:translateY(0)}.add-mission-button span{font-size:18px;font-weight:700}.error-message{color:#dc2626;border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-lg);background:#fee2e2;border:1px solid #fecaca;justify-content:space-between;align-items:center;font-weight:500;display:flex}.error-dismiss{color:#dc2626;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:18px;font-weight:700;transition:background-color .2s;display:flex}.error-dismiss:hover{background:#dc26261a}.missions-container{gap:var(--space-md);flex-direction:column;display:flex}.empty-state{text-align:center;padding:var(--space-3xl);color:var(--color-text-light);font-size:var(--font-size-lg);border-radius:var(--radius-xl);background:#f8fafc;border:2px dashed #e2e8f0}@media (width<=768px){.mission-list-container{padding:var(--space-md)}.user-stats{gap:var(--space-sm);flex-direction:column}.mission-list-header{gap:var(--space-lg);flex-direction:column;align-items:stretch}.mission-list-header h1{text-align:center;font-size:var(--font-size-xl)}.add-mission-button{justify-content:center;width:100%}.tab-navigation{margin-bottom:var(--space-lg)}.tab-button{padding:var(--space-sm) var(--space-md);font-size:var(--font-size-sm)}}@media (width<=480px){.user-profile-section{padding:var(--space-lg)}.user-profile-section h2{font-size:var(--font-size-xl)}.stat-item{padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-xs)}.empty-state{padding:var(--space-xl);font-size:var(--font-size-base)}}.loading-state{text-align:center;padding:var(--space-3xl);color:var(--color-text-light);font-size:var(--font-size-lg)}@media (prefers-reduced-motion:reduce){.add-mission-button,.tab-button,.error-dismiss{transition:none}.add-mission-button:hover{transform:none}}.tab-button:focus,.add-mission-button:focus,.error-dismiss:focus{outline:2px solid var(--color-primary,#3b82f6);outline-offset:2px}.mission-card.dragging{opacity:.5;touch-action:none;-webkit-user-select:none;user-select:none;transform:scale(.98)}.mission-card.drag-over{border-top:3px solid #2196f3}.custom-order-indicator{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:12px 20px;display:flex;box-shadow:0 2px 8px #667eea4d}.custom-order-indicator-content{align-items:center;gap:10px;display:flex}.custom-order-indicator-icon{font-size:20px}.custom-order-indicator-text h4{margin:0 0 4px;font-size:16px;font-weight:600}.custom-order-indicator-text p{opacity:.9;margin:0;font-size:13px}.drag-prompt-inline{z-index:1000;white-space:nowrap;background:#fff;border:2px solid #2196f3;border-radius:8px;padding:12px 16px;animation:.3s slideDown;position:absolute;top:-60px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}@keyframes slideDown{0%{opacity:0;transform:translate(-50%)translateY(-10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.drag-prompt-content{flex-direction:column;gap:8px;display:flex}.drag-prompt-text{color:#333;margin:0;font-size:14px}.drag-prompt-button{color:#fff;cursor:pointer;background:#2196f3;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:background .2s}.drag-prompt-button:hover{background:#1976d2}.drag-prompt-close{color:#666;cursor:pointer;background:0 0;border:none;padding:4px;font-size:18px;line-height:1;position:absolute;top:8px;right:8px}.drag-prompt-close:hover{color:#333}.mission-wrapper{position:relative}.mission-due-groups{gap:var(--space-lg);flex-direction:column;display:flex}.mission-due-group{flex-direction:column;display:flex}.mission-due-group-header{align-items:center;gap:var(--space-sm);width:100%;max-width:var(--max-width-card);margin:0 auto var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-bg-white);border:1px solid var(--color-border-yellow);border-radius:var(--radius-md);font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-dark);text-align:left;cursor:pointer;box-shadow:var(--shadow-card);transition:box-shadow var(--transition), transform var(--transition);box-sizing:border-box;font-weight:700;display:flex}.mission-due-group-header:hover{box-shadow:var(--shadow-hover)}.mission-due-group-header:active{transform:translateY(1px)}.mission-due-group-chevron{color:var(--color-text-medium);flex-shrink:0;font-size:22px!important}.mission-due-group-label{letter-spacing:.02em;flex:1}.mission-due-group-count{font-size:var(--font-size-sm);color:var(--color-text-medium);background:var(--color-bg-main);border:1px solid var(--color-border);text-align:center;border-radius:999px;flex-shrink:0;min-width:24px;padding:2px 10px;font-weight:600}.mission-due-group--overdue .mission-due-group-header{border-color:#fecaca}.mission-due-group--overdue .mission-due-group-label,.mission-due-group--overdue .mission-due-group-chevron{color:#b91c1c}.mission-due-group--overdue .mission-due-group-count{color:#b91c1c;background:#fee2e2;border-color:#fecaca}.mission-due-group--today .mission-due-group-header{background:#fff8eb;border-color:#fed7aa}.mission-due-group--today .mission-due-group-label,.mission-due-group--today .mission-due-group-chevron{color:var(--color-warning)}.mission-due-group--today .mission-due-group-count{color:var(--color-warning);background:#ffedd5;border-color:#fed7aa}.mission-due-group--done .mission-due-group-header{border-color:var(--color-border);background:#f9fafb}.mission-due-group--done .mission-due-group-label,.mission-due-group--done .mission-due-group-chevron{color:var(--color-text-medium)}.mission-due-group--done .mission-due-group-count{background:var(--color-bg-main);border-color:var(--color-border);color:var(--color-text-medium)}.edmps-header{align-items:center;gap:var(--space-md);padding:var(--space-md);grid-template-columns:32px 1fr 32px;display:grid}.edmps-section{padding:0 var(--space-md) var(--space-md);gap:var(--space-sm);flex-direction:column;display:flex}.daily-missions-container{background:var(--color-bg-main);min-height:100dvh;font-family:var(--font-family);padding:var(--space-xl);max-width:600px;margin:0 auto}.dm-page-header{padding:16px var(--space-xl);background:var(--color-bg-white);border-bottom:1px solid var(--color-border-yellow);z-index:10;margin:calc(-1 * var(--space-xl)) calc(-1 * var(--space-xl)) var(--space-xl);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.dm-back-btn{cursor:pointer;color:var(--color-text-medium);border-radius:var(--radius-sm);transition:color var(--transition);background:0 0;border:none;align-items:center;padding:4px;display:flex}.dm-back-btn:hover{color:var(--color-text-dark)}.dm-page-title{font-size:var(--font-size-xl);color:var(--color-text-dark);margin:0;font-weight:700}.dm-header-spacer{width:32px}.daily-missions-header{text-align:center;margin-bottom:var(--space-xl)}.page-subtitle{font-size:var(--font-size-base);color:var(--color-text-medium);margin:0;line-height:1.4}.mission-slots{gap:var(--space-md);margin-bottom:var(--space-xl);flex-direction:column;display:flex}.mission-slot{width:100%;min-height:80px}.mission-slot-empty{background:var(--color-bg-white);border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);min-height:80px;transition:var(--transition);justify-content:center;align-items:center;display:flex}.mission-slot-empty:hover{border-color:var(--color-primary);background:#3b82f605}.slot-placeholder{text-align:center;color:var(--color-text-light)}.slot-number{background:var(--color-border);width:32px;height:32px;font-weight:600;font-size:var(--font-size-base);margin:0 auto var(--space-xs) auto;color:var(--color-text-medium);border-radius:50%;justify-content:center;align-items:center;display:flex}.slot-text{font-size:var(--font-size-sm);margin:0;font-weight:500}.mission-slot-filled{background:var(--color-bg-white);border:2px solid var(--color-border-yellow);border-radius:var(--radius-lg);padding:var(--space-md);align-items:center;gap:var(--space-md);box-shadow:var(--shadow-card);transition:var(--transition);min-height:80px;display:flex;position:relative}.mission-slot-filled:hover{box-shadow:var(--shadow-hover)}.mission-info{text-align:left;flex:1}.mission-title{font-size:var(--font-size-base);color:var(--color-text-dark);margin:0 0 var(--space-xs) 0;text-align:left;font-weight:600;line-height:1.3}.mission-description{font-size:var(--font-size-sm);color:var(--color-text-medium);margin:0 0 var(--space-xs) 0;-webkit-line-clamp:2;text-align:left;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.mission-badges{flex-flow:wrap!important;justify-content:flex-start!important;align-items:center!important;gap:8px!important;width:100%!important;margin-top:8px!important;display:flex!important}.remove-mission-btn{border-radius:var(--radius-sm);background:var(--color-error);color:#fff;cursor:pointer;width:24px;height:24px;transition:var(--transition);border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;font-weight:600;line-height:1;display:flex}.remove-mission-btn:hover{background:#b91c1c;transform:scale(1.05)}.action-buttons{gap:var(--space-md);margin-bottom:var(--space-xl);grid-template-columns:1fr 1fr;display:grid}.action-btn{width:100%;padding:var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;transition:var(--transition);justify-content:center;align-items:center;gap:var(--space-xs);white-space:nowrap;border:none;font-weight:500;display:flex}.action-btn.secondary{background:var(--color-bg-white);color:var(--color-primary);border:2px solid var(--color-primary)}.action-btn.secondary:hover:not(:disabled){background:var(--color-primary);color:#fff;transform:translateY(-1px)}.action-btn:disabled{opacity:.5;cursor:not-allowed;color:#9ca3af;background-color:#f3f4f6;transform:none!important}.set-missions-footer--page{background:linear-gradient(to top, var(--color-bg-main) 80%, transparent);padding:var(--space-md) 0 var(--space-xl);margin-top:var(--space-lg);position:sticky;bottom:0}.set-missions-btn{width:100%;padding:var(--space-lg) var(--space-xl);border-radius:var(--radius-md);font-size:var(--font-size-lg);cursor:pointer;transition:var(--transition);border:none;font-weight:600}.set-missions-btn.enabled{background:var(--color-success);color:#fff}.set-missions-btn.enabled:hover{box-shadow:var(--shadow-hover);background:#047857;transform:translateY(-2px)}.set-missions-btn.disabled,.set-missions-btn:disabled{opacity:.6;cursor:not-allowed;background:var(--color-border);color:var(--color-text-light)}.set-missions-btn.saving{cursor:wait;background-color:#9ca3af}.requirements-text{color:#f59e0b;text-align:center;margin-top:8px;font-size:.9rem;font-weight:500}.loading-message,.error-message{text-align:center;border-radius:8px;margin:20px 0;padding:40px 20px;font-size:1.1rem;animation:.3s ease-out fadeIn}.loading-message{color:#0369a1;background-color:#f0f9ff;border:2px solid #bae6fd}.error-message{color:#dc2626;background-color:#fef2f2;border:2px solid #fecaca}.current-status{text-align:center;background-color:#f0fdf4;border:2px solid #bbf7d0;border-radius:8px;margin:15px 0;padding:15px;animation:.3s ease-out fadeIn}.status-text{color:#166534;margin:0;font-weight:500}.mission-bank-overlay{background:var(--color-bg-overlay);z-index:1000;padding:var(--space-xs);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.mission-bank-modal{background:var(--color-bg-main);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:500px;max-height:80vh;animation:.2s ease-out slideUp;display:flex;position:relative;overflow:hidden}.bank-mission-scroll{overscroll-behavior:contain;flex:1;overflow-y:auto}.modal-header{padding:var(--space-xl);border-bottom:2px solid var(--color-border);background:var(--color-bg-white);border-radius:var(--radius-lg) var(--radius-lg) 0 0;justify-content:space-between;align-items:center;display:flex}.modal-header h2{font-size:var(--font-size-xl);color:var(--color-text-dark);margin:0;font-weight:600}.close-btn{background:var(--color-border);width:32px;height:32px;color:var(--color-text-medium);cursor:pointer;transition:var(--transition);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:20px;font-weight:600;line-height:1;display:flex}.close-btn:hover{background:var(--color-error);color:#fff}.bank-search-bar{padding:var(--space-sm) var(--space-xl);background:var(--color-bg-white);border-bottom:1px solid var(--color-border);flex-shrink:0;align-items:center;gap:8px;display:flex}.bank-search-icon{color:var(--color-text-light,#9ca3af);flex-shrink:0;font-size:18px}.bank-search-input{color:var(--color-text-main);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:14px}.bank-search-input::placeholder{color:var(--color-text-light,#9ca3af)}.bank-search-clear{cursor:pointer;color:var(--color-text-light,#9ca3af);background:0 0;border:none;flex-shrink:0;align-items:center;padding:0;transition:color .15s;display:flex}.bank-search-clear:hover{color:var(--color-text-main)}.bank-search-clear .material-icons{font-size:16px}.bank-filter-btn{background:var(--color-bg-main);border:1.5px solid var(--color-border);cursor:pointer;width:32px;height:32px;color:var(--color-text-medium);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex;position:relative}.bank-filter-btn:hover{background:var(--color-border)}.bank-filter-btn--active{border-color:var(--color-primary,#6c63ff);color:var(--color-primary,#6c63ff)}.bank-filter-dot{background:var(--color-primary,#6c63ff);border:1.5px solid var(--color-bg-white);border-radius:50%;width:6px;height:6px;position:absolute;top:5px;right:5px}.mission-list-selection-mode .mission-wrapper.selectable:hover{transform:scale(1.02)}.mission-list-selection-mode .mission-wrapper.selected{animation:.3s selectedPulse}.mission-list-selection-mode .mission-card{pointer-events:none}.mission-list-selection-mode .mission-wrapper.selectable{pointer-events:auto}.help-text{color:#6b7280;text-align:center;margin-top:10px;font-size:.9rem;line-height:1.4}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes selectedPulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1.02)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.current-status{margin:10px 0;padding:12px}.status-text{font-size:.9rem}.help-text{font-size:.8rem}}@media (width<=640px){.daily-missions-container{padding:var(--space-md)}.action-buttons{gap:var(--space-sm);grid-template-columns:1fr}.mission-bank-modal{margin:var(--space-md);max-height:calc(100vh - 2 * var(--space-md));max-height:calc(100dvh - 2 * var(--space-md))}}.future-date-mode{border-top:4px solid #f59e0b}.future-status{background-color:#fefce8!important;border-color:#fde68a!important}.future-status .status-text{color:#92400e!important}.mission-slot-filled.completed{opacity:.7;border-color:var(--color-border,#d1d5db);background-color:#e5e7eb}.mission-title.completed{color:var(--color-text-placeholder,#9ca3af);text-decoration:line-through}.mission-description.completed{color:var(--color-text-placeholder,#9ca3af)}.mission-slot-filled,.mission-title,.mission-description{transition:all var(--transition,.2s ease)}.mission-slot-filled.completed .mission-badges .due-date-badge,.mission-slot-filled.completed .mission-badges .skill-badge,.mission-slot-filled.completed .mission-badges .difficulty-badge{opacity:.6}.completed-badge{display:none}.action-btn--with-hint{white-space:normal;flex-direction:column;gap:2px}.bank-btn-due-soon-hint{color:#ea580c;letter-spacing:.01em;font-size:11px;font-weight:600}
