.shell{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--line);padding:30px 20px;display:flex;flex-direction:column;gap:30px}.brand{color:var(--blue);font-size:23px}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar nav button{text-align:left;border:0}.sidebar nav button.active{background:var(--soft);color:var(--blue)}.sidebar footer{margin-top:auto}.workspace{padding:32px;min-width:0}.toolbar{margin:24px 0 18px}.filters{display:grid;grid-template-columns:repeat(3,minmax(100px,1fr)) minmax(140px,2fr) auto;gap:12px;align-items:end;margin-bottom:20px}table{width:100%;border-collapse:collapse;table-layout:fixed}th{text-align:left;font-size:12px;color:var(--sub);background:#f6f8fc;font-weight:500}td,th{padding:14px 10px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}th:first-child{width:42%}td{font-size:13px}.pagination{margin-top:20px}.login{max-width:420px;margin:12vh auto;padding:30px}.login label{margin-top:22px}.login button{margin-top:18px;width:100%}.report{padding:20px 0;border-bottom:1px solid var(--line)}.import-preview{max-height:260px;overflow:auto;margin-top:16px}.upload-area{border:1px dashed #b7c8e7;padding:24px;border-radius:12px;margin-top:18px}.answer-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.answer-options label{display:flex;gap:8px;align-items:center}.answer-options input{width:auto;min-height:20px}@media(max-width:1000px){.shell{grid-template-columns:170px minmax(0,1fr)}.workspace{padding:22px}.filters{grid-template-columns:1fr 1fr}}@media(max-width:700px){.shell{display:block}.sidebar{padding:16px;gap:14px;border-right:0;border-bottom:1px solid var(--line)}.sidebar nav{flex-direction:row}.sidebar footer{display:none}.workspace{padding:16px}table,tbody,tr,td{display:block;width:100%}thead{display:none}tr{padding:10px 0;border-bottom:1px solid var(--line)}td{border:0;padding:5px}td:before{content:attr(data-label);display:block;font-size:11px;color:var(--sub)}.login{margin:40px 16px}.filters{grid-template-columns:1fr 1fr}}
