*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f0f11;--surface: #1a1a1f;--surface2: #252530;--border: #2e2e3a;--text: #e8e8f0;--text-muted: #888899;--danger: #e05454;--radius: 10px}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;font-size:15px;line-height:1.5;min-height:100dvh}a{color:var(--accent);text-decoration:none}button{cursor:pointer;font-family:inherit;font-size:inherit}input,select,textarea{font-family:inherit;font-size:inherit;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:8px 12px;width:100%;outline:none;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent)}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius);border:none;font-weight:500;transition:opacity .15s,background .15s}.btn:hover{opacity:.85}.btn-primary{background:var(--accent);color:#fff}.btn-secondary{background:var(--surface2);color:var(--text);border:1px solid var(--border)}.btn-danger{background:var(--danger);color:#fff}.btn-sm{padding:5px 11px;font-size:13px}.btn:disabled{opacity:.4;cursor:not-allowed}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:6px;display:block}.form-group{margin-bottom:16px}.error-msg{color:var(--danger);font-size:13px;margin-top:6px}.rich-editor-content .ProseMirror{padding:10px 12px;min-height:80px;outline:none;font-size:14px;line-height:1.6;color:var(--text);background:var(--surface)}.rich-editor-content .ProseMirror p{margin:0 0 4px}.rich-editor-content .ProseMirror p:last-child{margin-bottom:0}.public-contact-info{font-size:14px;line-height:1.7}.public-contact-info p{margin:0 0 4px}.public-contact-info p:last-child{margin-bottom:0}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-scroll>table{min-width:520px}@media (max-width: 767px){.resp-grid-2{grid-template-columns:1fr!important}.resp-form-row{flex-wrap:wrap!important}.resp-form-row>*{min-width:min(100%,280px)}}
