:root{--bg:#151416;--panel:#211e20;--panel2:#292426;--text:#eee9e9;--muted:#aaa1a3;--accent:#b63a46;--accent2:#d0525e;--line:#393235;--ok:#55c878;--bad:#ef6262;--shadow:0 14px 40px #0005}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% 0,#3a1519 0,#151416 35%);color:var(--text);font:15px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}a{color:#f2a4ab;text-decoration:none}a:hover{text-decoration:underline}.container{width:min(1120px,calc(100% - 32px));margin:auto}.topbar{position:sticky;top:0;z-index:5;background:#171517dd;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-weight:800;color:#fff}.brand-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--accent2);margin-right:9px;box-shadow:0 0 16px var(--accent2)}.links{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.links a{color:#d9d2d3}.links .active{color:#fff}.btn{display:inline-block;border:0;border-radius:10px;padding:10px 16px;background:var(--accent);color:white;cursor:pointer;font-weight:700}.btn:hover{background:var(--accent2);text-decoration:none}.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--text)}.btn.danger{background:#7c2d35}.btn.small,.btn-small{padding:6px 10px;font-size:13px}.hero{margin:42px 0 26px;padding:42px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,#2b2022,#1d1a1c);box-shadow:var(--shadow)}h1,h2{line-height:1.2;margin-top:0}.hero h1{font-size:clamp(30px,5vw,52px);max-width:800px;margin:8px 0}.hero p{max-width:720px;color:var(--muted);font-size:17px}.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#d8878e;font-weight:800}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:22px 0}.style-switch{display:flex;gap:10px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:30px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 8px 24px #0002}.monitor-head,.review-top,.section-line,.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:15px}.rating{display:flex;align-items:center;gap:7px}.star{color:#63595c;font-size:18px}.star.is-on{color:#e7a84c}.monitor-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:13px;margin:15px 0}.review{padding:13px 0;border-top:1px solid var(--line)}.stars{margin:2px 0 5px}.muted{color:var(--muted)}.empty{color:var(--muted);padding:20px}.flash{margin-top:20px;padding:12px 16px;border-radius:10px;border:1px solid var(--line)}.flash.success{background:#173320}.flash.error{background:#3a1d21}.auth,.form-card{max-width:560px;margin:55px auto}.auth h1,.form-card h1{margin:8px 0 22px}label{display:block;margin:14px 0 6px;font-weight:700}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:10px;background:#141214;color:var(--text);padding:11px 12px;outline:0}input:focus,textarea:focus,select:focus{border-color:var(--accent)}form .btn{margin-top:18px}.modal-wrap{position:fixed;inset:0;background:#0009;display:grid;place-items:center;padding:16px;z-index:10}.modal{width:min(560px,100%);position:relative}.close{position:absolute;right:18px;top:10px;font-size:28px}.profile{display:flex;gap:22px;align-items:center;margin:45px 0}.avatar{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:#49252a;font-size:30px;font-weight:800}.status-dot{display:inline-block;width:10px;height:10px;border-radius:50%;vertical-align:middle}.status-dot.online{background:var(--ok);box-shadow:0 0 0 0 #55c87866;animation:pulse 1.7s infinite}.status-dot.offline{background:var(--bad)}@keyframes pulse{70%{box-shadow:0 0 0 8px transparent}100%{box-shadow:0 0 0 0 transparent}}.footer{margin-top:50px;border-top:1px solid var(--line);color:var(--muted)}.footer-inner{min-height:70px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:11px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.inline{display:flex;gap:10px;align-items:center}.inline select{max-width:240px}.switch{display:flex;align-items:center;gap:9px}.switch input{width:auto}.admin-reviews{display:grid;gap:16px}code{background:#171517;padding:2px 6px;border-radius:5px}

/* Компактные карточки мониторингов */
.monitor-card {
    padding: 15px;
    font-size: 14px;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.monitor-card h2 {
    font-size: 18px;
    margin: 4px 0 8px;
}

.monitor-desc {
    font-size: 13px;
    margin: 8px 0;
}

.monitor-meta {
    font-size: 12px;
    margin: 8px 0;
}

.monitor-card .review {
    padding: 8px 0;
    font-size: 13px;
}

.review-text-short {
    font-size: 13px;
    line-height: 1.4;
    margin-top: 4px;
}

.monitor-card .btn {
    width: 100%;
    text-align: center;
    margin-top: auto;
    font-size: 13px;
    padding: 8px;
}

.btn-block {
    display: block;
    width: 100%;
    text-align: center;
}

@media(max-width:760px){.container{width:min(100% - 20px,1120px)}.nav{align-items:flex-start;padding:12px 0;flex-direction:column}.links{gap:9px}.hero{padding:26px;margin-top:24px}.grid,.grid.two{grid-template-columns:1fr}.toolbar{align-items:flex-start;flex-direction:column}.profile{align-items:flex-start}.footer-inner{flex-direction:column;justify-content:center;padding:15px 0}.monitor-head{align-items:flex-start;flex-direction:column}.inline{align-items:stretch;flex-direction:column}}


/* Более компактная и аккуратная сетка мониторингов */
.grid.grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
.monitor-card {
    padding: 14px;
    border-radius: 14px;
    min-width: 0;
}
.monitor-card h2 {
    font-size: 17px;
    margin: 3px 0 5px;
    line-height: 1.25;
    overflow-wrap: anywhere;
}
.monitor-desc {
    font-size: 12.5px;
    line-height: 1.45;
    margin: 6px 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.monitor-meta {
    gap: 8px 12px;
    font-size: 11.5px;
    margin: 7px 0;
    overflow-wrap: anywhere;
}
.monitor-card .review {
    padding: 7px 0;
    font-size: 12px;
}
.review-text-short {
    font-size: 12px;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.monitor-card .btn {
    font-size: 12.5px;
    padding: 7px 9px;
}
@media (max-width: 980px) {
    .grid.grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .grid.grid-3 { grid-template-columns: 1fr; }
}
