:root{--primary-color:#2563eb;--secondary-color:#1e40af;--dark-bg:#0f172a;--light-bg:#f8fafc;--text-dark:#1e293b;--text-light:#64748b;--border-color:#e2e8f0;--success-color:#10b981;--warn-color:#f59e0b;--error-color:#ef4444}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--text-dark);background:var(--light-bg);line-height:1.6}
a{color:var(--primary-color)}
.container{max-width:1000px;margin:0 auto;padding:0 20px}
.site-header{background:var(--dark-bg);color:#fff}
.site-header .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding-top:14px;padding-bottom:14px}
.brand{color:#fff;text-decoration:none;font-weight:700}
.site-header nav{display:flex;flex-wrap:wrap;gap:6px 18px}
.site-header nav a{color:#cbd5e1;text-decoration:none;font-size:.95rem}
.site-header nav a:hover,.site-header nav a[aria-current]{color:#fff;text-decoration:underline}
.page-intro{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;padding:44px 0}
.page-intro h1{font-size:2rem;margin-bottom:8px}
.page-intro p{max-width:62ch;opacity:.92}
main{padding:32px 0 48px}
.demo-note{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:10px 14px;margin-bottom:22px;font-size:.92rem}
.tools{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}
input,select,textarea,button{font:inherit}
input,select,textarea{padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;background:#fff;color:var(--text-dark)}
.tools input[type=search]{flex:1;min-width:220px}
button,.btn{background:var(--primary-color);color:#fff;border:0;border-radius:8px;padding:10px 16px;cursor:pointer;text-decoration:none;display:inline-block}
button:hover,.btn:hover{background:var(--secondary-color)}
button.small{padding:5px 10px;font-size:.85rem}
:focus-visible{outline:3px solid var(--primary-color);outline-offset:2px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:22px}
.stat{background:#fff;border:1px solid var(--border-color);border-radius:8px;padding:14px 16px}
.stat strong{display:block;font-size:1.6rem}
.stat span{color:var(--text-light);font-size:.9rem}
.table-wrap{overflow-x:auto;background:#fff;border:1px solid var(--border-color);border-radius:8px}
table{width:100%;border-collapse:collapse;min-width:640px}
th,td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--border-color);font-size:.95rem}
th{background:#f1f5f9;font-weight:600}
tr:last-child td{border-bottom:0}
.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.82rem;background:#e2e8f0}
.s-open,.p-high,.a-repair{background:#fee2e2;color:#991b1b}
.s-progress,.p-medium,.a-storage{background:#fef3c7;color:#92400e}
.s-resolved,.p-low,.a-active{background:#d1fae5;color:#065f46}
details{background:#fff;border:1px solid var(--border-color);border-radius:8px;margin-bottom:12px}
summary{cursor:pointer;padding:14px 18px;font-weight:600}
details .body{padding:0 18px 16px}
details ol{padding-left:22px;margin:8px 0}
details li{margin-bottom:4px}
.meta{color:var(--text-light);font-size:.88rem}
.form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:22px;background:#fff;border:1px solid var(--border-color);border-radius:8px;padding:16px}
.form h2{grid-column:1/-1;font-size:1.1rem}
.empty{display:none;padding:18px;color:var(--text-light)}
.site-footer{background:var(--dark-bg);color:#94a3b8;text-align:center;padding:22px 0;font-size:.9rem}
.site-footer a{color:#cbd5e1}
@media(max-width:600px){.page-intro h1{font-size:1.6rem}}
h2{font-size:1.3rem;margin:30px 0 14px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.card{display:block;background:#fff;border:1px solid var(--border-color);border-radius:8px;padding:18px;text-decoration:none;color:var(--text-dark)}
.card:hover{border-color:var(--primary-color)}
.card strong{display:block;font-size:1.1rem;color:var(--primary-color);margin-bottom:4px}
.card span{color:var(--text-light);font-size:.92rem}
.article-list{list-style:none;columns:2 280px;column-gap:28px;margin:8px 0}
.article-list li{margin-bottom:8px;break-inside:avoid}
.crumbs{color:var(--text-light);font-size:.9rem;margin-bottom:16px}
.plain{padding-left:22px}
.plain li{margin-bottom:6px}
.thumb{display:block;width:100%;height:150px;object-fit:cover;border-radius:6px;margin-bottom:12px;background:#e2e8f0}
.banner{display:block;width:100%;max-height:240px;object-fit:cover;border-radius:8px;margin-bottom:20px;background:#e2e8f0}
