/* Stili per FORM */
form.cmxform{color:#333333;font-size:0.9em;width:80%;margin:5% 10%;}
form.cmxform legend{padding:5px 25px;margin:2px;border:0px solid #333;font-style:normal;font-weight:normal;color:#fff;background:#9E9D23;text-transform:uppercase;line-height:2em;}
form.cmxform label{display:inline-block;line-height:1.8;vertical-align:top;text-align:right;color:#333333;}
form.cmxform fieldset{-moz-border-bottom-colors:none;-moz-border-image:none;-moz-border-left-colors:none;-moz-border-right-colors:none;-moz-border-top-colors:none;background:transparent;border-color:#C9DCA6 -moz-use-text-color -moz-use-text-color;border-right:medium none;border-style:solid none none;border-width:0 medium medium;}
form.cmxform fieldset fieldset{background:none repeat scroll 0 0 transparent;}
form.cmxform fieldset p,
form.cmxform fieldset fieldset{background:url("../images/cmxform-divider.gif") repeat-x scroll left bottom transparent;padding:5px 10px 7px;}
form.cmxform div.required label{font-weight:600;}

/*ERRORS*/
form.cmxform label.error, 
label.error{color:red;font-style:italic;text-align:right;width:80%;margin:0;}
form.cmxform div.required label.error{font-weight:400;}

/*INFO*/
form.cmxform label.info,label.info{font-size:0.8em;font-style:italic;text-align:right;width:80%;margin:0;}
form.cmxform div.required label.info{font-weight:400;}

form.cmxform label blockquote           { font-size: 0.8em; font-style: italic; font-weight: bold; }
div.error                               { display: none; }
input                                   { border: 1px solid black; }
input.checkbox                          { border: medium none; }
/*input:focus                             { border: 1px dotted black; }*/
input.error                             { border: 1px dotted red; }
form.cmxform .gray *                    { color: gray; }

form.cmxform fieldset                   { margin-bottom: 10px; }
form.cmxform fieldset p                 { list-style: none outside none; margin: 0; padding: 5px; }
form.cmxform fieldset fieldset          { border: medium none; margin: 3px 0 0; }
form.cmxform fieldset fieldset legend   { font-weight: normal; padding: 0 0 5px; }
form.cmxform fieldset fieldset label    { display: block; width: auto; }
form.cmxform fieldset fieldset label    { margin-left: 103px; }

form.cmxform input.submit               { margin-left: 103px; }
form.cmxform img.form                   { margin: 0 80px 0 250px !important; width: 200px; }
form.cmxform img.formico                { margin: 0 80px 0 250px !important; width: 16px; }
form.cmxform label{width:100%;padding:0;margin:0;text-align:left;}
/*FORM MASSIMVE*/
form.cmxform .form_row{display:inline-block;}
form.cmxform label.form_row{width:25%;max-width:25%;margin:0 3% 0 0;padding:2px 1%;overflow:hidden;}
form.cmxform input.form_row{width:15%;margin:1px 0;padding:8px 1%;text-align:right;}

input, textarea, select{font-family:inherit;font-size:1.2em;margin:3px 0;padding:8px 15px;width:80%;border-radius:10px;}
select{-webkit-appearance:none;-moz-appearance:none;appearance:none;/*border-radius: 10px 0 0 10px;*/}
form.cmxform input#button{width:auto;margin:5px 0px 5px 70%;}
/**/
/* ============================================================
   LAYOUT FORM
   ============================================================ */

#search-form {margin:1em 10%;}

.filter-row {
    display:       flex;
    align-items:   center;
    gap:           8px;
    margin-bottom: 8px;
    flex-wrap:     wrap;
}

.form-actions {
    display:    flex;
    gap:        8px;
    margin-top: 12px;
    flex-wrap:  wrap;
}

.sep {
    color:     #9E9D23;
    font-size: 14px;
    padding:   0 2px;
}

/* ============================================================
   BUTTONS — flat minimal / olive palette
   ============================================================ */

.btn-filter,
.btn-search,
.btn-reset,
.btn-skip,
.btn-merge {display:inline-flex;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-weight:500;line-height:1;border-radius:4px;border:1px solid transparent;cursor:pointer;transition:background 0.15s ease, color 0.15s ease, border-color 0.15s ease;text-decoration:none;white-space:nowrap;}

.btn-search {
    background:   #33691E;
    color:        #fff;
    border-color: #33691E;
}
.btn-search:hover  { background: #2a5519; border-color: #2a5519; }
.btn-search:active { background: #214213; }

.btn-filter {
    background:   #fff;
    color:        #33691E;
    border-color: #33691E;
}
.btn-filter:hover  { background: #f2f7ee; }
.btn-filter:active { background: #e3eed9; }

.btn-reset,
.btn-skip {
    background:   #fff;
    color:        #558B2F;
    border-color: #9E9D23;
}
.btn-reset:hover,
.btn-skip:hover  { background: #f8f9ee; border-color: #558B2F; color: #33691E; }
.btn-reset:active,
.btn-skip:active { background: #eef0d6; }

.btn-merge {
    background:   #fff;
    color:        #9E9D23;
    border-color: #9E9D23;
}
.btn-merge:hover  { background: #f8f9ee; border-color: #558B2F; color: #33691E; }
.btn-merge:active { background: #eef0d6; }

.btn-remove {
    background:  none;
    border:      none;
    color:       #9E9D23;
    font-size:   16px;
    line-height: 1;
    padding:     0 4px;
    cursor:      pointer;
    transition:  color 0.15s ease;
}
.btn-remove:hover { color: #33691E; }

/* ============================================================
   SELECT E OPERATORE
   ============================================================ */

.sel-cat,
.sel-desc,
.sel-val,
.ac-country {
    padding:       6px 8px;
    font-size:     13px;
    border:        1px solid #9E9D23;
    border-radius: 4px;
    background:    #fff;
    color:         #333;
    cursor:        pointer;
    transition:    border-color 0.15s ease;
}
.sel-cat:focus,
.sel-desc:focus,
.sel-val:focus,
.ac-country:focus {
    border-color: #33691E;
    outline:      none;
    box-shadow:   0 0 0 2px rgba(51,105,30,0.15);
}
.sel-cat:disabled,
.sel-desc:disabled,
.sel-val:disabled {
    background:   #f5f5f5;
    color:        #aaa;
    border-color: #ddd;
    cursor:       not-allowed;
}

.filter-op{max-width:10%;padding:5px 6px;font-size:12px;font-weight:500;border:1px solid #9E9D23;border-radius:4px;background:#fff;color:#558B2F;cursor:pointer;}
.filter-op:focus{border-color:#33691E;outline:none;}

/**/
input[readonly]{background:#fafad0;}
input[disabled]{background:#ddd;border-color:#bbb;}
input[required]{background-image:url("../graphics/bg_required.png");background-position:right 10px;background-repeat:no-repeat;}
.note{background: transparent url("../images/ico_info.png")  no-repeat 40px 0}
p.error{background:#fff url("../graphics/bg_error.png") no-repeat 10px -5px !important;color:#ff0000;padding:0 90px !important;margin:0 10px !important;}

/*jquery-ui*/
.ui-spinner{width:20%;border-radius:0;}
.form_span{margin:0 20px;padding:3px;width:20%;border-radius:0;border:1px solid black;}
/*TRUMBOWIM*/
.trumbowyg-box{width:100% !important;margin:0 !important;padding:0 !important;}
.trumbowyg-button-pane{width: auto !important; margin: 0 !important; }
.trumbowyg-editor{background:#fff;}
ul.trumbowyg-button-pane li{background:transparent !important;}
.trumbowyg-editor-visible textarea#content{display:none;} 
.trumbowyg-modal-box{margin-left:0 !important;}
.trumbowyg-dropdown{width:auto !important;}
/*RECAPTCHA*/
.g-recaptcha{ margin: 0 35%; }
/*PAYPAL BOTTON*/
form.paypal{ text-align: center; }
form input.paypal{ border: 0px; width: auto; height: auto; }

.form_list{min-height:2em;}
.form_list .lab{background-color:#ccc;color:#fff;height:1.5em;border-radius:10px;display:inline-flex;align-items:center;padding:5px 20px;margin:0 10px;}
.form_list .lab img{height:16px;padding:0 !important;margin:5px !important;cursor:pointer;};

/* ============================================================
   OVERRIDE — campi ricerca OleaDB
   (annullano il reset globale input/select)
   ============================================================ */

.ac-author,
.ac-cultivar,
.ac-country,
.sel-cat,
.sel-desc,
.sel-val,
.filter-op {
    width:         auto;
    padding:       6px 8px;
    font-size:     13px;
    margin:        0;
    border-radius: 4px;
}

/* autocomplete — larghezza fissa leggibile */
.ac-author,
.ac-cultivar,
.ac-country {
    width: 260px;
}

/* select cat/desc/val — larghezza adattiva */
.sel-cat  { width: 180px; }
.sel-desc { width: 200px; }
.sel-val  { width: 160px; }

/* operatore AND/OR */
.filter-op { width: 72px; }
/* Codice per SMARTPHONE max 320 px  */
@media only screen and (max-width: 320px) {
form.cmxform{width:94%;margin:5% 3%;}
input, textarea, select { width:80%;}
/*RECAPTCHA*/
.g-recaptcha{margin:0;}

span.ui-spinner{width:25%}
form.cmxform label.form_row{width:75%;max-width:75%;padding:0;margin:0;overflow:hidden;}
form.cmxform input.form_row{width:75%;margin:3px 0;padding:8px 5px;}
form.cmxform input.form_spinner{width:60%;margin:3px 0;padding:8px 15px;border-width:0;}
}
/* Codice per TABLET vert SMARTPHONE oriz 321-480 px */
@media only screen and (min-width: 321px) and (max-width: 480px) {
form.cmxform{width:94%;margin:5% 3%;}
input, textarea, select { width:80%;}
/*RECAPTCHA*/
.g-recaptcha{margin:0;}

.ui-spinner{width:25%}
form.cmxform label.form_row{width:75%;max-width:75%;padding:0;margin:0;overflow:hidden;}
form.cmxform input.form_row{width:75%;margin:3px 0;padding:8px 5px;}
form.cmxform input.form_spinner{width:60%;margin:3px 0;padding:8px 15px;border-width:0;}
}
/* Codice per TABLET vert. 481 – 768 px */
@media only screen and (min-width: 481px) and (max-width: 768px) {
form.cmxform{width:94%;margin:5% 3%;}
input, textarea, select{width:80%;}
/*RECAPTCHA*/
.g-recaptcha{margin:0 10%;}

.ui-spinner{width:25%}
form.cmxform label.form_row{width:75%;max-width:75%;padding:0;margin:0;overflow:hidden;}
form.cmxform input.form_row{width:75%;margin:3px 0;padding:8px 5px;}
form.cmxform input.form_spinner{width:60%;margin:3px 0;padding:8px 15px;border-width:0;}
}
/* Codice per TABLET oriz. 769 – 1024 px */
@media only screen and (min-width: 769px) and (max-width: 1024px) {
form.cmxform{width:94%;margin:5% 3%;}
}
/* Codice per TABLET 1025 – 1240 px */
@media only screen and (min-width: 1025px) and (max-width: 1240px)  {
form.cmxform{width:94%;margin:5% 3%;}
}
/* Codice per TABLET oriz. 1241 – 1880 px */
@media only screen and (min-width: 1241px) and (max-width: 1880px) {
form.cmxform{width:94%;margin:5% 3%;}
}
/* Codice per DESKTOP min. 1881 px  */
@media only screen and (min-width: 1881px){
}