.tab-navigation{border-bottom:2px solid #e5e7eb;box-shadow:0 1px 3px #0000000d}.main-tabs{display:grid;grid-template-columns:1fr 1fr 1fr;text-align:center;background:linear-gradient(to bottom,#fff,#fafbfc)}.tab{padding:16px 20px;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s ease;border-bottom:3px solid transparent;background:#fff;font-size:14px;letter-spacing:.3px;position:relative}.tab:after{content:"";position:absolute;bottom:0;left:50%;width:0;height:3px;background:linear-gradient(90deg,#099,#00b3b3);transition:all .3s ease;transform:translate(-50%)}.tab:hover{color:#099;background:#f9fafb}.tab:hover:after{width:60%}.tab.active{color:#099;border-bottom:3px solid #009999;background:#fff;font-weight:700}.tab.active:after{width:100%}.date-selector{padding:16px 24px;background:linear-gradient(to bottom,#f8f9fa,#f3f4f6);border-top:2px solid #e5e7eb;display:flex;align-items:center;justify-content:center;gap:12px}.date-selector label{font-weight:600;color:#374151;font-size:14px;letter-spacing:.2px}.date-selector select{padding:8px 14px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;outline:none;cursor:pointer;background:#fff;color:#1f2937;font-weight:500;transition:all .2s ease;box-shadow:0 1px 2px #0000000d}.date-selector select:hover{border-color:#099}.date-selector select:focus{border-color:#099;box-shadow:0 0 0 3px #0099991a}@media (max-height: 800px) and (min-width: 769px){.tab{padding:10px 20px}.date-selector{padding:10px 24px}}.categories{display:flex;flex-wrap:wrap;gap:10px;padding:14px 32px;font-size:14px;justify-content:center;background:linear-gradient(to bottom,#fff,#f9fafb);border-bottom:2px solid #e5e7eb;box-shadow:0 1px 3px #0000000d}.cat-item{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px 16px;border-radius:8px;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:500;border:1px solid #e5e7eb;letter-spacing:.2px;color:#374151;background:#fff}.cat-item:hover{background:#f9fafb;border-color:#9cc5d4;transform:translateY(-1px);box-shadow:0 2px 4px #2387aa1f}.cat-item.active{background:linear-gradient(135deg,#e8f4f8,#d4ebf3);color:#1e6b8c;font-weight:600;border-color:#2387aa;box-shadow:0 2px 4px #2387aa33,inset 0 1px 2px #ffffff80}.box{width:14px;height:14px;border-radius:3px;box-shadow:0 1px 2px #0000001a}@media (max-width: 768px){.categories{gap:10px;padding:12px 16px}.cat-item{font-size:12px;padding:6px 10px}.box{width:12px;height:12px}}.lazy-image-wrapper{position:relative;width:100%;height:100%;overflow:hidden}.lazy-image{width:100%;height:100%;object-fit:cover;transition:opacity .3s ease-in-out}.lazy-image-loading{opacity:0}.lazy-image-loaded{opacity:1}.lazy-image-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);animation:pulse 1.5s ease-in-out infinite}.lazy-image-icon{font-size:3rem;opacity:.5}.lazy-image-spinner{width:30px;height:30px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.lazy-image-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.lazy-image-fallback .presenter-placeholder{font-size:4rem;color:#fff;opacity:.8}.card{width:100%;min-width:240px;max-width:400px;height:100%;border:1px solid #e5e7eb;border-radius:12px;padding:16px 18px;background:linear-gradient(to bottom,#fff,#fafbfc);box-shadow:0 1px 3px #0000000d;font-size:14px;display:flex;flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-sizing:border-box}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#005f87,#0080b3);opacity:0;transition:opacity .3s ease}.card:hover{transform:translateY(-4px);box-shadow:0 4px 6px #00000012,0 20px 25px -5px #00000014;border-color:#d1d5db}.card:hover:before{opacity:1}.btn{display:block;width:100%;padding:8px 14px;border-radius:24px;text-align:center;text-decoration:none;color:#fff;font-weight:600;font-size:13px;margin-bottom:10px;transition:all .2s ease;letter-spacing:.3px;box-shadow:0 2px 4px #0000001a;flex-shrink:0}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.btn:active{transform:translateY(0)}.btn-disabled{pointer-events:none;text-decoration:none}.btn-blue{background:linear-gradient(135deg,#005f99,#007bb5)}.btn-red{background:linear-gradient(135deg,brown,#c53030)}.session-time{text-align:center;color:#6b7280;margin-bottom:8px;font-size:13px;font-weight:500;letter-spacing:.2px;flex-shrink:0}.avatar-row{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 auto 6px;flex-shrink:0}.avatar{width:48px;height:48px;background:linear-gradient(135deg,#e5e7eb,#d1d5db);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;overflow:hidden;color:#9ca3af;border:2px solid #f3f4f6;box-shadow:0 2px 4px #0000000d;position:relative;flex-shrink:0}.avatar .presenter-picture{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}.avatar .presenter-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:20px;color:#9ca3af;background:linear-gradient(135deg,#e5e7eb,#d1d5db);border-radius:50%}.growplm-badge{background:transparent;border:none;box-shadow:none}.growplm-logo{object-fit:contain!important;border-radius:0!important;background:transparent}.simcafe-avatar{background:transparent;border:none}.simcafe-logo{object-fit:contain!important;border-radius:0!important;background:transparent}.card h3{font-size:16px;margin:6px 0;color:#111827;line-height:1.3;font-weight:600;letter-spacing:-.01em;flex-shrink:0}.card .author{font-style:normal;color:#6b7280;margin-bottom:6px;font-size:13px;font-weight:500;word-wrap:break-word;overflow-wrap:break-word;white-space:normal;flex-shrink:0}.guest-speaker-badge{color:#059669;padding:0;font-size:12px;display:inline-block;margin-bottom:6px;font-style:normal;font-weight:500;flex-shrink:0}.card p.description{font-size:13px;line-height:1.5;color:#4b5563;margin-bottom:6px;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:4px;word-wrap:break-word}.card p.description::-webkit-scrollbar{width:6px}.card p.description::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.card p.description::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.card p.description::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media (max-width: 768px){.card{width:100%;max-width:100%;min-width:280px}}@media (min-width: 1600px){.card{max-width:360px;padding:20px 22px}.card h3{font-size:17px}.card .author,.card p.description{font-size:14px}.avatar{width:56px;height:56px}}@media (min-width: 2560px){.card{max-width:400px;padding:24px 26px}.card h3{font-size:18px}.card .author{font-size:15px}.card p.description{font-size:15px;line-height:1.6}.avatar{width:64px;height:64px}.btn{padding:10px 16px;font-size:14px}}.timezone-bar{display:flex;flex-wrap:wrap;gap:10px;padding:14px 32px;font-size:14px;border-bottom:2px solid #e5e7eb;align-items:center;justify-content:center;background:linear-gradient(to bottom,#fff,#f9fafb);box-shadow:0 1px 3px #0000000d}.timezone-bar span{cursor:pointer;padding:8px 16px;border-radius:8px;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:500;letter-spacing:.2px;color:#374151;background:#fff;border:1px solid #e5e7eb}.timezone-bar span:hover:not(.active-tz){background:#f9fafb;border-color:#9cc5d4;transform:translateY(-1px);box-shadow:0 2px 4px #2387aa1f}.timezone-bar span.active-tz,.timezone-bar .active-tz{background:linear-gradient(135deg,#e8f4f8,#d4ebf3)!important;color:#1e6b8c!important;font-weight:600!important;border-color:#2387aa!important;box-shadow:0 2px 4px #2387aa33,inset 0 1px 2px #ffffff80!important}.timezone-bar select{font-size:14px;padding:8px 16px;border:1px solid #e5e7eb;border-radius:8px;outline:none;cursor:pointer;background:#fff;color:#374151;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1)}.timezone-bar select:hover{border-color:#9cc5d4;box-shadow:0 2px 4px #2387aa1f}.timezone-bar select:focus{border-color:#2387aa;box-shadow:0 0 0 3px #2387aa14}@media (max-height: 800px) and (min-width: 769px){.timezone-bar{padding:8px 32px}.timezone-bar span,.timezone-bar select{padding:5px 12px}}@media (max-width: 768px){.timezone-bar{flex-wrap:wrap;gap:10px;padding:10px 16px}.timezone-bar span{font-size:12px;padding:5px 10px}}.date-ribbon{background-color:#2387aa;color:#fff;text-align:center;padding:15px 0;font-weight:700;font-size:20px;width:100%}.ribbon-text{display:inline-block;letter-spacing:.5px}@media (max-width: 768px){.date-ribbon{font-size:16px;padding:12px 0}}:root{--popup-blue: #005f87}.survey-popup{position:fixed;bottom:24px;right:24px;width:380px;height:53vh;max-height:53vh;background:#fff;box-shadow:0 10px 40px #0003,0 4px 12px #00000026;border-radius:12px;z-index:1000;display:flex;flex-direction:column;animation:slideUp .4s cubic-bezier(.4,0,.2,1);border:1px solid #e5e7eb}@keyframes slideUp{0%{transform:translateY(100%) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.popup-header{background:#2387aa;color:#fff;padding:18px 20px;display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:18px;border-radius:12px 12px 0 0;letter-spacing:.3px;box-shadow:0 2px 4px #0000001a}.close-x{cursor:pointer;font-size:26px;line-height:1;-webkit-user-select:none;user-select:none;transition:all .2s ease;opacity:.9}.close-x:hover{opacity:1;transform:scale(1.1)}.popup-body{padding:20px;overflow-y:auto;flex-grow:1}.popup-body select{width:100%;padding:10px 12px;margin-bottom:20px;border:2px solid #d1d5db;border-radius:8px;font-size:14px;outline:none;cursor:pointer;background:#fff;color:#1f2937;font-weight:500;transition:all .2s ease}.popup-body select:hover{border-color:#9ca3af}.popup-body select:focus{border-color:var(--popup-blue);box-shadow:0 0 0 3px #005f871a}.question-content{display:flex;flex-direction:column;gap:20px}.question-block{margin-top:0;padding:16px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.question-label{font-weight:600;font-size:14px;margin-bottom:12px;display:block;line-height:1.5;color:#1f2937;letter-spacing:.1px}.checkbox-options,.radio-options{display:flex;flex-direction:column;gap:10px;margin-top:10px}.checkbox-item,.radio-item{display:flex;align-items:center;gap:10px;font-size:14px;color:#374151;cursor:pointer;-webkit-user-select:none;user-select:none;padding:8px;border-radius:6px;transition:background .2s ease;font-weight:500}.checkbox-item:hover,.radio-item:hover{background:#f3f4f6;color:var(--popup-blue)}.checkbox-item input[type=checkbox],.radio-item input[type=radio]{cursor:pointer;width:18px;height:18px;accent-color:var(--popup-blue)}.popup-body textarea{width:100%;height:85px;border:2px solid #d1d5db;border-radius:8px;margin-top:10px;resize:vertical;padding:10px 12px;font-size:14px;outline:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1f2937;transition:all .2s ease}.popup-body textarea:hover{border-color:#9ca3af}.popup-body textarea:focus{border-color:var(--popup-blue);box-shadow:0 0 0 3px #005f871a}.popup-body textarea::placeholder{color:#9ca3af}.loading-message,.error-message,.success-message,.info-message{padding:12px 16px;border-radius:8px;margin:12px 0;font-size:14px;text-align:center;font-weight:500;letter-spacing:.2px}.loading-message{background:linear-gradient(to right,#e3f2fd,#bbdefb);color:#1565c0;border:1px solid #90caf9}.error-message{background:linear-gradient(to right,#ffebee,#ffcdd2);color:#c62828;border:1px solid #ef9a9a}.success-message{background:linear-gradient(to right,#e8f5e9,#c8e6c9);color:#2e7d32;border:1px solid #a5d6a7}.info-message{background:linear-gradient(to right,#fff3e0,#ffe0b2);color:#e65100;border:1px solid #ffcc80}.popup-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:2px solid #e5e7eb;background:#fafbfc;border-radius:0 0 12px 12px}.footer-btn{padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;font-size:14px;transition:all .2s ease;letter-spacing:.3px;box-shadow:0 2px 4px #0000001a}.footer-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 6px #00000026}.footer-btn:active:not(:disabled){transform:translateY(0)}.footer-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-close-outline{background:#fff;color:var(--popup-blue);border:2px solid var(--popup-blue)}.btn-close-outline:hover:not(:disabled){background:#f0f9ff;border-color:#007bb5}.btn-save{background:linear-gradient(135deg,var(--popup-blue),#007bb5);color:#fff;border:none}.btn-save:hover:not(:disabled){background:linear-gradient(135deg,#007bb5,#09c)}@media (max-width: 768px){.survey-popup{bottom:12px;right:12px;left:12px;width:auto;max-width:420px;margin:0 auto}.popup-header{font-size:17px;padding:16px 18px}.popup-body{padding:16px}.footer-btn{padding:9px 16px;font-size:13px}}.archived-table-wrapper{width:100%;overflow-x:auto;padding:0 8px 24px}.archived-table-count{font-size:.95rem;color:#555;margin-bottom:10px;font-weight:500}.archived-sessions-table{width:100%;border-collapse:collapse;font-size:.92rem;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 4px #00000014}.archived-sessions-table thead{background:#00646e;color:#fff}.archived-sessions-table th{padding:12px 14px;text-align:left;font-weight:600;white-space:nowrap;position:sticky;top:0;z-index:1}.archived-sessions-table td{padding:10px 14px;vertical-align:top;border-bottom:1px solid #e8e8e8;color:#333}.archived-sessions-table tbody tr:hover{background:#f0fafa}.archived-sessions-table tbody tr:last-child td{border-bottom:none}.archived-col-name{min-width:220px;max-width:320px;font-weight:600}.archived-col-name a{color:#00646e;text-decoration:none}.archived-col-name a:hover{text-decoration:underline;color:#004a52}.archived-col-presenter{min-width:150px;max-width:220px}.archived-col-category{min-width:120px;white-space:nowrap}.archived-col-description{min-width:250px;max-width:450px;line-height:1.4}.archived-col-guest{min-width:80px;text-align:center}@media (max-width: 900px){.archived-sessions-table,.archived-sessions-table thead,.archived-sessions-table tbody,.archived-sessions-table tr,.archived-sessions-table th,.archived-sessions-table td{display:block;width:100%}.archived-sessions-table thead{display:none}.archived-sessions-table tr{margin-bottom:12px;border:1px solid #ddd;border-radius:6px;padding:10px;background:#fff}.archived-sessions-table td{border-bottom:none;padding:4px 8px;max-width:100%}.archived-sessions-table td:before{content:attr(data-label);font-weight:600;display:block;color:#00646e;margin-bottom:2px;font-size:.82rem}}:root{--siemens-dark: #000028;--siemens-teal: #009999;--siemens-light-teal: #66b2b2;--siemens-bg: #f8f9fa;--text-gray: #555}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;background-color:#fafbfc;color:#1f2937}.dashboard{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;margin:0 auto;padding:0;background:linear-gradient(to bottom,#fff,#fafbfc);color:#1f2937;max-width:100%}.dashboard .dashboard-header,header.dashboard-header{background:#2387aa!important;background-color:#2387aa!important;color:#fff;padding:8px 32px;display:flex;align-items:center;justify-content:space-between;height:70px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;gap:32px;position:relative}.dashboard-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#009999,transparent)}.header-left{display:flex;align-items:center;gap:32px;flex:0 0 auto}.header-center{display:flex;align-items:center;justify-content:center;flex:1 1 auto}.header-right{display:flex;align-items:center;gap:24px;flex:0 0 auto}.app-logo-svg{height:56px;width:auto;display:block;cursor:pointer;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));transition:transform .2s ease}.app-logo-svg:hover{transform:scale(1.05)}.hub-dropdown-container{position:relative;cursor:pointer;display:inline-block}.hub-label{color:#fff;font-size:18px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;-webkit-user-select:none;user-select:none;pointer-events:none;letter-spacing:.3px}.hub-label:after{content:" ▾";margin-left:6px;color:#fff;font-size:14px}.hub-select-hidden{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;font-size:16px}.search-bar{display:flex;align-items:center;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a;transition:box-shadow .2s ease}.search-bar:focus-within{box-shadow:0 4px 6px #00000026}.search-bar select{border:none;background:#f9fafb;padding:10px 12px;font-size:13px;cursor:pointer;border-right:1px solid #e5e7eb;outline:none;font-weight:500;color:#374151;transition:background .2s ease}.search-bar select:hover{background:#f3f4f6}.search-bar input{border:none;outline:none;padding:10px 12px;flex:1;width:220px;font-size:14px;color:#1f2937}.search-bar input.time-input{width:100px;flex:0 0 auto}.search-bar .time-separator{padding:0 8px;color:#6b7280;font-size:13px;font-weight:500}.search-bar input::placeholder{color:#9ca3af}.search-bar button{border:none;background:linear-gradient(135deg,#099,#00b3b3);color:#fff;padding:10px 16px;cursor:pointer;font-weight:600;font-size:13px;transition:all .2s ease;letter-spacing:.3px}.search-bar button:hover{background:linear-gradient(135deg,#00b3b3,#0cc);transform:translateY(-1px)}.clear-filters-button{background:transparent;border:none;cursor:pointer;font-size:16px;padding:5px 10px}.video-tour-link{display:flex;align-items:center;text-decoration:none;transition:all .3s;cursor:pointer;position:relative;z-index:10}.video-tour-link:hover{transform:scale(1.1);opacity:.9}.video-icon-svg{height:45px;width:45px;display:block;transition:all .3s;cursor:pointer;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.video-tour-link:hover .video-icon-svg{filter:drop-shadow(0 4px 8px rgba(0,0,0,.2))}.siemens-logo{font-size:20px;font-weight:900;letter-spacing:2px;color:#fff}.search-bar{display:flex;background:#fff;border-radius:4px;overflow:hidden;border:1px solid #ccc}.search-bar select{border:none;border-right:1px solid #ccc;padding:8px;outline:none;background:#f1f1f1;font-size:13px;cursor:pointer}.search-bar input{border:none;padding:8px;outline:none;width:250px}.search-bar button{border:none;background:none;padding:0 10px;cursor:pointer;font-size:16px}.siemens-logo{font-weight:900;letter-spacing:2px;font-size:20px}.segment-bar{background:#2387aa;color:#fff;display:flex;justify-content:space-around;padding:12px 0;font-weight:600;font-size:14px;box-shadow:0 2px 4px #00000014;letter-spacing:.3px}.segment-bar div{cursor:pointer;border-bottom:3px solid transparent;padding:6px 12px;transition:all .2s ease}.segment-bar div:hover,.segment-bar div.active{border-bottom:3px solid white;background:#ffffff1a}.filter-instruction{text-align:center;font-size:13px;padding:8px;background:linear-gradient(to bottom,#f0f4ff,#e8eeff);color:#4b5563;font-weight:500;letter-spacing:.2px}.sticky-nav-wrapper{position:sticky;top:0;z-index:100}.content-grid{min-height:500px;background:#fafbfc;padding:12px 0;overflow-x:auto}.schedule-grid{display:grid;gap:0;padding:0 12px}.schedule-time-label{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);text-align:center;padding:8px 12px;font-size:13px;font-weight:600;color:#374151;letter-spacing:.3px;border:1px solid #d1d5db;border-bottom:none;display:flex;align-items:center;justify-content:center;position:sticky;left:0;z-index:10}.schedule-time-label:first-of-type{border-radius:12px 0 0}.schedule-time-label:last-of-type{border-bottom:1px solid #d1d5db;border-radius:0 0 0 12px}.schedule-session-wrapper{padding:0;display:flex;align-items:stretch;background:#fff;position:relative;z-index:1}.time-block{display:grid;grid-template-columns:100px 1fr;margin-bottom:16px;transition:background .2s ease}.time-block:hover{background:#f9fafb}.time-sidebar{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);text-align:center;padding:20px 12px;font-size:14px;font-weight:600;color:#374151;letter-spacing:.3px;border-radius:12px 0 0 12px;margin:0 0 0 12px;box-shadow:0 2px 4px #0000000d;border:1px solid #d1d5db;border-right:none}.time-date{font-size:11px;font-weight:500;color:#6b7280;margin-top:6px;line-height:1.3}.session-container{padding:24px 24px 24px 32px;display:flex;gap:24px;flex-wrap:wrap;align-items:flex-start;background:#fff;border-radius:0 12px 12px 0;margin-right:12px;box-shadow:0 2px 4px #0000000d;border:1px solid #e5e7eb;border-left:none;min-height:150px}.loading,.error-message,.no-results{text-align:center;padding:48px;font-size:16px;color:#6b7280;font-weight:500}.error-message{color:#dc2626;font-weight:600}@media (max-width: 768px){.dashboard-header{flex-direction:column;gap:10px}.search-bar input{width:150px}.segment-bar{flex-wrap:wrap;gap:5px}.time-block{grid-template-columns:1fr}.time-sidebar{text-align:left;padding:10px}.session-container{flex-direction:column}.dashboard-header{flex-wrap:wrap;height:auto;padding:10px;gap:10px}.header-left,.header-center,.header-right{flex:1 1 100%;justify-content:center}.app-logo-svg{height:50px}.video-icon-svg{height:35px}.search-bar{max-width:100%}}@media (min-width: 769px) and (max-width: 1024px){.dashboard .dashboard-header,header.dashboard-header{padding:8px 16px;gap:16px}.header-left{gap:16px}.time-block{grid-template-columns:80px 1fr}.time-sidebar{padding:14px 8px;font-size:12px;margin:0 0 0 8px}.session-container{padding:16px 16px 16px 20px;gap:12px;margin-right:8px}.content-grid{padding:8px 0}.app-logo-svg{height:48px}}@media (min-width: 1600px){.dashboard .dashboard-header,header.dashboard-header{padding:8px 48px}.content-grid{padding:16px 0}.time-sidebar{padding:24px 16px;font-size:15px}.session-container{padding:28px 28px 28px 36px;gap:28px}.segment-bar{font-size:15px;padding:14px 0}}@media (min-width: 2560px){.dashboard .dashboard-header,header.dashboard-header{padding:12px 64px;height:80px}.app-logo-svg{height:64px}.video-icon-svg{height:52px}.content-grid{padding:20px 0}.time-block{grid-template-columns:120px 1fr}.time-sidebar{padding:28px 20px;font-size:16px}.session-container{padding:32px 32px 32px 40px;gap:32px}.segment-bar{font-size:16px;padding:16px 0}.segment-bar div{padding:8px 20px}}@media (max-height: 800px) and (min-width: 769px){.dashboard .dashboard-header,header.dashboard-header{height:56px;padding:4px 24px}.app-logo-svg{height:44px}.video-icon-svg{height:36px}.segment-bar{padding:6px 0}.segment-bar div{padding:4px 12px}.content-grid{padding:8px 0}.time-sidebar{padding:14px 12px}.session-container{padding:16px 20px 16px 24px;min-height:120px}}.lightweight-mode-banner{background:linear-gradient(135deg,gold,#ffed4e);color:#1f2937;padding:12px 32px;text-align:center;font-weight:600;font-size:14px;border-bottom:2px solid #f0c000;box-shadow:0 2px 8px #ffd7004d;display:flex;align-items:center;justify-content:center;gap:8px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.admin-upload{min-height:100vh;background:linear-gradient(160deg,#2387aa,#1a6a8a,#0f4d6e);color:#fff;padding:0 0 40px}.admin-header{color:#fff;padding:1.5rem 2rem;text-align:left;margin-bottom:40px;border-bottom:1px solid rgba(255,255,255,.15)}.admin-header h1{font-size:22px;margin:0 0 4px}.admin-header p{font-size:14px;color:#fffc;margin:0}.upload-container{max-width:800px;margin:0 auto;padding:0 20px}.upload-form{background:#fff;color:#333;padding:30px;border-radius:12px;box-shadow:0 2px 12px #00000014;margin-bottom:30px;border-top:3px solid #2387aa}.form-group{margin-bottom:20px}.form-group label{display:block;font-weight:600;margin-bottom:8px;color:#333}.required{color:#d32f2f}.form-group select,.form-group input[type=file]{width:100%;padding:10px;border:1px solid #ccc;border-radius:6px;font-size:14px;outline:none;background:#fff}.form-group select:focus{border-color:#099;box-shadow:0 0 0 2px #00999926}.file-name{margin-top:8px;font-size:14px;color:#666;font-style:italic}.upload-button{width:100%;padding:12px;background:#099;color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s}.upload-button:hover:not(:disabled){background:#077}.upload-button:disabled{background:#ccc;cursor:not-allowed}.message{background:#fff;color:#333;padding:20px;border-radius:12px;margin-bottom:30px;box-shadow:0 2px 12px #00000014}.error-message{border-left:4px solid #c0392b}.success-message{border-left:4px solid #009999}.message h3{margin-bottom:15px}.result-stats p{margin:8px 0;font-size:16px}.error-details{margin-top:20px;padding-top:20px;border-top:1px solid #eee}.error-details h4{margin-bottom:10px;color:#c0392b}.error-details ul{list-style:none;padding:0}.error-details li{padding:8px;margin-bottom:5px;background:#fce8e8;border-radius:4px;font-size:14px}.more-errors{margin-top:10px;font-style:italic;color:#666}.instructions{background:#ffffff1f;color:#fff;padding:25px;border-radius:12px;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.instructions h3{margin-bottom:15px;color:#fff}.instructions ul{margin:15px 0;padding-left:20px}.instructions li{margin-bottom:10px;line-height:1.6;color:#ffffffe6}.note{margin-top:15px;padding:12px;background:#0099994d;border-left:3px solid #009999;border-radius:4px;font-size:14px;color:#fff}@media (max-width: 768px){.admin-upload{padding-bottom:20px}.admin-header h1{font-size:18px}.upload-form{padding:20px}}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#2387aa,#1a6a8a);padding:1rem}.login-form{background:#fff;padding:2.5rem;border-radius:8px;box-shadow:0 10px 25px #0003;width:100%;max-width:400px}.login-form h2{margin:0 0 .5rem;color:#333;font-size:1.75rem;text-align:center}.login-subtitle{margin:0 0 2rem;color:#666;text-align:center;font-size:.95rem}.login-error{background-color:#fee;border:1px solid #fcc;color:#c33;padding:.75rem;border-radius:4px;margin-bottom:1.5rem;font-size:.9rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#333;font-weight:500;font-size:.95rem}.form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .2s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#2387aa;box-shadow:0 0 0 3px #2387aa1a}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.login-button{width:100%;padding:.875rem;background:linear-gradient(135deg,#2387aa,#1a6a8a);color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.login-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #2387aa66}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-help{margin:1.5rem 0 0;text-align:center;color:#999;font-size:.85rem}.error-details-btn{background:#c33;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.85rem;transition:background .2s;width:100%}.error-details-btn:hover{background:#a22}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:10000;padding:1rem}.modal-content{background:#fff;border-radius:8px;max-width:800px;max-height:90vh;width:100%;display:flex;flex-direction:column;box-shadow:0 10px 40px #0000004d}.error-modal{max-width:900px}.modal-header{padding:1.5rem;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;background:#f8f9fa;border-radius:8px 8px 0 0}.error-header{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border-bottom:2px solid #f5c6cb}.modal-header h3{margin:0;font-size:1.25rem;color:#333}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.modal-close:hover{background:#0000001a}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.error-summary{background:#f8f9fa;padding:1rem;border-radius:4px;margin-bottom:1.5rem;border-left:4px solid #d32f2f}.error-summary p{margin:.5rem 0;font-size:.9rem}.error-details h4{margin:1.5rem 0 .5rem;color:#333;font-size:1rem;font-weight:600}.error-code{background:#2d2d2d;color:#f8f8f2;padding:1rem;border-radius:4px;overflow-x:auto;font-family:Consolas,Monaco,Courier New,monospace;font-size:.85rem;line-height:1.5;margin:.5rem 0 1rem;white-space:pre-wrap;word-break:break-all}.modal-footer{padding:1rem 1.5rem;border-top:1px solid #e0e0e0;display:flex;justify-content:flex-end;gap:.75rem;background:#f8f9fa;border-radius:0 0 8px 8px}.btn-modal-cancel,.btn-modal-proceed{padding:.625rem 1.25rem;border:none;border-radius:4px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-modal-cancel{background:#e0e0e0;color:#333}.btn-modal-cancel:hover{background:#d0d0d0}.btn-modal-proceed{background:linear-gradient(135deg,#2387aa,#1a6a8a);color:#fff}.btn-modal-proceed:hover{transform:translateY(-1px);box-shadow:0 4px 12px #2387aa4d}@media (max-width: 480px){.login-form{padding:2rem 1.5rem}.login-form h2{font-size:1.5rem}.modal-content{max-height:95vh;margin:.5rem}.modal-footer{flex-direction:column}.btn-modal-cancel,.btn-modal-proceed{width:100%}}.system-settings{padding:0;max-width:100%;margin:0;height:100%}.settings-header{background:linear-gradient(135deg,#2387aa,#1a6a8a);padding:2rem 3rem;margin:0;color:#fff;position:relative;overflow:hidden}.settings-header:before{content:"";position:absolute;top:0;right:0;width:400px;height:100%;background:linear-gradient(135deg,transparent 0%,rgba(255,255,255,.1) 100%);transform:skew(-15deg)}.settings-header h2{font-size:2rem;color:#fff;margin:0 0 .5rem;font-weight:700;position:relative;z-index:1;text-shadow:0 2px 4px rgba(0,0,0,.1)}.settings-description{color:#ffffffe6;font-size:15px;margin:0;position:relative;z-index:1}.success-message,.error-message{padding:12px 20px;border-radius:8px;margin:1.5rem 3rem;font-weight:500;animation:slideIn .3s ease-out;display:flex;align-items:center;gap:10px;box-shadow:0 2px 8px #0000001a}@keyframes slideIn{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.success-message{background:linear-gradient(135deg,#d4edda,#c3e6cb);color:#155724;border-left:4px solid #27ae60}.error-message{background:linear-gradient(135deg,#f8d7da,#f5c6cb);color:#721c24;border-left:4px solid #e74c3c}.settings-category{padding:2rem 3rem;background:#fff}.category-title{font-size:1.5rem;font-weight:700;color:#2c3e50;margin:0 0 1.5rem;padding-left:20px;position:relative}.category-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:80%;background:linear-gradient(to bottom,#2387aa,#1a6a8a);border-radius:2px}.settings-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #00000014;border:1px solid #e8ecf1}.settings-table thead{background:linear-gradient(135deg,#2387aa,#1a6a8a);color:#fff}.settings-table th{padding:14px 20px;text-align:left;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.8px}.settings-table th:first-child{padding-left:24px;width:15%}.settings-table th:nth-child(2){width:50%}.settings-table th:nth-child(3){width:20%}.settings-table th:nth-child(4){width:15%}.settings-table tbody tr{border-bottom:1px solid #f0f3f5;transition:all .2s}.settings-table tbody tr:last-child{border-bottom:none}.settings-table tbody tr:hover{background:linear-gradient(to right,rgba(35,135,170,.03),transparent)}.settings-table td{padding:14px 20px;vertical-align:middle}.settings-table td:first-child{padding-left:24px}.segment-name{font-weight:700;color:#2387aa;font-size:16px;display:inline-flex;align-items:center;gap:8px}.segment-name:before{content:"●";color:#2387aa;font-size:12px}.setting-value-cell{max-width:none;word-break:break-all}.setting-value-link{color:#2387aa;text-decoration:none;transition:all .2s;font-size:13px;display:inline-block;padding:4px 8px;border-radius:4px;background:#2387aa0d}.setting-value-link:hover{color:#1a6a8a;background:#2387aa1a;text-decoration:none}.empty-value{color:#bdc3c7;font-style:italic;font-size:13px;padding:4px 12px;background:#f8f9fa;border-radius:4px;display:inline-block}.setting-edit-cell{width:auto}.setting-input{width:100%;padding:8px 12px;border:2px solid #e0e6ed;border-radius:6px;font-size:13px;transition:all .3s;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.setting-input:focus{outline:none;border-color:#2387aa;box-shadow:0 0 0 3px #2387aa1a}.setting-actions-cell{white-space:nowrap}.setting-meta-cell{color:#95a5a6;font-size:11px;font-weight:500}.btn-edit,.btn-save,.btn-cancel{padding:6px 16px;border:none;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s;margin-right:6px;font-weight:600}.btn-edit{background:linear-gradient(135deg,#2387aa,#1a6a8a);color:#fff}.btn-edit:hover{transform:translateY(-2px);box-shadow:0 4px 12px #2387aa4d}.btn-save{background:linear-gradient(135deg,#27ae60,#229954);color:#fff}.btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #27ae604d}.btn-save:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.btn-cancel{background:#95a5a6;color:#fff}.btn-cancel:hover{background:#7f8c8d;transform:translateY(-2px);box-shadow:0 2px 8px #7f8c8d4d}.loading{text-align:center;padding:80px 20px;color:#7f8c8d;font-size:18px;font-weight:500}@media (max-width: 768px){.system-settings,.settings-category{padding:15px}.setting-display{flex-direction:column;align-items:stretch}.setting-value{margin-bottom:10px}.btn-edit{width:100%}}.performance-settings{background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #e9ecef;margin:1.5rem 3rem}.performance-card{background:#fff;border-radius:8px;padding:1.5rem;border:1px solid #dee2e6}.performance-toggle-row{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e9ecef}.toggle-info{flex:1}.toggle-info h4{margin:0 0 .5rem;font-size:1.25rem;color:#1f2937}.toggle-description{margin:0 0 1rem;color:#6b7280;font-size:14px;line-height:1.6}.toggle-stats{display:flex;align-items:center;gap:.5rem;margin-top:1rem}.stat-label{font-weight:600;color:#4b5563}.stat-value{padding:4px 12px;border-radius:4px;font-weight:600;font-size:13px}.stat-value.enabled{background:linear-gradient(135deg,gold,#ffed4e);color:#1f2937}.stat-value.disabled{background:linear-gradient(135deg,#e9ecef,#f8f9fa);color:#6b7280}.toggle-control{flex-shrink:0}.toggle-switch{position:relative;display:inline-block;width:68px;height:36px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#e9ecef,#dee2e6);transition:.3s;border-radius:34px;box-shadow:inset 0 2px 4px #0000001a}.toggle-slider:before{position:absolute;content:"";height:28px;width:28px;left:4px;bottom:4px;background:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 6px #0003}input:checked+.toggle-slider{background:linear-gradient(135deg,gold,#f0c000);box-shadow:0 0 10px #ffd70066}input:checked+.toggle-slider:before{transform:translate(32px)}.performance-impact{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.impact-metric{background:linear-gradient(135deg,#f8f9fa,#fff);padding:1rem;border-radius:6px;border:1px solid #e9ecef;display:flex;flex-direction:column;gap:.5rem}.metric-label{font-size:12px;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:1.5rem;font-weight:700;color:#2387aa}@media (max-width: 768px){.performance-toggle-row{flex-direction:column;align-items:stretch}.performance-impact{grid-template-columns:1fr}}.cm-root{padding:0}.cm-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.cm-header h2{margin:0;font-size:1.5rem;color:#2c3e50;font-weight:700}.cm-btn{padding:.5rem 1.2rem;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s}.cm-btn--primary{background:#2387aa;color:#fff}.cm-btn--primary:hover:not(:disabled){background:#1a6a8a;transform:translateY(-1px);box-shadow:0 4px 12px #2387aa4d}.cm-btn--danger{background:#dc3545;color:#fff}.cm-btn--danger:hover:not(:disabled){background:#b02a37}.cm-btn--ghost{background:transparent;color:#666;border:1px solid #dee2e6}.cm-btn--ghost:hover:not(:disabled){background:#f8f9fa}.cm-btn--sm{padding:.35rem .85rem;font-size:.82rem;background:#f1f3f5;color:#495057;border:1px solid #dee2e6}.cm-btn--sm:hover{background:#e9ecef}.cm-btn--sm.cm-btn--danger{border:none}.cm-btn:disabled{opacity:.6;cursor:not-allowed}.cm-card--form{background:#fff;border-radius:10px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 4px 16px #00000014;border-left:4px solid #2387aa}.cm-card--form h3{margin:0 0 1.2rem;font-size:1.05rem;color:#2c3e50}.cm-form{display:flex;flex-direction:column;gap:1rem}.cm-field{display:flex;flex-direction:column;gap:.35rem}.cm-field label{font-size:.85rem;font-weight:600;color:#495057}.cm-field input[type=text],.cm-field input:not([type=color]){padding:.55rem .8rem;border:1px solid #dee2e6;border-radius:6px;font-size:.95rem;transition:border-color .2s}.cm-field input:not([type=color]):focus{border-color:#2387aa;outline:none;box-shadow:0 0 0 3px #2387aa1f}.cm-hint{font-size:.78rem;color:#6c757d}.cm-color-row{display:flex;align-items:center;gap:.75rem}.cm-color-row input[type=color]{width:46px;height:38px;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;padding:2px;background:#fff}.cm-color-hex{font-family:monospace;font-size:.9rem;color:#495057}.cm-color-preview{display:inline-block;width:80px;height:28px;border-radius:4px;border:1px solid rgba(0,0,0,.1)}.cm-form-actions{display:flex;gap:.6rem;margin-top:.5rem}.cm-err{color:#dc3545;font-size:.88rem;margin:0;background:#fff5f5;border:1px solid #f5c6cb;padding:.5rem .75rem;border-radius:5px}.cm-list{display:flex;flex-direction:column;gap:.6rem}.cm-empty{color:#6c757d;font-size:.95rem}.cm-item{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000f;overflow:hidden;border:1px solid #f0f3f5}.cm-item-view{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem}.cm-item-left{display:flex;align-items:center;gap:.85rem}.cm-swatch{display:inline-block;width:32px;height:32px;border-radius:6px;border:1px solid rgba(0,0,0,.1);flex-shrink:0}.cm-item-info{display:flex;flex-direction:column}.cm-item-name{font-weight:600;color:#2c3e50;font-size:.95rem}.cm-item-code{font-size:.78rem;color:#6c757d;font-family:monospace}.cm-item-actions{display:flex;gap:.4rem}.cm-item-edit{padding:1rem;background:#f8fbfc;border-top:2px solid #2387aa}.cm-loading{color:#6c757d;padding:2rem;text-align:center}.cm-error{color:#dc3545;padding:1rem}.cm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center}.cm-dialog{background:#fff;border-radius:12px;padding:2rem;max-width:420px;width:90%;box-shadow:0 8px 32px #0003}.cm-dialog h3{margin:0 0 .75rem;font-size:1.1rem;color:#2c3e50}.cm-dialog p{margin:0 0 .5rem;color:#495057}.cm-dialog-warn{font-size:.85rem;color:#6c757d}.cm-dialog code{background:#f1f3f5;padding:.1rem .35rem;border-radius:3px;font-family:monospace}.super-admin-dashboard{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#e8ecf1)}.dashboard-header{background:linear-gradient(135deg,#2387aa,#1a6a8a);color:#fff;padding:2rem 3rem;box-shadow:0 4px 20px #2387aa33;position:relative;overflow:hidden}.dashboard-header:before{content:"";position:absolute;top:0;right:0;width:400px;height:100%;background:linear-gradient(135deg,transparent 0%,rgba(255,255,255,.1) 100%);transform:skew(-15deg)}.dashboard-header h1{margin:0;font-size:2rem;font-weight:700;letter-spacing:-.5px;text-shadow:0 2px 4px rgba(0,0,0,.1)}.header-info{display:flex;align-items:center;gap:1.5rem;position:relative;z-index:1}.header-info span{display:flex;align-items:center;gap:8px;font-size:15px;background:#ffffff26;padding:8px 16px;border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.logout-btn{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:10px 24px;border-radius:8px;cursor:pointer;transition:all .3s;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.logout-btn:hover{background:#ffffff4d;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.dashboard-tabs{background:#fff;padding:0 3rem;display:flex;gap:0;box-shadow:0 2px 8px #0000000d}.dashboard-tabs button{background:none;border:none;padding:1.25rem 2rem;cursor:pointer;font-size:15px;font-weight:500;color:#666;border-bottom:3px solid transparent;transition:all .3s;position:relative}.dashboard-tabs button:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%) scaleX(0);width:80%;height:3px;background:linear-gradient(90deg,transparent,#2387aa,transparent);transition:transform .3s}.dashboard-tabs button:hover{color:#2387aa;background:linear-gradient(to bottom,transparent,rgba(35,135,170,.05))}.dashboard-tabs button.tab-active{color:#2387aa;font-weight:600}.dashboard-tabs button.tab-active:after{transform:translate(-50%) scaleX(1)}.dashboard-tabs button.tab-external{margin-left:auto;color:#7a5af8;border-left:1px solid #e0e0e0;padding-left:1.5rem}.dashboard-tabs button.tab-external:hover{color:#5c3fc4;background:#f5f0ff}.dashboard-tabs button.tab-external.tab-health{margin-left:0;color:#0d8c6d;border-left:1px solid #e0e0e0}.dashboard-tabs button.tab-external.tab-health:hover{color:#0a6e55;background:#e8f8f4}.dashboard-content{padding:2.5rem 3rem;max-width:1600px;margin:0 auto}.error-message{background:linear-gradient(135deg,#fee,#fdd);border-left:4px solid #e74c3c;color:#c33;padding:1rem 1.5rem;border-radius:8px;margin-bottom:1.5rem;box-shadow:0 2px 8px #e74c3c1a;display:flex;align-items:center;gap:12px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:3rem}.stat-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 16px #00000014;transition:all .3s;position:relative;overflow:hidden;border-top:4px solid #2387aa}.stat-card:before{content:"";position:absolute;top:0;right:0;width:100px;height:100px;background:radial-gradient(circle,rgba(35,135,170,.1) 0%,transparent 70%);border-radius:50%;transform:translate(30%,-30%)}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #2387aa26}.stat-card h3{margin:0 0 .75rem;color:#666;font-size:.9rem;text-transform:uppercase;letter-spacing:1px;font-weight:600}.stat-number{font-size:3rem;font-weight:700;color:#2387aa;margin:1rem 0;line-height:1}.stat-detail{color:#999;font-size:.9rem;margin:0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.section-header h2{margin:0;color:#2c3e50;font-size:1.75rem;font-weight:700;position:relative;padding-left:20px}.section-header h2:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:80%;background:linear-gradient(to bottom,#2387aa,#1a6a8a);border-radius:2px}.btn-primary{background:linear-gradient(135deg,#2387aa,#1a6a8a);color:#fff;border:none;padding:12px 28px;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s;box-shadow:0 4px 12px #2387aa33}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2387aa4d}transform: translateY(-1px); } .btn-secondary{background:#f0f3f5;color:#5a6a7a;border:2px solid #e0e6ed;padding:10px 24px;border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s}.btn-secondary:hover{background:#fff;border-color:#2387aa;color:#2387aa;transform:translateY(-1px)}.btn-sm{padding:6px 14px;font-size:.85rem;border:none;border-radius:6px;cursor:pointer;background:#f0f3f5;color:#5a6a7a;margin-right:.5rem;transition:all .2s;font-weight:500}.btn-sm:hover{background:#2387aa;color:#fff;transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.btn-danger:hover{background:linear-gradient(135deg,#c0392b,#a93226);box-shadow:0 4px 12px #e74c3c4d}.item-form{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 16px #00000014;margin-bottom:2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;align-items:start;border-left:4px solid #2387aa}.item-form input,.item-form select{padding:12px 16px;border:2px solid #e0e6ed;border-radius:8px;font-size:14px;transition:all .3s}.item-form input:focus,.item-form select:focus{outline:none;border-color:#2387aa;box-shadow:0 0 0 3px #2387aa1a}padding: .75rem; border: 1px solid #ddd; border-radius: 4px; font-size: 1rem; } .form-actions{grid-column:1 / -1;display:flex;gap:1rem;padding-top:1rem;border-top:2px solid #f0f3f5}.data-table{width:100%;background:#fff;border-radius:12px;box-shadow:0 4px 16px #00000014;border-collapse:collapse;overflow:hidden}.data-table thead{background:linear-gradient(135deg,#2387aa,#1a6a8a);color:#fff}.data-table th{text-align:left;padding:1.25rem 1.5rem;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.data-table td{padding:1.25rem 1.5rem;border-bottom:1px solid #f0f3f5}.data-table tbody tr{transition:all .2s}.data-table tbody tr:hover{background:linear-gradient(to right,rgba(35,135,170,.03),transparent);transform:scale(1.01)}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-active{background:linear-gradient(135deg,#e6f7ed,#d4edda);color:#27ae60;border:1px solid #27ae60}.status-archived{background:linear-gradient(135deg,#f0f3f5,#e0e6ed);color:#7f8c8d;border:1px solid #bdc3c7}.loading-spinner{text-align:center;padding:4rem 2rem;color:#2387aa;font-size:1.2rem;font-weight:500}@media (max-width: 768px){.dashboard-header{flex-direction:column;align-items:flex-start;gap:1rem}.dashboard-content{padding:1rem}.stats-grid,.item-form{grid-template-columns:1fr}.data-table{font-size:.9rem}.data-table th,.data-table td{padding:.75rem .5rem}}.event-selector{padding:10px 14px;border:2px solid #e0e6ed;border-radius:8px;font-size:14px;font-weight:500;background:#fff;cursor:pointer;transition:all .3s;min-width:250px}.event-selector:hover:not(:disabled){border-color:#2387aa}.event-selector:focus{outline:none;border-color:#2387aa;box-shadow:0 0 0 3px #2387aa1a}.event-selector:disabled{background-color:#f5f5f5;cursor:not-allowed;color:#999;opacity:.5}.event-selector option{padding:.5rem}@media (max-width: 768px){.event-selector{min-width:100%;width:100%}}.session-table-editor{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;overflow:hidden;border:1px solid #e8ecf1}.editor-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:2px solid #f0f3f5;background:linear-gradient(to right,rgba(35,135,170,.03),transparent)}.editor-header h3{margin:0;font-size:18px;font-weight:700;color:#2c3e50;position:relative;padding-left:16px}.editor-header h3:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:80%;background:linear-gradient(to bottom,#2387aa,#1a6a8a);border-radius:2px}.btn-add-session{background:linear-gradient(135deg,#2387aa,#1a6a8a);color:#fff;border:none;border-radius:8px;padding:8px 20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 2px 8px #2387aa33}.btn-add-session:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #2387aa4d}.btn-add-session:disabled{opacity:.5;cursor:not-allowed}.editor-loading{padding:40px;text-align:center;color:#95a5a6;font-size:16px;font-weight:500}.editor-error{padding:1.25rem;background:linear-gradient(135deg,#f8d7da,#f5c6cb);border-left:4px solid #e74c3c;margin:1.5rem;border-radius:8px;color:#721c24;box-shadow:0 2px 8px #e74c3c1a}.table-container{overflow-x:auto;max-height:600px}.sessions-table{width:100%;border-collapse:collapse;font-size:13px}.sessions-table thead{background:linear-gradient(135deg,#2387aa,#1a6a8a);position:sticky;top:0;z-index:10}.sessions-table th{padding:12px 10px;text-align:left;font-weight:600;color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;text-transform:uppercase;font-size:11px;letter-spacing:.5px}.sessions-table th:hover{background:#ffffff1a}.sessions-table td{padding:10px;border-bottom:1px solid #f0f3f5;vertical-align:middle}.sessions-table tbody tr{transition:all .2s}.sessions-table tbody tr:hover{background:linear-gradient(to right,rgba(35,135,170,.03),transparent)}.sessions-table .editing-row{background:linear-gradient(to right,rgba(255,193,7,.08),transparent)}.sessions-table .editing-row:hover{background:linear-gradient(to right,rgba(255,193,7,.12),transparent)}.sessions-table .editing-row td{padding:10px 12px;vertical-align:top}.sessions-table .add-row{background:linear-gradient(to right,rgba(39,174,96,.08),transparent)}.sessions-table .add-row:hover{background:linear-gradient(to right,rgba(39,174,96,.12),transparent)}.center-cell{text-align:center}.empty-state{text-align:center;padding:60px 20px!important;color:#95a5a6;font-size:16px;font-weight:500}.sessions-table th:nth-child(1),.sessions-table td:nth-child(1){min-width:200px}.sessions-table th:nth-child(2),.sessions-table td:nth-child(2){min-width:110px;max-width:140px}.sessions-table th:nth-child(4),.sessions-table td:nth-child(4){min-width:140px;max-width:170px}.sessions-table th:nth-child(5),.sessions-table td:nth-child(5){min-width:120px}.sessions-table th:nth-child(6),.sessions-table td:nth-child(6){min-width:110px}.sessions-table th:nth-child(7),.sessions-table td:nth-child(7){min-width:280px}.sessions-table th:nth-child(8),.sessions-table td:nth-child(8){min-width:70px}.sessions-table th:nth-child(9),.sessions-table td:nth-child(9){min-width:100px}.sessions-table th:nth-child(10),.sessions-table td:nth-child(10){min-width:70px;max-width:90px}.sessions-table th:nth-child(11),.sessions-table td:nth-child(11){min-width:100px}.sessions-table th:nth-child(12),.sessions-table td:nth-child(12){min-width:110px}.edit-input{width:100%;padding:8px 10px;border:2px solid #e0e6ed;border-radius:6px;font-size:13px;font-family:inherit;transition:all .3s;box-sizing:border-box}.edit-input:focus{outline:none;border-color:#2387aa;box-shadow:0 0 0 3px #2387aa1a}.edit-select{cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;padding:8px 10px}.edit-textarea{min-height:70px;resize:vertical;line-height:1.4}.status-badge{display:inline-block;padding:4px 12px;border-radius:14px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #00000014}.status-draft{background:linear-gradient(135deg,#fff3cd,#ffecb3);color:#856404;border:1px solid #ffeaa7}.status-published{background:linear-gradient(135deg,#d4edda,#c3e6cb);color:#155724;border:1px solid #b1dfbb}.status-archived{background:linear-gradient(135deg,#e2e3e5,#d6d8db);color:#383d41;border:1px solid #c6c8ca}.category-display{display:flex;align-items:center;gap:8px;overflow:hidden}.category-display span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.category-box{width:12px;height:12px;border-radius:2px;flex-shrink:0}.link-cell{color:#2387aa;text-decoration:none;font-weight:500;transition:all .2s}.link-cell:hover{text-decoration:underline;color:#1a6a8a}.action-buttons{display:flex;align-items:center;gap:2px;white-space:nowrap;position:relative;top:-12px}.action-buttons button{background:#fff;border:1px solid #e0e6ed;border-radius:6px;padding:4px 8px;font-size:15px;cursor:pointer;transition:all .2s;line-height:1;box-shadow:0 1px 3px #0000000d;vertical-align:middle}.action-buttons button:hover{transform:translateY(-1px);box-shadow:0 2px 6px #0000001f}.btn-save{border-color:#27ae60!important;color:#27ae60}.btn-save:hover{background:linear-gradient(135deg,#27ae60,#229954)!important;color:#fff}.btn-cancel{border-color:#95a5a6!important;color:#6c757d}.btn-cancel:hover{background:linear-gradient(135deg,#95a5a6,#7f8c8d)!important;color:#fff}.btn-edit{border-color:#2387aa!important;color:#2387aa}.btn-edit:hover{background:linear-gradient(135deg,#2387aa,#1a6a8a)!important;color:#fff}.btn-publish{border-color:#2387aa!important;color:#2387aa}.btn-publish:hover{background:linear-gradient(135deg,#2387aa,#1a6a8a)!important;color:#fff}.btn-unpublish{border-color:#f39c12!important;color:#f39c12}.btn-unpublish:hover{background:linear-gradient(135deg,#f39c12,#e67e22)!important;color:#fff}.btn-delete{border-color:#e74c3c!important;color:#e74c3c}.btn-delete:hover{background:linear-gradient(135deg,#e74c3c,#c0392b)!important;color:#fff}.picture-cell{text-align:center;width:70px;padding:8px!important}.pictures-container{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.thumbnail-container{position:relative;display:inline-block}.presenter-thumbnail{width:48px;height:48px;object-fit:cover;border-radius:50%;cursor:pointer;border:2px solid #e0e6ed;transition:all .3s;box-shadow:0 2px 6px #0000001a}.presenter-thumbnail:hover{transform:scale(1.1);border-color:#2387aa;box-shadow:0 4px 12px #2387aa4d}.btn-delete-picture{position:absolute;top:-4px;right:-4px;width:20px;height:20px;border-radius:50%;background:#e74c3c;color:#fff;border:2px solid white;font-size:10px;cursor:pointer;display:none;align-items:center;justify-content:center;padding:0;line-height:1;box-shadow:0 2px 4px #0003;transition:all .2s}.thumbnail-container:hover .btn-delete-picture{display:flex}.btn-delete-picture:hover{background:#c0392b;transform:scale(1.1)}.thumbnail-placeholder{width:48px;height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#f0f0f0,#e0e0e0);border-radius:50%;border:2px dashed #ccc;font-size:10px;color:#999;text-align:center;position:relative}.placeholder-icon{font-size:18px;line-height:1;margin-bottom:2px}.placeholder-name{font-size:8px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:44px;text-transform:uppercase;letter-spacing:-.5px}.btn-upload-picture{background:linear-gradient(135deg,#2387aa,#1a6a8a);color:#fff;border:none;border-radius:50%;width:48px;height:48px;font-size:20px;cursor:pointer;transition:all .3s;box-shadow:0 2px 8px #2387aa33;display:inline-flex;align-items:center;justify-content:center}.btn-upload-picture:hover:not(:disabled){transform:scale(1.1);box-shadow:0 4px 16px #2387aa66}.btn-upload-picture:disabled{opacity:.6;cursor:not-allowed}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:2px solid #f0f3f5;background:linear-gradient(135deg,#2387aa,#1a6a8a);color:#fff;border-radius:12px 12px 0 0}.modal-header h3{margin:0;font-size:20px;font-weight:700}.modal-close{background:#fff3;border:none;color:#fff;font-size:20px;width:32px;height:32px;border-radius:50%;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.modal-close:hover{background:#ffffff4d;transform:scale(1.1)}.modal-body{padding:1.5rem}.modal-intro{margin:0 0 1.5rem;padding:1rem;background:linear-gradient(to right,rgba(35,135,170,.08),transparent);border-left:4px solid #2387aa;border-radius:4px;font-size:14px}.modal-intro strong{color:#2387aa;font-weight:600}.requirements-list{display:flex;flex-direction:column;gap:1rem}.requirement-item{display:flex;gap:12px;padding:1rem;border-radius:8px;background:#f8f9fa;border:2px solid #e8ecf1;transition:all .2s}.requirement-item.validated{background:linear-gradient(to right,rgba(39,174,96,.05),transparent);border-color:#d4edda}.requirement-item.info{background:linear-gradient(to right,rgba(52,152,219,.05),transparent);border-color:#d6eaf8}.requirement-icon{font-size:24px;flex-shrink:0}.requirement-text{flex:1}.requirement-text strong{display:block;color:#2c3e50;font-size:14px;font-weight:600;margin-bottom:4px}.requirement-note{font-size:12px;color:#7f8c8d;margin-top:4px;font-style:italic}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:1.5rem;border-top:2px solid #f0f3f5;background:#f8f9fa;border-radius:0 0 12px 12px}.btn-modal-cancel,.btn-modal-proceed{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;border:none}.btn-modal-cancel{background:#fff;color:#6c757d;border:2px solid #e0e6ed}.btn-modal-cancel:hover{background:#f8f9fa;border-color:#95a5a6;transform:translateY(-1px)}.btn-modal-proceed{background:linear-gradient(135deg,#2387aa,#1a6a8a);color:#fff;box-shadow:0 2px 8px #2387aa4d}.btn-modal-proceed:hover{transform:translateY(-2px);box-shadow:0 4px 16px #2387aa66}.error-modal{max-width:800px}.error-header{background:linear-gradient(135deg,#e74c3c,#c0392b)!important}.error-summary{background:linear-gradient(to right,rgba(231,76,60,.08),transparent);border-left:4px solid #e74c3c;border-radius:4px;padding:1rem;margin-bottom:1.5rem}.error-summary p{margin:.5rem 0;font-size:13px}.error-summary strong{color:#c0392b;font-weight:600}.error-details{margin-top:1rem}.error-details h4{margin:1rem 0 .5rem;color:#2c3e50;font-size:14px;font-weight:600}.error-code{background:#2c3e50;color:#ecf0f1;padding:1rem;border-radius:6px;font-family:Consolas,Monaco,Courier New,monospace;font-size:12px;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word;max-height:300px;overflow-y:auto;border:1px solid #34495e}.error-code::-webkit-scrollbar{width:8px;height:8px}.error-code::-webkit-scrollbar-track{background:#34495e;border-radius:4px}.error-code::-webkit-scrollbar-thumb{background:#7f8c8d;border-radius:4px}.error-code::-webkit-scrollbar-thumb:hover{background:#95a5a6}@media (max-width: 768px){.sessions-table{font-size:12px}.presenter-thumbnail,.btn-upload-picture{width:40px;height:40px}.btn-upload-picture{font-size:18px}.sessions-table th,.sessions-table td{padding:8px 4px}.editor-header{flex-direction:column;gap:10px;align-items:stretch}.btn-add-session{width:100%}.action-buttons{flex-direction:column}.modal-content{width:95%;max-height:95vh}.modal-header h3{font-size:18px}.requirement-item{padding:.75rem}}.notification-modal{max-width:450px}.notification-modal .modal-header{background:linear-gradient(135deg,#2387aa,#1a6a8a)}.notification-modal.success .modal-header,.notification-modal.success .success-header{background:linear-gradient(135deg,#27ae60,#229954)}.notification-modal.error .modal-header,.notification-modal.error .error-header{background:linear-gradient(135deg,#e74c3c,#c0392b)}.notification-modal.confirm .modal-header,.notification-modal.confirm .confirm-header{background:linear-gradient(135deg,#f39c12,#e67e22)}.notification-message{font-size:15px;line-height:1.6;color:#2c3e50;margin:0;white-space:pre-line;text-align:center}.btn-modal-danger{background:linear-gradient(135deg,#e74c3c,#c0392b)!important}.btn-modal-danger:hover{box-shadow:0 4px 16px #e74c3c4d!important}.conflict-notification{position:fixed;top:20px;right:20px;width:400px;max-width:calc(100vw - 40px);background:#fff;border-left:4px solid #ff9800;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:9999;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.conflict-header{display:flex;align-items:center;gap:10px;padding:15px;border-bottom:1px solid #eee}.conflict-icon{font-size:24px}.conflict-header h3{flex:1;margin:0;font-size:16px;font-weight:600;color:#333}.conflict-close{background:none;border:none;font-size:24px;line-height:1;color:#999;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color .2s}.conflict-close:hover{color:#333}.conflict-body{padding:15px}.conflict-summary{margin:0 0 15px;color:#666;font-size:14px;line-height:1.5}.conflict-list{list-style:none;padding:0;margin:0;max-height:200px;overflow-y:auto}.conflict-item{padding:8px 0;border-bottom:1px solid #f5f5f5;display:flex;flex-direction:column;gap:4px}.conflict-item:last-child{border-bottom:none}.conflict-item strong{color:#333;font-size:14px}.conflict-time{color:#999;font-size:12px}.conflict-footer{padding:15px;border-top:1px solid #eee;display:flex;justify-content:flex-end}.btn-dismiss{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s}.btn-dismiss:hover{opacity:.9}.btn-dismiss:active{opacity:.8}@media (max-width: 480px){.conflict-notification{top:10px;right:10px;width:calc(100vw - 20px)}}.preview-panel-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;justify-content:center;align-items:flex-start;z-index:10000;animation:fadeIn .2s ease-in;overflow-y:auto}.preview-panel-modal-fullscreen{background:#fff;width:100%;min-height:100vh;display:flex;flex-direction:column;animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-30px);opacity:0}to{transform:translateY(0);opacity:1}}.preview-banner{background:linear-gradient(135deg,#2c3e50,#34495e);color:#fff;padding:16px 32px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 12px #00000026;position:sticky;top:0;z-index:1000;border-bottom:3px solid #f39c12}.preview-banner-content{display:flex;align-items:center;gap:16px}.preview-icon{font-size:28px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.preview-text{display:flex;flex-direction:column;gap:4px}.preview-text strong{font-size:18px;font-weight:700;letter-spacing:.5px}.preview-subtitle{font-size:13px;opacity:.9;font-weight:400}.btn-close-preview-banner{background:#ffffff26;border:2px solid rgba(255,255,255,.8);color:#fff;padding:10px 24px;border-radius:6px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s;white-space:nowrap}.btn-close-preview-banner:hover{background:#ffffff40;border-color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.preview-panel-loading,.preview-panel-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 30px;min-height:400px;background:#fff}.spinner{border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;width:60px;height:60px;animation:spin 1s linear infinite;margin-bottom:20px}.preview-panel-loading p{color:#666;font-size:16px;font-weight:500}.preview-panel-error{color:#d32f2f}.preview-panel-error p{font-size:16px;margin-bottom:20px}.btn-retry{padding:12px 28px;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.btn-retry:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}@media (max-width: 768px){.preview-banner{padding:12px 20px;flex-direction:column;gap:12px}.preview-banner-content{font-size:14px}.btn-close-preview-banner{width:100%}}.picture-upload-zone{padding:2rem;background-color:var(--background-secondary, #f8f9fa);border-radius:8px}.upload-area{border:2px dashed var(--border-color, #cbd5e0);border-radius:8px;padding:3rem 2rem;text-align:center;background-color:var(--background-primary, #ffffff);transition:all .3s ease;cursor:pointer}.upload-area:hover{border-color:var(--primary-color, #3b82f6);background-color:var(--background-hover, #f0f4f8)}.upload-area.drag-active{border-color:var(--primary-color, #3b82f6);background-color:var(--primary-light, #e0f2fe);transform:scale(1.02)}.upload-icon{font-size:3rem;color:var(--text-secondary, #718096);margin-bottom:1rem}.upload-area h3{margin:0 0 .5rem;color:var(--text-primary, #1a202c);font-size:1.25rem}.upload-area p{margin:.5rem 0;color:var(--text-secondary, #718096);font-size:.875rem}.upload-requirements{margin-top:1rem;padding:1rem;background-color:var(--info-background, #e0f2fe);border-radius:6px;font-size:.875rem;text-align:left}.upload-requirements h4{margin:0 0 .5rem;color:var(--info-text, #0369a1);font-size:.875rem;font-weight:600}.upload-requirements ul{margin:0;padding-left:1.5rem;color:var(--text-secondary, #475569)}.upload-requirements li{margin:.25rem 0}.file-input{display:none}.upload-button{margin-top:1rem;padding:.75rem 1.5rem;background-color:var(--primary-color, #3b82f6);color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.upload-button:hover{background-color:var(--primary-dark, #2563eb)}.upload-button:disabled{background-color:var(--border-color, #cbd5e0);cursor:not-allowed}.processing-folder{display:flex;align-items:center;gap:12px;padding:16px 20px;margin-top:1rem;background:linear-gradient(135deg,#e0f2fe,#dbeafe);border:1px solid #3b82f6;border-radius:8px;animation:pulse 1.5s ease-in-out infinite}.processing-folder .spinner{font-size:24px;animation:spin 1s linear infinite}.processing-folder p{margin:0;font-size:14px;font-weight:500;color:#1e3a8a}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.upload-progress{margin-top:2rem}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.progress-header h4{margin:0;color:var(--text-primary, #1a202c)}.progress-stats{font-size:.875rem;color:var(--text-secondary, #718096)}.progress-bar-container{width:100%;height:8px;background-color:var(--border-color, #e2e8f0);border-radius:4px;overflow:hidden;margin-bottom:1rem}.progress-bar{height:100%;background-color:var(--success-color, #10b981);transition:width .3s ease}.file-list{margin-top:1rem}.file-item{display:flex;align-items:center;padding:.75rem;background-color:var(--background-primary, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:6px;margin-bottom:.5rem}.file-item-icon{font-size:1.5rem;margin-right:.75rem}.file-item-icon.success{color:var(--success-color, #10b981)}.file-item-icon.error{color:var(--error-color, #ef4444)}.file-item-icon.warning{color:var(--warning-color, #f59e0b)}.file-item-info{flex:1}.file-item-name{font-weight:500;color:var(--text-primary, #1a202c);margin-bottom:.25rem}.file-item-details{font-size:.875rem;color:var(--text-secondary, #718096)}.file-item-status{font-size:.875rem;padding:.25rem .75rem;border-radius:12px;font-weight:500}.file-item-status.uploaded{background-color:var(--success-light, #d1fae5);color:var(--success-dark, #065f46)}.file-item-status.rejected{background-color:var(--error-light, #fee2e2);color:var(--error-dark, #991b1b)}.validation-messages{margin-top:1.5rem}.message-section{margin-bottom:1rem}.message-section h4{margin:0 0 .5rem;font-size:.875rem;font-weight:600}.message-section.errors h4{color:var(--error-color, #ef4444)}.message-section.warnings h4{color:var(--warning-color, #f59e0b)}.message-list{list-style:none;padding:0;margin:0}.message-list li{padding:.5rem;margin-bottom:.25rem;border-radius:4px;font-size:.875rem}.message-list.errors li{background-color:var(--error-light, #fee2e2);color:var(--error-dark, #991b1b)}.message-list.warnings li{background-color:var(--warning-light, #fef3c7);color:var(--warning-dark, #92400e)}.selection-summary{margin-top:1rem;padding:.65rem 1rem;background:var(--background-secondary, #f7fafc);border:1px solid var(--border-color, #cbd5e0);border-radius:6px;font-size:.9rem;display:flex;flex-wrap:wrap;align-items:flex-start;gap:.5rem}.summary-valid{color:#276749;font-weight:600;white-space:nowrap}.summary-invalid{color:#c53030;font-weight:600;white-space:nowrap}.invalid-file-list{width:100%;margin:.25rem 0 0;padding-left:1rem;list-style:disc;color:#c53030;font-size:.82rem;line-height:1.6}.inv-filename{font-weight:600}.result-rejected{color:#c53030;font-size:.85rem}.action-buttons{display:flex;gap:1rem;margin-top:1.5rem}.btn-secondary{padding:.75rem 1.5rem;background-color:var(--background-primary, #ffffff);color:var(--text-primary, #1a202c);border:1px solid var(--border-color, #cbd5e0);border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background-color:var(--background-hover, #f0f4f8);border-color:var(--text-secondary, #718096)}.btn-primary{padding:.75rem 1.5rem;background:#005f87!important;color:#fff!important;border:2px solid #004a6b!important;border-radius:6px;font-size:1.05rem;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #0000004d;letter-spacing:.4px;text-shadow:0 1px 2px rgba(0,0,0,.3)}.btn-primary:hover{background:#004a6b!important;color:#fff!important;box-shadow:0 4px 12px #0006;transform:translateY(-1px)}.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.upload-result-banner{display:flex;align-items:center;gap:12px;padding:16px 20px;border-radius:10px;margin-top:1rem;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.upload-result-banner.all-success{background:linear-gradient(135deg,#e6f9f0,#d1f5e0);border:1px solid #34d399}.upload-result-banner.has-errors{background:linear-gradient(135deg,#fef9e7,#fef3c7);border:1px solid #fbbf24}.result-icon{font-size:28px;flex-shrink:0}.result-text{display:flex;flex-direction:column;gap:2px;flex:1}.result-text strong{font-size:15px;color:#1a202c}.result-detail{font-size:13px;color:#b45309}.result-names{font-size:13px;color:#6b7280;font-style:italic}.result-dismiss{background:none;border:none;font-size:18px;color:#9ca3af;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .15s}.result-dismiss:hover{color:#374151;background:#0000000f}.empty-state{text-align:center;padding:2rem;color:var(--text-secondary, #718096)}.sqm-root{padding:0}.sqm-loading,.sqm-error,.sqm-empty{padding:1.5rem;text-align:center;color:#666;background:#f7fafc;border-radius:8px;font-size:.95rem}.sqm-error{color:#c53030}.sqm-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.sqm-header h3{margin:0;font-size:1.1rem;color:#1a202c}.sqm-count{font-weight:400;color:#718096}.sqm-btn-add{padding:.45rem 1rem;background:#2387aa;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s}.sqm-btn-add:hover{background:#1a6a8a}.sqm-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}.sqm-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.sqm-item--inactive{opacity:.6;border-style:dashed}.sqm-item-body{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.85rem 1rem}.sqm-item-left{display:flex;gap:.6rem;align-items:flex-start;flex:1;min-width:0}.sqm-order{font-weight:700;color:#718096;flex-shrink:0;min-width:1.4rem}.sqm-text{font-size:.95rem;color:#1a202c;line-height:1.5}.sqm-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.35rem}.sqm-badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.sqm-badge--text{background:#ebf8ff;color:#2387aa}.sqm-badge--checkbox{background:#faf5ff;color:#6b46c1}.sqm-badge--radio{background:#f0fff4;color:#276749}.sqm-badge--inactive{background:#fff5f5;color:#c53030}.sqm-options-preview{display:flex;flex-wrap:wrap;gap:.3rem}.sqm-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .55rem;background:#edf2f7;border-radius:999px;font-size:.78rem;color:#4a5568}.sqm-chip--removable{background:#e9d8fd;color:#553c9a;padding-right:.25rem}.sqm-chip-remove{background:none;border:none;cursor:pointer;font-size:1rem;line-height:1;color:#805ad5;padding:0 .15rem}.sqm-chip-remove:hover{color:#c53030}.sqm-item-actions{display:flex;gap:.4rem;flex-shrink:0}.sqm-btn-edit,.sqm-btn-delete{padding:.35rem .7rem;border:1px solid;border-radius:5px;font-size:.82rem;cursor:pointer;background:#fff;transition:background .15s}.sqm-btn-edit{border-color:#bee3f8;color:#2387aa}.sqm-btn-edit:hover{background:#ebf8ff}.sqm-btn-delete{border-color:#fed7d7;color:#c53030}.sqm-btn-delete:hover{background:#fff5f5}.sqm-form{padding:1.1rem 1.25rem 1rem;background:#f7fafc;border-top:1px solid #e2e8f0}.sqm-form-title{font-weight:700;font-size:.95rem;color:#2387aa;margin-bottom:.9rem}.sqm-form-error{background:#fff5f5;color:#c53030;border:1px solid #fed7d7;border-radius:6px;padding:.5rem .75rem;font-size:.88rem;margin-bottom:.75rem}.sqm-form-row{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.85rem}.sqm-form-row label{font-size:.85rem;font-weight:600;color:#4a5568}.sqm-form-row--inline{flex-direction:row;align-items:center}.sqm-form-row--inline label{font-weight:400;color:#4a5568;cursor:pointer}.sqm-textarea{width:100%;box-sizing:border-box;padding:.55rem .75rem;border:1px solid #cbd5e0;border-radius:6px;font-size:.92rem;font-family:inherit;resize:vertical}.sqm-textarea:focus{outline:none;border-color:#2387aa;box-shadow:0 0 0 2px #2387aa26}.sqm-type-buttons{display:flex;gap:.6rem}.sqm-type-btn{padding:.45rem 1.1rem;border:2px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;font-size:.88rem;transition:all .15s;color:#4a5568}.sqm-type-btn.active{border-color:#2387aa;background:#ebf8ff;color:#2387aa;font-weight:600}.sqm-options-builder{display:flex;flex-direction:column;gap:.55rem}.sqm-options-chips{display:flex;flex-wrap:wrap;gap:.35rem;min-height:2rem;padding:.4rem .5rem;background:#fff;border:1px solid #cbd5e0;border-radius:6px}.sqm-options-empty{font-size:.82rem;color:#a0aec0;align-self:center}.sqm-option-adder{display:flex;gap:.4rem}.sqm-option-input{flex:1;padding:.45rem .7rem;border:1px solid #cbd5e0;border-radius:6px;font-size:.9rem}.sqm-option-input:focus{outline:none;border-color:#2387aa}.sqm-btn-add-option{padding:.45rem .9rem;background:#2387aa;color:#fff;border:none;border-radius:6px;font-size:.88rem;cursor:pointer}.sqm-btn-add-option:hover{background:#1a6a8a}.sqm-form-actions{display:flex;gap:.6rem;justify-content:flex-end;margin-top:.5rem}.sqm-btn-cancel{padding:.45rem 1rem;background:#fff;border:1px solid #cbd5e0;border-radius:6px;cursor:pointer;font-size:.9rem}.sqm-btn-cancel:hover{background:#f7fafc}.sqm-btn-save{padding:.45rem 1.2rem;background:#27ae60;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600}.sqm-btn-save:hover:not(:disabled){background:#229954}.sqm-btn-save:disabled,.sqm-btn-cancel:disabled{opacity:.6;cursor:not-allowed}.feedback-viewer{padding:2rem;max-width:1400px;margin:0 auto}.feedback-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.header-left h2{margin:0;color:#2387aa;font-size:1.8rem}.segment-info{margin:.5rem 0 0;color:#666;font-size:.95rem}.segment-info strong{color:#2387aa;font-weight:600}.feedback-stats{display:flex;gap:2rem}.stat-item{display:flex;flex-direction:column;gap:.3rem}.stat-label{font-size:.85rem;color:#666;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:1.5rem;font-weight:700;color:#2387aa}.filter-panel{display:flex;gap:1rem;align-items:flex-end;padding:1.5rem;background:#f8f9fa;border-radius:8px;margin-bottom:2rem}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-size:.9rem;font-weight:600;color:#555}.filter-group input[type=date]{padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.95rem}.btn-filter,.btn-reset{padding:.6rem 1.2rem;border:none;border-radius:4px;font-weight:600;cursor:pointer;transition:all .2s}.btn-filter{background:#2387aa;color:#fff}.btn-filter:hover{background:#1a6a8a}.btn-reset{background:#6c757d;color:#fff}.btn-reset:hover{background:#545b62}.questions-summary{margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014}.questions-summary h3{margin:0 0 1rem;color:#333;font-size:1.2rem}.question-list{margin:0;padding-left:1.5rem}.question-list li{margin-bottom:.8rem;line-height:1.5}.question-text{color:#333;font-weight:500}.question-type{margin-left:.5rem;color:#666;font-size:.85rem;font-style:italic}.responses-section{margin-top:2rem}.responses-section h3{margin:0 0 1.5rem;color:#333;font-size:1.3rem}.responses-list{display:flex;flex-direction:column;gap:.4rem}.response-card{background:#fff;border-radius:6px;border:1px solid #dde3ea;overflow:hidden;transition:border-color .15s}.response-card:hover{border-color:#2387aa}.response-header{display:flex;justify-content:space-between;align-items:center;padding:.3rem .8rem;background:#eef6fa;border-bottom:1px solid #dde3ea}.response-number{font-weight:700;font-size:.78rem;color:#2387aa;text-transform:uppercase;letter-spacing:.4px}.response-date{font-size:.75rem;color:#888}.response-answers{padding:.4rem .8rem .5rem;display:grid;grid-template-columns:minmax(160px,35%) 1fr;gap:.2rem .6rem;align-items:baseline}.answer-block{display:contents}.answer-question{font-weight:600;color:#555;font-size:.8rem;padding:.15rem 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.answer-response{font-size:.82rem;color:#333;line-height:1.4;white-space:pre-wrap;word-break:break-word;padding:.15rem 0}.empty-state{text-align:center;padding:4rem 2rem;color:#666}.empty-state p{font-size:1.1rem;margin:.5rem 0}.empty-state .muted{font-size:.95rem;color:#999}.loading-message,.error-message{text-align:center;padding:3rem;font-size:1.1rem}.loading-message{color:#666}.error-message{color:#dc3545;font-weight:600}@media (max-width: 768px){.feedback-viewer{padding:1rem}.feedback-header{flex-direction:column;align-items:flex-start;gap:1rem}.feedback-stats{width:100%;justify-content:space-between}.filter-panel{flex-direction:column;align-items:stretch}.btn-filter,.btn-reset{width:100%}.response-header{flex-direction:column;align-items:flex-start;gap:.5rem}}.fv-subtabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid #e9ecef;padding-bottom:0}.fv-subtab{background:none;border:none;border-bottom:3px solid transparent;padding:.6rem 1.2rem;cursor:pointer;font-size:.95rem;font-weight:500;color:#6c757d;margin-bottom:-2px;transition:color .2s,border-color .2s}.fv-subtab:hover{color:#0056d6}.fv-subtab--active{color:#0056d6;border-bottom-color:#0056d6;font-weight:600}.event-groups{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.event-group{border:1px solid #dde3ea;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 1px 4px #0000000f;transition:box-shadow .2s}.event-group--open{box-shadow:0 4px 14px #2387aa24}.event-group-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:1rem 1.4rem;background:linear-gradient(135deg,#2387aa,#1a6a8a);color:#fff;border:none;cursor:pointer;text-align:left;transition:background .2s}.event-group-header:hover{background:linear-gradient(135deg,#1d7899,#155a79)}.event-group-title{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.event-group-icon{font-size:1.1rem}.event-group-name{font-size:1rem;font-weight:700;letter-spacing:.2px}.event-group-date{font-size:.85rem;opacity:.85;font-weight:400}.event-group-meta{display:flex;align-items:center;gap:1rem;flex-shrink:0}.event-group-count{font-size:.85rem;background:#fff3;padding:.25rem .7rem;border-radius:20px;font-weight:600}.event-group-chevron{font-size:.75rem;opacity:.8}.event-group-body{padding:.8rem 1rem;background:#f9fbfc}.admin-dashboard{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#e8ecf1)}.admin-header{background:linear-gradient(135deg,#2387aa,#1a6a8a)!important;color:#fff;padding:1.5rem 2rem 0;box-shadow:0 4px 20px #2387aa33;position:relative;overflow:hidden}.admin-header:before{content:"";position:absolute;top:0;right:0;width:500px;height:100%;background:linear-gradient(135deg,transparent 0%,rgba(255,255,255,.1) 100%);transform:skew(-15deg)}.header-content{max-width:1600px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1;padding-bottom:1rem}.header-left{display:flex;align-items:center;gap:16px}.admin-header h1{margin:0;font-size:22px;font-weight:700;letter-spacing:-.5px;text-shadow:0 2px 4px rgba(0,0,0,.1)}.user-badge{background:#fff3;padding:6px 14px;border-radius:16px;font-size:13px;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}.btn-logout{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:6px;padding:8px 20px;font-size:13px;font-weight:500;cursor:pointer;transition:all .3s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-logout:hover{background:#ffffff4d;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.admin-tabs{max-width:1600px;margin:0 auto;display:flex;gap:0;position:relative;z-index:1}.admin-tab{background:#ffffff14;color:#fffc;border:none;border-bottom:3px solid transparent;padding:10px 24px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s;border-radius:8px 8px 0 0;position:relative}.admin-tab:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%) scaleX(0);width:80%;height:3px;background:#fff;transition:transform .3s}.admin-tab:hover{background:#ffffff26;color:#fff}.admin-tab.active{background:#fff;color:#2387aa;font-weight:600}.admin-tab.active:after{transform:translate(-50%) scaleX(1);background:#2387aa}.admin-content{max-width:1600px;margin:0 auto;padding:1.5rem}.control-panel{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 4px 16px #00000014;border-top:4px solid #2387aa;position:relative;overflow:hidden}.control-panel:before{content:"";position:absolute;top:0;right:0;width:200px;height:200px;background:radial-gradient(circle,rgba(35,135,170,.05) 0%,transparent 70%);border-radius:50%;transform:translate(30%,-30%)}.control-row{display:flex;gap:1.25rem;flex-wrap:wrap;align-items:flex-end;position:relative;z-index:1}.control-row.action-row{margin-top:1.25rem;padding-top:1.25rem;border-top:2px solid #f0f3f5;justify-content:flex-start}.btn-action{padding:10px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:8px;box-shadow:0 2px 8px #0000001a}.btn-action:disabled{opacity:.5;cursor:not-allowed}.btn-action:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.btn-action:not(:disabled):active{transform:translateY(-1px)}.btn-preview{background:linear-gradient(135deg,#2387aa,#1a6a8a);color:#fff}color: white; } .btn-preview:not(:disabled):hover{box-shadow:0 6px 20px #2387aa66}.btn-bulk-publish{background:linear-gradient(135deg,#27ae60,#229954);color:#fff}.btn-bulk-publish:not(:disabled):hover{box-shadow:0 6px 20px #27ae6066}.btn-draft-all{background:linear-gradient(135deg,#f39c12,#d68910);color:#fff}.btn-draft-all:not(:disabled):hover{box-shadow:0 6px 20px #f39c1266}.btn-delete-all{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.btn-delete-all:not(:disabled):hover{box-shadow:0 6px 20px #e74c3c66}.control-group{display:flex;flex-direction:column;gap:6px;min-width:200px}.control-group .btn-upload{box-sizing:border-box;width:100%;position:relative;top:-10px}.control-group label:not(.btn-upload){font-size:12px;font-weight:600;color:#2c3e50;text-transform:uppercase;letter-spacing:.5px}.control-group:has(.btn-upload)>label:not(.btn-upload){position:relative;top:-20px}.status-filter{padding:10px 14px;border:2px solid #e0e6ed;border-radius:8px;font-size:14px;cursor:pointer;background:#fff;transition:all .3s;font-weight:500}.status-filter:hover:not(:disabled){border-color:#2387aa}.status-filter:focus{outline:none;border-color:#2387aa;box-shadow:0 0 0 3px #2387aa1a}.status-filter:disabled{opacity:.5;cursor:not-allowed}} .btn-upload{padding:10px 14px;border:2px solid #e0e6ed;border-radius:8px;font-size:14px;font-weight:500;background:#fff;color:#2c3e50;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:8px;min-width:200px;min-height:42px;box-sizing:border-box}.btn-upload:hover{border-color:#2387aa;background:#f8fbfd;box-shadow:0 0 0 3px #2387aa1a;transform:translateY(-1px)}.btn-upload:active{transform:translateY(0);box-shadow:0 0 0 3px #2387aa26}.upload-status{margin-top:1.5rem;padding:1.25rem;border-radius:10px;font-size:14px;box-shadow:0 2px 8px #00000014}.upload-status.success{background:linear-gradient(135deg,#e0f5f5,#c8eeee);border-left:4px solid #009999;color:#004a52}.upload-status.error{background:linear-gradient(135deg,#fce8e8,#f8d5d5);border-left:4px solid #c0392b;color:#5c1111}.upload-status p{margin:5px 0}.upload-status details{margin-top:10px}.upload-status summary{cursor:pointer;font-weight:600;padding:8px 0;transition:color .2s}.upload-status summary:hover{color:#099}.upload-status ul{margin:10px 0 0 20px;max-height:200px;overflow-y:auto}.upload-status li{margin:5px 0}.error-banner{margin-top:1.5rem;padding:1.25rem;background:linear-gradient(135deg,#fce8e8,#f8d5d5);border-left:4px solid #c0392b;border-radius:10px;color:#5c1111;font-size:14px;box-shadow:0 2px 8px #e74c3c1a}.empty-state-card{background:#fff;border-radius:12px;padding:80px 40px;text-align:center;box-shadow:0 4px 16px #00000014;border-top:4px solid #2387aa}.empty-state-card p{font-size:18px;color:#95a5a6;margin:15px 0;font-weight:500}@media (max-width: 768px){.header-content{flex-direction:column;gap:15px;align-items:stretch}.header-left{flex-direction:column;align-items:flex-start;gap:10px}.admin-header h1{font-size:20px}.control-row{flex-direction:column}.control-group{width:100%}.admin-content{padding:1.5rem}}.pictures-tab-content{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 4px 16px #00000014;border-top:4px solid #2387aa}.pictures-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #f0f3f5}.pictures-header h2{margin:0 0 12px;font-size:26px;color:#2c3e50;font-weight:700;position:relative;padding-left:20px}.pictures-header h2:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:80%;background:linear-gradient(to bottom,#2387aa,#1a6a8a);border-radius:2px}.pictures-header p{margin:0;color:#7f8c8d;font-size:15px}font-size: 15px; } .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:700px;width:90%;max-height:80vh;display:flex;flex-direction:column}.modal-header{padding:20px 24px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:20px;color:#1a202c}.modal-close{background:none;border:none;font-size:28px;color:#718096;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;border-radius:4px;transition:all .2s}.modal-close:hover{background:#f7fafc;color:#1a202c}.modal-body{padding:24px;overflow-y:auto;flex:1}.publish-summary{background:#f7fafc;border-radius:8px;padding:16px;margin-bottom:20px}.publish-summary p{margin:8px 0;font-size:15px}.error-list h4{margin:0 0 16px;font-size:16px;color:#1a202c}.error-item{background:#fff5f5;border-left:4px solid #f56565;padding:12px 16px;margin-bottom:12px;border-radius:4px}.error-item strong{display:block;color:#c53030;margin-bottom:6px}.error-item p{margin:4px 0;color:#742a2a;font-size:14px}.error-item pre{background:#fff;border:1px solid #feb2b2;border-radius:4px;padding:8px;font-size:12px;overflow-x:auto;margin:8px 0 0;color:#742a2a}.modal-footer{padding:16px 24px;border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end}.btn-copy{background:#2387aa;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-copy:hover{background:#1a6d8a;transform:translateY(-1px);box-shadow:0 4px 8px #2387aa4d}.btn-close{background:#e2e8f0;color:#1a202c;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-close:hover{background:#cbd5e0}.assignment-results{margin-top:1.5rem;background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 16px #00000014;border-top:4px solid #2387aa}.assignment-summary{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f0f3f5}.assignment-summary h3{margin:0 0 .75rem;color:#2c3e50;font-size:1.25rem}.assignment-summary p{margin:.5rem 0;font-size:1rem;color:#546e7a}.assignment-summary .warning-text{color:#f57c00;font-weight:500}.matched-files,.unmatched-files{margin-bottom:1.5rem}.matched-files h4,.unmatched-files h4{margin:0 0 .75rem;color:#2c3e50;font-size:1rem;font-weight:600}.matched-files ul,.unmatched-files ul{list-style:none;padding:0;margin:0}.matched-files li{padding:.75rem 1rem;margin-bottom:.5rem;background:linear-gradient(135deg,#d4edda,#c3e6cb);border-left:4px solid #28a745;border-radius:6px;display:flex;align-items:center;gap:.75rem;font-size:.9rem}.matched-files .filename{font-weight:600;color:#155724}.matched-files .arrow{color:#28a745;font-weight:700}.matched-files .presenter{color:#155724;font-weight:500}.matched-files .sessions-count{color:#155724;font-size:.85rem;margin-left:auto}.unmatched-files{background:#fff3cd;padding:1rem;border-radius:8px;border:1px solid #ffc107}.unmatched-files h4{color:#856404}.help-text{font-size:.9rem;color:#856404;margin-bottom:.75rem;line-height:1.5}.unmatched-files li{padding:.75rem 1rem;margin-bottom:.5rem;background:#fff;border-left:4px solid #ffc107;border-radius:6px;font-size:.9rem}.unmatched-files .filename{font-weight:600;color:#856404}.btn-dismiss{background:#2387aa;color:#fff;border:none;padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;margin-top:1rem}.btn-dismiss:hover{background:#1a6d8a;transform:translateY(-1px);box-shadow:0 4px 12px #2387aa4d}.health-dashboard{max-width:1400px;margin:0 auto;padding:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.health-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:16px;border-bottom:2px solid #e5e5e5}.health-header h1{margin:0;font-size:28px;color:#1a1a1a}.health-subtitle{margin:4px 0 0;color:#666;font-size:14px}.health-controls{display:flex;gap:16px;align-items:center}.auto-refresh-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#666}.refresh-btn{background:linear-gradient(135deg,#06c,#0052a3);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:transform .2s}.refresh-btn:hover{transform:translateY(-2px)}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:32px}.status-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a;text-align:center}.status-icon{font-size:32px;margin-bottom:8px}.status-label{font-size:13px;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.status-value{font-size:20px;font-weight:600;color:#1a1a1a}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:24px;margin-bottom:32px}.metric-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a}.metric-card h3{margin:0 0 20px;font-size:18px;color:#1a1a1a}.metric-chart{display:flex;justify-content:center;margin-bottom:24px}.progress-ring{width:120px;height:120px}.progress-ring-bg{stroke:#e5e5e5}.progress-ring-fill{transition:stroke-dasharray .5s ease}.progress-ring-fill.status-good{stroke:#22c55e}.progress-ring-fill.status-warning{stroke:#f59e0b}.progress-ring-fill.status-critical{stroke:#ef4444}.progress-text{font-size:20px;font-weight:600;fill:#1a1a1a}.metric-details{display:flex;flex-direction:column;gap:8px}.metric-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f0f0f0;font-size:14px}.metric-row:last-child{border-bottom:none}.metric-row span{color:#666}.metric-row strong{color:#1a1a1a}.info-card{grid-column:span 1}.info-list{display:flex;flex-direction:column;gap:16px}.info-item{display:flex;align-items:center;gap:12px;padding:12px;background:#f8f9fa;border-radius:8px}.info-icon{font-size:24px;width:40px;text-align:center}.info-label{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:16px;font-weight:600;color:#1a1a1a}.health-indicators{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px}.health-indicators h3{margin:0 0 16px;font-size:18px;color:#1a1a1a}.indicator-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.indicator{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;font-size:14px;font-weight:500}.indicator-dot{width:12px;height:12px;border-radius:50%;animation:pulse 2s ease-in-out infinite}.indicator-good{background:#f0fdf4;color:#166534}.indicator-good .indicator-dot{background:#22c55e}.indicator-warning{background:#fffbeb;color:#92400e}.indicator-warning .indicator-dot{background:#f59e0b}.indicator-critical{background:#fef2f2;color:#991b1b}.indicator-critical .indicator-dot{background:#ef4444}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.recommendations{background:#fffbeb;border:2px solid #f59e0b;border-radius:12px;padding:24px;margin-bottom:24px}.recommendations h3{margin:0 0 16px;color:#92400e;font-size:18px}.recommendations ul{margin:0;padding-left:20px}.recommendations li{margin-bottom:8px;color:#78350f;line-height:1.6}.recommendations code{background:#fff;padding:2px 8px;border-radius:4px;font-family:Courier New,monospace;font-size:13px;color:#06c}.health-footer{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid #e5e5e5}.back-link{color:#06c;text-decoration:none;font-weight:500}.back-link:hover{text-decoration:underline}.health-timestamp{color:#666;font-size:14px}.health-loading,.health-error{text-align:center;padding:60px 20px}.health-error h2{color:#ef4444;margin-bottom:16px}.health-error button{background:#06c;color:#fff;border:none;padding:10px 24px;border-radius:6px;cursor:pointer;font-size:14px}@media (max-width: 768px){.health-header{flex-direction:column;align-items:flex-start;gap:16px}.health-controls{width:100%;flex-direction:column}.metrics-grid{grid-template-columns:1fr}.status-grid{grid-template-columns:repeat(2,1fr)}.indicator-grid{grid-template-columns:1fr}.health-footer{flex-direction:column;gap:12px;text-align:center}}.idle-timeout-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000bf;display:flex;justify-content:center;align-items:center;z-index:10000;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.idle-timeout-modal{background:#fff;border-radius:12px;padding:40px;max-width:480px;width:90%;box-shadow:0 20px 60px #0000004d;text-align:center;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.idle-timeout-icon{color:var(--primary-color, #0066cc);margin-bottom:24px;display:flex;justify-content:center}.idle-timeout-icon svg{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.idle-timeout-title{font-size:24px;font-weight:600;color:#1a1a1a;margin:0 0 16px}.idle-timeout-message{font-size:16px;color:#4a4a4a;line-height:1.6;margin:0 0 12px}.idle-timeout-submessage{font-size:14px;color:#666;margin:0 0 32px}.idle-timeout-button{background:linear-gradient(135deg,var(--primary-color, #0066cc),var(--secondary-color, #0052a3));color:#fff;border:none;padding:14px 32px;font-size:16px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #0066cc4d;width:100%;max-width:280px}.idle-timeout-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #06c6}.idle-timeout-button:active{transform:translateY(0)}.idle-timeout-button:focus{outline:2px solid var(--primary-color, #0066cc);outline-offset:2px}.idle-timeout-footer{margin-top:24px;padding-top:20px;border-top:1px solid #e5e5e5}.idle-timeout-footer small{color:#888;font-size:13px}@media (prefers-color-scheme: dark){.idle-timeout-modal{background:#2a2a2a;color:#e5e5e5}.idle-timeout-title{color:#fff}.idle-timeout-message{color:#d0d0d0}.idle-timeout-submessage{color:#a0a0a0}.idle-timeout-footer{border-top-color:#444}.idle-timeout-footer small{color:#999}}@media (max-width: 768px){.idle-timeout-modal{padding:30px 24px;margin:20px}.idle-timeout-title{font-size:20px}.idle-timeout-message{font-size:15px}.idle-timeout-button{width:100%;max-width:100%}}.cookie-consent-overlay{position:fixed;bottom:0;left:0;right:0;z-index:10000;padding:0 16px 16px;pointer-events:none}.cookie-consent-banner{pointer-events:auto;max-width:720px;margin:0 auto;display:flex;align-items:center;gap:16px;padding:16px 24px;background:#1a1a2e;color:#e0e0e0;border-radius:12px;box-shadow:0 -4px 24px #00000059;font-size:14px;line-height:1.5;animation:slideUp .35s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.cookie-consent-icon{font-size:32px;flex-shrink:0}.cookie-consent-text{flex:1}.cookie-consent-text strong{display:block;margin-bottom:4px;color:#fff;font-size:15px}.cookie-consent-text p{margin:0;color:#b0b0c0;font-size:13px}.cookie-consent-actions{display:flex;gap:8px;flex-shrink:0}.cookie-btn{padding:8px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s,transform .1s;white-space:nowrap}.cookie-btn:active{transform:scale(.96)}.cookie-btn-accept{background:#099;color:#fff}.cookie-btn-accept:hover{background:#00b3b3}.cookie-btn-decline{background:transparent;color:#b0b0c0;border:1px solid #444}.cookie-btn-decline:hover{background:#ffffff14;color:#fff}@media (max-width: 600px){.cookie-consent-banner{flex-direction:column;text-align:center}.cookie-consent-actions{width:100%;justify-content:center}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh}
