*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0d1117;--surface: #161b22;--surface2: #21262d;--border: #30363d;--text: #e6edf3;--text-muted: #7d8590;--accent: #58a6ff;--accent-dim: #1a2f4a;--green: #3fb950;--danger: #f85149;--danger-dim: #3d1a1a;--radius: 4px;--font: "JetBrains Mono", "Fira Code", "Cascadia Code", "Consolas", monospace}body{font-family:var(--font);background:var(--bg);color:var(--text);height:100vh;overflow:hidden;font-size:13px;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.app{display:flex;height:100vh}.main{flex:1;padding:12px;overflow:hidden;display:flex;flex-direction:column;min-width:0;background:var(--bg)}.calendar-wrap{flex:1;background:var(--surface);border-radius:var(--radius);overflow:hidden;padding:12px;border:1px solid var(--border)}.sidebar{width:240px;background:var(--surface);color:var(--text);display:flex;flex-direction:column;padding:12px 8px;overflow-y:auto;gap:2px;flex-shrink:0;border-right:1px solid var(--border)}.sidebar-title{font-size:.9rem;font-weight:700;color:var(--accent);padding:4px 8px 14px;letter-spacing:3px;text-transform:uppercase}.sidebar-title:before{content:"> ";color:var(--green)}.account-section{margin-bottom:6px}.account-header{display:flex;align-items:center;justify-content:space-between;padding:5px 8px;border-radius:var(--radius)}.account-info{display:flex;align-items:center;gap:7px;min-width:0;flex:1;overflow:hidden}.account-label{font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted)}.dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.dot-green{background:var(--green);box-shadow:0 0 5px var(--green)}.dot-gray{background:var(--text-muted)}.account-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.btn-ghost{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px 5px;border-radius:var(--radius);font-size:.8rem;line-height:1;font-family:var(--font)}.btn-ghost:hover{background:var(--surface2);color:var(--text)}.btn-danger-ghost:hover{color:var(--danger)!important}.btn-connect{font-size:.68rem;color:var(--accent);text-decoration:none;border:1px solid var(--accent);padding:2px 8px;border-radius:var(--radius);white-space:nowrap;font-family:var(--font)}.btn-connect:hover{background:var(--accent-dim)}.cal-item{display:flex;align-items:center;gap:8px;padding:3px 8px 3px 22px;border-radius:var(--radius);cursor:pointer;font-size:.72rem;color:var(--text-muted)}.cal-item:hover{background:var(--surface2);color:var(--text)}.cal-item input[type=checkbox]{accent-color:var(--accent);cursor:pointer}.cal-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}.cal-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-hint{font-size:.7rem;color:var(--text-muted);padding:3px 8px 3px 22px;opacity:.5}.fc{height:100%;font-family:var(--font)!important;font-size:12px;color:var(--text)!important}.fc .fc-button{background:var(--surface2)!important;border:1px solid var(--border)!important;color:var(--text-muted)!important;font-size:.7rem!important;font-family:var(--font)!important;text-transform:uppercase!important;letter-spacing:.6px!important;border-radius:var(--radius)!important;box-shadow:none!important}.fc .fc-button:hover{background:var(--accent-dim)!important;border-color:var(--accent)!important;color:var(--accent)!important}.fc .fc-button-active,.fc .fc-button:not(:disabled):active{background:var(--accent-dim)!important;border-color:var(--accent)!important;color:var(--accent)!important}.fc .fc-toolbar-title{font-size:.9rem!important;font-weight:600!important;color:var(--text)!important;font-family:var(--font)!important;text-transform:uppercase!important;letter-spacing:1.5px!important}.fc .fc-scrollgrid,.fc td,.fc th{border-color:var(--border)!important}.fc .fc-daygrid-day,.fc .fc-timegrid-col,.fc .fc-timegrid-slot{background:var(--surface)!important}.fc .fc-daygrid-day:hover{background:var(--surface2)!important}.fc .fc-day-today{background:var(--accent-dim)!important}.fc .fc-col-header-cell{background:var(--surface2)!important}.fc .fc-col-header-cell-cushion{color:var(--text-muted)!important;font-size:.68rem!important;text-transform:uppercase!important;letter-spacing:.6px!important;text-decoration:none!important}.fc .fc-daygrid-day-number{color:var(--text-muted)!important;font-size:.72rem!important;text-decoration:none!important}.fc .fc-day-today .fc-daygrid-day-number{color:var(--accent)!important}.fc .fc-timegrid-slot-label{color:var(--text-muted)!important;font-size:.68rem!important}.fc .fc-list-day-cushion,.fc .fc-list-event:hover td{background:var(--surface2)!important}.fc .fc-list-event-title a{color:var(--text)!important;text-decoration:none!important}.fc .fc-list-day-text,.fc .fc-list-day-side-text{color:var(--accent)!important;text-decoration:none!important}.fc .fc-list-empty{background:var(--surface)!important;color:var(--text-muted)!important}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:480px;max-width:95vw;box-shadow:0 16px 48px #000000b3;display:flex;flex-direction:column;overflow:hidden;font-family:var(--font)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--surface2)}.modal-header h2{font-size:.78rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:1.5px}.modal-header h2:before{content:"// ";color:var(--border)}.modal-close{color:var(--text-muted)!important;font-size:.8rem!important}.modal-body{padding:14px 16px;display:flex;flex-direction:column;gap:10px}.input-title{width:100%;border:none;border-bottom:1px solid var(--border);font-size:.95rem;padding:6px 0;outline:none;color:var(--text);background:transparent;font-family:var(--font)}.input-title::placeholder{color:var(--text-muted);opacity:.4}.input-title:focus{border-bottom-color:var(--accent)}.checkbox-row{display:flex;align-items:center;gap:8px;font-size:.78rem;cursor:pointer;color:var(--text-muted)}.time-row{display:flex;gap:10px}.time-row .field{flex:1}.field{display:flex;flex-direction:column;gap:4px}.field label{font-size:.65rem;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:1px}.field label:before{content:"$ ";color:var(--green);opacity:.6}.field input,.field select,.field textarea{border:1px solid var(--border);border-radius:var(--radius);padding:6px 8px;font-size:.78rem;color:var(--text);background:var(--bg);outline:none;width:100%;font-family:var(--font)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent)}.field select option{background:var(--surface2);color:var(--text)}.field textarea{resize:vertical}.field input[type=datetime-local],.field input[type=date]{color-scheme:dark}.modal-footer{display:flex;align-items:center;gap:8px;padding:10px 16px 14px;border-top:1px solid var(--border);background:var(--surface2)}.btn{padding:6px 14px;border-radius:var(--radius);border:1px solid transparent;font-size:.72rem;font-weight:500;cursor:pointer;font-family:var(--font);text-transform:uppercase;letter-spacing:.6px}.btn-primary{background:var(--accent-dim);color:var(--accent);border-color:var(--accent)}.btn-primary:hover{background:var(--accent);color:var(--bg)}.btn-secondary{background:transparent;color:var(--text-muted);border-color:var(--border)}.btn-secondary:hover{color:var(--text);border-color:var(--text-muted)}.btn-danger{background:var(--danger-dim);color:var(--danger);border-color:var(--danger)}.btn-danger:hover{background:var(--danger);color:var(--bg)}.btn-meet{display:flex;align-items:center;background:transparent;color:var(--green);border:1px solid var(--green);border-radius:var(--radius);padding:6px 14px;font-size:.72rem;font-weight:500;text-decoration:none;width:fit-content;font-family:var(--font);text-transform:uppercase;letter-spacing:.6px}.btn-meet:hover{background:#3fb9501a}.login-overlay{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);background-image:radial-gradient(circle at 20% 80%,rgba(88,166,255,.05) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(63,185,80,.05) 0%,transparent 50%)}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:380px;max-width:95vw;box-shadow:0 16px 48px #0009;display:flex;flex-direction:column;gap:16px;font-family:var(--font);overflow:hidden}.login-titlebar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:var(--surface2);border-bottom:1px solid var(--border)}.login-titlebar-dot{width:10px;height:10px;border-radius:50%}.login-titlebar-dot:nth-child(1){background:#ff5f57}.login-titlebar-dot:nth-child(2){background:#febc2e}.login-titlebar-dot:nth-child(3){background:#28c840}.login-titlebar-label{margin-left:6px;font-size:.68rem;color:var(--text-muted);letter-spacing:1px}.login-content{padding:20px 24px 28px;display:flex;flex-direction:column;gap:16px}.login-title{font-size:.95rem;font-weight:700;color:var(--accent);text-align:center;letter-spacing:4px;text-transform:uppercase}.login-prompt{text-align:center;font-size:.7rem;color:var(--text-muted);margin-top:-8px}.login-prompt:before{content:"~$ ";color:var(--green)}.login-form{display:flex;flex-direction:column;gap:12px}.login-btn{width:100%;justify-content:center}.login-error{color:var(--danger);font-size:.72rem}.login-error:before{content:"[err] ";opacity:.6}.login-divider{display:flex;align-items:center;gap:10px;color:var(--text-muted);font-size:.72rem;opacity:.4}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--border)}.btn-google-login{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--border);border-radius:var(--radius);padding:8px 16px;font-size:.72rem;font-weight:500;color:var(--text-muted);text-decoration:none;background:var(--surface2);font-family:var(--font);text-transform:uppercase;letter-spacing:.6px}.btn-google-login:hover{border-color:var(--accent);color:var(--text)}.app-loading{height:100vh;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-family:var(--font);font-size:.8rem}.app-loading:before{content:"> ";color:var(--green)}.sidebar-footer{margin-top:auto;padding-top:10px;border-top:1px solid var(--border)}.sidebar-logout{width:100%;text-align:left;color:var(--text-muted);font-size:.75rem}.sidebar-logout:hover{color:var(--danger)}
