/* MJ Resume Builder — styles */
.mjrb{max-width:1180px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:#1e293b;}
.mjrb-note{padding:16px 18px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;color:#1e3a5f;}
.mjrb-msg{padding:12px 16px;border-radius:8px;margin:0 0 14px;}
.mjrb-msg.ok{background:#dcfce7;color:#166534;border:1px solid #86efac;}
.mjrb-msg.err{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5;}
.mjrb-cols{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:26px;align-items:start;}
@media(max-width:1024px){.mjrb-cols{grid-template-columns:1fr;}}
.mjrb-h{font-size:15px;text-transform:uppercase;letter-spacing:.05em;color:#0f172a;margin:22px 0 10px;padding-bottom:6px;border-bottom:2px solid #e2e8f0;}
.mjrb-left>.mjrb-h:first-child{margin-top:0;}
.mjrb-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;}
@media(max-width:560px){.mjrb-grid{grid-template-columns:1fr;}}
.mjrb-form label{display:block;font-size:12.5px;font-weight:600;color:#475569;margin:0 0 10px;}
.mjrb-form label small{font-weight:400;color:#94a3b8;}
.mjrb-form input[type=text],.mjrb-form input[type=email],.mjrb-form textarea{width:100%;margin-top:4px;padding:9px 11px;border:1px solid #cbd5e1;border-radius:8px;font-size:14px;font-weight:400;color:#0f172a;background:#fff;box-sizing:border-box;}
.mjrb-form input:focus,.mjrb-form textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12);}
.mjrb-full{display:block;}
.mjrb-rep{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 14px 6px;margin:0 0 12px;position:relative;}
.mjrb-del{position:absolute;top:10px;right:10px;background:#fff;border:1px solid #fca5a5;color:#dc2626;border-radius:6px;font-size:11px;padding:4px 9px;cursor:pointer;}
.mjrb-del:hover{background:#fef2f2;}
.mjrb-add{background:#fff;border:1px dashed #94a3b8;color:#334155;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer;}
.mjrb-add:hover{border-color:#2563eb;color:#2563eb;}
.mjrb-actions{display:flex;gap:12px;margin:22px 0 4px;position:sticky;bottom:0;background:linear-gradient(#fff0,#fff 30%);padding:12px 0;}
.mjrb-btn{border:none;border-radius:10px;padding:12px 22px;font-size:14px;font-weight:700;cursor:pointer;}
.mjrb-save{background:#0f172a;color:#fff;}
.mjrb-pdf{background:#2563eb;color:#fff;}
.mjrb-btn:disabled{opacity:.6;cursor:default;}
.mjrb-tpls{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:6px;}
.mjrb-tpl{cursor:pointer;text-align:center;font-size:12px;font-weight:600;color:#475569;margin:0;}
.mjrb-tpl input{display:none;}
.mjrb-tpl-thumb{display:block;width:92px;height:120px;border:2px solid #cbd5e1;border-radius:8px;background:#fff;padding:10px;margin-bottom:6px;transition:.15s;}
.mjrb-tpl input:checked+.mjrb-tpl-thumb{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.15);}
.mjrb-tpl-thumb i{display:block;height:5px;border-radius:3px;background:#e2e8f0;margin-bottom:7px;}
.mjrb-tpl-thumb i:first-child{height:14px;background:#cbd5e1;}
.t-modern.mjrb-tpl-thumb i:first-child{background:#2563eb;}
.t-minimal.mjrb-tpl-thumb i{background:#f1f5f9;}
.t-minimal.mjrb-tpl-thumb i:first-child{background:#e2e8f0;width:60%;}
.mjrb-tpl-name{display:block;}

/* preview */
.mjrb-right{position:sticky;top:20px;}
.mjrb-preview-head{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;font-weight:700;margin-bottom:8px;}
.mjrb-paper{width:100%;aspect-ratio:210/297;background:#fff;border:1px solid #e2e8f0;border-radius:6px;box-shadow:0 10px 30px rgba(15,23,42,.12);overflow:hidden;}
.mjrb-paper .mjrb-doc{width:794px;min-height:1123px;transform-origin:top left;box-sizing:border-box;padding:56px 60px;background:#fff;color:#1e293b;font-size:13.5px;line-height:1.5;}
.mjrb-sep{color:#cbd5e1;margin:0 2px;}
.mjrb-doc-name{font-size:30px;font-weight:800;letter-spacing:.01em;}
.mjrb-doc-role{font-size:15px;font-weight:600;color:#2563eb;margin-top:2px;}
.mjrb-doc-contact{font-size:12px;color:#64748b;margin-top:8px;word-break:break-word;}
.mjrb-sec{margin-top:22px;}
.mjrb-sec h2{font-size:13px;text-transform:uppercase;letter-spacing:.1em;margin:0 0 10px;}
.mjrb-item{margin-bottom:12px;}
.mjrb-item-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:baseline;}
.mjrb-item-title{font-weight:700;font-size:14px;}
.mjrb-item-meta{font-size:12px;color:#64748b;white-space:nowrap;}
.mjrb-item-desc{margin-top:3px;color:#334155;}
.mjrb-chips{display:flex;flex-wrap:wrap;gap:6px;}
.mjrb-chip{background:#eff6ff;color:#1d4ed8;border-radius:20px;padding:3px 11px;font-size:12px;font-weight:600;}
.mjrb-chips-plain .mjrb-chip{background:none;color:#334155;padding:0;}
.mjrb-chips-plain .mjrb-chip:not(:last-child)::after{content:" ·";color:#94a3b8;font-weight:400;margin-left:2px;}
.mjrb-list{margin:0;padding-left:18px;}
.mjrb-langs{color:#334155;}

/* template: classic */
.mjrb-doc.t-classic{font-family:Georgia,"Times New Roman",serif;}
.mjrb-doc.t-classic .mjrb-doc-head{text-align:center;border-bottom:3px double #1e3a5f;padding-bottom:16px;}
.mjrb-doc.t-classic .mjrb-doc-role{color:#1e3a5f;}
.mjrb-doc.t-classic .mjrb-sec h2{color:#1e3a5f;border-bottom:1px solid #cbd5e1;padding-bottom:4px;font-family:inherit;}
.mjrb-doc.t-classic .mjrb-chip{background:#f1f5f9;color:#334155;}

/* template: modern */
.mjrb-doc.t-modern .mjrb-doc-head{background:#1e3a5f;color:#fff;margin:-56px -60px 0;padding:34px 60px 26px;}
.mjrb-doc.t-modern .mjrb-doc-name{color:#fff;}
.mjrb-doc.t-modern .mjrb-doc-role{color:#93c5fd;}
.mjrb-doc.t-modern .mjrb-doc-contact{color:#cbd5e1;}
.mjrb-doc.t-modern .mjrb-sec h2{color:#1e3a5f;border-left:4px solid #2563eb;padding-left:10px;}
.mjrb-doc.t-modern .mjrb-item-top{border-bottom:1px dotted #e2e8f0;padding-bottom:3px;}

/* template: minimal */
.mjrb-doc.t-minimal{font-family:"Helvetica Neue",Arial,sans-serif;padding:64px 66px;color:#0f172a;}
.mjrb-doc.t-minimal .mjrb-doc-name{font-weight:300;font-size:34px;letter-spacing:.04em;}
.mjrb-doc.t-minimal .mjrb-doc-role{color:#64748b;font-weight:400;letter-spacing:.14em;text-transform:uppercase;font-size:12px;}
.mjrb-doc.t-minimal .mjrb-sec h2{color:#0f172a;font-weight:400;letter-spacing:.22em;font-size:11px;}
.mjrb-doc.t-minimal .mjrb-item-title{font-weight:600;}
.mjrb-doc.t-minimal .mjrb-chip{background:none;color:#334155;padding:0;}

/* guest mode (v1.0.2) */
.mjrb-save-hint{display:block;font-size:12.5px;color:#64748b;margin:8px 0 4px;line-height:1.5;}
.mjrb-save-hint a{color:#2563eb;}

/* ===== v1.1.0 additions ===== */
.mjrb-form select, .mjrb-form input[type=month]{width:100%;margin-top:4px;padding:9px 11px;border:1px solid #cbd5e1;border-radius:8px;font-size:14px;font-weight:400;color:#0f172a;background:#fff;box-sizing:border-box;}
.mjrb-form select:focus, .mjrb-form input[type=month]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12);}
.mjrb-form input:disabled{opacity:.55;background:#f8fafc;}
.mjrb-phone-row{display:flex;gap:8px;margin-top:4px;}
.mjrb-phone-row select{max-width:134px;margin-top:0;}
.mjrb-phone-row input[type=text]{flex:1;min-width:0;margin-top:0;}
.mjrb-ids{display:flex;gap:18px;margin:2px 0 12px;}
.mjrb-inline{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#475569;margin:0;}
.mjrb-inline input{margin:0;}
.mjrb-cur{display:flex;align-items:center;gap:6px;}
.mjrb-cur input{margin:0;}
.mjrb-photo-block{margin:2px 0 14px;}
.mjrb-photo-thumb{display:none;width:64px;height:64px;border-radius:50%;background-size:cover;background-position:center;border:2px solid #e2e8f0;vertical-align:middle;margin-right:10px;}
.mjrb-photo-label{display:inline-block;font-size:12.5px;font-weight:600;color:#475569;vertical-align:middle;}
.mjrb-photo-label input{display:block;margin-top:6px;font-size:12px;font-weight:400;}
.mjrb-photo-remove{font-size:12px;color:#dc2626;background:none;border:none;cursor:pointer;margin-left:10px;text-decoration:underline;vertical-align:middle;}
.mjrb-photo-note{font-size:11.5px;color:#94a3b8;margin:6px 0 0;}
.mjrb-ai-btn{background:#7c3aed;color:#fff;}
.mjrb-ai-hint{font-size:12.5px;color:#7c3aed;margin:8px 0 0;font-weight:600;}
.mjrb-ai-msg{font-size:12.5px;color:#64748b;margin:6px 0 0;}
.mjrb-ai-msg.ok{color:#166534;}
.mjrb-ai-msg.err{color:#991b1b;}
.mjrb-ai-note{font-size:12.5px;color:#64748b;margin:8px 0 0;}
.mjrb-ai-note a{color:#2563eb;font-weight:600;}
.mjrb-doc-photo{float:right;width:84px;height:84px;object-fit:cover;border-radius:50%;margin:0 0 10px 16px;border:3px solid #e2e8f0;background:#fff;}
.mjrb-doc.t-modern .mjrb-doc-photo{border-color:rgba(255,255,255,.4);}
.mjrb-doc-personal{font-size:12px;color:#64748b;margin-top:6px;}
.mjrb-doc.t-modern .mjrb-doc-personal{color:#cbd5e1;}

/* ===== v1.2.0 additions ===== */
.mjrb-date-row{display:flex;gap:6px;margin-top:4px;}
.mjrb-date-row select{flex:1;min-width:0;margin-top:0;padding:8px 8px;}
.mjrb-date-row select:first-child{flex:0 0 42%;}
.mjrb-lang{margin-bottom:4px;}
.mjrb-lang-name{font-weight:600;}
.mjrb-lang-levels{color:#64748b;font-size:12px;}

/* ===== v1.2.1 additions ===== */
.mjrb-bullet{background:#fff;border:1px dashed #94a3b8;color:#334155;border-radius:6px;font-size:11px;padding:4px 9px;cursor:pointer;margin:0 8px 10px 0;}
.mjrb-bullet:hover{border-color:#2563eb;color:#2563eb;}
.mjrb-item-desc ul.mjrb-points{margin:4px 0 0;padding-left:18px;}
.mjrb-item-desc ul.mjrb-points li{margin:2px 0;}

/* ===== v1.3.0 — new templates: Elegant / Bold / Sidebar ===== */
/* Elegant */
.mjrb-doc.t-elegant{font-family:Georgia,"Times New Roman",serif;padding:64px;}
.mjrb-doc.t-elegant .mjrb-doc-head{text-align:center;padding-bottom:18px;border-bottom:4px double #a98d55;}
.mjrb-doc.t-elegant .mjrb-doc-name{font-size:32px;letter-spacing:.04em;color:#3f3a2f;}
.mjrb-doc.t-elegant .mjrb-doc-role{color:#a98d55;}
.mjrb-doc.t-elegant .mjrb-doc-contact,.mjrb-doc.t-elegant .mjrb-doc-personal{color:#6b6455;}
.mjrb-doc.t-elegant .mjrb-sec h2{color:#a98d55;font-size:12px;letter-spacing:.18em;font-weight:700;border-bottom:1px solid #e7dfd0;padding-bottom:5px;}
.mjrb-doc.t-elegant .mjrb-chip{background:#f4efe4;color:#6b5f43;}
.mjrb-doc.t-elegant .mjrb-doc-photo{border-color:#e7dfd0;}

/* Bold */
.mjrb-doc.t-bold{padding:0 0 56px;font-family:"Helvetica Neue",Arial,sans-serif;}
.mjrb-doc.t-bold .mjrb-doc-head{background:#0f766e;color:#fff;padding:42px 60px 30px;}
.mjrb-doc.t-bold .mjrb-doc-name{font-size:36px;font-weight:800;letter-spacing:-.01em;}
.mjrb-doc.t-bold .mjrb-doc-role{color:#99f6e4;}
.mjrb-doc.t-bold .mjrb-doc-contact{color:#ccfbf1;}
.mjrb-doc.t-bold .mjrb-doc-personal{color:#99f6e4;}
.mjrb-doc.t-bold .mjrb-sec{margin:26px 60px 0;}
.mjrb-doc.t-bold .mjrb-sec h2{color:#0f766e;font-size:14px;letter-spacing:.12em;border-bottom:3px solid #99f6e4;display:inline-block;padding-bottom:3px;margin-bottom:12px;}
.mjrb-doc.t-bold .mjrb-chip{background:#ccfbf1;color:#115e59;}
.mjrb-doc.t-bold .mjrb-doc-photo{border-color:rgba(255,255,255,.5);}

/* Sidebar (two-column) */
.mjrb-paper .mjrb-doc.t-sidebar{padding:0;position:relative;overflow:hidden;}
.mjrb-doc.t-sidebar .mjrb-sb-left{position:absolute;left:0;top:0;bottom:0;width:248px;background:#1e3a5f;color:#dbe4f0;padding:40px 24px;box-sizing:border-box;}
.mjrb-doc.t-sidebar .mjrb-sb-left .mjrb-doc-photo{float:none;display:block;width:104px;height:104px;margin:0 0 18px;border-color:rgba(255,255,255,.35);}
.mjrb-doc.t-sidebar .mjrb-doc-name{color:#fff;font-size:24px;line-height:1.25;margin-bottom:12px;}
.mjrb-doc.t-sidebar .mjrb-doc-contact{color:#aebfd6;font-size:11.5px;line-height:1.7;margin-top:0;word-break:break-word;}
.mjrb-doc.t-sidebar .mjrb-doc-personal{color:#8fa3bf;font-size:11px;margin-top:8px;}
.mjrb-doc.t-sidebar .mjrb-sb-left .mjrb-sec{margin-top:26px;}
.mjrb-doc.t-sidebar .mjrb-sb-left .mjrb-sec h2{color:#93c5fd;font-size:11.5px;letter-spacing:.12em;border-bottom:1px solid rgba(255,255,255,.18);padding-bottom:5px;margin-bottom:10px;}
.mjrb-doc.t-sidebar .mjrb-sb-left .mjrb-item-title{color:#f1f5f9;}
.mjrb-doc.t-sidebar .mjrb-sb-left .mjrb-item-meta{color:#9fb3cd;}
.mjrb-doc.t-sidebar .mjrb-sb-left .mjrb-item-desc{color:#c7d4e4;}
.mjrb-doc.t-sidebar .mjrb-sb-left .mjrb-chip{background:rgba(255,255,255,.12);color:#e2e8f0;}
.mjrb-doc.t-sidebar .mjrb-sb-left .mjrb-langs,.mjrb-doc.t-sidebar .mjrb-sb-left .mjrb-list{color:#c7d4e4;}
.mjrb-doc.t-sidebar .mjrb-sb-right{padding:46px 40px 46px 288px;min-height:1123px;box-sizing:border-box;}
.mjrb-doc.t-sidebar .mjrb-sb-right .mjrb-sec:first-child{margin-top:0;}
.mjrb-doc.t-sidebar .mjrb-sb-right .mjrb-sec h2{color:#1e3a5f;font-size:13px;letter-spacing:.1em;border-left:4px solid #2563eb;padding-left:10px;margin-bottom:10px;}

/* template picker thumbs for the new ones */
.t-elegant.mjrb-tpl-thumb i{background:#ece5d8;}
.t-elegant.mjrb-tpl-thumb i:first-child{background:#c9b37e;width:70%;margin-left:auto;margin-right:auto;}
.t-bold.mjrb-tpl-thumb i{background:#ccfbf1;}
.t-bold.mjrb-tpl-thumb i:first-child{height:24px;background:#0f766e;margin-bottom:9px;}
.t-sidebar.mjrb-tpl-thumb{background:linear-gradient(90deg,#1e3a5f 0%,#1e3a5f 32%,#fff 32%);}
.t-sidebar.mjrb-tpl-thumb i{margin-left:40%;background:#e2e8f0;}
.t-sidebar.mjrb-tpl-thumb i:first-child{background:#cbd5e1;}
