:root{--primary-color: #A75C46;--secondary-color: #ABC3B8;--background-color: #FDFAF5;--text-color: #282520;--muted-gray: #EDEDED;--font-heading: "Playfair Display", "Times New Roman", serif;--font-body: "Lora", "Georgia", serif}:root.hydrating [data-text-id]{visibility:hidden}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);background:var(--background-color);color:var(--text-color);line-height:1.7;font-size:16px;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;font-weight:600;color:var(--primary-color)}h1{font-size:2.5em;margin-bottom:.5em}h2{font-size:2em;margin-bottom:.75em}h3{font-size:1.5em;margin-bottom:.5em}p{margin-bottom:1em}a{color:var(--primary-color);text-decoration:none;transition:opacity .3s}a:hover{opacity:.7}button,.button{background:var(--primary-color);color:#fff;border:none;border-radius:999px;padding:.75rem 1.5rem;font-family:var(--font-body);font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s}button:hover:not(:disabled),.button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #a75c464d}button:disabled,.button:disabled{opacity:.6;cursor:not-allowed}.container{max-width:1200px;margin:0 auto;padding:30px 20px;background:white;border-radius:12px;box-shadow:0 4px 24px #28252014;border:1px solid var(--muted-gray)}.header{background:var(--primary-color);color:#fff;padding:40px 30px;text-align:center;border-radius:12px 12px 0 0;margin:-30px -20px 30px}.header h1{font-size:2.5em;margin-bottom:10px;color:#fff;font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;font-weight:600}.header p{font-size:1.1em;opacity:.95;font-family:var(--font-body);margin:0}.main-content{padding:0}.year-selector,.person-selector{margin-bottom:30px;padding:25px;background:rgba(171,195,184,.1);border-radius:10px;border-left:4px solid var(--secondary-color)}.year-selector h2,.person-selector h2{margin-bottom:15px;color:var(--primary-color);font-size:1.3em;font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;font-weight:600}.year-buttons,.person-buttons{display:flex;gap:12px;flex-wrap:wrap}.year-btn,.person-btn{padding:12px 28px;border:2px solid var(--primary-color);background:white;color:var(--primary-color);border-radius:999px;cursor:pointer;font-size:1em;font-weight:600;font-family:var(--font-body);transition:all .3s ease}.year-btn:hover,.person-btn:hover{background:var(--primary-color);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #a75c464d}.year-btn.active,.person-btn.active{background:var(--primary-color);color:#fff}.summary-section{background:rgba(171,195,184,.1);padding:30px;border-radius:10px;margin-bottom:30px;border-left:4px solid var(--secondary-color)}.summary-section .summary-title{font-size:1.3em;margin-bottom:20px;color:var(--primary-color);font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;font-weight:600}.summary-section .summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px}.summary-section .stat-item{text-align:center;padding:15px;background:white;border-radius:8px;border:1px solid var(--muted-gray)}.summary-section .stat-item .stat-number{font-size:2.5em;font-weight:700;color:var(--primary-color);font-family:var(--font-heading);margin-bottom:5px}.summary-section .stat-item .stat-label{font-size:.85em;color:var(--text-color);text-transform:uppercase;letter-spacing:.05em;opacity:.8;font-family:var(--font-body)}.documents-section{display:none}.documents-section.active{display:block}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid var(--muted-gray)}.section-header h2{color:var(--primary-color);font-size:1.5em;font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;font-weight:600;margin:0}.section-header .progress-indicator{font-size:1em;color:var(--secondary-color);font-weight:600;font-family:var(--font-body)}.document-grid{display:grid;gap:20px}.document-card{background:white;border:2px solid var(--muted-gray);border-radius:10px;padding:25px;transition:all .3s ease}.document-card:hover{border-color:var(--primary-color);box-shadow:0 4px 16px #a75c4626}.document-card.completed{border-color:var(--secondary-color);background:rgba(171,195,184,.05)}.document-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:15px}.document-header .document-title{font-size:1.2em;font-weight:600;color:var(--text-color);font-family:var(--font-body);flex:1}.status-badge{padding:6px 16px;border-radius:999px;font-size:.8em;font-weight:600;font-family:var(--font-body);white-space:nowrap;margin-left:10px;letter-spacing:.03em;text-transform:uppercase}.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.completed{background:rgba(171,195,184,.3);color:#065f46}.status-badge.scheduled{background:#dbeafe;color:#1e40af}.document-details{margin-bottom:20px;color:var(--text-color);font-size:.95em;line-height:1.7;font-family:var(--font-body);opacity:.85}.document-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.file-upload-wrapper{position:relative;display:inline-block}.file-input{display:none}.upload-btn,.schedule-btn,.view-btn,.delete-btn{padding:10px 24px;border:none;border-radius:999px;cursor:pointer;font-size:.9em;font-weight:600;font-family:var(--font-body);transition:all .3s ease;letter-spacing:.02em}.upload-btn{background:var(--primary-color);color:#fff}.upload-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #a75c464d}.schedule-btn{background:var(--secondary-color);color:#fff}.schedule-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #abc3b866}.view-btn{background:#6b7280;color:#fff}.view-btn:hover{background:#4b5563;transform:translateY(-2px)}.delete-btn{background:#dc2626;color:#fff}.delete-btn:hover{background:#b91c1c;transform:translateY(-2px)}.file-info,.schedule-info{font-size:.9em;font-weight:600;font-family:var(--font-body);display:flex;align-items:center;gap:5px}.file-info{color:var(--secondary-color)}.schedule-info{color:#3b82f6}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(40,37,32,.5);z-index:1000;justify-content:center;align-items:center}.modal.active{display:flex}.modal-content{background:white;padding:40px;border-radius:12px;max-width:500px;width:90%;box-shadow:0 10px 40px #28252033;border:1px solid var(--muted-gray)}.modal-content .modal-header{font-size:1.5em;margin-bottom:25px;color:var(--primary-color);font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;font-weight:600}.modal-content .modal-body{margin-bottom:25px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:var(--text-color);font-weight:600;font-family:var(--font-body);font-size:.9em;letter-spacing:.02em}.form-group input{width:100%;padding:12px 16px;border:2px solid var(--muted-gray);border-radius:8px;font-size:1em;font-family:var(--font-body);color:var(--text-color);transition:all .3s}.form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #a75c461a}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.btn-primary,.btn-secondary{padding:12px 28px;border:none;border-radius:999px;cursor:pointer;font-size:1em;font-weight:600;font-family:var(--font-body);transition:all .3s;letter-spacing:.02em}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #a75c464d}.btn-secondary{background:#9ca3af;color:#fff}.btn-secondary:hover{background:#6b7280;transform:translateY(-2px)}@media (max-width: 768px){.container{padding:20px 15px}.header{margin:-20px -15px 20px;padding:30px 20px}.header h1{font-size:1.8em}.header p{font-size:1em}.document-actions{flex-direction:column}.document-actions .upload-btn,.document-actions .schedule-btn,.document-actions .view-btn,.document-actions .delete-btn{width:100%}.year-buttons,.person-buttons{flex-direction:column}.year-buttons .year-btn,.year-buttons .person-btn,.person-buttons .year-btn,.person-buttons .person-btn{width:100%;text-align:center}.summary-stats{grid-template-columns:repeat(2,1fr)}}
