:root{--bg: #0d1117;--bg-panel: #161b22;--bg-card: #1c2333;--bg-hover: #243049;--border: #30363d;--text: #e6edf3;--text-muted:#8b949e;--accent: #4f8ef7;--accent-dim:#2d5fa8;--success: #3fb950;--danger: #f85149;font-size:18px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased;--touch-min: 48px;--radius: 12px;--radius-sm: 8px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;overflow:hidden;background:var(--bg);color:var(--text)}button{cursor:pointer;border:none;background:none;color:inherit;font:inherit;touch-action:manipulation}a,input,select,textarea{touch-action:manipulation}input,select,textarea{font:inherit;color:inherit;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);padding:.5rem .75rem;width:100%;outline:none;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent)}.app-bg{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0d1520;background-image:url(/background.jpg);background-size:cover;background-position:center top;background-repeat:no-repeat}.app-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#00000026,#00000026 40%,#0000008c)}.app-layout{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;padding:1rem;gap:.75rem;overflow:hidden;pointer-events:none}.app-layout>*{pointer-events:auto}.glass{background:#0a0e169e;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius)}.bottom-panel{display:flex;gap:0;height:38vh;min-height:280px;max-height:480px;overflow:hidden}.bottom-panel>*:not(:last-child){flex:1}.bottom-panel>*:last-child{flex:1}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#101624f7;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:2rem;width:min(560px,92vw);max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;gap:1.25rem}.modal h2{font-size:1.3rem;font-weight:600}.modal label{display:flex;flex-direction:column;gap:.4rem;font-size:.88rem;color:var(--text-muted)}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:var(--touch-min);padding:0 1.2rem;border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;transition:background .15s,opacity .15s;white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:active{opacity:.75;transform:scale(.97)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-dim)}.btn-ghost{background:#ffffff12;color:var(--text-muted);border:1px solid rgba(255,255,255,.1)}.btn-ghost:hover{background:#ffffff1f;color:var(--text)}.btn-danger{background:transparent;color:var(--danger)}.btn-danger:hover{background:#f851491f}.btn-icon{min-width:var(--touch-min);width:var(--touch-min);height:var(--touch-min);padding:0;border-radius:50%;font-size:1.4rem;line-height:1}@media (max-width: 640px){:root{font-size:16px}html,body,#root{height:auto;min-height:100%;overflow:auto}.app-layout{position:relative;overflow:visible;padding:.75rem .75rem 2rem}.header-date,.header-clock{display:none!important}.header-icons{gap:.6rem!important;margin-left:auto}.header-icon{width:32px!important;height:32px!important}.modal-overlay{align-items:flex-start;padding:0}.modal{width:100vw!important;max-width:100vw!important;min-height:100dvh!important;max-height:100dvh!important;border-radius:0!important;min-width:0!important}}.fc{--fc-border-color: var(--border);--fc-today-bg-color: rgba(79,142,247,.08);--fc-page-bg-color: transparent;--fc-event-bg-color: var(--accent);--fc-event-border-color: transparent;--fc-event-text-color: #fff;font-size:.9rem}@keyframes spin{to{transform:rotate(360deg)}}
