/* ===== Rahmenvereinbarungen – Layout ===== */
.rv-wrap{max-width:1180px;margin:0 auto;}

/* Search */
.rv-search{position:relative;margin-bottom:30px;}
.ric{display:inline-flex;line-height:0;}
.ric svg{display:block;width:100%;height:100%;}
.rv-search .search-ic{position:absolute;left:17px;top:50%;transform:translateY(-50%);color:var(--z400);width:19px;height:19px;}
.rv-search input{
  width:100%;height:52px;border-radius:12px;border:1px solid var(--z200);background:#fff;
  padding:0 18px 0 48px;font-size:15px;font-family:inherit;color:var(--z900);box-shadow:var(--shadow);
}
.rv-search input::placeholder{color:var(--z400);}
.rv-search input:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px var(--red-50);}

/* Section heading */
.rv-h{text-align:center;color:var(--red);font-size:19px;font-weight:700;margin:2px 0 18px;letter-spacing:-0.01em;}
.rv-h:first-child{margin-top:2px;}

/* Landing – 2-Spalten-Split (links Produkt, rechts Gesellschaft) */
.rv-split{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:start;}
.rv-col-empty{color:var(--z500);font-size:13px;padding:20px 0;text-align:center;}

/* Kleine quadratische Kacheln */
.rv-grid-sq{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;}
.rv-tile.rv-tile-sq{
  aspect-ratio:1;min-height:0;gap:8px;padding:10px 8px;border-radius:10px;
}
.rv-tile.rv-tile-sq .tile-ic{width:30px;height:30px;}
.rv-tile.rv-tile-sq .t-label{font-size:14.5px;font-weight:500;text-wrap:balance;line-height:1.25;}
.rv-tile.rv-tile-sq .rv-mark-sm{height:auto;}
.rv-tile.rv-tile-sq .rv-mark-sm .mk{font-size:14px;line-height:1.12;text-wrap:balance;}
.rv-tile.rv-tile-sq .rv-mark-sm.solid .mk{padding:3px 7px;}
.rv-tile.rv-tile-sq .rv-mark-sm .chip{width:15px;height:15px;font-size:9px;}

