/* Orchid AI Advisors — shared component styles for the signed-in app pages
   (admin, portal, client-admin, presentation, form, form-builder, question-library).
   Linked AFTER styles.css and BEFORE each page's own <style>, so a page can still override.
   NOT linked by the public marketing pages or the auth pages, so it never leaks there. */

.lnk{color:var(--purple-700);font-weight:600;font-size:.9rem;text-decoration:none;border:1.5px solid var(--border);
  padding:7px 14px;border-radius:999px;cursor:pointer;background:transparent;font-family:inherit;}
.lnk:hover{border-color:var(--purple-400);}
.ulink{color:var(--purple-700);font-weight:600;cursor:pointer;text-decoration:underline;}

h2.sec{font-size:1.3rem;color:var(--heading);margin:8px 0 4px;}
h2.sec.mt{margin-top:30px;}
.sec-sub{color:var(--slate);font-size:.92rem;margin-bottom:16px;}
.sec-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}

.panel{background:var(--cream-soft);border:1px solid var(--border);border-radius:14px;padding:14px 18px;box-shadow:var(--shadow);margin-bottom:18px;overflow-x:auto;}
.panel.pad{padding:20px 22px;}
table{width:100%;border-collapse:collapse;font-size:.92rem;}
th{text-align:left;color:var(--muted);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;
  padding:9px 10px;border-bottom:1px solid var(--border);}
td{padding:10px;border-bottom:1px solid var(--border);vertical-align:middle;color:var(--ink);}

input,select{font-family:inherit;font-size:.9rem;padding:7px 9px;border:1.5px solid var(--border);border-radius:8px;background:var(--purple-900);color:var(--ink);}
input[type=file]{border:none;padding:4px 0;}

.btn-sm{font-size:.82rem;padding:7px 13px;border-radius:999px;border:none;cursor:pointer;font-family:inherit;font-weight:600;text-decoration:none;display:inline-block;text-align:center;line-height:1.2;}
.btn-gold{background:linear-gradient(90deg,#a8842a,#6b5214);color:#fff;}
.btn-out{background:transparent;border:1.5px solid var(--border);color:var(--purple-700);text-decoration:none;display:inline-block;}
.btn-danger{background:transparent;border:1.5px solid #e0a9a0;color:#b23b2e;}

.status{margin-top:12px;font-weight:600;font-size:.9rem;min-height:1.2em;}
.status.ok{color:#2e9e6b;} .status.error{color:#c0392b;}
.muted{color:var(--muted);font-size:.85rem;}

.modal-box{background:var(--cream,#faf5ea);border:1px solid var(--border);border-radius:18px;max-width:640px;width:100%;
  box-shadow:var(--shadow-lg);padding:26px 28px;}
.modal-box h3{font-size:1.3rem;color:var(--heading);margin-bottom:4px;}
.modal-box .msub{color:var(--slate);font-size:.9rem;margin-bottom:18px;}
.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
@media(max-width:560px){.modal-grid{grid-template-columns:1fr;}}
.modal-box label{display:flex;flex-direction:column;gap:5px;font-size:.82rem;font-weight:600;color:var(--ink);margin-bottom:12px;}
.modal-box input,.modal-box select,.modal-box textarea{font-family:inherit;font-size:.9rem;padding:8px 10px;
  border:1.5px solid var(--border);border-radius:8px;background:var(--purple-900);color:var(--ink);width:100%;}
.modal-box input[type=checkbox],.modal-box input[type=radio]{width:auto;padding:0;}
/* a checkbox/radio row label stays horizontal even though plain modal labels stack */
.modal-box label.q-check{flex-direction:row;align-items:flex-start;gap:10px;font-weight:400;}
.modal-box label.q-check input{margin-top:3px;flex:none;}
.modal-sub-h{margin:10px 0 8px;font-weight:700;color:var(--heading);font-size:.98rem;}
.modal-box code{background:rgba(184,144,47,.16);padding:2px 7px;border-radius:6px;font-size:.9rem;font-family:ui-monospace,Menlo,Consolas,monospace;}
.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px;}

.kebab-btn{background:transparent;border:1px solid var(--border);border-radius:8px;cursor:pointer;font-size:1.15rem;line-height:1;padding:1px 9px 4px;color:var(--ink);font-family:inherit;}
.kebab-btn:hover{border-color:var(--purple-400);background:rgba(184,144,47,.06);}
#row-menu{position:fixed;background:var(--cream-soft);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-lg);min-width:160px;z-index:60;display:none;overflow:hidden;padding:4px;}
#row-menu.open{display:block;}
#row-menu button{display:block;width:100%;text-align:left;background:transparent;border:none;border-radius:7px;padding:9px 12px;font-family:inherit;font-size:.88rem;color:var(--ink);cursor:pointer;}
#row-menu button:hover{background:var(--cream,#faf5ea);}
#row-menu button.danger{color:#b23b2e;}

.q-checklist{max-height:300px;overflow-y:auto;border:1px solid var(--border);border-radius:10px;padding:4px;background:var(--cream-soft);}
.q-check{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border-radius:8px;cursor:pointer;font-weight:400;}
.q-check:hover{background:var(--cream,#faf5ea);}
.q-check input{margin-top:3px;flex:none;}
.q-check .qh{display:block;color:var(--muted);font-size:.8rem;}
.q-empty{color:var(--muted);font-size:.88rem;padding:10px;}

.ra{display:flex;gap:14px;padding:7px 0;border-top:1px solid var(--border);}
.ra.first{border-top:none;}
.rq{flex:1;color:var(--slate);font-size:.84rem;}
.raa{flex:1;color:var(--ink);font-size:.9rem;white-space:pre-wrap;}
