*{box-sizing:border-box}html,body{color:#111827;background:#f5f7fb;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.center-page{place-items:center;min-height:100vh;padding:24px;display:grid}.card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:24px;box-shadow:0 6px 20px #0000000a}.app-shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#111827;flex-direction:column;justify-content:space-between;gap:24px;padding:24px 18px;display:flex}.brand{font-size:24px;font-weight:700}.nav{gap:10px;display:grid}.nav a{background:#ffffff0f;border-radius:10px;padding:10px 12px}.nav a:hover{background:#ffffff1f}.content{padding:28px}.page-header{margin-bottom:18px}.page-header h1{margin:0;font-size:30px}.muted{color:#6b7280}.grid{gap:16px;display:grid}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.panel{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px}.panel h2,.panel h3{margin-top:0}.row,.form-grid{gap:12px;display:grid}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.input,.textarea,.select{background:#fff;border:1px solid #d1d5db;border-radius:10px;width:100%;padding:12px}.textarea{resize:vertical;min-height:100px}.button{color:#fff;cursor:pointer;background:#111827;border:0;border-radius:10px;padding:12px 16px}.button.secondary{background:#374151}.button.danger{background:#b91c1c}.button:disabled{opacity:.6;cursor:not-allowed}.list{gap:12px;display:grid}.item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:14px}.kv{gap:4px;margin-top:8px;display:grid}.badge{background:#e5e7eb;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700;display:inline-block}.badge.ok{color:#166534;background:#dcfce7}.error{color:#b91c1c;font-weight:600}.success{color:#166534;font-weight:600}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{padding:16px}.grid.two,.grid.three,.form-grid.two{grid-template-columns:1fr}.content{padding:18px}}.progress-wrap{margin-top:10px}.progress-track{background:#e5e7eb;border-radius:999px;width:100%;height:12px;overflow:hidden}.progress-fill{background:#111827;border-radius:999px;height:100%;transition:width .2s}.helper{color:#6b7280;margin-top:6px;font-size:13px}
