:root{--brand:#309a44;--brand-dark:#27853a;--text:#222;--muted:#777;--border:#ddd;--soft:#f4f4f4;--radius:6px;}
*{box-sizing:border-box;}
body{margin:0;font-family:Roboto,Arial,sans-serif;color:var(--text);background:#fafafa;}
a{color:var(--brand);}
.wrap{max-width:1100px;margin:0 auto;padding:16px 14px 40px;}
.topbar{background:#222;color:#fff;padding:10px 0;}
.topbar .wrap{padding:0 14px;}
.topbar .logo{color:#fff;font-size:1.25rem;font-weight:700;text-decoration:none;}
h1{font-size:22px;margin:8px 0 14px;}
.muted{color:var(--muted);font-size:13px;}
.search-box{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap;}
.search-box input{flex:1;min-width:240px;max-width:420px;padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius);font:inherit;}
.search-box button{background:var(--brand);color:#fff;border:0;border-radius:var(--radius);padding:9px 18px;font:inherit;cursor:pointer;}
.search-box button:hover{background:var(--brand-dark);}
.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-bottom:14px;}
.card.info{margin-top:12px;}
.card-title{font-size:16px;font-weight:500;margin-bottom:4px;}
.card-title a{color:var(--text);text-decoration:none;}
.card-title a:hover{color:var(--brand);}
.sub{font-size:14px;font-weight:600;margin-bottom:10px;}
.check-inline{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:400;margin-left:12px;cursor:pointer;}
table{width:100%;border-collapse:collapse;}
td,th{border-bottom:1px solid var(--border);padding:7px 10px;text-align:left;font-size:13px;vertical-align:top;}
th{width:220px;color:var(--muted);font-weight:normal;}
.w110{width:110px;}
.actions{display:flex;gap:10px;align-items:center;margin-top:14px;flex-wrap:wrap;}
.btn{display:inline-block;background:var(--brand);color:#fff;border:0;border-radius:var(--radius);padding:8px 18px;font:inherit;cursor:pointer;text-decoration:none;}
.btn:hover{background:var(--brand-dark);color:#fff;}
.btn-plain{background:#fff;border:1px solid var(--border);color:var(--text);}
.btn-plain:hover{border-color:var(--brand);color:var(--brand);background:#fff;}
tr.char-row.selected td:first-child{font-weight:600;}
.val-chip{display:inline-block;padding:3px 10px;margin:2px 4px 2px 0;border:1px solid var(--border);border-radius:12px;font-size:12px;cursor:pointer;user-select:none;background:#fff;}
.val-chip:hover{border-color:var(--brand);color:var(--brand);}
.val-chip.on{background:var(--brand);color:#fff;border-color:var(--brand);font-weight:600;}

/* ===== Форма обратной связи ===== */
.feedback-page{max-width:640px;margin:0 auto;}
.feedback-intro{color:var(--muted);font-size:14px;margin:0 0 18px;line-height:1.5;}
.feedback-form{background:#fff;border:1px solid var(--border);border-radius:12px;padding:26px 28px;box-shadow:0 4px 18px rgba(0,0,0,.06);}
.feedback-form .field{margin-bottom:18px;}
.feedback-form label{display:block;font-size:13px;font-weight:600;color:#444;margin-bottom:6px;}
.feedback-form label .req{color:var(--brand);}
.feedback-form input[type=text],
.feedback-form input[type=email],
.feedback-form textarea{width:100%;padding:11px 13px;border:1px solid #d5d5d5;border-radius:8px;font:inherit;font-size:14px;background:#fcfcfc;transition:border-color .15s,box-shadow .15s,background .15s;}
.feedback-form textarea{resize:vertical;min-height:130px;line-height:1.5;}
.feedback-form input:focus,
.feedback-form textarea:focus{outline:none;border-color:var(--brand);background:#fff;box-shadow:0 0 0 3px rgba(48,154,68,.15);}
.feedback-form .hint{font-size:12px;color:var(--muted);margin-top:5px;}
.feedback-form .submit-row{display:flex;align-items:center;gap:12px;margin-top:22px;flex-wrap:wrap;}
.feedback-form .btn{padding:11px 26px;font-size:15px;border-radius:8px;}
.form-error{background:#fdecea;border:1px solid #f5c6c0;color:#b3261e;border-radius:8px;padding:10px 14px;font-size:14px;margin:0 0 16px;}
.feedback-success{background:#eaf7ee;border:1px solid #b8e3c5;border-radius:10px;padding:22px 24px;margin-bottom:16px;}
.feedback-success h1{margin-top:0;}
.feedback-success p{color:#2c6e3d;font-size:14px;line-height:1.5;}
