:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#101418;background:#f6f7f9;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;color:#101418;background:#fff;border:2px solid #1f2937;border-radius:6px;min-height:44px;padding:.55rem .75rem}button{color:#fff;cursor:pointer;background:#113f67}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:4px solid #f6c343}label{gap:.35rem;font-weight:700;display:grid}.login{place-items:center;min-height:100vh;padding:1rem;display:grid}.login form{background:#fff;border:2px solid #243447;border-radius:8px;gap:1rem;width:min(420px,100%);padding:2rem;display:grid}.top{color:#fff;background:#101418;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.top div{gap:.2rem;display:grid}.panel{background:#fff;border-bottom:2px solid #d4dae3;flex-wrap:wrap;align-items:end;gap:1rem;padding:1rem;display:flex}.layout{grid-template-columns:280px 1fr;align-items:start;gap:1rem;padding:1rem;display:grid}.adminPanel{background:#fff;border:2px solid #243447;border-radius:8px;gap:1rem;margin:1rem;padding:1rem;display:grid}.adminPanel h2{margin:0}.adminForm{grid-template-columns:repeat(5,minmax(160px,1fr));align-items:end;gap:.75rem;display:grid}.tableWrap{overflow-x:auto}table{border-collapse:collapse;background:#fff;width:100%}caption{text-align:left;padding:.5rem 0;font-weight:700}th,td{text-align:left;vertical-align:middle;border:1px solid #9aa6b2;padding:.6rem}th{background:#e9eef5}.side{background:#fff;border:2px solid #d4dae3;border-radius:8px;gap:1rem;padding:1rem;display:grid}.viewer{min-width:0}.toolbar{background:#fff;border:2px solid #d4dae3;border-radius:8px;flex-wrap:wrap;align-items:end;gap:.75rem;padding:.75rem;display:flex}.toolbar input{width:7rem}.status,.notice{background:#fff7d6;border-left:6px solid #b7791f;padding:.75rem}.error{color:#8a1c1c;background:#fff0f0;border:2px solid #8a1c1c;padding:.75rem}.canvasWrap{background:#fff;border:2px solid #243447;width:fit-content;max-width:100%;margin:1rem auto;position:relative;overflow:auto}canvas{max-width:100%;height:auto;display:block}.overlay{touch-action:none;position:absolute;inset:0}@media (width<=820px){.layout{grid-template-columns:1fr;padding:.5rem}.toolbar,.panel,.adminForm{grid-template-columns:1fr;align-items:stretch}.toolbar>*,.panel>*{width:100%}}
