*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#eef3f8;color:#152033}.bg{position:fixed;inset:0;background:linear-gradient(135deg,#102a43,#2f80ed);z-index:-1}.app{max-width:1100px;margin:0 auto;padding:24px}.card{background:rgba(255,255,255,.96);border-radius:22px;padding:24px;box-shadow:0 20px 50px rgba(0,0,0,.18);margin:18px 0}.login-card{max-width:420px;margin:12vh auto}.login-card h1,.topbar h1{margin:0;color:#0f3c7a}p{color:#5c6b7a}label{display:block;font-weight:700;margin:12px 0}input,select{width:100%;padding:12px;border:1px solid #c9d3df;border-radius:12px;font-size:16px;margin-top:6px}button{border:0;border-radius:14px;background:#0f67d6;color:white;padding:12px 18px;font-size:16px;font-weight:700;cursor:pointer}button:hover{filter:brightness(.95)}.ghost{background:#e6eef8;color:#0f3c7a}.hidden{display:none!important}.msg{margin-top:10px;color:#c0392b;font-weight:700}.topbar{display:flex;justify-content:space-between;align-items:center;background:white;border-radius:22px;padding:18px 22px;box-shadow:0 12px 35px rgba(0,0,0,.15)}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.tabs button{background:#fff;color:#0f3c7a}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:end}.inline{display:flex;gap:8px;align-items:center}.inline input{width:auto}.checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.check{border:1px solid #d4deea;border-radius:14px;padding:12px;background:#f8fbff}.check input{width:auto;margin-right:8px}.result{background:#f1f7ff;border-left:5px solid #0f67d6;padding:16px;border-radius:14px;margin:18px 0;font-weight:700;white-space:pre-line}.actions{display:flex;gap:10px;flex-wrap:wrap}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;margin-top:16px}th,td{border-bottom:1px solid #dbe4ef;padding:10px;text-align:left}th{background:#f1f7ff}.pill{padding:4px 8px;border-radius:999px;background:#e7f5ee;color:#0b7040;font-weight:700}.no{background:#fdecec;color:#a02525}.entry{border:1px solid #d8e3ef;border-radius:16px;padding:14px;margin:12px 0;background:#fbfdff}@media(max-width:760px){.grid2,.grid4{grid-template-columns:1fr}.app{padding:12px}.topbar{align-items:flex-start;gap:12px;flex-direction:column}}
