*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:system-ui,sans-serif;background:#0f1117;color:#e2e8f0;min-height:100vh}
.shell{max-width:1200px;margin:0 auto;padding:1.5rem}
header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}
h1{font-size:1.5rem}
.status-bar{display:flex;align-items:center;gap:1rem;font-size:.85rem;color:#9ca3af}
#btn-now{background:#7c8cf8;color:#fff;border:none;border-radius:6px;padding:.4rem .9rem;cursor:pointer;font-size:.85rem}
#btn-now:disabled{background:#4b5563;cursor:not-allowed}
.tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid #2d3250;padding-bottom:.5rem}
.tab{background:none;border:none;color:#9ca3af;padding:.4rem .9rem;border-radius:6px;cursor:pointer;font-size:.9rem}
.tab.active{background:#2d3250;color:#fff}
.tab-content{display:none}.tab-content.active{display:block}
select{background:#1e2130;color:#e2e8f0;border:1px solid #2d3250;border-radius:6px;padding:.3rem .6rem}
table{width:100%;border-collapse:collapse;font-size:.875rem}
th{text-align:left;padding:.5rem .75rem;color:#9ca3af;font-weight:500;border-bottom:1px solid #2d3250}
td{padding:.5rem .75rem;border-bottom:1px solid #1e2130}
tr:hover td{background:#1a1f2e}
#charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:1rem;margin-top:1.5rem}
.chart-card{background:#1e2130;border:1px solid #2d3250;border-radius:8px;padding:1rem}
.chart-card h3{font-size:.9rem;color:#9ca3af;margin-bottom:.75rem}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;max-width:560px}
.cal-cell{border-radius:4px;padding:.4rem .3rem;font-size:.72rem;cursor:pointer;text-align:center}
.cal-cell:hover{opacity:.8}
.settings-group{background:#1e2130;border:1px solid #2d3250;border-radius:8px;padding:1rem;margin-bottom:1rem;max-width:480px}
.settings-group h3{font-size:.9rem;margin-bottom:.75rem}
.field{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;font-size:.875rem}
.field label{color:#9ca3af;width:180px;flex-shrink:0}
.field input{background:#0f1117;border:1px solid #2d3250;color:#e2e8f0;border-radius:4px;padding:.25rem .5rem;width:120px}
.btn-save{background:#7c8cf8;color:#fff;border:none;border-radius:6px;padding:.4rem 1rem;cursor:pointer;margin-top:.5rem}
.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:100;justify-content:center;align-items:center}
.modal-overlay.open{display:flex}
.modal{background:#1e2130;border:1px solid #2d3250;border-radius:10px;padding:1.5rem;min-width:340px;max-width:640px;max-height:80vh;overflow-y:auto}
.modal-close{float:right;cursor:pointer;color:#9ca3af;font-size:1.2rem}
