@import url("/assets/css/design-system.css");.hidden{display:none!important;visibility:hidden!important}.sub-page-header{background:var(--bg-primary);border-bottom:1px solid var(--border-light);padding:var(--spacing-base) 0;position:sticky;top:0;z-index:100}.sub-page-nav{display:flex;align-items:center;justify-content:space-between}.sub-page-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);flex:1;text-align:center}.sub-page-action{width:80px}.tab-btn{white-space:nowrap;padding:var(--spacing-md) var(--spacing-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);border-bottom:2px solid transparent;transition:all var(--transition-base);background:none;cursor:pointer}.tab-btn:hover{color:var(--warning-color);border-color:var(--accent-color)}.active-tab{color:var(--warning-color);border-color:var(--warning-color)}.line-clamp-2{-webkit-line-clamp:2;line-clamp:2}.line-clamp-2,.line-clamp-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;line-clamp:3}.quick-nav{display:flex;gap:var(--spacing-md);padding:.5rem 0 1rem;margin-bottom:var(--spacing-xl);border-bottom:1px solid var(--border-light)}.quick-nav,.quick-nav-btn{background:var(--bg-primary)}.quick-nav-btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:.375rem .75rem;border-radius:var(--radius-md);border:1px solid var(--border-color);color:var(--text-tertiary);font-size:.875rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;min-width:120px;height:30px;justify-content:center;white-space:nowrap}.quick-nav-btn:hover{background:var(--bg-secondary);border-color:var(--text-quaternary)}.quick-nav-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--bg-primary)}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .375rem;background:var(--border-light);color:var(--text-secondary);border-radius:var(--radius-full);font-size:.75rem;font-weight:var(--font-weight-semibold)}.quick-nav-btn.active .count-badge{background:var(--bg-primary);color:var(--color-primary)}.trip-section{margin-bottom:3rem;scroll-margin-top:150px}#panel-completed{padding-top:3rem}.section-header{margin-bottom:var(--spacing-xl)}.section-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1.5rem;font-weight:var(--font-weight-bold);color:var(--text-primary)}.section-title i{font-size:1.25rem}.trip-management{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-light)}.trip-card--overlay .trip-management{margin-top:.5rem;padding-top:.75rem}.management-footer{justify-content:space-between;margin-top:.75rem;min-height:2rem}.footer-left,.footer-right,.management-footer{display:flex;align-items:center}.footer-right{gap:var(--spacing-sm)}.pending-badge{display:inline-flex;align-items:center;gap:.375rem;background-color:var(--warning-bg);color:var(--color-warning-text);padding:.375rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:var(--font-weight-semibold)}.pending-badge i{animation:bell-ring 2s ease-in-out infinite}@keyframes bell-ring{0%,to{transform:rotate(0deg)}10%,30%{transform:rotate(-10deg)}20%,40%{transform:rotate(10deg)}}.departure-warning{display:flex;align-items:center;gap:var(--spacing-sm);background-color:var(--warning-bg);border-left:4px solid var(--warning-color);padding:var(--spacing-md);border-radius:.375rem;font-size:.875rem;color:var(--color-warning-text);margin-bottom:var(--spacing-md)}.departure-warning i{color:var(--warning-color);flex-shrink:0}.management-actions{display:flex;flex-direction:column;gap:var(--spacing-md)}.primary-actions,.secondary-actions{display:flex;gap:var(--spacing-sm)}.secondary-actions{justify-content:flex-end}.btn-manage{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:.75rem 1rem;font-size:.875rem;font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all .2s ease;flex:1}.btn-manage:hover{transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.15)}.btn-manage:active{transform:translateY(0)}.btn-manage i{font-size:1rem}.btn-edit{background:var(--color-primary);color:white}.btn-edit:hover{background:var(--color-primary-dark)}.btn-manage-trip{background:var(--color-success);color:white}.btn-manage-trip:hover{background:var(--color-success-dark)}.btn-detail{background:var(--color-primary);color:white}.btn-detail:hover{background:var(--color-primary-dark)}.btn-exit{background:var(--color-danger);color:white}.btn-exit:hover{background:var(--color-danger-dark)}.btn-withdraw{background:var(--color-danger);color:white}.btn-withdraw:hover{background:var(--color-danger-dark)}.btn-diary{background:var(--color-primary);color:white}.btn-diary:hover{background:#3a5fa8}.btn-view-diary{background:var(--color-primary);color:white}.btn-view-diary:hover{background:#3a5fa8}.btn-icon{width:40px;height:40px;border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-tertiary);border:none;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.btn-icon:hover{background:var(--border-light);color:var(--text-secondary);transform:scale(1.1)}.btn-icon.btn-depart{background:var(--color-warning);color:white}.btn-icon.btn-depart:hover{background:var(--color-accent-dark)}.btn-icon.btn-finish{background:var(--color-success);color:white}.btn-icon.btn-finish:hover{background:var(--color-success-dark)}.btn-icon.btn-share{background:var(--color-primary);color:white}.btn-icon.btn-share:hover{background:#3a5fa8}.management-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;display:flex;align-items:center;justify-content:center}.modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);cursor:pointer}.modal-content{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);width:90%;max-width:700px;max-height:85vh;flex-direction:column;z-index:2001}.modal-content,.modal-header{position:relative;display:flex}.modal-header{align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--border-light)}.modal-header h2{font-size:1.25rem;font-weight:var(--font-weight-semibold);color:var(--text-primary);gap:var(--spacing-sm)}.modal-close,.modal-header h2{display:flex;align-items:center}.modal-close{position:absolute;top:1rem;right:1rem;z-index:10;width:2.5rem;height:2.5rem;border-radius:var(--radius-md);border:none;background:var(--bg-tertiary);color:var(--text-tertiary);cursor:pointer;transition:all .2s;justify-content:center}.modal-close:hover{background:var(--border-light);color:var(--text-secondary)}.modal-tabs{display:flex;border-bottom:1px solid var(--border-light);background:var(--bg-secondary)}.modal-tab{flex:1;padding:var(--spacing-base);border:none;background:none;color:var(--text-tertiary);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);position:relative}.modal-tab:hover{color:var(--text-secondary);background:var(--bg-tertiary)}.modal-tab.active{color:var(--primary-color);background:var(--bg-primary);border-bottom:2px solid var(--primary-color)}.tab-badge{background:var(--danger-color);color:var(--bg-primary);font-size:.75rem;padding:.125rem .5rem;border-radius:var(--radius-full);font-weight:var(--font-weight-semibold)}.modal-body{flex:1;overflow-y:auto;padding:1.5rem}.tab-panel{display:none}.tab-panel.active{display:block}.application-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:1.25rem;transition:all .2s}.application-card:hover{border-color:var(--primary-color);box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.applicant-info{display:flex;align-items:center;gap:var(--spacing-base);margin-bottom:var(--spacing-base)}.applicant-avatar{width:3rem;height:3rem;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-soft) 0,var(--color-primary) 100%);color:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:var(--font-weight-semibold);flex-shrink:0}.applicant-details h4{font-size:1rem;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:.25rem}.applicant-message{background:var(--bg-primary);padding:var(--spacing-base);border-radius:var(--radius-md);border-left:3px solid var(--primary-color);margin-bottom:var(--spacing-base)}.applicant-message i{color:var(--primary-color);margin-right:.5rem}.applicant-message p{color:var(--text-secondary);font-size:.9375rem;line-height:1.6}.application-actions{display:flex;gap:var(--spacing-md)}.btn-approve,.btn-reject{flex:1;padding:.625rem 1rem;border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.btn-approve{background:var(--success-color);color:var(--bg-primary)}.btn-approve:hover{background:var(--success-dark)}.btn-reject{background:var(--danger-color);color:var(--bg-primary)}.btn-reject:hover{background:var(--danger-dark)}.members-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.member-card{display:flex;align-items:flex-start;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--spacing-base);transition:all .2s}.member-card:hover{border-color:var(--border-color)}.member-info{display:flex;align-items:flex-start;gap:var(--spacing-base)}.member-details,.member-info{flex:1;min-width:0}.member-name-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);margin-bottom:.25rem}.member-name-row h4{flex:1;min-width:0;margin-bottom:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-avatar{width:2.5rem;height:2.5rem;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-soft) 0,var(--color-primary) 100%);color:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:var(--font-weight-semibold);flex-shrink:0}.member-avatar.host-badge{border:2px solid var(--warning-color);background:linear-gradient(135deg,var(--warning-color) 0,var(--accent-dark) 100%)}.member-details h4{font-size:.9375rem;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:0;display:flex;align-items:center;gap:var(--spacing-sm)}.role-badge{font-size:.75rem;padding:.125rem .5rem;background:var(--warning-bg);color:var(--accent-dark);border-radius:.25rem}.btn-remove-member,.role-badge{font-weight:var(--font-weight-medium)}.btn-remove-member{flex-shrink:0;padding:.375rem .625rem;border:1px solid var(--danger-color);background:var(--bg-primary);color:var(--danger-color);border-radius:var(--radius-md);font-size:.8125rem;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap}.btn-remove-member:hover{background:var(--danger-color);color:var(--bg-primary)}@media (max-width:768px){.management-actions{gap:var(--spacing-xs)}.btn-manage{padding:.4375rem .625rem;flex:1 1 auto;min-width:calc(50% - .1875rem)}.btn-manage,.btn-manage i{font-size:var(--font-size-sm)}.modal-content{width:95%;max-height:90vh}.modal-body,.modal-header{padding:var(--spacing-xl)}.application-actions{flex-direction:column}.btn-approve,.btn-reject{width:100%}.member-name-row h4{font-size:.875rem}.btn-remove-member{padding:.25rem .5rem;font-size:.75rem;gap:.2rem}.btn-remove-member i{font-size:.6875rem}}@media (max-width:480px){.departure-warning,.pending-badge{font-size:var(--font-size-sm)}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast:high){.application-card,.member-card,.modal-content,.trip-card{border-width:2px}}.btn-approve:focus,.btn-manage:focus,.btn-reject:focus,.btn-remove-member:focus,.modal-close:focus,.modal-tab:focus{outline:3px solid var(--primary-color);outline-offset:2px}