:root{--ae-font: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--ae-white: #FFFFFF;--ae-black: #000000;--ae-orange: #FF8200;--ae-wakatipu-blue: #082B4A;--ae-autumnal-red: #B0333D;--ae-electric-yellow: #FFDD00;--ae-sky-blue: #B2D6E0;--ae-aspiring-blue: #50B2C0;--ae-galaxy-purple: #AB5C8A;--ae-vineyard-green: #629E2D;--ae-tint-10: rgba(0, 0, 0, .1);--ae-tint-20: rgba(0, 0, 0, .2);--ae-tint-30: rgba(0, 0, 0, .3);--ae-overlay-40: rgba(0, 0, 0, .4);--bg-primary: var(--ae-white);--bg-secondary: #f7fafc;--bg-tertiary: #f9f9f9;--text-primary: var(--ae-black);--text-secondary: rgba(0, 0, 0, .7);--text-tertiary: rgba(0, 0, 0, .5);--border-color: var(--ae-tint-20);--border-color-hover: var(--ae-black);--shadow-sm: 0 2px 4px var(--ae-tint-10);--shadow-md: 0 4px 12px var(--ae-tint-20);--shadow-lg: 0 10px 40px rgba(0, 0, 0, .2)}.dark-mode{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-tertiary: #3a3a3a;--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .85);--text-tertiary: rgba(255, 255, 255, .6);--border-color: rgba(255, 255, 255, .15);--border-color-hover: rgba(255, 255, 255, .4);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .5);--shadow-lg: 0 10px 40px rgba(0, 0, 0, .7);--ae-tint-10: rgba(255, 255, 255, .1);--ae-tint-20: rgba(255, 255, 255, .2);--ae-tint-30: rgba(255, 255, 255, .3)}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;font-family:var(--ae-font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}#root{width:100%;min-height:100vh}.theme-toggle{position:fixed;top:20px;right:20px;width:48px;height:48px;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:1000;box-shadow:var(--shadow-md)}.theme-toggle:hover{border-color:var(--ae-orange);transform:scale(1.1);box-shadow:var(--shadow-lg)}.theme-toggle:focus-visible{outline:3px solid var(--ae-aspiring-blue);outline-offset:2px}.theme-icon{width:24px;height:24px;color:var(--text-primary);transition:all .3s ease}.theme-toggle:hover .theme-icon{color:var(--ae-orange)}@media(max-width:768px){.theme-toggle{width:44px;height:44px;top:15px;right:15px}.theme-icon{width:22px;height:22px}}.view-toggle{position:fixed;top:20px;right:80px;width:48px;height:48px;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:1000;box-shadow:var(--shadow-md)}.view-toggle:hover{border-color:var(--ae-orange);transform:scale(1.1);box-shadow:var(--shadow-lg)}.view-toggle:focus-visible{outline:3px solid var(--ae-aspiring-blue);outline-offset:2px}.view-icon{width:24px;height:24px;color:var(--text-primary);transition:all .3s ease}.view-toggle:hover .view-icon{color:var(--ae-orange)}@media(max-width:768px){.view-toggle{width:44px;height:44px;top:15px;right:70px}.view-icon{width:22px;height:22px}}@media(max-width:480px){.view-toggle{width:40px;height:40px;right:65px}.view-icon{width:20px;height:20px}}.header{background:var(--bg-primary);color:var(--text-primary);padding:30px;text-align:center;border-bottom:3px solid var(--ae-orange);box-shadow:var(--shadow-sm);transition:background-color .3s ease,color .3s ease;position:relative}.header h1{font-size:2.5em;margin-bottom:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.header p{font-size:1.1em;font-weight:300;color:var(--text-secondary);transition:color .3s ease}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:1rem;margin-top:1rem;flex-wrap:wrap}.user-info{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-secondary);border-radius:6px;font-size:.95em}.user-name{font-weight:600;color:var(--text-primary)}.user-role{font-weight:400;color:var(--text-secondary);font-size:.9em}.logout-button{padding:.5rem 1rem;background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:.95em;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.logout-button:hover{background:linear-gradient(135deg,#f7931e,#ff6b35);box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.logout-button:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}.admin-link{padding:.5rem 1rem;background:var(--ae-orange);color:#fff;text-decoration:none;border-radius:6px;font-weight:600;font-size:.95em;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.admin-link:hover{background:#e67e22;box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.admin-link:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}.workflow-legend{background:var(--bg-primary);padding:20px;border-bottom:1px solid var(--border-color);transition:background-color .3s ease,border-color .3s ease}.legend-items{display:flex;justify-content:center;gap:30px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:8px;font-weight:500;font-family:var(--ae-font);color:var(--text-primary);transition:color .3s ease,opacity .3s ease}.legend-item.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.legend-item.clickable:hover{opacity:.7}.legend-item.clickable:active{transform:scale(.98)}.legend-item.inactive{opacity:.4}.legend-item.inactive .legend-color{filter:grayscale(50%)}.legend-color{width:20px;height:20px;border-radius:4px;border:2px solid var(--border-color);transition:border-color .3s ease}@media(max-width:768px){.legend-items{flex-direction:column;gap:15px}}.controls{padding:20px;background:var(--bg-primary);border-bottom:1px solid var(--border-color);text-align:center;transition:background-color .3s ease,border-color .3s ease}.controls button{background:var(--bg-primary);color:var(--text-primary);border:2px solid var(--border-color);border-bottom:3px solid var(--ae-orange);padding:12px 24px;margin:0 10px;border-radius:6px;cursor:pointer;font-weight:600;font-family:var(--ae-font);transition:all .2s ease}.controls button:hover{transform:translateY(-2px);border-color:var(--border-color-hover);box-shadow:var(--shadow-md)}.controls button:focus-visible{outline:3px solid var(--ae-aspiring-blue);outline-offset:2px}.event{font-size:.7em;padding:2px 4px;border-radius:3px;font-weight:500;text-shadow:0 1px 1px rgba(0,0,0,.2);margin-bottom:2px}.event.clickable{cursor:pointer;transition:transform .1s,box-shadow .1s}.event.clickable:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0003}.event.clickable:active{transform:translateY(0)}.day{border:1px solid var(--border-color);min-height:80px;padding:5px;position:relative;cursor:pointer;background:var(--bg-primary);transition:all .2s ease}.day:hover{background:var(--bg-secondary)}.day.other-month{color:var(--text-tertiary);background:var(--bg-tertiary)}.day.today{background:#3b82f61a;border:2px solid rgba(59,130,246,.6);box-shadow:inset 0 0 0 1px #3b82f64d}.day.today:hover{background:#3b82f626}.day.today .day-number{color:#3b82f6;font-weight:700}.day-number{font-weight:600;margin-bottom:5px;color:var(--text-primary);transition:color .3s ease}.day.other-month .day-number{color:var(--text-tertiary)}.day-events{display:flex;flex-direction:column;gap:2px}.month-calendar{flex:1 1 30%;border:1px solid var(--border-color);border-radius:8px;overflow:hidden;box-shadow:var(--shadow-md);background:var(--bg-primary);transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease;display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:auto;grid-gap:0;row-gap:0;column-gap:0;min-width:0;align-content:start}.month-calendar:nth-child(1){flex:1 1 40%}.month-header{background:linear-gradient(135deg,#34495e,#2c3e50);color:#fff;padding:15px;text-align:center;font-size:1.2em;font-weight:600;grid-column:1 / -1;height:60px;display:flex;align-items:center;justify-content:center}.weekday-header{display:contents}.weekday{padding:10px 5px;text-align:center;border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);color:var(--text-primary);transition:color .3s ease,border-color .3s ease;background:var(--bg-secondary);font-weight:600;font-size:.9em;height:40px;min-height:40px;display:flex;align-items:center;justify-content:center;white-space:nowrap;overflow:hidden}.weekday:last-child{border-right:none}.calendar-grid{display:contents}.calendar-container{display:flex;flex-wrap:nowrap;padding:20px;gap:20px;justify-content:center;width:100%;min-width:0}@media(max-width:768px){.calendar-container{flex-direction:column;flex-wrap:wrap}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-content.meeting-modal-content{background:var(--bg-primary);border-radius:12px;padding:0;width:50%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);transition:all .3s ease}.modal-header{padding:20px 30px;border-bottom:3px solid var(--ae-orange);display:flex;justify-content:space-between;align-items:center;background:var(--bg-primary);color:var(--text-primary);border-radius:12px 12px 0 0;transition:all .3s ease}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.close-button{background:none;border:none;font-size:2rem;color:var(--text-primary);cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s,color .3s ease}.close-button:hover{background:var(--bg-secondary)}.meeting-form{padding:30px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group{margin-bottom:20px}.form-group.full-width{grid-column:1 / -1}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-primary);font-size:.95rem;transition:color .3s ease}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border:2px solid var(--border-color);border-radius:6px;font-size:1rem;font-family:var(--ae-font);transition:border-color .2s;background:var(--bg-primary);color:var(--text-primary)}.form-group input::placeholder,.form-group textarea::placeholder{font-size:.95rem;color:var(--text-secondary);opacity:.7}.date-input-group{display:flex;gap:12px;align-items:stretch}.date-picker{flex:0 0 auto;min-width:160px;cursor:pointer}.date-text-input{flex:1;min-width:0}@media(max-width:600px){.date-input-group{flex-direction:column}.date-picker{width:100%;min-width:100%}}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--border-color-hover);box-shadow:0 0 0 3px var(--ae-tint-10)}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:var(--bg-secondary);cursor:not-allowed;opacity:.6}.form-group textarea{resize:vertical;min-height:100px}.error-message{background:#fee;border:1px solid #fcc;border-radius:6px;padding:12px;color:#c00;margin-bottom:20px;font-size:.95rem}.warning-message{background:#fffbea;border:1px solid #ffd93d;border-radius:6px;padding:12px;color:#8b6914;margin-bottom:20px;font-size:.95rem;line-height:1.5}.button-group{display:flex;gap:12px;justify-content:flex-end;align-items:center;margin-top:30px;flex-wrap:nowrap}.btn-primary,.btn-secondary,.btn-delete{padding:12px 24px;border:none;border-radius:6px;font-size:1rem;font-weight:600;font-family:var(--ae-font);cursor:pointer;transition:all .2s}.btn-primary{background:var(--bg-primary);color:var(--text-primary);border:2px solid var(--border-color);border-bottom:3px solid var(--ae-orange)}.btn-primary:hover:not(:disabled){border-color:var(--border-color-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:disabled{background:var(--bg-tertiary);cursor:not-allowed;border-color:var(--border-color);opacity:.5}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:2px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--border-color-hover)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-delete{background:var(--ae-autumnal-red);color:#fff;border:2px solid var(--ae-autumnal-red)}.btn-delete:hover:not(:disabled){background:#8f2831;border-color:#8f2831;transform:translateY(-1px);box-shadow:0 4px 8px #b0333d4d}.btn-delete:disabled{background:#ccc;cursor:not-allowed;border-color:#ccc}.ical-download-section{margin:24px 0;padding:20px;background:var(--bg-secondary);border-radius:8px;border:2px solid var(--border-color);transition:all .3s ease}.ical-download-section h3{margin:0 0 8px;font-size:1.1rem;font-weight:600;color:var(--text-primary);transition:color .3s ease}.ical-description{margin:0 0 16px;font-size:.9rem;color:var(--text-secondary);transition:color .3s ease}.ical-buttons{display:flex;flex-direction:column;gap:12px}.ical-button-group{display:flex;justify-content:space-between;align-items:center;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:8px;padding:12px 16px;transition:all .2s}.ical-button-group:hover{border-color:var(--ae-orange);box-shadow:0 2px 8px #ff8c0033}.ical-button-info{display:flex;align-items:center;gap:12px;flex:1}.ical-actions{display:flex;gap:8px}.btn-ical-action{width:40px;height:40px;border:2px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);cursor:pointer;font-size:1.2rem;transition:all .2s;display:flex;align-items:center;justify-content:center;color:var(--text-primary)}.btn-ical-action:hover:not(:disabled){background:var(--ae-orange);border-color:var(--ae-orange);transform:translateY(-2px);box-shadow:0 4px 8px #ff8c004d}.btn-ical-action:disabled{opacity:.6;cursor:not-allowed}.btn-ical-action.success{background:#4caf50;border-color:#4caf50;color:#fff}.btn-ical-action.btn-ical-primary{background:var(--ae-orange);border-color:var(--ae-orange);color:#fff}.btn-ical-action.btn-ical-primary:hover:not(:disabled){background:#ff9d1f;border-color:#ff9d1f}.ical-icon{font-size:1.5rem;flex-shrink:0}.ical-label{display:flex;flex-direction:column;gap:2px;flex:1}.ical-label strong{font-weight:600;font-size:.95rem;color:var(--text-primary)}.ical-label small{font-size:.85rem;opacity:.9;color:var(--text-secondary)}@media(max-width:768px){.modal-content.meeting-modal-content{width:100%;margin:0;border-radius:0;max-height:100vh}.modal-header{border-radius:0}.meeting-form{padding:20px}.form-row{grid-template-columns:1fr;gap:0}.button-group{flex-direction:column-reverse;align-items:stretch}.btn-primary,.btn-secondary,.btn-delete{width:100%}}.calendar-page{font-family:var(--ae-font);background:var(--bg-primary);min-height:100vh;padding:20px;transition:background-color .3s ease}.container{width:85%;margin:0 auto;background:var(--bg-primary);border-radius:8px;border:1px solid var(--border-color);box-shadow:var(--shadow-md);overflow:hidden;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.actions-bar{padding:20px 30px;border-bottom:1px solid var(--border-color);display:flex;justify-content:flex-end;transition:border-color .3s ease}.btn-create-meeting{background:var(--bg-primary);color:var(--text-primary);border:2px solid var(--border-color);border-bottom:3px solid var(--ae-orange);padding:12px 24px;border-radius:6px;font-size:1rem;font-weight:600;font-family:var(--ae-font);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.btn-create-meeting:hover{border-color:var(--border-color-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.loading-message,.error-message{text-align:center;padding:60px 20px;margin:20px}.loading-message p{font-size:1.2rem;color:var(--text-primary);margin:0;transition:color .3s ease}.error-message{background:#fee;border:1px solid #fcc;border-radius:8px}.dark-mode .error-message{background:#dc262633;border:1px solid rgba(220,38,38,.4)}.error-message p{color:#c00;margin-bottom:15px;font-size:1rem}.dark-mode .error-message p{color:#fca5a5}.error-message button{background:var(--bg-primary);color:var(--text-primary);border:2px solid var(--border-color);border-bottom:3px solid var(--ae-orange);padding:10px 20px;border-radius:6px;cursor:pointer;font-size:1rem;font-family:var(--ae-font);font-weight:600;transition:all .2s}.error-message button:hover{border-color:var(--border-color-hover);transform:translateY(-1px)}.meeting-1{background:#ff8c00;color:#fff}.meeting-2{background:#191970;color:#fff}.meeting-3{background:#87ceeb;color:#000}.meeting-4{background:#0ff;color:#000}.meeting-5{background:plum;color:#000}.meeting-6{background:#32cd32;color:#000}.meeting-7{background:red;color:#fff}.meeting-8{background:#ff0;color:#000}@media(max-width:768px){.calendar-page{padding:10px}.actions-bar{padding:15px 20px}.btn-create-meeting{width:100%;justify-content:center}}.agenda-page{min-height:100vh;background:var(--bg-primary);transition:background-color .3s ease}.agenda-container{max-width:1200px;margin:0 auto;padding:20px}.agenda-month-section{margin-bottom:40px}.agenda-month-header{font-size:1.8rem;font-weight:600;color:var(--text-primary);margin-bottom:20px;padding-bottom:10px;border-bottom:3px solid var(--ae-orange);text-transform:uppercase;letter-spacing:.5px;transition:color .3s ease}.agenda-items{display:flex;flex-direction:column;gap:16px}.agenda-item{display:flex;gap:20px;background:var(--bg-secondary);border-radius:8px;padding:20px;border-left:5px solid var(--ae-orange);cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.agenda-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:var(--bg-primary)}.agenda-item-date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:70px;padding:10px;background:var(--ae-orange);color:#fff;border-radius:8px;text-align:center}.agenda-date-day{font-size:2rem;font-weight:700;line-height:1}.agenda-date-weekday{font-size:.9rem;font-weight:500;text-transform:uppercase;margin-top:4px;opacity:.9}.agenda-item-content{flex:1;display:flex;flex-direction:column;gap:10px}.agenda-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.agenda-item-title{font-size:1.3rem;font-weight:600;color:var(--text-primary);margin:0;transition:color .3s ease}.agenda-item-countdown{font-size:.9rem;font-weight:600;color:var(--ae-orange);padding:4px 12px;background:var(--bg-primary);border-radius:20px;white-space:nowrap;transition:all .3s ease}.agenda-item-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.agenda-item-type{font-size:.85rem;font-weight:600;padding:4px 12px;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.agenda-item-full-date{font-size:.95rem;color:var(--text-secondary);transition:color .3s ease}.agenda-item-workflow{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--text-secondary);transition:color .3s ease}.workflow-label{font-weight:600;color:var(--text-primary);transition:color .3s ease}.workflow-date{color:var(--text-secondary)}.agenda-item-notes{font-size:.95rem;color:var(--text-secondary);margin:8px 0 0;padding:10px;background:var(--bg-primary);border-radius:4px;line-height:1.5;transition:all .3s ease}.no-meetings{text-align:center;padding:60px 20px;color:var(--text-secondary);font-size:1.1rem}.no-meetings p{margin:0}@media(max-width:768px){.agenda-container{padding:15px}.agenda-month-header{font-size:1.5rem}.agenda-item{flex-direction:column;gap:15px}.agenda-item-date{flex-direction:row;min-width:auto;width:100%;justify-content:center;gap:10px}.agenda-date-day{font-size:1.8rem}.agenda-date-weekday{font-size:.85rem;margin-top:0;align-self:center}.agenda-item-title{font-size:1.1rem}.agenda-item-header{flex-direction:column;align-items:flex-start}.agenda-item-countdown{align-self:flex-start}.agenda-item-meta{flex-direction:column;align-items:flex-start;gap:8px}}@media(max-width:480px){.agenda-month-header{font-size:1.3rem}.agenda-item{padding:15px}.agenda-item-title{font-size:1rem}.agenda-date-day{font-size:1.5rem}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding:20px;transition:background-color .3s ease}.login-container{background:var(--bg-primary);border-radius:16px;padding:48px 40px;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);border-bottom:4px solid var(--ae-orange);max-width:440px;width:100%;animation:slideUp .4s ease-out;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.login-header{text-align:center;margin-bottom:32px}.login-header h1{font-size:32px;font-weight:700;color:var(--text-primary);margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px;transition:color .3s ease}.login-header p{font-size:16px;font-weight:300;color:var(--text-secondary);margin:0;transition:color .3s ease}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:600;color:var(--text-primary);transition:color .3s ease}.form-group input{padding:12px 16px;font-size:16px;border:2px solid var(--border-color);border-radius:8px;transition:all .2s;font-family:var(--ae-font);background:var(--bg-primary);color:var(--text-primary)}.form-group input:focus{outline:none;border-color:var(--border-color-hover);box-shadow:0 0 0 3px var(--ae-tint-10)}.form-group input:disabled{background-color:var(--bg-secondary);cursor:not-allowed;opacity:.6}.login-page .form-group input[type=text]{font-size:24px;letter-spacing:8px;text-align:center;font-weight:600}.btn-primary,.btn-secondary{padding:12px 24px;font-size:16px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s;font-family:var(--ae-font)}.btn-primary:hover:not(:disabled){border-color:var(--border-color-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{background:var(--bg-primary);color:var(--text-primary);border:2px solid var(--border-color);transition:all .2s}.btn-secondary:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--border-color-hover)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.button-group{display:flex;flex-direction:column;gap:12px}.error-message,.success-message,.info-text{padding:12px 16px;border-radius:8px;font-size:14px;font-weight:400}.error-message{background-color:#fed7d7;color:#c53030;border:1px solid #fc8181}.success-message{background-color:#c6f6d5;color:#2f855a;border:1px solid #9ae6b4}.info-text{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-left:4px solid var(--ae-aspiring-blue);text-align:center;transition:all .3s ease}.info-text strong{font-weight:700}.help-text{font-size:14px;font-weight:300;color:var(--text-secondary);text-align:center;margin:0;line-height:1.5;transition:color .3s ease}@media(max-width:480px){.login-container{padding:32px 24px}.login-header h1{font-size:28px}}.admin-page{min-height:100vh;background:var(--bg-primary);transition:background-color .3s ease}.admin-header{background:var(--bg-primary);padding:1.5rem 2rem;box-shadow:var(--shadow-sm);border-bottom:3px solid var(--ae-orange);transition:background-color .3s ease,box-shadow .3s ease}.admin-header-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.admin-header h1{font-size:1.75rem;font-weight:600;color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:.5px;transition:color .3s ease}.admin-header-actions{display:flex;gap:1rem}.admin-container{max-width:1400px;margin:2rem auto;display:flex;gap:2rem;padding:0 2rem;min-height:calc(100vh - 150px)}.admin-nav{width:250px;background:var(--bg-primary);border-radius:8px;padding:1rem;border:1px solid var(--border-color);box-shadow:var(--shadow-md);height:fit-content;transition:all .3s ease}.admin-nav-item{width:100%;padding:1rem;border:none;background:none;text-align:left;font-size:1rem;font-family:var(--ae-font);font-weight:400;cursor:pointer;border-radius:6px;margin-bottom:.5rem;display:flex;align-items:center;gap:.75rem;transition:all .2s;color:var(--text-primary)}.admin-nav-item .icon{font-size:1.25rem}.admin-nav-item:hover{background:var(--bg-secondary)}.admin-nav-item.active{background:var(--bg-secondary);color:var(--text-primary);font-weight:600;border:2px solid var(--border-color);border-left:4px solid var(--ae-orange)}.admin-content{flex:1;background:var(--bg-primary);border-radius:8px;padding:2rem;border:1px solid var(--border-color);box-shadow:var(--shadow-md);transition:all .3s ease}.admin-panel{height:100%}.panel-header{margin-bottom:2rem;display:flex;justify-content:space-between;align-items:flex-start}.panel-header h2{font-size:1.75rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem;transition:color .3s ease}.panel-description{color:var(--text-secondary);font-size:.95rem;font-weight:300;margin:.5rem 0 0;transition:color .3s ease}.panel-loading,.panel-error{padding:3rem;text-align:center;font-size:1.1rem;color:var(--text-primary);transition:color .3s ease}.panel-error{color:var(--ae-autumnal-red)}.users-list{display:flex;flex-direction:column;gap:1rem}.user-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem;display:flex;justify-content:space-between;align-items:center;transition:all .2s}.user-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-color-hover)}.user-card.inactive{opacity:.6;background:var(--bg-tertiary)}.user-info{flex:1}.user-email{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem;transition:color .3s ease}.user-meta{display:flex;gap:.75rem;align-items:center}.role-badge{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600}.role-selector{padding:.25rem 2rem .25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600;border:2px solid transparent;cursor:pointer;transition:all .2s ease;font-family:var(--ae-font);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='white' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center}.role-selector:hover{border-color:#ffffff4d;transform:translateY(-1px)}.role-selector:focus{outline:none;box-shadow:0 0 0 3px #fff3}.role-administrator{background:var(--ae-autumnal-red);color:#fff}.role-editor{background:var(--ae-aspiring-blue);color:#fff}.role-viewer{background:var(--ae-vineyard-green);color:#fff}.role-selector.role-administrator{background:var(--ae-autumnal-red);color:#fff}.role-selector.role-editor{background:var(--ae-aspiring-blue);color:#fff}.role-selector.role-viewer{background:var(--ae-vineyard-green);color:#fff}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600}.status-badge.active{background:#e8f5e9;color:#2e7d32}.status-badge.inactive{background:#ffebee;color:#c62828}.user-actions{display:flex;gap:.5rem}.meeting-types-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.meeting-type-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;transition:all .2s;display:flex;flex-direction:column}.meeting-type-card:hover{box-shadow:0 4px 12px #0000001a}.meeting-type-color{height:8px;width:100%}.meeting-type-info{padding:1.25rem;flex:1}.meeting-type-info h3{font-size:1.1rem;margin:0 0 .5rem;color:#333}.meeting-type-info p{font-size:.95rem;color:#666;margin:0 0 1rem}.meeting-type-meta{font-size:.85rem;color:#999;display:flex;gap:1rem;align-items:center}.meeting-type-card .btn{margin:0 1.25rem 1.25rem}.config-list{display:flex;flex-direction:column;gap:1rem}.config-item{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.25rem;display:flex;justify-content:space-between;align-items:center;gap:2rem}.config-info{flex:1}.config-info h3{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:#333}.config-description{font-size:.9rem;color:#666;margin:0}.config-value{display:flex;align-items:center;gap:.75rem}.config-input{padding:.5rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem;min-width:250px}.config-type{font-size:.85rem;color:#999;font-family:monospace}.audit-logs-table{overflow-x:auto}.audit-logs-table table{width:100%;border-collapse:collapse}.audit-logs-table th{background:#f5f5f5;padding:.75rem;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #e0e0e0}.audit-logs-table td{padding:.75rem;border-bottom:1px solid #e0e0e0;font-size:.9rem;color:#666}.audit-logs-table tbody tr:hover{background:#f9f9f9}.btn{padding:.625rem 1.25rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;font-family:var(--ae-font);cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block}.btn-primary{background:var(--bg-primary);color:var(--text-primary);border:2px solid var(--border-color);border-bottom:3px solid var(--ae-orange);transition:all .2s}.btn-primary:hover{transform:translateY(-2px);border-color:var(--border-color-hover);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:2px solid var(--border-color);transition:all .2s}.btn-secondary:hover{background:var(--bg-tertiary);border-color:var(--border-color-hover)}.btn-danger{background:var(--ae-autumnal-red);color:#fff;border:2px solid var(--ae-autumnal-red)}.btn-danger:hover{background:#8f2831;border-color:#8f2831}.btn-small{padding:.4rem .75rem;font-size:.85rem}.admin-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.admin-modal-content{background:var(--bg-primary);border-radius:12px;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);transition:all .3s ease}.admin-modal-content.large{max-width:800px}.admin-modal-content h2{margin:0 0 1.5rem;color:var(--text-primary);transition:color .3s ease}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-primary);transition:color .3s ease}.form-group.checkbox-group{margin-bottom:1.25rem;display:flex;align-items:center;gap:.75rem}.form-group.checkbox-group input[type=checkbox]{margin:0;width:auto;height:auto;padding:0}.form-group.checkbox-group label{display:inline-block;margin-bottom:0;font-weight:400;margin-left:0}.form-group input,.form-group select{width:100%;padding:.75rem;border:2px solid var(--border-color);border-radius:6px;font-size:1rem;font-family:var(--ae-font);transition:border-color .2s;background:var(--bg-primary);color:var(--text-primary)}.form-group input[type=text],.form-group input[type=email],.form-group input[type=number]{font-size:14px}.form-group input[type=color]{width:60px;height:40px;padding:2px;cursor:pointer;border:2px solid var(--border-color);border-radius:6px}.form-group input[type=checkbox]{width:auto;margin-right:.5rem;cursor:pointer}.form-group label[style*="display: flex"]{display:flex;align-items:center;font-weight:400}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--border-color-hover);box-shadow:0 0 0 3px var(--ae-tint-10)}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem}.sessions-list{display:flex;flex-direction:column;gap:1rem;margin:1.5rem 0}.session-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:1rem;display:flex;justify-content:space-between;align-items:center}.session-info p{margin:.25rem 0;font-size:.9rem;color:#666}.session-info strong{color:#333}@media(max-width:1024px){.admin-container{flex-direction:column}.admin-nav{width:100%;display:flex;overflow-x:auto;padding:.5rem}.admin-nav-item{min-width:150px;margin-bottom:0;margin-right:.5rem}.meeting-types-grid{grid-template-columns:1fr}}@media(max-width:768px){.admin-header-content{flex-direction:column;gap:1rem;align-items:flex-start}.admin-container{padding:0 1rem}.user-card{flex-direction:column;align-items:flex-start;gap:1rem}.config-item{flex-direction:column;align-items:flex-start}.config-value{width:100%}.config-input{width:100%;min-width:0}}.offline-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding:2rem;transition:background-color .3s ease}.offline-container{background:var(--bg-primary);border-radius:16px;padding:3rem;max-width:500px;text-align:center;border:1px solid var(--border-color);border-bottom:4px solid var(--ae-orange);box-shadow:var(--shadow-lg);transition:all .3s ease}.offline-icon{font-size:5rem;margin-bottom:1.5rem;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.offline-container h1{font-size:2rem;font-weight:600;font-family:var(--ae-font);color:var(--text-primary);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.5px;transition:color .3s ease}.offline-message{font-size:1.1rem;font-family:var(--ae-font);font-weight:300;color:var(--text-secondary);line-height:1.6;margin-bottom:2rem;transition:color .3s ease}.btn-retry{background:var(--bg-primary);color:var(--text-primary);border:2px solid var(--border-color);border-bottom:3px solid var(--ae-orange);padding:1rem 2rem;font-size:1.1rem;font-weight:600;font-family:var(--ae-font);border-radius:8px;cursor:pointer;transition:all .2s}.btn-retry:hover{transform:translateY(-2px);border-color:var(--border-color-hover);box-shadow:var(--shadow-md)}.offline-tips{margin-top:2.5rem;text-align:left;background:var(--bg-secondary);padding:1.5rem;border-radius:8px;border-left:4px solid var(--ae-aspiring-blue);transition:background-color .3s ease}.offline-tips h3{font-size:1.1rem;font-weight:600;font-family:var(--ae-font);color:var(--text-primary);margin:0 0 1rem;transition:color .3s ease}.offline-tips ul{margin:0;padding-left:1.5rem}.offline-tips li{font-family:var(--ae-font);font-weight:300;color:var(--text-secondary);margin-bottom:.5rem;line-height:1.5;transition:color .3s ease}@media(max-width:768px){.offline-container{padding:2rem}.offline-icon{font-size:4rem}.offline-container h1{font-size:1.5rem}.offline-message{font-size:1rem}}.update-prompt-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.update-prompt{background:#fff;border-radius:12px;padding:2rem;max-width:450px;box-shadow:0 20px 60px #0000004d;text-align:center;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.update-prompt-icon{font-size:3rem;margin-bottom:1rem}.update-prompt h3{margin:0 0 .75rem;font-size:1.5rem;color:#1a202c}.update-prompt p{margin:0 0 1.5rem;color:#4a5568;line-height:1.5}.update-prompt-actions{display:flex;gap:.75rem;justify-content:center}.update-prompt .btn-primary,.update-prompt .btn-secondary{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease;border:none}.update-prompt .btn-primary{background:#667eea;color:#fff}.update-prompt .btn-primary:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.update-prompt .btn-secondary{background:#e2e8f0;color:#4a5568}.update-prompt .btn-secondary:hover{background:#cbd5e0}@media(max-width:640px){.update-prompt{margin:1rem;padding:1.5rem}.update-prompt-actions{flex-direction:column}.update-prompt .btn-primary,.update-prompt .btn-secondary{width:100%}}
