:root{
    --navy:#0b1f3a; --blue:#1b5fa7; --light:#f4f7fb; --text:#1f2937; --muted:#64748b; --line:#dbe3ef; --green:#0f766e;
}
*{box-sizing:border-box} body{margin:0;font-family:Arial,Helvetica,sans-serif;background:linear-gradient(180deg,#eef4fb,#fff);color:var(--text)}
.topbar{background:var(--navy);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:16px 5%;box-shadow:0 8px 25px rgba(0,0,0,.18)}
.brand{display:flex;gap:12px;align-items:center}.brand span{display:block;color:#bfd2ea;font-size:13px}.brand-mark{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--blue),#55a7ff);display:grid;place-items:center;font-weight:800}
nav a{color:#fff;text-decoration:none;margin-left:18px;font-weight:700}.page{width:min(1180px,92vw);margin:28px auto 50px}.footer{text-align:center;color:var(--muted);padding:25px}.hero{background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;border-radius:24px;padding:38px;margin-bottom:24px}.hero h1{margin:0;font-size:34px}.form-code{display:inline-block;background:rgba(255,255,255,.14);padding:8px 12px;border-radius:999px}
.survey-card,.login-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;margin-bottom:22px;box-shadow:0 18px 45px rgba(15,23,42,.08)}
.login-card{max-width:520px;margin:50px auto}.survey-card h2{font-size:19px;margin-top:26px;color:var(--navy)}.grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.options{display:flex;gap:10px;flex-wrap:wrap}.options.columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.full{grid-column:1/-1}
label{font-weight:700;color:#334155} input,textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px;margin-top:7px;font:inherit} input[type=radio],input[type=checkbox]{width:auto;margin-right:7px}.options label,.rating-options label{background:var(--light);border:1px solid var(--line);border-radius:14px;padding:11px 14px;font-weight:600}.rating-row{display:flex;justify-content:space-between;gap:20px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:14px;margin:10px 0}.rating-title{font-weight:800;color:var(--navy)}.rating-options{display:flex;gap:8px;flex-wrap:wrap}.primary,.secondary{border:0;border-radius:14px;padding:12px 18px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-block}.primary{background:var(--blue);color:#fff}.secondary{background:#e8eef6;color:var(--navy)}.link-button{color:#fff}.hint{color:var(--muted);font-size:14px}.validation,.field-validation,.alert{color:#b91c1c}.center{text-align:center}.admin-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.actions{display:flex;gap:10px;flex-wrap:wrap}.table-wrap{overflow:auto;background:#fff;border-radius:18px;border:1px solid var(--line)}table{width:100%;border-collapse:collapse}th,td{padding:11px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:#eef4fb;color:var(--navy);white-space:nowrap}.report-title{text-align:center;margin:20px 0}.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:20px}.kpi{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;text-align:center;box-shadow:0 10px 25px rgba(15,23,42,.06)}.kpi span{display:block;color:var(--muted);font-size:13px}.kpi strong{font-size:32px;color:var(--green)}.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.mini-report{margin:0}.compact{box-shadow:none}
@media(max-width:800px){.grid.two,.options.columns,.report-grid,.kpi-grid{grid-template-columns:1fr}.rating-row,.admin-head{display:block}.topbar{display:block}nav{margin-top:14px}nav a{margin-left:0;margin-right:16px}}
@media print{.topbar,.footer,.print-hide{display:none}.page{width:100%;margin:0}.survey-card,.kpi{box-shadow:none}.report-grid{grid-template-columns:1fr 1fr}.kpi-grid{grid-template-columns:repeat(5,1fr)}}
.success{background:#dcfce7;color:#166534;border:1px solid #86efac;border-radius:14px;padding:12px 16px;margin-bottom:16px;font-weight:800}.config-form textarea{min-height:58px}.config-form label{display:block}.form-actions{margin-top:24px}

.required { color: #c1121f; font-weight: 700; }
.question-block { border-top: 1px solid #e7edf5; padding-top: 18px; margin-top: 18px; }
.question-editor-list { display: grid; gap: 18px; }
.question-editor-card { border: 1px solid #dce5f0; border-radius: 16px; padding: 18px; background: #fbfdff; }
.question-editor-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 12px; }
.grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.check-line { display: flex; align-items: center; gap: 8px; padding-top: 26px; }
.danger { background: #fff1f1; color: #b00020; border: 1px solid #ffcccc; border-radius: 10px; padding: 8px 12px; cursor: pointer; }
.sticky-actions { position: sticky; bottom: 0; background: rgba(255,255,255,.94); padding-top: 12px; border-top: 1px solid #e7edf5; }
@media (max-width: 900px) { .grid.three { grid-template-columns: 1fr; } .check-line { padding-top: 0; } }
.row-actions{display:flex;gap:8px;flex-wrap:wrap;min-width:180px}.small{padding:8px 10px;border-radius:10px;font-size:13px}.document-title{text-align:center;border-bottom:2px solid var(--line);padding-bottom:14px;margin-bottom:20px}.document-title h1{margin:0;color:var(--navy);font-size:26px}.document-title p{margin:8px 0 0;color:var(--muted);font-weight:700}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:24px}.detail-grid div{border:1px solid var(--line);border-radius:14px;background:#f8fbff;padding:12px}.detail-grid span{display:block;color:var(--muted);font-size:13px;margin-bottom:6px}.detail-grid strong{display:block;color:var(--navy);word-break:break-word}.detail-table th,.detail-table td{font-size:14px}.response-document{max-width:980px;margin-left:auto;margin-right:auto}.print-signature{display:flex;justify-content:space-between;margin-top:32px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-weight:700}
@media(max-width:900px){.detail-grid{grid-template-columns:1fr}.row-actions{min-width:0}}
@media print{body{background:#fff}.response-document{border:0;border-radius:0;padding:0;margin:0;box-shadow:none;max-width:none}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.detail-grid div{break-inside:avoid}.detail-table tr{break-inside:avoid}.document-title h1{font-size:22px}.print-document{font-size:12px}th,td{padding:7px}.print-signature{font-size:12px}}
.log-box{background:#0f172a;color:#e5e7eb;border-radius:14px;padding:14px;white-space:pre-wrap;overflow:auto;max-height:420px;font-size:13px;line-height:1.45}
code{background:#eef4fb;border:1px solid var(--line);border-radius:6px;padding:2px 5px}
