/* Moderni tlacitka a pole formularu pro cely web (nahrazuje ploche obdelniky ze starych stylu).
   Komponenty s vlastnim vzhledem (.reg-form, .cal, .inv-form, .pi ...) maji vyssi prioritu a zustavaji beze zmeny. */

:root {
    --btn-pink: #e5007d;
    --btn-pink-dark: #c4006b;
    --btn-pink-light: #fdeef6;
    --btn-border: #d6a3bf;
}

/* ---- hlavni tlacitka ------------------------------------------------------------------ */
input[type="submit"],
input[type="button"],
input[type="reset"],
button:not([class]) {
    -webkit-appearance: none;
    appearance: none;
    display: inline-block;
    padding: 7px 18px;
    border: 1px solid var(--btn-pink-dark);
    border-radius: 8px;
    background: linear-gradient(#f0268f, var(--btn-pink));
    color: #fff;
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    cursor: pointer;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .18);
    transition: background .15s, box-shadow .15s, transform .05s;
}

input[type="submit"]:hover,
input[type="button"]:hover,
button:not([class]):hover {
    background: linear-gradient(var(--btn-pink), var(--btn-pink-dark));
    box-shadow: 0 2px 6px rgba(197, 0, 107, .35);
}

input[type="submit"]:active,
input[type="button"]:active,
button:not([class]):active { transform: translateY(1px); box-shadow: none; }

input[type="submit"]:focus-visible,
input[type="button"]:focus-visible,
a.bookmark:focus-visible,
button:focus-visible { outline: 3px solid rgba(229, 0, 125, .35); outline-offset: 2px; }

input[type="submit"]:disabled,
input[type="button"]:disabled,
button:not([class]):disabled { opacity: .5; cursor: not-allowed; box-shadow: none; }

/* tlacitka v tabulkach a v radkovych formularich jsou mensi */
form.inline input[type="submit"],
td input[type="submit"],
td input[type="button"],
.inline[type="submit"] { padding: 3px 12px; font-size: 13px; border-radius: 6px; }

/* ---- odkazy ve tvaru tlacitka (zalozky) ----------------------------------------------------- */
a.bookmark,
a.gallery_button,
a.gallery_button_right,
a.gallery_box_button,
#central table tr td form input.bookmark,
#login_box a.bookmark {
    border: 1px solid var(--btn-pink-dark) !important;
    border-radius: 8px !important;
    background: linear-gradient(#f0268f, var(--btn-pink)) !important;
    color: #fff !important;
    padding: 5px 14px !important;
    font-weight: 700;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .18);
    transition: background .15s, box-shadow .15s;
}

#login_box a.bookmark { padding: 2px 7px !important; font-size: 12px; border-radius: 6px !important; margin: 0 3px 3px 0; }

a.bookmark:hover,
a.gallery_button:hover,
a.gallery_button_right:hover,
a.gallery_box_button:hover,
#central table tr td form input.bookmark:hover,
#login_box a.bookmark:hover {
    background: linear-gradient(var(--btn-pink), var(--btn-pink-dark)) !important;
    box-shadow: 0 2px 6px rgba(197, 0, 107, .35);
}

/* ---- levé menu administrace ----------------------------------------------------------------------- */
.admin_left_menu {
    padding: 6px !important;
    border: 1px solid #f0c2da !important;
    border-radius: 12px;
    background: var(--btn-pink-light) !important;
}

.admin_left_menu a {
    margin: 4px 0 !important;
    padding: 7px 10px !important;
    border: 1px solid transparent !important;
    border-radius: 8px;
    background: linear-gradient(#f0268f, var(--btn-pink)) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 700;
    transition: background .15s, transform .1s;
}

.admin_left_menu a:hover {
    background: linear-gradient(var(--btn-pink), var(--btn-pink-dark)) !important;
    transform: translateX(2px);
}

/* ---- hlavni menu ------------------------------------------------------------------------------------ */
#menu a { transition: background .15s; border-radius: 6px 6px 0 0; }
#menu a:hover { background-color: rgba(255, 255, 255, .18); }

/* ---- pole formularu ------------------------------------------------------------------------------- */
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="number"],
input[type="date"],
input[type="search"],
textarea,
select {
    border: 1px solid var(--btn-border);
    border-radius: 6px;
    background-color: #fff;
    font-family: inherit;
    transition: border-color .15s, box-shadow .15s;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="number"],
input[type="date"],
input[type="search"],
textarea { padding: 4px 7px; }

input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="number"]:focus,
input[type="date"]:focus,
input[type="search"]:focus,
textarea:focus,
select:focus {
    outline: none;
    border-color: var(--btn-pink);
    box-shadow: 0 0 0 3px rgba(229, 0, 125, .18);
}

input[type="checkbox"], input[type="radio"] { accent-color: var(--btn-pink); }


/* ---- přihlašovací box v hlavičce: kompaktní, aby se vešel do hlavičky (159 px) a nepřekrýval menu ---- */
#login_box { box-sizing: border-box; height: auto; min-height: 120px; margin-top: 6px; padding: 5px 7px; }
#login_box .heading { font-size: 115%; padding-bottom: 1px; }
#login_box table, #login_box tbody { display: block; width: 100%; }
#login_box tr { display: block; }
#login_box td { display: block; padding: 0 0 3px 0; line-height: 1.25; }
/* řádky 1-2: popisek + pole vedle sebe */
#login_box tr:nth-child(-n+2) { display: flex; align-items: center; }
#login_box tr:nth-child(-n+2) td:first-child { flex: 0 0 48px; }
#login_box tr:nth-child(-n+2) td:last-child { flex: 1 1 auto; }
#login_box .login_form_title { font-size: 13px; }
#login_box .login_input,
#login_box input[type="text"],
#login_box input[type="password"] { width: 100%; height: 22px; padding: 1px 6px !important; font-size: 13px !important; border-radius: 5px !important; box-sizing: border-box; }
/* řádky 3-5 (pamatovat, přihlásit, problém) přes celou šířku boxu bez prázdného sloupce vlevo */
#login_box tr:nth-child(n+3) td:first-child { display: none; }
#login_box tr:nth-child(3) td { font-size: 12px; white-space: nowrap; }
#login_box input[type="checkbox"] { margin: 0 4px 0 0; vertical-align: -2px; }
#login_box input[type="submit"] { padding: 2px 12px !important; font-size: 13px !important; line-height: 1.3 !important; border-radius: 6px !important; }
#login_box tr:nth-child(5) a { font-size: 12px; }