/* Tile grids */
.rv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.rv-tile{
  background:var(--z100);border:1px solid transparent;border-radius:14px;min-height:168px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:22px 16px;
  cursor:pointer;transition:.14s;text-align:center;
}
.rv-tile:hover{background:#fff;border-color:var(--red);box-shadow:var(--shadow-md);transform:translateY(-2px);}
.rv-tile .tile-ic{width:42px;height:42px;color:var(--z700);transition:.14s;}
.rv-tile:hover .tile-ic{color:var(--red);}
.rv-tile .t-label{font-size:15px;font-weight:500;color:var(--z800);line-height:1.3;text-wrap:balance;}
.rv-tile.featured{background:var(--red);border-color:var(--red);}
.rv-tile.featured .tile-ic{color:#fff;}
.rv-tile.featured .t-label{color:#fff;}
.rv-tile.featured:hover{background:var(--red-700);transform:translateY(-2px);}

/* Insurer wordmark */
.rv-mark{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;}
.rv-mark .mk{font-size:23px;font-weight:800;letter-spacing:.02em;line-height:1;}
.rv-mark.serif .mk{font-family:Georgia,'Times New Roman',serif;font-weight:700;letter-spacing:.06em;}
.rv-mark .chip{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:5px;font-size:11px;font-weight:800;color:#1a1a1a;}
.rv-mark.solid .mk{background:var(--mkColor);color:#fff;padding:5px 12px;border-radius:7px;}
.t-sub{font-size:11.5px;color:var(--z500);margin-top:-4px;line-height:1.3;}

/* Echte Logos */
.rv-logo{display:flex;align-items:center;justify-content:center;}
.rv-logo img{display:block;width:auto;height:auto;max-width:100%;object-fit:contain;}
/* in quadratischer Kachel: zentriert, breit skaliert */
.rv-tile.rv-tile-sq .rv-logo{width:100%;height:100%;}
.rv-tile.rv-tile-sq .rv-logo img{max-width:84%;max-height:50%;}
/* in Listeneintrag: linksbündig */
.rv-litem .rv-logo{justify-content:flex-start;height:30px;}
.rv-litem .rv-logo img{max-height:30px;max-width:170px;}
/* im Drilldown-Header */
.rv-drillhead .dh-mark .rv-logo{height:40px;}
.rv-drillhead .dh-mark .rv-logo img{max-height:40px;max-width:180px;}

/* Back / breadcrumb */
.rv-back{
  display:inline-flex;align-items:center;gap:8px;border:none;background:none;color:var(--z600);
  font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;padding:6px 0;margin-bottom:6px;
}
.rv-back:hover{color:var(--red);}
.rv-back .back-ic{width:15px;height:15px;}
.rv-crumb{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--z500);margin-bottom:14px;flex-wrap:wrap;}
.rv-crumb a{color:var(--z500);cursor:pointer;text-decoration:none;}
.rv-crumb a:hover{color:var(--red);}
.rv-crumb .crumb-ic{width:13px;height:13px;color:var(--z300);}
.rv-crumb .cur{color:var(--z900);font-weight:600;}

/* Drill header */
.rv-drillhead{display:flex;align-items:center;gap:16px;margin-bottom:22px;}
.rv-drillhead .dh-ic{
  width:58px;height:58px;border-radius:13px;background:none;color:var(--red);flex:none;
  display:flex;align-items:center;justify-content:center;
}
.rv-drillhead .dh-ic .ric{width:40px;height:40px;}
.rv-drillhead .dh-mark{width:auto;min-width:58px;height:58px;padding:0 16px;border-radius:13px;background:var(--z100);display:flex;align-items:center;justify-content:center;flex:none;}
.rv-drillhead h2{margin:0;font-size:22px;font-weight:700;color:var(--z900);letter-spacing:-0.01em;}
.rv-drillhead p{margin:3px 0 0;font-size:13px;color:var(--z500);}

/* Selection list (insurers / products) */
.rv-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.rv-litem{
  display:flex;align-items:center;gap:16px;padding:16px 18px;border:1px solid var(--z200);border-radius:12px;
  background:#fff;cursor:pointer;transition:.13s;box-shadow:var(--shadow);text-align:left;
}
.rv-litem:hover{border-color:var(--red);box-shadow:var(--shadow-md);transform:translateY(-1px);}
.rv-litem .li-ic{width:46px;height:46px;border-radius:10px;background:var(--z100);display:flex;align-items:center;justify-content:center;flex:none;}
.rv-litem .li-ic .ric{width:22px;height:22px;color:var(--z700);}
.rv-litem:hover .li-ic .ric{color:var(--red);}
.rv-litem .li-main{flex:1;min-width:0;}
.rv-litem .li-title{font-size:15px;font-weight:600;color:var(--z900);}
.rv-litem .li-sub{font-size:12.5px;color:var(--z500);margin-top:2px;}
.rv-litem .li-go{color:var(--z300);width:18px;height:18px;flex:none;}
.rv-litem:hover .li-go{color:var(--red);}
.rv-mark-sm{height:30px;display:flex;align-items:center;}
.rv-mark-sm .mk{font-size:18px;font-weight:800;line-height:1.05;}
.rv-mark-sm.serif .mk{font-family:Georgia,serif;font-weight:700;letter-spacing:.04em;}
.rv-litem-ins .li-main{display:flex;flex-direction:column;gap:4px;align-items:flex-start;}
.rv-litem-ins .rv-mark-sm{height:auto;}

.rv-count{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:12px;background:var(--z100);color:var(--z600);font-size:12px;font-weight:600;margin-left:12px;white-space:nowrap;}

/* ===== Document detail page ===== */
.rv-doc-section{margin-bottom:30px;}
.rv-doc-sechead{display:flex;align-items:center;gap:11px;margin-bottom:14px;}
.rv-doc-sechead .sh-ic{width:34px;height:34px;border-radius:9px;background:var(--z100);color:var(--red);display:flex;align-items:center;justify-content:center;flex:none;}
.rv-doc-sechead .sh-ic .ric{width:17px;height:17px;}
.rv-doc-sechead h3{margin:0;font-size:17px;font-weight:600;color:var(--z900);}
.rv-doc-sechead .sh-count{font-size:13px;color:var(--z400);font-weight:500;}
.rv-doc-sechead.aktuelles .sh-ic{background:var(--red);color:#fff;}

.doc-card{background:#fff;border:1px solid var(--z200);border-radius:13px;overflow:hidden;box-shadow:var(--shadow);}
.doc-card-head{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--z100);}
.doc-card-head h3{margin:0;font-size:15px;font-weight:600;color:var(--z900);letter-spacing:-0.01em;flex:1;}
.doc-up{display:inline-flex;align-items:center;gap:7px;border:1px solid #706F6F;background:#706F6F;color:#fff;font-size:12.5px;font-weight:500;font-family:inherit;border-radius:8px;padding:6px 12px;cursor:pointer;transition:.12s;white-space:nowrap;}
.doc-up .ric{width:14px;height:14px;}
.doc-up:hover{background:#5f5e5e;border-color:#5f5e5e;color:#fff;}
.row-new td{background:var(--red-50);}
.row-new-tag{display:inline-flex;align-items:center;height:16px;padding:0 6px;margin-left:8px;border-radius:8px;background:var(--red);color:#fff;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;vertical-align:middle;}

/* Dokumenten-Tabelle */
.rv-table{width:100%;border-collapse:collapse;font-size:14px;}
.rv-table thead th{
  text-align:left;font-weight:600;color:var(--z700);font-size:13px;
  padding:13px 16px;border-bottom:1px solid var(--z200);white-space:nowrap;vertical-align:middle;
}
.rv-table thead th.col-date{color:var(--red);background:var(--red-50);}
.rv-table thead th.col-act{text-align:right;}
.rv-table .th-in{display:inline-flex;align-items:center;gap:6px;}
.rv-table .sort-ic{width:13px;height:13px;color:var(--z300);}
.rv-table .col-date .sort-ic{color:var(--red);}
.rv-table .col-mark{width:42px;padding-left:18px;padding-right:0;}

.rv-table tbody td{padding:14px 16px;border-bottom:1px solid var(--z100);vertical-align:middle;color:var(--z700);}
.rv-table tbody tr:last-child td{border-bottom:none;}
.rv-table tbody tr:hover{background:var(--z50);}
.rv-table .col-mark{width:42px;padding-left:18px;padding-right:0;}
.rv-table .mark-ic{width:18px;height:18px;color:var(--green);display:block;}
.rv-table .td-date{white-space:nowrap;color:var(--z700);}
.rv-table .td-type{color:var(--z700);}
.rv-table .td-name{font-weight:500;color:var(--z900);}
.rv-table .vertrag-name{color:var(--z900);line-height:1.3;}
.rv-table .vertrag-num{font-size:12px;color:var(--z400);margin-top:2px;letter-spacing:.01em;}
.rv-table .vertrag-empty{color:var(--z400);}
.rv-table .rv-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;}
.rv-table .rv-act{
  border:none;background:none;padding:0;color:var(--red);cursor:pointer;
  width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;transition:.12s;
}
.rv-table .rv-act .ric{width:18px;height:18px;}
.rv-table .rv-act:hover{color:var(--red-700);transform:translateY(-1px);}

/* Frei pflegbarer Hinweistext (Rich-Text) – über den Dokumentenblöcken */
.rv-notice{background:#fff;border:1px solid var(--z200);border-radius:13px;box-shadow:var(--shadow);margin-bottom:26px;overflow:hidden;}
.rv-notice-head{display:flex;align-items:center;gap:11px;padding:14px 18px;border-bottom:1px solid var(--z100);}
.rv-notice-head h3{margin:0;font-size:15px;font-weight:600;color:var(--z900);flex:1;}
.rv-notice-edit{display:inline-flex;align-items:center;gap:6px;border:1px solid #706F6F;background:#706F6F;color:#fff;font-size:12.5px;font-weight:500;font-family:inherit;border-radius:8px;padding:5px 10px;cursor:pointer;transition:.12s;}
.rv-notice-edit .ic{width:13px;height:13px;}
.rv-notice-edit:hover{background:#5f5e5e;border-color:#5f5e5e;color:#fff;}
.rv-notice-body{padding:14px 18px 16px;font-size:14px;color:var(--z700);line-height:1.55;}
.rv-notice-body:focus{outline:none;background:var(--z50);}
.rv-notice-body p{margin:0 0 10px;}
.rv-notice-body p:last-child{margin-bottom:0;}
.rv-notice-body ul{margin:0 0 10px;padding-left:20px;}
.rv-notice-body li{margin:3px 0;}
.rv-notice-body a{color:var(--red);text-decoration:none;font-weight:500;}
.rv-notice-body a:hover{text-decoration:underline;}

/* Landing-Toolbar */
.rv-toolbar{display:flex;justify-content:flex-end;gap:10px;margin-bottom:18px;}
.btn .ric{width:15px;height:15px;}

/* Gruppen-Kachel (Produktspalte) */
.rv-tile.rv-tile-sq.is-group{position:relative;background:var(--red-50);}
.rv-tile.rv-tile-sq.is-group:hover{background:#fff;border-color:var(--red);}
.rv-tile.rv-tile-sq.is-group .tile-ic{color:var(--red);}
.rv-tile-badge{position:absolute;top:7px;left:7px;display:inline-flex;align-items:center;gap:3px;height:16px;padding:0 6px;border-radius:7px;background:var(--red);color:#fff;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;}
.rv-tile-badge .ric{width:10px;height:10px;}

/* Gruppen-Detail: Abschnitte je RV-Kategorie */
.rv-grp-sec{margin-bottom:34px;}
.rv-grp-sec + .rv-grp-sec{padding-top:6px;border-top:1px solid var(--z100);}
.rv-grp-sec .rv-doc-sechead{margin-bottom:14px;}
.rv-grp-sec .rv-notice{margin-bottom:14px;}
.rv-grp-docs{margin-bottom:16px;}
.rv-grp-ins-h{font-size:13px;font-weight:600;color:var(--z600);margin:0 0 11px;}

/* Produktlinie: Gruppen-Abschnitt (vor der Gesellschaftsliste) */
.rv-pl-groups{margin-bottom:26px;}
.rv-pl-group{margin-bottom:24px;}
.rv-pl-group + .rv-pl-group{padding-top:22px;border-top:1px solid var(--z200);}
.rv-pl-group-title{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;margin:0 0 14px;padding:2px 0;font-size:18px;font-weight:700;color:var(--z900);letter-spacing:-0.01em;}
.rv-pl-group-title .ric{width:18px;height:18px;color:var(--red);}
.rv-pl-group-note p{margin:0 0 8px;}
.rv-pl-group-note p:last-child{margin-bottom:0;}
.rv-pl-group-note a{color:var(--red);text-decoration:none;font-weight:500;}
.rv-pl-group-note a:hover{text-decoration:underline;}
.rv-pl-group .doc-card{margin-bottom:14px;}

/* Versicherer-Kacheln innerhalb der Gruppen-Abschnitte: deutlich kompakter */
.rv-pl-group .rv-list{grid-template-columns:repeat(3,1fr);gap:10px;}
.rv-pl-group .rv-litem{padding:9px 12px;gap:10px;}
.rv-pl-group .rv-litem .rv-logo{height:22px;}
.rv-pl-group .rv-litem .rv-logo img{max-height:22px;max-width:120px;}
.rv-pl-group .rv-litem .rv-mark-sm .mk{font-size:15px;}
.rv-pl-group .rv-litem .li-sub{font-size:11px;}
.rv-pl-group .rv-litem .li-go{width:15px;height:15px;}
@media (max-width:820px){ .rv-pl-group .rv-list{grid-template-columns:1fr;} }

/* Mehrfachauswahl (Dropdown) – Produkt-Gruppen in Neue RV */
.rv-ms{position:relative;}
.rv-ms-control{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:6px 12px;border-radius:10px;border:1px solid var(--z200);background:#fff;font-family:inherit;cursor:pointer;text-align:left;transition:.12s;}
.rv-ms.open .rv-ms-control{outline:none;border-color:var(--red);box-shadow:0 0 0 3px var(--red-50);}
.rv-ms-val{flex:1;display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-width:0;}
.rv-ms-ph{color:var(--z400);font-size:14px;}
.rv-ms-tag{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 5px 0 10px;border-radius:7px;background:var(--red-50);color:var(--red);font-size:13px;font-weight:600;}
.rv-ms-tag-x{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:5px;font-size:14px;line-height:1;color:var(--red);transition:.1s;}
.rv-ms-tag-x:hover{background:var(--red);color:#fff;}
.rv-ms-chev{flex:none;color:var(--z400);width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;transition:transform .15s;}
.rv-ms-chev .ic{width:16px;height:16px;}
.rv-ms.open .rv-ms-chev{transform:rotate(180deg);}
.rv-ms-menu{position:absolute;z-index:30;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid var(--z200);border-radius:11px;box-shadow:var(--shadow-md);padding:6px;display:flex;flex-direction:column;gap:2px;max-height:280px;overflow-y:auto;}
.rv-ms-opt{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;border:none;background:none;font-family:inherit;font-size:14px;color:var(--z800);cursor:pointer;text-align:left;width:100%;transition:.1s;}
.rv-ms-opt:hover{background:var(--z50);}
.rv-ms-opt.sel{color:var(--z900);font-weight:600;}
.rv-ms-opt-ic{width:15px;height:15px;color:var(--z400);flex:none;}
.rv-ms-opt.sel .rv-ms-opt-ic{color:var(--red);}
.rv-ms-check{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--z300);display:inline-flex;align-items:center;justify-content:center;flex:none;color:#fff;}
.rv-ms-opt.sel .rv-ms-check{background:var(--red);border-color:var(--red);}
.rv-ms-check .ric{width:13px;height:13px;}

/* Text-Eingabe (Gruppenname) */
.rv-text{height:44px;border-radius:10px;border:1px solid var(--z200);background:#fff;padding:0 14px;font-size:14px;font-family:inherit;color:var(--z900);}
.rv-text::placeholder{color:var(--z400);}
.rv-text:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px var(--red-50);}
.rv-text.is-error{border-color:var(--red);}
.rv-text.is-error:focus{box-shadow:0 0 0 3px var(--red-50);}
.rv-field-err{margin:0;font-size:12px;color:var(--red);font-weight:500;}

/* Neue RV – Formular */
.rv-create-head{margin-bottom:20px;}
.rv-create-head h2{margin:0;font-size:22px;font-weight:700;color:var(--z900);letter-spacing:-0.015em;}
.rv-create-head p{margin:4px 0 0;font-size:13.5px;color:var(--z500);}
.rv-form{display:flex;flex-direction:column;gap:20px;max-width:860px;}
.rv-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.rv-field{display:flex;flex-direction:column;gap:7px;}
.rv-field > label{font-size:13px;font-weight:600;color:var(--z700);}
.rv-field select{height:44px;border-radius:10px;border:1px solid var(--z200);background:#fff;padding:0 12px;font-size:14px;font-family:inherit;color:var(--z900);cursor:pointer;}
.rv-field select:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px var(--red-50);}

/* WYSIWYG-Editor */
.rv-editor{border:1px solid var(--z200);border-radius:10px;overflow:hidden;background:#fff;}
.rv-ed-tb{display:flex;align-items:center;gap:4px;padding:7px 9px;border-bottom:1px solid var(--z100);background:var(--z50);flex-wrap:wrap;}
.rv-ed-btn{display:inline-flex;align-items:center;gap:5px;min-width:30px;height:30px;padding:0 9px;border:1px solid transparent;background:none;border-radius:7px;font-size:13px;color:var(--z700);font-family:inherit;cursor:pointer;}
.rv-ed-btn .ric{width:13px;height:13px;}
.rv-ed-btn:hover{background:#fff;border-color:var(--z200);color:var(--z900);}
.rv-ed-sep{width:1px;height:18px;background:var(--z200);margin:0 3px;}
.rv-ed-area{min-height:150px;padding:14px 16px;font-size:14px;color:var(--z800);line-height:1.55;outline:none;}
.rv-ed-area p{margin:0 0 10px;}
.rv-ed-area ul,.rv-ed-area ol{margin:0 0 10px;padding-left:22px;}
.rv-ed-area a{color:var(--red);font-weight:500;}

/* Upload-Liste im Formular */
.rv-uplist{display:flex;flex-direction:column;}
.rv-upitem{display:flex;align-items:center;gap:12px;padding:11px 18px;border-bottom:1px solid var(--z100);}
.rv-upitem:last-child{border-bottom:none;}
.rv-upname{flex:1;display:inline-flex;align-items:center;gap:9px;font-size:14px;color:var(--z800);font-weight:500;}
.rv-upname .ric{width:15px;height:15px;color:var(--z500);}
.rv-uptype{height:32px;border-radius:8px;border:1px solid var(--z200);background:#fff;padding:0 28px 0 11px;font-size:13px;font-family:inherit;color:var(--z800);cursor:pointer;flex:none;
  appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 9px center;background-size:13px;}
.rv-uptype:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px var(--red-50);}
.rv-uprm{width:26px;height:26px;border-radius:7px;border:1px solid var(--z200);background:#fff;color:var(--z500);font-size:16px;line-height:1;cursor:pointer;flex:none;}
.rv-uprm:hover{background:var(--red-50);color:var(--red);border-color:var(--red-50);}
.rv-up-empty{padding:18px;text-align:center;font-size:13px;color:var(--z400);}
.rv-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px;}
.btn.is-disabled{opacity:.5;cursor:not-allowed;}

.rv-empty{padding:60px 0;text-align:center;color:var(--z500);}
.rv-empty .empty-ic{width:32px;height:32px;color:var(--z300);display:block;margin:0 auto 12px;}

@media (max-width:820px){
  .rv-grid{grid-template-columns:repeat(2,1fr);}
  .rv-list{grid-template-columns:1fr;}
  .rv-split{grid-template-columns:1fr;gap:14px;}
  .doc-card{overflow-x:auto;}
  .rv-table{min-width:720px;}
}

/* ===== Notiz: WYSIWYG-Bearbeiten ===== */
.rv-notice-actions{display:flex;align-items:center;gap:8px;}
.rv-notice-cancel{border:1px solid var(--z200);background:#fff;color:var(--z600);font-size:12.5px;font-weight:500;font-family:inherit;border-radius:8px;padding:5px 12px;cursor:pointer;transition:.12s;}
.rv-notice-cancel:hover{background:var(--z50);color:var(--z800);}
.rv-notice-save{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--red);background:var(--red);color:#fff;font-size:12.5px;font-weight:500;font-family:inherit;border-radius:8px;padding:5px 12px;cursor:pointer;transition:.12s;}
.rv-notice-save .ric{width:14px;height:14px;}
.rv-notice-save:hover{background:var(--red-700);border-color:var(--red-700);}
.rv-notice-edit-wrap{padding:14px 18px 16px;}

/* ===== Upload-Dialog ===== */
.rv-modal-ov{position:fixed;inset:0;background:rgba(24,24,27,.45);z-index:70;display:flex;align-items:center;justify-content:center;padding:24px;}
.rv-modal{background:#fff;border-radius:16px;width:min(540px,100%);max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-md);overflow:hidden;animation:rvpop .16s cubic-bezier(.2,.8,.3,1);}
@keyframes rvpop{from{transform:translateY(12px) scale(.99);opacity:.6;}to{transform:none;opacity:1;}}
.rv-modal-head{display:flex;align-items:center;gap:12px;padding:20px 24px 16px;}
.rv-modal-head h3{margin:0;font-size:19px;font-weight:700;color:var(--z900);letter-spacing:-0.01em;flex:1;}
.rv-modal-x{width:34px;height:34px;border-radius:9px;border:none;background:none;color:var(--z500);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.12s;flex:none;}
.rv-modal-x .ric{width:20px;height:20px;}
.rv-modal-x:hover{background:var(--z100);color:var(--z800);}
.rv-modal-body{padding:4px 24px 8px;overflow-y:auto;display:flex;flex-direction:column;gap:18px;}
.rv-modal-foot{display:flex;justify-content:flex-end;gap:12px;padding:18px 24px 22px;}

.rv-field .req{color:var(--red);}
.rv-field-hint{margin:6px 0 0;font-size:12px;color:var(--z400);}
.rv-dlg-type{height:46px;border-radius:10px;border:1px solid var(--z200);background:#fff;padding:0 38px 0 14px;font-size:14.5px;font-family:inherit;color:var(--z900);cursor:pointer;width:100%;
  appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;}
.rv-dlg-type:disabled{background-color:var(--z50);color:var(--z700);cursor:not-allowed;opacity:1;}
.rv-dlg-type:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px var(--red-50);}

.rv-drop{display:flex;flex-direction:column;align-items:center;gap:14px;padding:30px 18px;border:1.5px dashed var(--z300);border-radius:12px;cursor:pointer;transition:.12s;}
.rv-drop:hover{border-color:var(--red);background:var(--red-50);}
.rv-drop-ic{width:30px;height:30px;color:var(--z400);}
.rv-drop:hover .rv-drop-ic{color:var(--red);}
.rv-drop-btn{height:44px;}

.rv-dlg-files{border:1px solid var(--z200);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;}
.rv-dlg-files-head{font-size:13px;font-weight:600;color:var(--z700);}
.rv-dlg-file{display:flex;align-items:center;gap:11px;}
.rv-dlg-file-ic{width:18px;height:18px;color:var(--z400);flex:none;}
.rv-dlg-file-name{flex:1;font-size:14px;color:var(--z800);font-weight:500;word-break:break-word;}
.rv-dlg-file-size{font-size:12.5px;color:var(--z400);white-space:nowrap;flex:none;}
.rv-dlg-file-x{width:28px;height:28px;border-radius:7px;border:none;background:none;color:var(--z400);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none;transition:.12s;}
.rv-dlg-file-x .ric{width:16px;height:16px;}
.rv-dlg-file-x:hover{background:var(--red-50);color:var(--red);}
.rv-dlg-more{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;border:none;background:none;color:var(--red);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;padding:2px 0;}
.rv-dlg-more .ric{width:14px;height:14px;}

.rv-dlg-desc{width:100%;border-radius:10px;border:1px solid var(--z200);background:#fff;padding:11px 14px;font-size:14px;font-family:inherit;color:var(--z900);line-height:1.5;resize:vertical;min-height:78px;}
.rv-dlg-desc:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px var(--red-50);}
.rv-dlg-desc::placeholder{color:var(--z400);}

.btn .ric{width:15px;height:15px;}
.btn-grey{background:#706F6F;color:#fff;border-color:#706F6F;}
.btn-grey:hover{background:#5f5e5e;border-color:#5f5e5e;}
.btn.is-disabled{opacity:.5;pointer-events:none;}
