:root{font-family:system-ui,sans-serif;color:#212121}*{box-sizing:border-box}body{margin:0;background:#eceff1}.layout{display:flex;min-height:100vh}.side{width:220px;background:#293f47;color:#fff;padding:1rem 0;flex:none}.side .brand{padding:0 1rem 1rem}.side .brand img{max-width:140px;display:block}.side a{display:block;color:#a8bcc4;text-decoration:none;padding:.55rem 1rem}.side a.active,.side a:hover{color:#fff}.content{flex:1;padding:1.5rem 2rem}.card{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0000001a;margin-bottom:1rem}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid #eee;padding:.45rem}button,.btn{background:#30505b;color:#fff;border:0;border-radius:6px;padding:.45rem .8rem;cursor:pointer;text-decoration:none;display:inline-block}button.secondary{background:#546e7a}button.danger{background:#c62828}input,select,textarea{border:1px solid #ccc;border-radius:4px;padding:.4rem;font:inherit}label{display:block;font-size:.85rem;font-weight:600;margin:.6rem 0 .2rem}.help{color:#666;font-size:.9rem}.err{color:#c62828}.filters{display:flex;flex-wrap:wrap;gap:.75rem;align-items:end}.chip{display:inline-block;border-radius:4px;font-weight:600;font-size:.75rem;padding:.15rem .4rem}.hecho{background:#e8f5e9;color:#2e7d32}.pendiente{background:#ffebee;color:#c62828}.aviso{background:#fff3e0;color:#e65100}.curso{background:#e3eef0;color:#30505b}.neutro{background:#eceff1;color:#546e7a}.board{display:flex;gap:.75rem;align-items:flex-start;overflow-x:auto}.column{background:#e4e9eb;border-radius:8px;padding:.5rem;min-width:200px;flex:1}.column h2{font-size:.85rem}.ticket{background:#fff;border-radius:8px;padding:.75rem;margin-bottom:.5rem;box-shadow:0 1px 3px #0000001a}.ticket a{color:inherit}.login{max-width:420px;margin:3rem auto}.ok{color:#2e7d32}.row{display:flex;flex-wrap:wrap;gap:.5rem}canvas.sign{width:100%;max-width:640px;height:160px;border:1px solid #ccc;border-radius:8px;background:#fff;touch-action:none;display:block}.dialog{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center}.panel{background:#fff;border-radius:8px;padding:1.25rem;width:min(480px,92vw)}
