@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-main:#0f172a;--bg-panel:#1e293bb3;--bg-input:#0f172a99;--text-main:#f8fafc;--text-muted:#94a3b8;--accent-primary:#3b82f6;--accent-hover:#2563eb;--accent-glow:#3b82f680;--danger:#ef4444;--danger-hover:#dc2626;--warning:#f59e0b;--border:#ffffff1a;--glass-blur:blur(12px);--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-full:9999px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text-main);background-color:var(--bg-main);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}body{background:radial-gradient(circle at top left, #1e293b, var(--bg-main));min-height:100vh;margin:0}#root{flex-direction:column;min-height:100vh;display:flex}.panel{background:var(--bg-panel);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:1.5rem}input,select,button{font-family:inherit;font-size:.95rem}input[type=number],input[type=text],input[type=time],select{background:var(--bg-input);border:1px solid var(--border);color:var(--text-main);border-radius:var(--radius-md);box-sizing:border-box;width:100%;padding:.5rem .75rem;transition:all .2s}input:focus,select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow);outline:none}.btn{background:var(--bg-input);border:1px solid var(--border);color:var(--text-main);border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;transition:all .2s;display:inline-flex}.btn:hover{background:#ffffff1a}.btn-primary{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.btn-primary:hover{background:var(--accent-hover);box-shadow:0 0 10px var(--accent-glow)}.btn-danger{border-color:var(--danger);color:var(--danger);background:0 0}.btn-danger:hover{background:var(--danger);color:#fff}h1,h2,h3,h4,h5,h6{color:#fff;margin-top:0;font-weight:600}.text-muted{color:var(--text-muted)}.text-sm{font-size:.875rem}.app-container{flex:1;height:100vh;display:flex;overflow:hidden}.sidebar{border-right:1px solid var(--border);background:var(--bg-panel);width:400px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.main-content{flex-direction:column;flex:1;padding:2rem;display:flex;overflow-y:auto}.header,.section{border-bottom:1px solid var(--border);padding:1.5rem}.grid-2{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:var(--text-muted);font-size:.875rem;font-weight:500}.restriction-card{border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffff08;flex-direction:column;gap:.75rem;margin-bottom:.75rem;padding:1rem;transition:all .2s;display:flex}.restriction-card:hover{border-color:#fff3}.restriction-header{justify-content:space-between;align-items:center;display:flex}.tooltip-container{display:inline-block;position:relative}.tooltip-container .tooltip{visibility:hidden;color:#fff;text-align:center;z-index:10;opacity:0;border:1px solid var(--danger);background-color:#1e293b;border-radius:6px;width:250px;padding:.75rem;font-size:.875rem;transition:opacity .3s;position:absolute;bottom:125%;left:50%;transform:translate(-50%);box-shadow:0 10px 15px -3px #00000080}.tooltip-container .tooltip:after{content:"";border:5px solid #0000;border-top-color:#1e293b;margin-left:-5px;position:absolute;top:100%;left:50%}.tooltip-container:hover .tooltip{visibility:visible;opacity:1}.schedule-grid{background:var(--border);border:1px solid var(--border);border-radius:var(--radius-md);grid-template-columns:repeat(6,1fr);gap:1px;display:grid;overflow:hidden}.grid-cell{background:var(--bg-main);min-height:100px;padding:1rem}.grid-header{text-align:center;background:#ffffff0d;padding:1rem;font-weight:600}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.pref-badge{border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.025em;align-items:center;gap:.35rem;padding:.2rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.pref-badge-avoid{color:#f87171;background:#ef444426;border:1px solid #ef44444d}.pref-badge-info{color:#60a5fa;background:#3b82f626;border:1px solid #3b82f64d}.pref-block-chip{color:#fca5a5;background:#ef44441f;border:1px solid #ef444459;border-radius:9999px;align-items:center;gap:.35rem;padding:.2rem .55rem;font-size:.78rem;font-weight:500;transition:all .15s;display:inline-flex}.pref-block-chip:hover{background:#ef444438;border-color:#ef444499}.pref-block-chip .chip-remove{color:#fca5a5;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:.2rem;padding:0;transition:color .15s;display:flex}.pref-block-chip .chip-remove:hover{color:#fff;background:#ef444480}.pref-matrix-container{border:1px solid var(--border);border-radius:var(--radius-md);background:#0000004d;margin-top:.75rem;padding:.75rem}.pref-matrix-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.5rem;margin-top:.5rem;display:grid}.pref-day-col{border-radius:var(--radius-sm);background:#ffffff05;border:1px solid #ffffff0d;flex-direction:column;gap:.35rem;padding:.5rem;display:flex}.pref-day-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;text-align:center;margin-bottom:.25rem;font-size:.75rem;font-weight:600}.pref-block-toggle-btn{border-radius:var(--radius-sm);cursor:pointer;text-align:left;box-sizing:border-box;flex-direction:column;align-items:flex-start;width:100%;padding:.4rem .5rem;font-size:.75rem;transition:all .15s;display:flex}.pref-block-toggle-btn.avoided{color:#fca5a5;background:#ef444433;border:1px solid #ef4444}.pref-block-toggle-btn.avoided:hover{background:#ef44444d;border-color:#f87171}.pref-block-toggle-btn.allowed{color:var(--text-muted);background:#ffffff0a;border:1px dashed #ffffff26}.pref-block-toggle-btn.allowed:hover{color:var(--text-main);background:#3b82f61a;border-color:#3b82f666}.btn-xs{padding:.2rem .5rem;font-size:.75rem}.btn-sm{padding:.3rem .65rem;font-size:.82rem}
