*,:before,:after{box-sizing:border-box}body{background:#f6f8fb;margin:0;padding:0}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:4px solid #eaf1fe;border-top-color:#2f6fed;border-radius:50%;width:44px;height:44px;animation:.8s linear infinite spin}.app-shell{min-height:100vh;display:flex}.app-sidebar{border-right:1px solid #e3e8ef;flex-direction:column;flex-shrink:0;width:220px;height:100vh;display:flex;position:sticky;top:0}.app-sidebar nav{flex-direction:column;gap:4px;display:flex}.nav-item{background-color:#0000}.nav-item:hover{background-color:#f6f8fb}.app-main{flex:1;min-width:0}.score-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.score-grid.cols-4{grid-template-columns:repeat(4,1fr)}.two-col{grid-template-columns:1.15fr 1fr;align-items:start;gap:16px;display:grid}.two-col>*{min-width:0}.context-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.pm-textarea:focus,.pm-input:focus{border-color:#2f6fed;box-shadow:0 0 0 3px #eaf1fe}@media (width<=1200px){.two-col{grid-template-columns:1fr}.score-grid.cols-4{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.app-shell{flex-direction:column}.app-sidebar{border-bottom:1px solid #e3e8ef;border-right:none;flex-flow:wrap;align-items:center;gap:16px;width:100%;height:auto;position:static}.app-sidebar .sidebar-footer{display:none}.app-sidebar nav{flex-direction:row}.app-sidebar .nav-item{white-space:nowrap}.score-grid,.score-grid.cols-4,.context-grid{grid-template-columns:1fr}}
