.wpft-memorial-manager-container{margin-bottom:20px}.wpft-create-memorial-tabs{border-bottom:1px solid #ccc;margin-bottom:15px;padding-bottom:5px}.wpft-tab-button{background:#f0f0f0;border:1px solid #ccc;border-bottom:none;border-top-left-radius:4px;border-top-right-radius:4px;cursor:pointer;margin-right:5px;padding:8px 15px}.wpft-tab-button.active{background:#fff;border-bottom:1px solid #fff;font-weight:700;position:relative;top:1px}.wpft-create-memorial-form{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:4px;margin-bottom:30px;padding:20px}.wpft-create-memorial-form h3{margin-bottom:15px;margin-top:0}.wpft-create-memorial-form .select2-container{flex-grow:0;width:100%!important}#wpft_create_memorial_button{box-sizing:border-box;height:36px;line-height:34px;padding:0 15px!important;width:100%}.wpft-my-memorials-list h3{margin-bottom:15px}.wpft-my-memorials-list ul{list-style:none;margin:0;padding:0}.wpft-delete-memorial-button{background-color:#f8d7da;border-color:#f5c6cb;color:#721c24;font-size:.85em;padding:3px 8px}.wpft-delete-memorial-button:hover{background-color:#f1b0b7;border-color:#eba3aa}.wpft-memorial-items-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));list-style:none;margin:0;padding:0}.wpft-memorial-item-card{background-color:#fff;border:1px solid #e0e0e0;border-radius:5px;box-shadow:0 2px 5px rgba(0,0,0,.08);display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .2s ease-in-out}.wpft-memorial-item-card:hover{box-shadow:0 4px 10px rgba(0,0,0,.12)}.wpft-memorial-item-card--focused{box-shadow:0 0 0 3px #0073aa!important}a.wpft-memorial-card-link{color:inherit;display:flex;flex-direction:column;flex-grow:1;text-decoration:none}.wpft-memorial-card-image{align-items:center;background-color:#f0f0f0;display:flex;justify-content:center;padding-top:60%;position:relative;width:100%}.wpft-memorial-card-image img{border:2px solid #fff;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.2);height:auto;left:50%;max-height:80%;max-width:80%;object-fit:cover;position:absolute;top:50%;transform:translate(-50%,-50%);width:auto}.wpft-memorial-card-image img.wpft-memorial-card-image-person2{left:65%;max-height:45%;max-width:45%;transform:translate(-35%,-50%)}.wpft-memorial-card-image img:first-child.wpft-memorial-card-image-person2~img{left:35%;max-height:45%;max-width:45%;transform:translate(-65%,-50%)}.wpft-memorial-card-name{border-bottom:1px solid #f0f0f0;color:#333;flex-grow:1;font-size:1.1em;font-weight:700;padding:10px 15px;text-align:center}.wpft-memorial-card-date{background-color:#f9f9f9;color:#777;font-size:.85em;padding:8px 15px;text-align:center}.wpft-memorial-card-actions{background-color:#f9f9f9;border-top:1px solid #f0f0f0;padding:10px 15px;text-align:right}
.wpft-talent-record-container{font-family:sans-serif;margin-bottom:20px}.wpft-talent-record-container h2{border-bottom:1px solid #eee;color:#333;margin-bottom:25px;padding-bottom:10px;text-align:center}.wpft-talent-controls{align-items:center;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:20px;padding:10px}.wpft-talent-person-selector{align-items:center;display:flex;flex-grow:1;gap:8px;min-width:250px}.wpft-talent-person-selector label{font-weight:700;margin-bottom:0;white-space:nowrap}.wpft-select2-talent-record.select2-container{flex-grow:1;min-width:200px;width:auto!important}#wpft_nominate_candidate_button,#wpft_show_talent_standards_button{flex-shrink:0;font-size:.9em;padding:8px 15px}.wpft-talent-section{margin-bottom:30px}.wpft-talent-section h3{border-bottom:1px solid #e0e0e0;color:#444;font-size:1.4em;margin-bottom:15px;padding-bottom:8px}.wpft-talent-generation-group{margin-bottom:25px}.wpft-talent-generation-label{border-left:3px solid #007bff;color:#555;font-size:1.2em;margin-bottom:10px;padding-left:10px}.wpft-talent-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.wpft-talent-card{background-color:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 2px 4px rgba(0,0,0,.05);display:flex;flex-direction:column;justify-content:space-between;padding:15px;position:relative;text-align:center;transition:box-shadow .2s ease-in-out}.wpft-talent-card:hover{box-shadow:0 4px 8px rgba(0,0,0,.1)}.wpft-talent-card-badge{border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.2);color:#fff;font-size:.8em;font-weight:700;left:50%;padding:3px 10px;position:absolute;top:-10px;transform:translateX(-50%)}.wpft-badge-candidate{background-color:#ffc107}.wpft-badge-talent{background-color:#28a745}.wpft-talent-avatar-link{display:block;margin-bottom:10px}.wpft-talent-avatar{border:3px solid #eee;border-radius:50%;height:100px;margin:10px auto 5px;object-fit:cover;width:100px}.wpft-talent-name{color:#333;flex-grow:1;font-size:1.15em;margin-bottom:10px;min-height:2.4em}.wpft-talent-name a{color:inherit;text-decoration:none}.wpft-talent-name a:hover{text-decoration:underline}.wpft-talent-actions{align-items:center;border-top:1px solid #f0f0f0;display:flex;justify-content:space-around;margin-top:10px;padding-top:10px}.wpft-view-voters-button,.wpft-vote-button{border-radius:4px;cursor:pointer;font-size:.85em;padding:6px 12px}.wpft-vote-button{background-color:#007bff;border:1px solid #007bff;color:#fff}.wpft-vote-button:hover:not(:disabled){background-color:#0056b3}.wpft-vote-button.voted,.wpft-vote-button:disabled{background-color:#6c757d;border-color:#6c757d;cursor:not-allowed}.wpft-vote-button .fa-thumbs-up{margin-right:5px}.wpft-vote-button .fa-spin{animation:fa-spin 1s linear infinite}.wpft-view-voters-button{background-color:#f0f0f0;border:1px solid #ccc;color:#333}.wpft-view-voters-button:hover{background-color:#e0e0e0}.wpft-modal{background-color:rgba(0,0,0,.5);display:none;height:100%;left:0;overflow:auto;position:fixed;top:0;width:100%;z-index:10010}.wpft-modal-content{background-color:#fefefe;border:1px solid #888;border-radius:8px;box-shadow:0 5px 15px rgba(0,0,0,.2);margin:10% auto;max-width:600px;padding:25px;position:relative;width:80%}.wpft-modal-close-btn{color:#aaa;cursor:pointer;font-size:28px;font-weight:700;position:absolute;right:15px;top:10px}.wpft-modal-close-btn:focus,.wpft-modal-close-btn:hover{color:#000;text-decoration:none}.wpft-modal-content h3{margin-top:0}#wpft-voters-list-content,.wpft-standards-content{line-height:1.6;max-height:60vh;overflow-y:auto}#wpft-voters-list-content ul{list-style:disc;padding-left:20px}#wpft-voters-list-content li{margin-bottom:5px}#wpft-talent-message{border-radius:4px;display:none;margin-bottom:15px;padding:10px}#wpft-talent-message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}#wpft-talent-message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}
.wpft-donation-summary{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-around;margin-bottom:20px;padding:15px;text-align:center}.summary-item{flex:1;min-width:180px}.summary-label{color:#6c757d;display:block;font-size:.9em;margin-bottom:5px}.summary-value{color:#d9534f;display:block;font-size:1.4em;font-weight:700}.wpft-donation-list-container{background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;margin:20px auto;max-width:900px;padding:15px}.wpft-donation-list-container h2{color:#333;margin-bottom:20px;text-align:center}.wpft-donation-table{border-collapse:collapse;font-size:.9em;width:100%}.wpft-donation-table td,.wpft-donation-table th{border:1px solid #ddd;padding:10px 8px;text-align:left}.wpft-donation-table thead th{background-color:#f8f9fa;font-weight:700}.wpft-donation-table tbody tr:nth-child(2n){background-color:#f9f9f9}.wpft-donation-table tbody tr:hover{background-color:#f1f1f1}.wpft-donation-table th a{color:inherit;display:block;padding-right:15px;position:relative;text-decoration:none}.wpft-donation-table th a:after,.wpft-donation-table th a:before{border:4px solid transparent;content:"";opacity:1;position:absolute;right:3px;transition:opacity .2s ease}.wpft-donation-table th a:before{border-bottom-color:#d40344;margin-top:-10px;top:50%}.wpft-donation-table th a:after{border-top-color:#333;margin-top:2px;top:50%}.wpft-donation-table th a:hover:after,.wpft-donation-table th a:hover:before{opacity:.7}.wpft-donation-table th a.sorted.asc:before,.wpft-donation-table th a.sorted.desc:after{opacity:1}.wpft-donation-table th a.sorted.asc:after,.wpft-donation-table th a.sorted.desc:before{opacity:.3}
