:root{--red: #D32F2F;--red-dark: #B71C1C;--red-light: #EF5350;--red-glow: rgba(211, 47, 47, .4);--black: #111111;--black-soft: #1A1A1A;--black-mid: #222222;--white: #FFFFFF;--gray-50: #FAFAFA;--gray-100: #F5F5F5;--gray-200: #EEEEEE;--gray-300: #E0E0E0;--gray-400: #BDBDBD;--gray-500: #9E9E9E;--gray-700: #616161;--gray-800: #424242;--gray-900: #212121;--bg: var(--gray-100);--surface: var(--white);--border: var(--gray-200);--text: var(--black);--text-secondary: var(--gray-700);--text-muted: var(--gray-500);--font: "Inter", system-ui, -apple-system, sans-serif;--font-display: "Outfit", system-ui, sans-serif;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .12);--shadow-lift: 0 12px 28px rgba(0, 0, 0, .12), 0 2px 4px rgba(0, 0, 0, .06);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-pill: 999px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{min-height:100vh;min-height:100dvh;background-color:var(--bg)}body{font-family:var(--font);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glowing-dot{width:8px;height:8px;background-color:#ef4444;border-radius:50%;box-shadow:0 0 #ef4444b3;animation:pulse-red 2s infinite;display:inline-block;flex-shrink:0;margin-right:4px;position:relative;z-index:1}@keyframes pulse-red{0%{transform:scale(.95);box-shadow:0 0 #ef4444b3}70%{transform:scale(1);box-shadow:0 0 0 6px #ef444400}to{transform:scale(.95);box-shadow:0 0 #ef444400}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.2;letter-spacing:-.02em}a{text-decoration:none;color:var(--red);transition:color .2s ease}a:hover{color:var(--red-dark)}.app-layout{display:flex;min-height:100vh;min-height:100dvh;background:var(--bg)}.sidebar{position:fixed;top:0;left:0;bottom:0;width:260px;background:var(--black);color:var(--white);display:flex;flex-direction:column;z-index:100;padding:0}.main{flex:1;margin-left:260px;padding:40px 48px;background:var(--bg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:var(--radius-md);font-weight:600;font-family:var(--font-display);font-size:.9rem;cursor:pointer;border:none;transition:all .2s ease}.btn-red{background:var(--red);color:var(--white)}.btn-red:hover{background:var(--red-dark);transform:translateY(-1px);box-shadow:0 4px 14px var(--red-glow)}.btn-red:active{transform:translateY(0)}.btn-outline{background:transparent;color:var(--text);border:2px solid var(--border)}.btn-outline:hover{border-color:var(--black);background:var(--black);color:var(--white)}.btn-ghost{background:transparent;color:var(--gray-500);border:none;padding:8px}.btn-ghost:hover{color:var(--red)}.input{width:100%;padding:12px 16px;border:2px solid var(--border);border-radius:var(--radius-md);font-family:var(--font);font-size:.95rem;background:var(--white);color:var(--text);transition:all .2s ease;outline:none}.input:focus{border-color:var(--red);box-shadow:0 0 0 3px #d32f2f1f}.input::placeholder{color:var(--gray-400)}select.input{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239E9E9E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}textarea.input{resize:vertical;min-height:80px}.label{display:block;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gray-800);margin-bottom:8px;font-family:var(--font-display)}.card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);transition:all .2s ease}.card-hover:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift);border-color:var(--gray-300)}.pill{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--radius-pill);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-family:var(--font-display)}.pill-dark{background:var(--black);color:var(--white)}.pill-red{background:var(--red);color:var(--white)}.pill-outline{background:transparent;border:1.5px solid var(--gray-300);color:var(--gray-700)}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.toast-container{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:8px}.toast{padding:14px 24px;border-radius:var(--radius-pill);background:var(--black);color:var(--white);font-size:.88rem;font-weight:600;font-family:var(--font-display);box-shadow:var(--shadow-lg);animation:slideInRight .3s ease,fadeIn .3s ease;display:flex;align-items:center;gap:10px}.toast-success{border-left:4px solid #4CAF50}.toast-error{border-left:4px solid var(--red)}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.modal{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:520px;overflow:hidden;animation:fadeUp .3s ease}@media(max-width:1200px){.app-layout{flex-direction:column}.sidebar{position:sticky;bottom:0;order:2;left:0;width:100%;height:auto;flex-direction:row;justify-content:space-around;align-items:center;padding:0 16px calc(8px + env(safe-area-inset-bottom)) 16px;z-index:999;background:var(--black);border-top:2px solid var(--gray-800)}.sidebar>div:first-child{padding:0!important;border:none!important;margin-right:18px}.sidebar>div:first-child img{width:32px!important;height:32px!important}.sidebar>div:first-child>div{display:none}.sidebar nav{flex-direction:row!important;justify-content:center;align-items:center;padding:0!important;gap:8px!important}.sidebar nav a{flex-direction:column;padding:12px 16px!important;gap:4px!important;font-size:.75rem!important;flex:1;text-align:center}.sidebar nav a svg{margin-bottom:2px}.sidebar>div:last-child{border-top:none!important;padding:0!important}.sidebar>div:last-child a{padding:10px!important;font-size:0!important}.main{margin-left:0;padding:24px 16px}div[style*="grid-template-columns: repeat(3, 1fr)"]{grid-template-columns:1fr!important;gap:12px!important}.main h1{font-size:2rem!important}div[style*="grid-template-columns: 260px 1fr"]{grid-template-columns:1fr!important}.main .btn-outline[style*="width: 100%"],.main .btn-red[style*="width: 100%"]{width:90%!important;margin:16px auto 0!important;display:flex!important}.main>div>div[style*="margin-bottom: 28px"]{flex-direction:column!important;align-items:flex-start!important;gap:16px!important}.calendar-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%;padding-bottom:8px}.calendar-table-wrapper>div{min-width:800px!important}.main .card[style*="padding: 40px"]{padding:24px!important}.main .card>div[style*="flex-wrap: wrap"][style*=borderBottom]{flex-direction:column!important;gap:12px!important;align-items:stretch!important}.main .card>div[style*="flex-wrap: wrap"][style*=borderBottom]>a{justify-content:center!important}}@media(max-width:600px){.input{padding:14px 16px;font-size:1rem}form .btn{padding:14px 20px;width:100%}.modal{max-width:95%!important}.modal>div{padding:24px!important}}@media(max-height:500px)and (orientation:landscape){.sidebar{padding:0 12px}.sidebar nav a{padding:8px 12px!important;font-size:.65rem!important}.main{padding-bottom:80px}}
