:root[data-theme=light]{--bg-color: #ffffff;--text-color: #000000;--secondary-text: #666666;--card-bg: #ffffff;--border-color: #e0e0e0;--hover-bg: #f5f5f5;--input-bg: #ffffff;--primary-color: #000000}:root[data-theme=dark]{--bg-color: #000000;--text-color: #ffffff;--secondary-text: #a0a0a0;--card-bg: #1a1a1a;--border-color: #333333;--hover-bg: #2a2a2a;--input-bg: #1a1a1a;--primary-color: #ffffff}*{margin:0;padding:0;box-sizing:border-box}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5;color:var(--text-color);background-color:var(--bg-color);transition:background-color .3s,color .3s;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--primary-color);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--hover-bg)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--secondary-text)}.text-center{text-align:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:1rem}.login-card{width:100%;max-width:400px;padding:2rem;border:1px solid var(--border-color);border-radius:8px;background:var(--card-bg)}.login-card h1{margin:0 0 .5rem;font-size:1.5rem;text-align:center}.login-card h2{margin:0 0 1.5rem;font-size:1.25rem;text-align:center;font-weight:500}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:4px;background:var(--input-bg);color:var(--text-color);font-size:1rem;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color)}.error-message{padding:.75rem;margin-bottom:1rem;background:#ffebee;color:#c62828;border-radius:4px;font-size:.9rem}[data-theme=dark] .error-message{background:#3a1a1a;color:#ff8a80}.success-message{padding:.75rem;margin-bottom:1rem;background:#e8f5e9;color:#2e7d32;border-radius:4px;font-size:.9rem}[data-theme=dark] .success-message{background:#1a3a1a;color:#80e27e}.btn-primary{width:100%;padding:.75rem;background:var(--primary-color);color:var(--bg-color);border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:opacity .2s}.btn-primary:hover:not(:disabled){opacity:.9}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-google{width:100%;padding:.75rem 1rem;background:#fff;color:#3c4043;border:1px solid #dadce0;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.75rem;font-family:Roboto,system-ui,-apple-system,sans-serif}.btn-google:hover:not(:disabled){background:#f8f9fa;border-color:#c6c6c6;box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326}.btn-google:disabled{opacity:.6;cursor:not-allowed}.btn-google svg{flex-shrink:0}[data-theme=dark] .btn-google{background:#fff;color:#3c4043;border-color:#dadce0}[data-theme=dark] .btn-google:hover:not(:disabled){background:#f8f9fa;border-color:#c6c6c6}.auth-note{text-align:center;margin-top:1.5rem;font-size:.85rem;color:var(--secondary-text);line-height:1.5}.toggle-auth{text-align:center;margin-top:1.5rem;font-size:.9rem}.link-button{background:none;border:none;color:var(--primary-color);cursor:pointer;text-decoration:underline;font-size:inherit;padding:0}.link-button:hover{opacity:.8}@media(max-width:480px){.login-container{padding:1rem}.login-card{padding:1.5rem}.login-card h1{font-size:1.25rem}.login-card h2{font-size:1.125rem}.btn-google,.btn-primary{padding:.875rem 1rem;font-size:.95rem}}@media(min-width:481px)and (max-width:768px){.login-card{max-width:500px}}.dashboard{min-height:100vh;background:var(--bg-color);display:flex;flex-direction:column}.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;border-bottom:1px solid var(--border-color);background:var(--card-bg);position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dashboard-header h1{margin:0;font-size:1.5rem;font-weight:600;background:linear-gradient(135deg,#2160fd,#8ab4f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-right{display:flex;align-items:center;gap:1rem}.user-info{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:var(--hover-bg);border-radius:24px}.user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.user-name{font-size:.9rem;font-weight:500}.dashboard-layout{display:flex;flex:1;overflow:hidden}.sidebar{width:240px;background:var(--card-bg);border-right:1px solid var(--border-color);padding:1.5rem 0;display:flex;flex-direction:column}.sidebar-nav{display:flex;flex-direction:column;gap:.5rem;padding:0 1rem}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:transparent;border:none;border-radius:8px;cursor:pointer;color:var(--text-color);font-size:.95rem;font-weight:500;transition:all .2s;text-align:left}.nav-item:hover{background:var(--hover-bg)}.nav-item.active{background:linear-gradient(135deg,#2160fd,#5a8ef8);color:#fff}.nav-icon{font-size:1.25rem;width:24px;text-align:center}.nav-text{flex:1}.btn-icon{background:none;border:1px solid var(--border-color);padding:.5rem;border-radius:4px;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:background .2s}.btn-icon:hover{background:var(--hover-bg)}.btn-secondary{padding:.5rem 1rem;background:transparent;border:1px solid var(--border-color);color:var(--text-color);border-radius:4px;cursor:pointer;font-size:.9rem;transition:background .2s}.btn-secondary:hover{background:var(--hover-bg)}.dashboard-content{flex:1;padding:2rem;overflow-y:auto;max-width:1400px;margin:0 auto;width:100%}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;transition:all .3s}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #2160fd26;border-color:#2160fd}.stat-icon{font-size:2.5rem;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2160fd15,#8ab4f815);border-radius:12px}.stat-content{flex:1}.stat-label{font-size:.875rem;color:var(--secondary-text);margin-bottom:.25rem}.stat-value{font-size:2rem;font-weight:700;color:var(--text-color)}.spinner{width:48px;height:48px;border:4px solid var(--border-color);border-top-color:#2160fd;border-radius:50%;animation:spin .8s linear infinite}.spinner-small{width:24px;height:24px;border:3px solid var(--border-color);border-top-color:#2160fd;border-radius:50%;animation:spin .8s linear infinite}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.quick-actions{margin-bottom:2rem}.quick-actions h2{margin:0 0 1rem;font-size:1.25rem;font-weight:600}.action-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.btn-action{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:var(--card-bg);border:2px solid var(--border-color);color:var(--text-color);border-radius:12px;cursor:pointer;transition:all .3s;text-align:left}.btn-action:hover{border-color:#2160fd;transform:translateY(-4px);box-shadow:0 8px 24px #2160fd26}.btn-action.primary{background:linear-gradient(135deg,#2160fd,#5a8ef8);color:#fff;border-color:transparent}.btn-action.primary:hover{box-shadow:0 8px 24px #2160fd66}.action-icon{font-size:2rem}.action-content{flex:1}.action-title{font-size:1rem;font-weight:600;margin-bottom:.25rem}.action-desc{font-size:.85rem;opacity:.8}.meetings-section{margin-bottom:2rem}.meetings-section h2,.meetings-section h3{margin:0 0 1rem;font-size:1.25rem;font-weight:600}.meetings-list{display:flex;flex-direction:column;gap:1rem}.meeting-card{position:relative;padding:1.5rem;background:var(--card-bg);border:2px solid var(--border-color);border-radius:12px;transition:all .3s}.meeting-card:hover{border-color:#2160fd;transform:translate(4px);box-shadow:0 4px 16px #2160fd1a}.meeting-card.past{opacity:.7}.meeting-card.past:hover{opacity:.9}.meeting-badge{position:absolute;top:1rem;right:1rem;padding:.25rem .75rem;background:linear-gradient(135deg,#2160fd,#5a8ef8);color:#fff;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.meeting-badge.past{background:var(--secondary-text)}.meeting-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;gap:1rem;padding-right:100px}.meeting-header h3{margin:0;font-size:1.125rem;font-weight:600}.meeting-time{font-size:.85rem;color:var(--secondary-text);white-space:nowrap;display:flex;align-items:center;gap:.5rem}.meeting-time:before{content:"🕒"}.meeting-description{margin:.5rem 0;color:var(--secondary-text);font-size:.9rem;line-height:1.5}.meeting-footer{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.meeting-participants{font-size:.875rem;color:var(--secondary-text)}.btn-join{padding:.625rem 1.25rem;background:linear-gradient(135deg,#2160fd,#5a8ef8);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s}.btn-join:hover{transform:translate(4px);box-shadow:0 4px 12px #2160fd66}.btn-primary{padding:.75rem 1.5rem;background:linear-gradient(135deg,#2160fd,#5a8ef8);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s;margin-top:1rem}.empty-state{text-align:center;padding:3rem 2rem;background:var(--card-bg);border:2px dashed var(--border-color);border-radius:12px;color:var(--secondary-text)}.empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-state-small{text-align:center;padding:2rem;color:var(--secondary-text);font-size:.95rem}@media(max-width:768px){.dashboard-layout{flex-direction:column}.sidebar{width:100%;border-right:none;border-bottom:1px solid var(--border-color);padding:1rem 0}.sidebar-nav{flex-direction:row;overflow-x:auto}.nav-text{display:none}.stats-grid,.action-buttons{grid-template-columns:1fr}.dashboard-header{padding:1rem}.header-right{gap:.5rem}.dashboard-content{padding:1rem}.meeting-header{flex-direction:column;align-items:flex-start;padding-right:0}.meeting-badge{position:static;margin-bottom:.5rem;display:inline-block}.meeting-footer{flex-direction:column;gap:1rem;align-items:stretch}.btn-join{width:100%;text-align:center}}.instant-meeting-container{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:2rem}.instant-meeting-card{width:100%;max-width:600px;padding:2rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px}.btn-back{background:none;border:none;color:var(--primary-color);cursor:pointer;font-size:.9rem;padding:0 0 1rem;margin:0}.btn-back:hover{text-decoration:underline}.instant-meeting-card h1{margin:0 0 .5rem;font-size:1.75rem}.subtitle{margin:0 0 2rem;color:var(--secondary-text);font-size:.95rem}.info-box{padding:1rem;background:var(--hover-bg);border:1px solid var(--border-color);border-radius:4px;margin-bottom:1.5rem}.info-box p{margin:0;font-size:.9rem;color:var(--secondary-text)}@media(max-width:768px){.instant-meeting-container{padding:1rem}.instant-meeting-card{padding:1.5rem}.instant-meeting-card h1{font-size:1.5rem}}@media(min-width:769px)and (max-width:1024px){.instant-meeting-card{max-width:700px}}.schedule-meeting-container{min-height:100vh;padding:2rem;display:flex;justify-content:center}.schedule-meeting-card{width:100%;max-width:700px;padding:2rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;align-self:flex-start}.schedule-meeting-card h1{margin:0 0 .5rem;font-size:1.75rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.helper-text{margin:0 0 .5rem;font-size:.85rem;color:var(--secondary-text)}.users-list{max-height:200px;overflow-y:auto;border:1px solid var(--border-color);border-radius:4px;padding:.5rem;background:var(--input-bg)}.user-checkbox{display:flex;align-items:center;gap:.5rem;padding:.5rem;cursor:pointer;border-radius:4px;transition:background .2s}.user-checkbox:hover{background:var(--hover-bg)}.user-checkbox input[type=checkbox]{width:auto;margin:0;cursor:pointer}.user-checkbox input[type=checkbox]:disabled{cursor:not-allowed}.user-checkbox span{font-size:.9rem}.empty-state-small{padding:1rem;text-align:center;color:var(--secondary-text);font-size:.85rem}@media(max-width:768px){.schedule-meeting-container{padding:1rem}.schedule-meeting-card{padding:1.5rem}.form-row{grid-template-columns:1fr}}.meeting-room-active{--meet-bg: #1B1B1B;--meet-surface: #2A2A2A;--meet-surface-variant: #242424;--meet-border: #404040;--meet-text-primary: #EDEDED;--meet-text-secondary: #9AA0A6;--meet-accent: #2160FD;--meet-accent-light: #5A8EF8;--meet-hover: rgba(33, 96, 253, .1)}.meeting-room{height:100vh;display:flex;flex-direction:column;background:var(--meet-bg, #1B1B1B)}.meeting-info-bar{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:var(--meet-surface-variant, #242424);border-bottom:1px solid var(--meet-border, #404040);min-height:72px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;z-index:10}.meeting-info{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.meeting-info h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--meet-text-primary, #EDEDED);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.btn-share{padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--meet-accent) 0%,var(--meet-accent-light) 100%);border:none;color:#fff;border-radius:24px;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .3s;display:flex;align-items:center;gap:.5rem;white-space:nowrap}.btn-share:hover{transform:translateY(-2px);box-shadow:0 8px 20px #2160fd66}.meeting-controls{display:flex;gap:.5rem}.btn-danger{padding:.5rem 1rem;background:#d32f2f;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:opacity .2s}.btn-danger:hover{opacity:.9}.meeting-container{flex:1;position:relative;overflow:hidden;background:var(--meet-bg, #202124)}.meeting-loading,.meeting-error{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;padding:2rem;text-align:center;background:var(--meet-bg, #1B1B1B);color:var(--meet-text-primary, #EDEDED)}.meeting-loading .spinner{width:56px;height:56px;border:5px solid var(--meet-border);border-top-color:var(--meet-accent);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.meeting-error h2{margin:0 0 1rem;color:#ff414d;font-size:1.75rem}.meeting-error p{margin:0 0 2rem;color:var(--meet-text-secondary);max-width:500px}.btn-primary{padding:.75rem 1.5rem;background:linear-gradient(135deg,#2160fd,#5a8ef8);color:#fff;border:none;border-radius:24px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #2160fd66}.meeting-placeholder{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:2rem;text-align:center;background:var(--meet-bg, #1B1B1B);color:var(--meet-text-primary, #EDEDED)}.meeting-placeholder h3{margin:0 0 1rem;font-size:1.75rem;font-weight:600;color:var(--meet-text-primary, #EDEDED)}.meeting-placeholder p{margin:0 0 2rem;color:var(--meet-text-secondary);font-size:1.05rem}.setup-instructions{max-width:700px;padding:2rem;background:var(--meet-surface);border:2px solid var(--meet-border);border-radius:16px;text-align:left}.setup-instructions h4{margin:0 0 1rem;color:var(--meet-text-primary);font-size:1.25rem}.setup-instructions ol{margin:0 0 1.5rem;padding-left:1.5rem;color:var(--meet-text-secondary);line-height:1.8}.setup-instructions li{margin-bottom:.75rem}.setup-instructions code{padding:.25rem .5rem;background:var(--meet-bg);border-radius:6px;font-family:Courier New,monospace;font-size:.9em;color:var(--meet-accent-light)}.setup-instructions a{color:var(--meet-accent-light);text-decoration:none;font-weight:500}.setup-instructions a:hover{text-decoration:underline}@media(max-width:768px){.meeting-info-bar{padding:.75rem 1rem;min-height:auto;flex-wrap:wrap;gap:.75rem}.meeting-info{flex:1;min-width:0}.meeting-info h2{font-size:1rem}.btn-share{padding:.625rem 1rem;font-size:.8125rem}.meeting-loading,.meeting-error{padding:1.5rem 1rem}.meeting-error h2{font-size:1.5rem}.setup-instructions{padding:1.5rem;max-width:100%}}@media(min-width:769px)and (max-width:1024px){.meeting-info-bar{padding:.875rem 1.25rem}.meeting-info h2{font-size:1.125rem}.btn-share{padding:.6875rem 1.25rem}}flex-direction: column; align-items: stretch; } .meeting-controls{justify-content:stretch;flex-direction:column}} .my-meetings-container{min-height:100vh;padding:2rem;background:var(--bg-color)}.my-meetings-header{max-width:1200px;margin:0 auto 2rem}.my-meetings-header h1{margin:1rem 0;font-size:2rem}.filters{max-width:1200px;margin:0 auto 2rem;display:flex;gap:.5rem}.filter-btn{padding:.5rem 1rem;background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-color);border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s}.filter-btn:hover{border-color:var(--primary-color)}.filter-btn.active{background:var(--primary-color);color:var(--bg-color);border-color:var(--primary-color)}.meetings-content{max-width:1200px;margin:0 auto}.meetings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.meeting-card{padding:1.5rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;transition:all .2s;position:relative}.meeting-card:hover{border-color:var(--primary-color);transform:translateY(-2px)}.meeting-badge{position:absolute;top:1rem;right:1rem;padding:.25rem .5rem;background:var(--hover-bg);border:1px solid var(--border-color);border-radius:4px;font-size:.75rem}.meeting-card h3{margin:0 0 .75rem;font-size:1.25rem;padding-right:6rem}.meeting-details{margin:1rem 0;font-size:.9rem}.detail-row{display:flex;justify-content:space-between;margin-bottom:.5rem}.detail-row .label{color:var(--secondary-text);font-weight:500}.host-badge{display:inline-block;margin-top:.5rem;padding:.25rem .75rem;background:var(--primary-color);color:var(--bg-color);border-radius:4px;font-size:.8rem;font-weight:500}.meeting-actions{display:flex;gap:.75rem;margin-top:1rem}.btn-delete{flex:1;padding:.75rem;background:transparent;color:#dc3545;border:2px solid #dc3545;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-delete:hover:not(:disabled){background:#dc3545;color:#fff}.btn-delete:disabled{opacity:.5;cursor:not-allowed}.btn-join{flex:1}@media(max-width:768px){.my-meetings-container{padding:1rem}.meetings-grid{grid-template-columns:1fr}.meeting-actions{flex-direction:column}}.not-found-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.not-found-content{text-align:center;background:#fffffff2;padding:60px 40px;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:100%}.not-found-title{font-size:120px;font-weight:800;margin:0;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.not-found-subtitle{font-size:32px;font-weight:600;margin:20px 0 10px;color:#333}.not-found-message{font-size:16px;color:#666;margin:0 0 40px;line-height:1.6}.not-found-actions{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.not-found-button{padding:14px 32px;font-size:16px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;min-width:140px}.not-found-button.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.not-found-button.primary:hover{transform:translateY(-2px);box-shadow:0 10px 25px #667eea66}.not-found-button.secondary{background:transparent;color:#667eea;border:2px solid #667eea}.not-found-button.secondary:hover{background:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 10px 25px #667eea33}@media(max-width:768px){.not-found-content{padding:40px 30px}.not-found-title{font-size:80px}.not-found-subtitle{font-size:24px}.not-found-message{font-size:14px}.not-found-actions{flex-direction:column}.not-found-button{width:100%}}#root{min-height:100vh}
