/* $Id: zen.css,v 1.14.2.1 2009/02/13 07:46:04 johnalbin Exp $ */

/*
 * ZEN STYLES
 *
 * This is an example stylesheet. Sub-themes should NOT include the zen/zen.css
 * file, but instead copy this CSS to their own stylesheets.
 *
 * In this stylesheet, we have included all of the classes and IDs from this
 * theme's tpl.php files. We have also included many of the useful Drupal core
 * styles to make it easier for theme developers to see them.
 *
 * Many of these styles are over-riding Drupal's core stylesheets, so if you
 * remove a declaration from here, the styles may still not be what you want
 * since Drupal's core stylesheets are still styling the element. See the
 * drupal6-reference.css file for a list of all Drupal 5.x core styles.
 *
 * In addition to the style declarations in this file, other Drupal styles that
 * you might want to override or augment are those for:
 *
 *   Book Navigation  See line 74  of Zen's drupal6-reference.css file
 *   Forum            See line 197 of Zen's drupal6-reference.css file
 *   Menus            See line 667 of Zen's drupal6-reference.css file
 *   News Aggregator  See line 20  of Zen's drupal6-reference.css file
 *   Polls            See line 287 of Zen's drupal6-reference.css file
 *   Search           See line 320 of Zen's drupal6-reference.css file
 *   User Profiles    See line 945 of Zen's drupal6-reference.css file
 */


/** body **/
body {
    margin: 0;
    padding: 0px;
    background-color: Gray;
    background: Gray url(page-shadow.jpg) top repeat-x;
}

#page {
    font-size: 0.8em;
}

#page-inner {}

/** header **/
#header {
    background-color: #000242;
}

#header-inner,
#header-inner a {}

#logo-title

/* Wrapper for logo, website name, and slogan */
    {}

#logo

/* Wrapper for logo */
    {
    margin: 3px 10px;
    padding: 10px;
}

#logo-image

/* The actual logo image */
    {
    height: 30px;
}

h1#site-name,
div#site-name

/* The name of the website */
    {
    display: none;
    margin: 0;
    font-size: 2em;
    line-height: 1.3em;
}

#site-name a:link,
#site-name a:visited {
    color: #000;
    text-decoration: none;
}

#site-name a:hover {
    text-decoration: underline;
}

#site-slogan

/* The slogan (or tagline) of a website */
    {}

#header-blocks

/* Wrapper for any blocks placed in the header region */
    {
    clear: none;
    float: right;
}

/** main (container for everything else) **/
#main {}

#main-inner {
    background: White;
    padding-bottom: 50px;
}

/** content **/
#content {}

#content-inner {}

#mission

/* The mission statement of the site (displayed on homepage) */
    {}

#content-top

/* Wrapper for any blocks placed in the "content top" region */
    {}

#content-header

/* Wrapper for breadcrumb, title, messages, tabs, and help */
    {}

.breadcrumb

/* The path to the current page in the form of a list of links */
    {
    margin-top: 23px;
    margin-bottom: 10px;
    padding-bottom: 0;
    /* Undo system.css */
}

.breadcrumb a {
    font-size: 0.75em;
    text-decoration: underline;
    color: #36d;
}

.breadcrumb a:hover {
    text-decoration: underline;
    color: #09F
}

h1.title

/* The title of the page */
    {
    font: Calibri;
    font-weight: normal;
    border-bottom: 2px dashed #ccc;
    font-variant: small-caps;
}

h2.title,
/* Block title or the title of a piece of content when it is given in a list of content */
h3.title

/* Comment title */
    {
    margin: 0;
}

div.messages

/* Important messages (status, warning, and error) for the user */
    {}

div.status

/* Normal priority messages */
    {}

div.warning,
tr.warning

/* Medium priority messages */
    {
    /* border: 1px solid #f0c020; */
    /* Drupal core uses: 1px solid #f0c020 */
}

div.error,
tr.error

/* High priority messages. See also the .error declaration below. */
    {}

div.tabs

/* See also the tabs.css file. */
    {}

.help

/* Help text on a page */
    {
    margin: 1em 0;
}

.more-help-link

/* Link to more help */
    {
    font-size: 0.85em;
    text-align: right;
}

#content-area

/* Wrapper for the actual page content */
    {}

.pager

/* A list of page numbers when more than 1 page of content is available */
    {
    clear: both;
    margin: 1em 0;
    text-align: center;
}

.pager a,
.pager strong.pager-current {
    padding: 0.5em;
}

.feed-icons

/* The links to the RSS or Atom feeds for the current list of content */
    {
    margin: 1em 0;
}

#content-bottom

/* Wrapper for any blocks placed in the "content bottom" region */
    {}

/** navbar **/
#navbar {}

#navbar-inner {}

#search-box

/* Wrapper for the search form */
    {}

#edit-search-theme-form-1-wrapper label

/* Label that says "Search this site:" */
    {
    display: none;
}

#primary

/* Primary links */
    {}

#secondary

/* Secondary links */
    {}

/** sidebar-left **/
#sidebar-left .block {
    margin: 20px 0px 7px 7px;
    padding-top: 15px;
    background: url(shadow-corner.png) right top no-repeat;
    font-size: 0.85em;
}

#sidebar-left .block .content {
    margin-right: 12px;
    padding: 5px 7px;
}

#sidebar-left .block h2 {
    font-size: 1.3em;
    color: #555;
    padding-left: 7px;
    font-weight: normal;
    font-variant: small-caps;
    font-family: Calibri;
}

#sidebar-left a {
    color: #555;
    text-decoration: none;
    margin: 15px 0px;
}

#sidebar-left a:hover {
    color: #09F;
    text-decoration: underline;
}

#sidebar-left li {
    border-bottom: 1px solid #999999;
    padding: 3px 5px;
}

#sidebar-left li.last {
    border: none;
}

#sidebar-left li.active a {
    color: #36d;
}

#sidebar-left li.active li {
    padding-left: 10px;
    border: none;
}

#sidebar-left ul,
#sidebar-left ul li,
#sidebar-right ul,
#sidebar-right ul li {
    list-style: none;
    list-style-type: none;
    list-style-position: outside;
    list-style-image: none;
}

/** sidebar-right **/
#sidebar-right .block {
    margin: 40px 15px 7px 0px;
}

/*#sidebar-right .odd.block .content {*/
#sidebar-right .view {
    border-left: 2px solid #000242;
    border-top: 2px solid #000242;
    padding: 5px 0px 0px 7px;
}

#sidebar-right #block-views-soubory_ke_stazeni-block_1 .view,
#sidebar-right #block-views-dokumentace_ke_stazeni-block_1 .view {
    border-left: 2px solid #ddd;
    border-top: 2px solid #ddd;
}

#sidebar-right #block-views-rel_reseni_v_produktech-block_1 .view {
    border-left: 2px solid #e48;
    border-top: 2px solid #e48;
}

#sidebar-right .block h2 {
    font-size: 1.3em;
    color: #333;
    font-weight: normal;
    font-variant: small-caps;
    font-family: Calibri;
}

#sidebar-right a {
    color: #555;
    text-decoration: none;
    font-size: 0.85em;
    line-height: 0.8em;
}

#sidebar-right a:hover {
    color: #000;
    text-decoration: underline;
}

#sidebar-right .field-content div {
    border-bottom: 1px solid #DDD;
    padding: 4px 0px;
}

#sidebar-right #block-views-soubory_ke_stazeni-block_1 .field-content div,
#sidebar-right #block-views-dokumentace_ke_stazeni-block_1 .field-content div {
    border-bottom: none;
    padding: 0px;
}

#sidebar-right .field-content div .filefield-icon {
    border: none;
    padding: 2px 0px;
}

#sidebar-right ul {
    list-style: none;
    list-style-type: none;
    list-style-position: outside;
}

#sidebar-right .view-soubory-ke-stazeni .field-item,
#sidebar-right .view-dokumentace-ke-stazeni .field-item,
#sidebar-right .view-soubory-ke-stazeni .field-content>.node-type-soubor,
#sidebar-right .view-dokumentace-ke-stazeni .field-content>.node-type-soubor {
    width: 76px;
    margin: 5px 2px 0px 0px;
    float: left;
    height: 120px;
}

#sidebar-right .view-soubory-ke-stazeni .field-content,
#sidebar-right .view-dokumentace-ke-stazeni .field-content {
    display: inline-block;
}

#sidebar-right .view-soubory-ke-stazeni .field-field-fileicon,
#sidebar-right .view-dokumentace-ke-stazeni .field-field-fileicon {
    text-align: center;
}

#sidebar-right .view-soubory-ke-stazeni .field-field-filetype,
#sidebar-right .view-dokumentace-ke-stazeni .field-field-filetype {
    text-align: center;
    color: #aaa;
    font-size: 0.75em;
    text-transform: uppercase;
    line-height: 1em;
}

#sidebar-right .view-soubory-ke-stazeni .field-doc-short-title,
#sidebar-right .view-dokumentace-ke-stazeni .field-doc-short-title {
    text-align: center;
    font-size: 0.85em;
    line-height: 1em;
    margin-bottom: 7px;
}

#sidebar-right .view-soubory-ke-stazeni .field-doc-short-title a,
#sidebar-right .view-dokumentace-ke-stazeni .field-doc-short-title a {
    line-height: 0.5em;

}

/** footer **/
#footer {
    background: Gray url(footer-shadow.jpg) center top no-repeat;
}

#footer-inner {}

#footer-message

/* Wrapper for the footer message from Drupal's "Site information"
                     and for any blocks placed in the footer region */
    {
    padding-top: 8px;
    font-size: 0.85em;
    color: #aaa;
}

#footer-message a {
    color: #aaa;
}

/** closure **/
#closure-blocks

/* Wrapper for any blocks placed in the closure region */
    {}

/** Drupal nodes **/
.node

/* Node wrapper */
    {}

.node-inner

/* Additional wrapper for node */
    {}

.sticky

/* A sticky node (displayed before others in a list) */
    {}

.node-unpublished

/* Unpublished nodes */
    {
    /* background-color: #fff4f4; */
    /* Drupal core uses a #fff4f4 background */
}

.node-unpublished div.unpublished,
/* The word "Unpublished" displayed beneath the content. */
.comment-unpublished div.unpublished {
    height: 0;
    overflow: visible;
    color: #d8d8d8;
    font-size: 75px;
    line-height: 1;
    font-family: Impact, "Arial Narrow", Helvetica, sans-serif;
    font-weight: bold;
    text-transform: uppercase;
    text-align: center;
    word-wrap: break-word;
    /* A very nice CSS3 property */
}

.node-mine

/* A node created by the current user */
    {}

.node-teaser

/* A node displayed as teaser */
    {}

.field-type-nodereference:before {
    clear: both;
    content: "";
    display: block;
    padding-top: 2px;
    margin-top: 20px;
    border-top: 1px solid #000;
}

.field-type-nodereference:after {
    clear: both;
    content: "";
    display: block;
}

.field-field-refsoubor .field-item,
.field-field-refsoubor-doc .field-item {
    float: left;
    margin: 5px 0px 0 7px;
    width: 76px;
    height: 140px;
}

.view-vypis-produktu .views-row-even,
.view-vypis-produktu .views-row-odd {
    margin: 20px 50px 20px 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #000242;
    height: 120px;
    overflow: visible;
}

.view-vypis-produktu .views-field-field-teaser-img-fid {
    float: left;
    padding: 10px;
}

.view-vypis-produktu .views-field-title {
    margin-left: 130px;
    padding: 0px;
}

.view-vypis-produktu .views-field-title a {
    font-size: 18px;
    color: #000;
}

.view-vypis-produktu .views-field-title a:hover {
    color: #888;
    text-decoration: none;
}

.view-vypis-produktu .views-field-field-teaser-value {
    font-size: 0.85em;
    margin-left: 130px;
    padding: 5px;
    color: #555;
}

.view-vypis-produktu .views-field-field-teaser-value ul {
    margin: 0px;
    padding-left: 20px;
}

/* All nodes are given a node-type-FOO class that describes the type of
   * content that it is. If you create a new content type called
   * "my-custom-type", it will receive a "node-type-my-custom-type" class.
   */
.node-type-produkt

/* Page content node */
    {}

.node-type-story

/* Story content node */
    {}

.node h2.title

/* Node title */
    {}

.marker

/* "New" or "Updated" marker for content that is new or updated for the current user */
    {
    color: #c00;
}

.node .picture

/* The picture of the node author */
    {}

.node.node-unpublished .picture,
.comment.comment-unpublished .picture {
    position: relative;
    /* Otherwise floated pictures will appear below the "Unpublished" text. */
}

.node .meta

/* Wrapper for submitted and terms data */
    {}

.node .submitted

/* The "posted by" information */
    {}

.node .terms

/* Node terms (taxonomy) */
    {}

.node .content

/* Node's content wrapper */
    {}

.node div.links

/* Wrapper for node links */
    {
    margin: 1em 0;
}

ul.links

/* Taxonomy links, node links, comment links */
    {
    margin: 0;
    padding: 0;
}

ul.links.inline {
    display: inline;
}

ul.links li {
    display: inline;
    list-style-type: none;
    padding: 0 0.5em;
}

.preview .node

/* Preview of the content before submitting new or updated content */
    {
    /* background-color: #ffffea; */
    /* Drupal core uses a #ffffea background */
}

/** Drupal comments **/

/** Drupal blocks **/
.block

/* Block wrapper */
    {
    margin-bottom: 1em;
}

.block.region-odd

/* Zebra striping for each block in the region */
    {}

.block.region-even

/* Zebra striping for each block in the region */
    {}

.block.odd

/* Zebra striping independent of each region */
    {}

.block.even

/* Zebra striping independent of each region */
    {}

.region-count-1

/* Incremental count for each block in the region */
    {}

.count-1

/* Incremental count independent of each region */
    {}

.block-inner

/* Additional wrapper for block */
    {}

.block h2.title

/* Block title */
    {}

.block .content

/* Block's content wrapper */
    {}

#block-aggregator-category-1

/* Block for the latest news items in the first category */
    {}

#block-aggregator-feed-1

/* Block for the latest news items in the first feed */
    {}

#block-block-1

/* First administrator-defined block */
    {}

#block-blog-0

/* "Recent blog posts" block */
    {}

#block-book-0

/* "Book navigation" block for the current book's table of contents */
    {}

#block-comments-0

/* "Recent comments" block */
    {}

#block-forum-0

/* "Active forum topics" block */
    {}

#block-forum-1

/* "New forum topics" block */
    {}

#block-menu-2

/* "Primary links" block */
    {}

#block-menu-secondary-links

/* "Secondary links" block */
    {
    float: left;
}

#block-node-0

/* "Syndicate" block for primary RSS feed */
    {}

#block-poll-0

/* "Most recent poll" block */
    {}

#block-profile-0

/* "Author information" block for the profile of the page's author */
    {}

#block-search-0

/* "Search form" block */
    {}

#block-statistics-0

/* "Popular content" block */
    {}

#block-user-0

/* "User login form" block */
    {
    float: right;
    color: #aaa;
    font-size: 0.8em;
}

#block-user-0 .form-item

/* "User login form" block */
    {
    padding: 0;
    margin: 0px 5px 0px 0px;
    float: left;
    font-size: 0.9em;
}

#block-user-0 input {
    border: 1px solid #aaa;
    color: #aaa;
    background-color: Gray;
}

#block-user-0 .form-submit {
    margin-top: 16px;
}

#block-user-0 a {
    color: #aaa;
    float: none;
}

#block-user-0 h2 {
    display: none;
}

#block-user-1

/* "Navigation" block for Drupal navigation menu */
    {}

#block-user-2

/* "Who's new" block for a list of the newest users */
    {}

#block-user-3

/* "Who's online" block for a list of the online users */
    {}

#block-locale-0

/* Languages block */
    {
    float: right;
    clear: both;
}

#block-menu-secondary-links h2,
#block-locale-0 h2,
#block-locale-0 .active {
    display: none;
}

#block-locale-0 ul,
#block-locale-0 li {
    list-style: none;
    display: inline;
}

#header-blocks a {
    margin: 7px;
    color: #ccc;
    font-size: 0.8em;
}

#block-nice_menus-1 {
    margin-bottom: 0px;
}

#block-nice_menus-1 h2 {
    display: none;
}

#block-nice_menus-1 .block-inner .content {
    xbackground: #555 url(menu-pruh.gif) right center repeat;
    background: #1166CC;
    height: 35px;
}

#nice-menu-1 {
    margin-top: 0px;
}

#header ul.menu li {
    display: inline;
}

ul.menu li {
    display: block;
}


/** Drupal boxes **/
/* Wrapper for Comment form, Comment viewing options, Menu admin, and
   * Search results.
   */
.box

/* Wrapper for box */
    {}

.box-inner

/* Additional wrapper for box */
    {}

.box h2.title

/* Box title */
    {}

.box .content

/* Box's content wrapper */
    {}

/** Miscellaneous Drupal styles **/
.error

/* Errors that are separate from div.messages status messages (see above.) */
    {
    /* color: #e55; */
    /* Drupal core uses a #e55 background */
}

.warning

/* Warnings that are separate from div.messages status messages (see above.) */
    {
    /* color: #e09010; */
    /* Drupal core uses a #e09010 background */
}

.more-link

/* Aggregator, blog, and forum more link */
    {
    text-align: right;
}

#user-login-form

/* Drupal's default login form */
    {
    text-align: left;
}

tr.even

/* Some tables have rows marked even or odd. */
    {
    /* background-color: #eee; */
    /* Drupal core uses a #eee background */
}

tr.odd {
    /* background-color: #eee; */
    /* Drupal core uses a #eee background */
}

li a.active

/* The active item in a Drupal menu */
    {
    color: #000242;
}


/** Drupal forms **/
.form-item,
/* Wrapper for a form element (or group of form elements) and its label */
.form-checkboxes,
.form-radios {
    margin: 1em 0;
}

.form-item input.error,
/* Highlight the form elements that caused a form submission error */
.form-item textarea.error,
.form-item select.error {
    border: 2px solid #c00;
}

.form-item label

/* The label for a form element */
    {
    display: block;
    font-weight: bold;
}

.form-item label.option

/* The label for a radio button or checkbox */
    {
    display: inline;
    font-weight: normal;
}

.form-required

/* The part of the label that indicates a required field */
    {
    color: #e48;
}

.form-item .description

/* The descriptive help text (separate from the label) */
    {
    font-size: 0.85em;
}

.form-checkboxes .form-item,
/* Pack groups of checkboxes and radio buttons closer together */
.form-radios .form-item {
    margin: 0.4em 0;
}

.form-submit

/* The submit button */
    {}

.container-inline div,
.container-inline label

/* Inline labels and form divs */
    {
    display: inline;
}

.tips

/* Tips for Drupal's input formats */
    {
    margin: 0;
    padding: 0;
    font-size: 0.9em;
}

/** OpenID **/
/* The default styling for the OpenID login link seems to assume Garland's
   * styling of list items.
   */
#user-login-form ul

/* OpenID creates a new ul above the login form's links. */
    {
    margin-bottom: 0;
    /* Position OpenID's ul next to the rest of the links. */
}

#user-login-form li.openid-link,
/* The "Log in using OpenID" links. */
#user-login li.openid-link {
    margin-top: 1em;
    margin-left: -20px;
    /* Un-do some of the padding on the ul list. */
    padding-left: 20px;
    background-position: left center;
}

#user-login-form li.user-link,
/* The "Cancel OpenID login" links. */
#user-login li.user-link {
    margin-top: 1em;
    list-style-type: disc;
    list-style-position: outside;
}

#user-login li.openid-link,
/* The OpenID links on the /user form. */
#user-login li.user-link {
    margin-left: -2em;
    /* Un-do all of the padding on the ul list. */
}

/** Drupal admin tables **/
/* We overrode these styles in html-elements.css, but restore them for the
   * forms on the site.
   */
form tbody {
    border-top: 1px solid #ccc;
}

form th {
    text-align: left;
    padding-right: 1em;
    border-bottom: 3px solid #ccc;
}

form tbody th {
    border-bottom: 1px solid #ccc;
}

form thead th {
    text-align: left;
    padding-right: 1em;
    border-bottom: 3px solid #ccc;
}

/** Front page CSS style **/
.front h1 {
    display: none;
}

.node-type-news-item h1 {
    padding-left: 120px;
}

/*  .node-type-news-item .breadcrumb
  {
  	margin: 15px 0px 0px 15px;
	float: left;
  }*/
.node-type-news-item #main-inner {
    padding-bottom: 0px;
}

.node-type-news-item #content-area {
    float: left;
    width: 900px;
}

.node-type-news-item #content-area h2 {
    font-size: 1.2em;
    color: Gray;
    border-bottom: 1px dashed Gray;
    margin: 7px;
}

#content-area .node-type-news-item .front-vypis-aktualit a {
    padding-right: 20px;
    padding: 5px 20px 5px 10px;
    text-decoration: none;
}

#content-area .node-type-news-item .front-vypis-aktualit a.active {
    color: #36d;
    padding-right: 20px;
    padding: 5px 20px 5px 10px;
    background: #f6f6f6;
    text-decoration: none;
    display: block;
    width: 100%;
}

#content-area .node-type-news-item .front-vypis-reseni a {
    padding: 5px 20px 5px 0px;
    text-decoration: none;
}

.node-type-news-item #content-area a {
    color: Gray;
    text-decoration: none;
}

.node-type-news-item #content-area a:hover {
    color: #0099FF;
    text-decoration: underline;
}

.node-type-news-item #content-area li .views-field-title {
    margin: 7px 0px 7px 0px;
}

.node-type-news-item #content-area .front-vypis-reseni .item-list {
    background-color: #f6f6f6;
    padding: 2px 0px;
    margin-bottom: 20px;
}

.node-type-news-item #content-area .front-vypis-reseni ul {
    margin: 0px 0px 0px 25px;
}

.node-type-news-item #content-area .front-vypis-reseni .item-list li {
    list-style-position: outside;
    list-style-image: url(list-arrow.gif);
    display: list-item;
}

.node-type-news-item #content-area .front-vypis-reseni {
    float: left;
    width: 33%;
    margin: 5px 15px;
    margin-left: 25px;
}

.node-type-news-item #content-area .front-vypis-aktualit ul {
    margin: 15px 0px 15px 5px;
    list-style: none;
}

.node-type-news-item #content-area .front-vypis-aktualit li .views-field-title {
    margin-left: 0px;
    margin-top: 0px;
}

.node-type-news-item #content-area .front-vypis-aktualit h2 {
    margin-right: 22px;
}

.node-type-news-item #content-area .front-vypis-aktualit {
    float: left;
    width: 28%;
    margin: 5px 0px 5px 15px;
}

.node-type-news-item #content-area .front-vypis-hladin h2 {
    text-align: left;
}

.node-type-news-item #content-area .front-vypis-hladin {
    float: right;
    width: 25%;
    margin: 5px 15px;
    text-align: center;
}

.node-type-news-item #content-area .front-vypis-hladin .views-field-title {
    padding-top: 7px;
}

.node-type-news-item #content-area .front-vypis-hladin .views-field-body {
    text-align: left;
    padding-left: 10px;
}

.block-ddblock {
    margin: 0;
}

.block-ddblock h2.title {
    display: none;
}

.not-front .node-type-news-item .slide-text a {
    display: none;
}

.block-ddblock .ddblock-cycle-upright10 .slide-read-more a {
    font-size: 13px;
    font-family: inherit;
}

.none-inner {
    background: #cccccc;
    /*display: none;*/
    height: 0px ! important;
    font-size: 0px;
}

.none {
    height: 0px ! important;
    font-size: 0px;
}

a {
    text-decoration: none;
    color: Gray;
    color: #09F;
}

a:hover {
    text-decoration: underline;
    color: #09F;
    color: Gray;
}

/** My own elements **/

/*.page-sitemap .breadcrumb,
.page-partnerska-zona-prihlaseni .breadcrumb*/
.no-sidebars .breadcrumb {
    margin: 20px 0px 10px 20px;
}

.node-type-news-item .breadcrumb {
    margin: 15px 0px 0px 15px;
    float: left;
}

.no-sidebars h1.title,
.one-sidebar h1.title {
    margin: 20px 0px 10px 100px;
}

.node-type-news-item h1.title,
.section-admin h1.title,
.node-type-skupina h1.title {
    margin: 0;
}

.no-sidebars #content-area,
.one-sidebar #content-area {
    margin: 20px 100px 20px 100px;
}

.node-type-news-item #content-area,
.section-admin #content-area,
.node-type-skupina #content-area {
    margin: 0;
}

.node-type-stranka .view-header {
    display: none;
}

.not-logged-in .tabs ul.primary {
    padding-left: 100px;
}


/* IE 6 hack */
.front h1.title {
    margin: 0px;
}

.front h1.title {
    margin: 0px;
}

.front #content-area {
    margin: 0px;
}

.front .view-header {
    display: block;
}

/* end hack */

.autocomplete-list li div {
    color: #000;
    background: #fff;
}

.autocomplete-list li.selected div {
    color: #fff;
    background: #e48;
}

/*.mceIframeContainer html #tinymce*/
html #tinymce {
    background-color: White;
    background-image: none;
}

#edit-contact-wrapper {
    display: none;
}





/* NODE CONTENT */
.button-download {
    background-color: #003377;
    border: 5px solid #0044BB;
    color: #DDDDDD;
    padding: 5px 35px;
}

.button-download:hover {
    background-color: #0044BB;
    color: #DDDDDD;
}

.field-field-param table {
    width: 100%;
    font-size: 0.85em;
}

.field-field-param table caption {
    margin-top: 0.7em;
    text-align: left;
    font-variant: small-caps;
    font-size: 1.5em;
    font-weight: bold;
    color: #09F;
}

.field-field-param thead {
    display: none;
}

.field-field-param tbody td {
    padding: 0px 7px;
}

.field-field-param tbody .odd {
    background-color: #DDEEFF;
}

.field-field-param tbody .even {
    background-color: #FFFFFF;
}

.field-field-param .parameter {
    text-align: left;
    font-weight: bold;
}

.field-field-param .value {
    text-align: right;
}






.imagefield-field_fileicon {
    border: 1px solid #000;
}

.filefield-file {
    font-weight: bold;
}

td.views-field-changed {
    width: 68px;
}

td.views-field-field-dokument-fid-1 {
    width: 80px;
}

.views-table {
    width: 100%;
    margin-bottom: 30px;
}

.views-table caption {
    font-size: 1.3em;
    text-align: left;
    padding: 10px 0px 5px 7px;
    border: 1px solid #ddd;
    background-color: #36d;
    color: White;
}

.view-display-id-block_2 .view-table caption {
    background-color: #936;
}

.views-table tr {
    border-bottom: 1px solid #000;
}

.views-table td,
.views-table th {
    padding: 5px;
    vertical-align: top;
}

.views-table .odd {
    background-color: White;
}

.views-table .even {
    background-color: White;
}

.views-table tbody a {
    color: Black;
}

td.active {
    background-color: #fde;
}

.node-inner .img-left {
    float: left;
    margin-right: 20px;
    margin-top: 7px;
    margin-bottom: 7px;
}

.node-inner .img-right {
    float: right;
    margin-left: 20px;
    margin-top: 7px;
    margin-bottom: 7px;
}

.node-inner .img-left-border {
    float: left;
    margin-right: 20px;
    margin-bottom: 7px;
    border: 1px solid #000;
}

.node-inner .img-right-border {
    float: right;
    margin-left: 20px;
    margin-bottom: 7px;
    border: 1px solid #000;
}

.node-inner .dodatek {
    color: #999;
    padding-left: 40px;
    font-size: 17px;
    font-weight: bold;
    font-variant: small-caps;
    font-weight: normal;
}

.node-inner .img-border {
    margin-left: 20px;
    margin-bottom: 7px;
    border: 1px solid #000;
}

.node-inner .abstract-inner div {
    margin-left: 10px;
    padding: 0px 5px 0px 0px;
    font-weight: bold;
    font-size: 0.85em;
}

.node-inner .abstract li {
    padding: 0.1em;
}

.node-inner .abstract {
    height: 250px;
    display: table;
    #position: relative;
    overflow: hidden;
}

.node-inner .abstract-inner {
    #position: absolute;
    #top: 50%;
    display: table-cell;
    vertical-align: middle;
}

/* hack for IE */
.node-inner .abstract-inner div {
    #position: relative;
    #top: -50%;
}

select.form-select[multiple="multiple"] {
    height: 300px;
}

#edit-body_tbl {
    width: 108%;
}


/* === REDESIGN OVERRIDE (appended) === */
/* ============================================================
   FIEDLER — REDESIGN OVERRIDE
   Single-file CSS that re-skins the existing Drupal "corpo"
   theme without touching any HTML markup. Load AFTER all the
   stock theme CSS so it wins by source order.
   ============================================================ */

/* ---------- Design tokens ---------- */
:root {
    --f-navy: #0a2540;
    --f-navy-700: #102f54;
    --f-navy-600: #1e3a5f;
    --f-cyan: #0891b2;
    --f-cyan-600: #0e7490;
    --f-cyan-50: #ecfeff;
    --f-cyan-100: #cffafe;
    --f-green: #10b981;
    --f-green-600: #059669;
    --f-amber: #f59e0b;
    --f-bg: #ffffff;
    --f-bg-alt: #f8fafc;
    --f-bg-soft: #f1f5f9;
    --f-card: #ffffff;
    --f-card-hover: #f8fafc;
    --f-border: #e5e9f0;
    --f-border-soft: #eef2f7;
    --f-border-strong: #cbd5e1;
    --f-text: #0f172a;
    --f-text-soft: #334155;
    --f-text-muted: #64748b;
    --f-shadow-xs: 0 1px 0 rgba(15, 23, 42, .03);
    --f-shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);
    --f-shadow: 0 1px 3px rgba(15, 23, 42, .05), 0 6px 16px -4px rgba(15, 23, 42, .06);
    --f-shadow-lg: 0 12px 32px -8px rgba(15, 23, 42, .12), 0 4px 12px -2px rgba(15, 23, 42, .06);
    --f-shadow-header: 0 1px 0 rgba(15, 23, 42, .06), 0 12px 24px -16px rgba(10, 37, 64, .35);
    --f-radius: 10px;
    --f-radius-sm: 6px;
    --f-radius-lg: 16px;
    --f-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    --f-trans: 180ms cubic-bezier(.4, 0, .2, 1);
}

/* Inter web font (optional, loaded inline; remove if Drupal blocks @import) */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* ---------- Reset & base ---------- */
html,
body {
    background: #ffffff !important;
}

body {
    font-family: var(--f-font) !important;
    color: var(--f-text) !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.5;
    background: #ffffff !important;
    background-image: none !important;
}

body,
caption,
th,
td,
input,
textarea,
select,
option,
legend,
fieldset {
    font-family: var(--f-font) !important;
}

/* ---------- Page container — wider, responsive ---------- */
#page,
#closure-blocks {
    width: 100% !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: transparent !important;
}

#page-inner {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

#page {
    font-size: 15px !important;
    line-height: 1.55 !important;
}

/* ---------- Header ---------- */
#header {
    background: linear-gradient(135deg, var(--f-navy) 0%, var(--f-navy-700) 100%) !important;
    border-radius: 0 !important;
    padding: 0 28px !important;
    box-shadow: var(--f-shadow-header) !important;
    position: relative !important;
    z-index: 60 !important;
}

#header::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -1px !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent 0%, var(--f-cyan) 25%, var(--f-cyan) 75%, transparent 100%) !important;
    opacity: .35 !important;
    pointer-events: none !important;
}

#header-inner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    min-height: 84px !important;
    gap: 16px !important;
}

#logo-title {
    display: flex !important;
    align-items: center !important;
}

#logo {
    margin: 0 !important;
    padding: 14px 0 !important;
    float: none !important;
}

#logo a {
    display: inline-flex !important;
    align-items: center !important;
}

#logo-image {
    height: 38px !important;
    width: auto !important;
    filter: brightness(1.05) !important;
}

#site-name {
    display: none !important;
}

#header-blocks {
    float: none !important;
    clear: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
}

#header-blocks .block {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

#header-blocks .block h2.title {
    display: none !important;
}

#header-blocks ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
}

#header-blocks li {
    display: inline-flex !important;
    align-items: center !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
}

#header-blocks a {
    color: rgba(255, 255, 255, .78) !important;
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 8px 14px !important;
    margin: 0 2px !important;
    border-radius: 999px !important;
    transition: background var(--f-trans), color var(--f-trans) !important;
    letter-spacing: .01em !important;
}

#header-blocks a:hover,
#header-blocks a.active {
    color: #fff !important;
    background: rgba(255, 255, 255, .08) !important;
    text-decoration: none !important;
}

#header-blocks #block-locale-0 a.active {
    background: var(--f-cyan) !important;
}

/* ---------- Main / content shell ---------- */
#main {
    position: relative !important;
}

/* Reorder via CSS Grid: navbar lives AFTER content in the DOM, but must
   render at the top. Grid template areas place navbar full-width across
   the top, with sidebars + content in a row underneath. */
#main-inner {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    grid-template-rows: auto 1fr !important;
    grid-template-areas:
        "navbar       navbar  navbar"
        "sidebar-left content sidebar-right" !important;
    align-items: start !important;
}

#navbar {
    grid-area: navbar !important;
}

#sidebar-left {
    grid-area: sidebar-left !important;
}

#content {
    grid-area: content !important;
}

#sidebar-right {
    grid-area: sidebar-right !important;
}

#content,
.no-sidebars #content,
.sidebar-left #content,
.sidebar-right #content,
.two-sidebars #content {
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    min-width: 0 !important;
}

#content-inner {
    margin: 0 !important;
    padding: 0 !important;
}

/* ---------- Primary navigation (nice menu) ---------- */
#navbar {
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    width: 100% !important;
    background: rgba(255, 255, 255, .94) !important;
    backdrop-filter: saturate(160%) blur(8px) !important;
    -webkit-backdrop-filter: saturate(160%) blur(8px) !important;
    border-bottom: 1px solid var(--f-border) !important;
    box-shadow: 0 1px 0 var(--f-border-soft), 0 8px 24px -16px rgba(15, 23, 42, .14) !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 50 !important;
}

.with-navbar #content,
.with-navbar #sidebar-left,
.with-navbar #sidebar-right {
    margin-top: 0 !important;
}

#block-nice_menus-1 .block-inner .content {
    background: transparent !important;
    height: auto !important;
    padding: 0 28px !important;
}

#nice-menu-1 {
    margin: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: 4px !important;
}

ul.nice-menu li,
#nice-menu-1 li {
    background: transparent !important;
    border: 0 !important;
    opacity: 1 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    float: none !important;
    display: inline-flex !important;
    align-items: stretch !important;
}

ul.nice-menu a,
#nice-menu-1 a {
    color: var(--f-text) !important;
    padding: 16px 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    letter-spacing: .005em !important;
    border-radius: 0 !important;
    position: relative !important;
    transition: color var(--f-trans) !important;
    background: transparent !important;
    text-decoration: none !important;
}

ul.nice-menu a::after,
#nice-menu-1 a::after {
    content: "" !important;
    position: absolute !important;
    left: 18px !important;
    right: 18px !important;
    bottom: 8px !important;
    height: 2px !important;
    background: var(--f-cyan) !important;
    transform: scaleX(0) !important;
    transform-origin: left center !important;
    transition: transform var(--f-trans) !important;
    border-radius: 2px !important;
}

ul.nice-menu a:hover,
#nice-menu-1 a:hover,
ul.nice-menu a.active,
#nice-menu-1 a.active {
    background: transparent !important;
    color: var(--f-cyan-600) !important;
    text-decoration: none !important;
}

ul.nice-menu a:hover::after,
#nice-menu-1 a:hover::after,
ul.nice-menu a.active::after,
#nice-menu-1 a.active::after {
    transform: scaleX(1) !important;
}

/* Submenus */
ul.nice-menu ul {
    background: var(--f-card) !important;
    border: 1px solid var(--f-border) !important;
    border-radius: var(--f-radius) !important;
    box-shadow: var(--f-shadow-lg) !important;
    padding: 6px !important;
    top: 52px !important;
    min-width: 240px !important;
}

ul.nice-menu ul li {
    border: 0 !important;
    width: 100% !important;
    display: block !important;
    float: none !important;
    clear: both !important;
}

ul.nice-menu ul li a {
    padding: 9px 12px !important;
    border-radius: var(--f-radius-sm) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

ul.nice-menu ul li a:hover {
    background: var(--f-cyan-50) !important;
    color: var(--f-cyan-600) !important;
}

ul.nice-menu ul li a::after {
    display: none !important;
}

/* ---------- Hero slideshow (ddblock) ---------- */
#content-top {
    margin: 24px 28px 28px 28px !important;
}

.block-ddblock {
    margin: 0 !important;
}

.block-ddblock h2.title {
    display: none !important;
}

div.ddblock-cycle-upright10 div.container,
div.ddblock-cycle-upright10 div.container-inner {
    width: 100% !important;
    max-width: none !important;
    background: transparent !important;
}

div.ddblock-cycle-upright10 div.container-inner {
    border-radius: var(--f-radius-lg) !important;
    overflow: hidden !important;
    box-shadow: var(--f-shadow-lg) !important;
    height: 420px !important;
    border: 1px solid var(--f-border-soft) !important;
    position: relative !important;
}

div.ddblock-cycle-upright10 div.slider {
    width: 100% !important;
    float: none !important;
}

div.ddblock-cycle-upright10 div.slider-inner {
    height: 420px !important;
    border-bottom: 0 !important;
    background: linear-gradient(180deg, rgba(10, 37, 64, 0) 40%, rgba(10, 37, 64, .65) 100%) !important;
    border-radius: var(--f-radius-lg) !important;
}

div.ddblock-cycle-upright10 div.slide,
div.ddblock-cycle-upright10 div.slide-inner {
    width: 100% !important;
    height: 100% !important;
}

/* jQuery cycle plugin terminates early on single-slide blocks ("too few slides: 1")
   without unhiding the only slide. Force it visible. */
div.ddblock-cycle-upright10 div.slider-inner > div.slide:only-child {
    display: block !important;
}

div.ddblock-cycle-upright10 div.slide-inner img {
    width: 100% !important;
    height: 420px !important;
    object-fit: cover !important;
}

div.ddblock-cycle-upright10 div.slide-text {
    background: linear-gradient(180deg, transparent 0%, rgba(10, 37, 64, .85) 100%) !important;
    width: 100% !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: auto !important;
    padding: 60px 40px 28px 40px !important;
    box-sizing: border-box !important;
}

div.ddblock-cycle-upright10 div.slide-text-inner {
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas:
        "title  cta"
        "body   cta" !important;
    align-items: end !important;
    column-gap: 32px !important;
    row-gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

div.ddblock-cycle-upright10 div.slide-title,
div.ddblock-cycle-upright10 div.slide-title-horizontal {
    width: auto !important;
    float: none !important;
    grid-area: title !important;
}

div.ddblock-cycle-upright10 div.slide-body,
div.ddblock-cycle-upright10 div.slide-body-horizontal {
    grid-area: body !important;
}

div.ddblock-cycle-upright10 div.slide-read-more,
div.ddblock-cycle-upright10 div.slide-read-more-horizontal {
    grid-area: cta !important;
    align-self: end !important;
    justify-self: end !important;
}

div.ddblock-cycle-upright10 div.slide-title h2 {
    margin: 0 !important;
    font-size: 32px !important;
    line-height: 1.15 !important;
    color: #fff !important;
    font-weight: 700 !important;
    letter-spacing: -.01em !important;
}

div.ddblock-cycle-upright10 div.slide-title-inner {
    font-weight: 700 !important;
}

div.ddblock-cycle-upright10 div.slide-body-horizontal {
    width: auto !important;
    float: none !important;
}

div.ddblock-cycle-upright10 div.slide-body-inner {
    color: rgba(255, 255, 255, .92) !important;
}

div.ddblock-cycle-upright10 div.slide-body-inner p {
    margin: 0 !important;
    padding: 0 !important;
    color: rgba(255, 255, 255, .92) !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    max-width: 60ch !important;
}

div.ddblock-cycle-upright10 div.slide-read-more {
    width: auto !important;
}

div.ddblock-cycle-upright10 div.slide-read-more a,
div.ddblock-cycle-upright10 div.slide-read-more a:link,
div.ddblock-cycle-upright10 div.slide-read-more a:visited,
div.ddblock-cycle-upright10 div.slide-read-more a:active,
div.ddblock-cycle-upright10 div.slide-read-more-horizontal a,
div.ddblock-cycle-upright10 div.slide-read-more-vertical a {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    background: var(--f-green) !important;
    background-color: var(--f-green) !important;
    color: #ffffff !important;
    font-family: var(--f-font) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 12px 22px !important;
    border-radius: 999px !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-color: transparent !important;
    text-decoration-thickness: 0 !important;
    border: 0 !important;
    box-shadow: 0 6px 18px -6px rgba(16, 185, 129, .55) !important;
    transition: transform var(--f-trans), background var(--f-trans), box-shadow var(--f-trans) !important;
    white-space: nowrap !important;
    opacity: 1 !important;
}

div.ddblock-cycle-upright10 div.slide-read-more a::after,
div.ddblock-cycle-upright10 div.slide-read-more-horizontal a::after,
div.ddblock-cycle-upright10 div.slide-read-more-vertical a::after {
    content: " →" !important;
    display: inline !important;
    margin-left: 4px !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

div.ddblock-cycle-upright10 div.slide-read-more a:hover,
div.ddblock-cycle-upright10 div.slide-read-more a:focus,
div.ddblock-cycle-upright10 div.slide-read-more-horizontal a:hover,
div.ddblock-cycle-upright10 div.slide-read-more-horizontal a:focus,
div.ddblock-cycle-upright10 div.slide-read-more-vertical a:hover,
div.ddblock-cycle-upright10 div.slide-read-more-vertical a:focus {
    background: var(--f-green-600) !important;
    background-color: var(--f-green-600) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-color: transparent !important;
    text-decoration-thickness: 0 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 10px 22px -6px rgba(16, 185, 129, .7) !important;
}

div.ddblock-cycle-upright10 div.slide-read-more-horizontal a,
div.ddblock-cycle-upright10 div.slide-read-more-vertical a {
    right: auto !important;
}

/* Hero pager — replace numbered chips with dots */
div.ddblock-cycle-upright10 div.number-pager-pre-top,
div.ddblock-cycle-upright10 div.number-pager-pre-bottom {
    display: none !important;
}

div.ddblock-cycle-upright10 div.number-pager {
    background: transparent !important;
    position: absolute !important;
    bottom: 16px !important;
    right: 24px !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    z-index: 5 !important;
    display: flex !important;
    gap: 8px !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .18) !important;
    backdrop-filter: blur(6px) !important;
}

div.ddblock-cycle-upright10 div.number-pager a {
    background: rgba(255, 255, 255, .55) !important;
    border: 0 !important;
    width: 8px !important;
    height: 8px !important;
    margin: 0 !important;
    font-size: 0 !important;
    color: transparent !important;
    border-radius: 999px !important;
    transition: width var(--f-trans), background var(--f-trans) !important;
    line-height: 0 !important;
    display: inline-block !important;
    float: none !important;
}

div.ddblock-cycle-upright10 div.number-pager a.activeSlide {
    background: #fff !important;
    width: 22px !important;
    color: transparent !important;
}

div.ddblock-cycle-upright10 div.number-pager a:focus {
    outline: 2px solid rgba(255, 255, 255, .6) !important;
    outline-offset: 2px !important;
}

/* ---------- Front-page 3-column section ---------- */
.node-type-news-item #main-inner {
    padding-bottom: 40px !important;
}

/* #content-area itself is just the outer wrapper — keep it block. */
body.front #content-area,
body.node-type-news-item #content-area,
.front #content-area,
.node-type-news-item #content-area,
.no-sidebars #content-area,
.one-sidebar #content-area {
    width: auto !important;
    max-width: none !important;
    float: none !important;
    margin: 0 28px 32px 28px !important;
    padding: 0 !important;
    display: block !important;
}

/* The actual flex container is the .content div nested inside the
   front-page node (DOM is #content-area > .node > .node-inner > .content > [3 sections]). */
.front #content-area .node-inner>.content,
.front .node-type-news-item .node-inner>.content,
.content:has(> .front-vypis-reseni) {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 24px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Make sure the node and its inner wrapper take full width and don't fight us. */
.front #content-area>.node,
.front #content-area>.node>.node-inner {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    display: block !important;
}

/* Use flex-basis percentages so it works even if a stray `width` from
   legacy CSS slips through. flex: 0 1 <basis> + min-width: 0 keeps it
   honest. */
body.node-type-news-item #content-area .front-vypis-reseni,
body.node-type-news-item #content-area .front-vypis-aktualit,
body.node-type-news-item #content-area .front-vypis-hladin,
.node-type-news-item #content-area .front-vypis-reseni,
.node-type-news-item #content-area .front-vypis-aktualit,
.node-type-news-item #content-area .front-vypis-hladin {
    float: none !important;
    margin: 0 !important;
    background: var(--f-card) !important;
    border: 1px solid var(--f-border) !important;
    border-radius: var(--f-radius-lg) !important;
    padding: 24px 26px !important;
    box-shadow: var(--f-shadow-xs) !important;
    transition: box-shadow var(--f-trans), transform var(--f-trans), border-color var(--f-trans) !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    position: relative !important;
}

body.node-type-news-item #content-area .front-vypis-reseni::before,
body.node-type-news-item #content-area .front-vypis-aktualit::before,
body.node-type-news-item #content-area .front-vypis-hladin::before,
.node-type-news-item #content-area .front-vypis-reseni::before,
.node-type-news-item #content-area .front-vypis-aktualit::before,
.node-type-news-item #content-area .front-vypis-hladin::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 0 auto 0 !important;
    height: 3px !important;
    border-radius: var(--f-radius-lg) var(--f-radius-lg) 0 0 !important;
    background: linear-gradient(90deg, var(--f-cyan) 0%, var(--f-green) 100%) !important;
    opacity: 0 !important;
    transition: opacity var(--f-trans) !important;
}

body.node-type-news-item #content-area .front-vypis-reseni,
.node-type-news-item #content-area .front-vypis-reseni {
    flex: 1 1 380px !important;
    width: auto !important;
}

body.node-type-news-item #content-area .front-vypis-aktualit,
.node-type-news-item #content-area .front-vypis-aktualit {
    flex: 1 1 300px !important;
    width: auto !important;
}

body.node-type-news-item #content-area .front-vypis-hladin,
.node-type-news-item #content-area .front-vypis-hladin {
    flex: 1 1 260px !important;
    width: auto !important;
    text-align: left !important;
}

.node-type-news-item #content-area .front-vypis-reseni:hover,
.node-type-news-item #content-area .front-vypis-aktualit:hover,
.node-type-news-item #content-area .front-vypis-hladin:hover {
    box-shadow: var(--f-shadow) !important;
    transform: translateY(-2px) !important;
    border-color: #d8dee9 !important;
}

.node-type-news-item #content-area .front-vypis-reseni:hover::before,
.node-type-news-item #content-area .front-vypis-aktualit:hover::before,
.node-type-news-item #content-area .front-vypis-hladin:hover::before {
    opacity: 1 !important;
}

.node-type-news-item #content-area h2 {
    font-size: 13px !important;
    text-transform: uppercase !important;
    letter-spacing: .08em !important;
    color: var(--f-text-muted) !important;
    border: 0 !important;
    margin: 0 0 14px 0 !important;
    padding: 0 0 10px 0 !important;
    font-weight: 700 !important;
    position: relative !important;
}

.node-type-news-item #content-area h2::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 32px !important;
    height: 3px !important;
    border-radius: 2px !important;
    background: var(--f-cyan) !important;
}

.node-type-news-item #content-area .front-vypis-aktualit h2 {
    margin-right: 0 !important;
}

/* Solutions list */
.node-type-news-item #content-area .front-vypis-reseni ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

.node-type-news-item #content-area .front-vypis-reseni .item-list {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

.node-type-news-item #content-area .front-vypis-reseni .item-list li {
    list-style: none !important;
    list-style-image: none !important;
    display: block !important;
    padding: 0 !important;
    border: 0 !important;
}

#content-area .node-type-news-item .front-vypis-reseni a,
.node-type-news-item #content-area .front-vypis-reseni a {
    color: var(--f-text) !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    padding: 10px 14px !important;
    display: flex !important;
    align-items: center !important;
    border-radius: var(--f-radius-sm) !important;
    text-decoration: none !important;
    transition: background var(--f-trans), color var(--f-trans), padding var(--f-trans) !important;
    position: relative !important;
}

#content-area .node-type-news-item .front-vypis-reseni a::before,
.node-type-news-item #content-area .front-vypis-reseni a::before {
    content: "" !important;
    width: 6px !important;
    height: 6px !important;
    border-radius: 50% !important;
    background: var(--f-cyan) !important;
    margin-right: 12px !important;
    flex-shrink: 0 !important;
    transition: transform var(--f-trans) !important;
}

#content-area .node-type-news-item .front-vypis-reseni a:hover,
.node-type-news-item #content-area .front-vypis-reseni a:hover {
    background: var(--f-cyan-50) !important;
    color: var(--f-cyan-600) !important;
    text-decoration: none !important;
    padding-left: 18px !important;
}

#content-area .node-type-news-item .front-vypis-reseni a:hover::before {
    transform: scale(1.3) !important;
}

/* Highlights (news block) */
.node-type-news-item #content-area .front-vypis-aktualit ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.node-type-news-item #content-area .front-vypis-aktualit li .views-field-title {
    margin: 8px 0 0 0 !important;
}

.node-type-news-item #content-area .front-vypis-aktualit a {
    color: var(--f-text) !important;
    text-decoration: none !important;
    font-weight: 500 !important;
}

.node-type-news-item #content-area .front-vypis-aktualit a:hover {
    color: var(--f-cyan-600) !important;
}

.node-type-news-item #content-area .front-vypis-aktualit img {
    border-radius: var(--f-radius-sm) !important;
    max-width: 100% !important;
    height: auto !important;
    margin-bottom: 8px !important;
    box-shadow: var(--f-shadow-sm) !important;
}

.node-type-news-item #content-area .front-vypis-aktualit .views-field-created,
.node-type-news-item #content-area .front-vypis-aktualit .views-field-changed {
    font-size: 12px !important;
    color: var(--f-text-muted) !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    margin-top: 8px !important;
}

/* Water level chart */
.node-type-news-item #content-area .front-vypis-hladin {
    text-align: left !important;
}

.node-type-news-item #content-area .front-vypis-hladin .views-field-title {
    padding: 0 !important;
    font-size: 13px !important;
    color: var(--f-text-soft) !important;
    font-weight: 600 !important;
    margin-bottom: 10px !important;
}

.node-type-news-item #content-area .front-vypis-hladin .views-field-body {
    text-align: left !important;
    padding: 0 !important;
}

.node-type-news-item #content-area .front-vypis-hladin img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: var(--f-radius-sm) !important;
    border: 1px solid var(--f-border) !important;
    background: #fafafa !important;
    padding: 4px !important;
}

/* Hide the tiny ".front-vypis-hladin h2" duplicates inside slideshow if any */

/* ---------- Sidebar styling (where applicable) ---------- */
/* Grid lays out the row; sidebars just need a width and clean margins. */
#sidebar-left,
#sidebar-right {
    width: 240px !important;
    margin: 0 !important;
    padding: 0 20px !important;
    float: none !important;
    box-sizing: border-box !important;
}

#sidebar-left-inner,
#sidebar-right-inner {
    margin: 0 !important;
    padding: 0 !important;
}

/* Reset legacy width/margin tricks on #content variants — grid handles
   placement now. */
.sidebar-left #content,
.sidebar-right #content,
.two-sidebars #content {
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    min-width: 0 !important;
}

#sidebar-left .block,
#sidebar-right .block {
    background: var(--f-card) !important;
    border: 1px solid var(--f-border) !important;
    border-radius: var(--f-radius) !important;
    padding: 16px 18px !important;
    margin: 16px 0 !important;
    box-shadow: var(--f-shadow-xs) !important;
    font-size: 14px !important;
    transition: border-color var(--f-trans), box-shadow var(--f-trans) !important;
}

#sidebar-left .block:hover,
#sidebar-right .block:hover {
    border-color: #d8dee9 !important;
    box-shadow: var(--f-shadow-sm) !important;
}

#sidebar-left .block h2,
#sidebar-right .block h2 {
    position: relative !important;
}

#sidebar-left .block h2::before,
#sidebar-right .block h2::before {
    content: "" !important;
    display: inline-block !important;
    width: 3px !important;
    height: 12px !important;
    background: var(--f-cyan) !important;
    margin-right: 8px !important;
    border-radius: 2px !important;
    vertical-align: -1px !important;
}

#sidebar-left .block h2,
#sidebar-right .block h2 {
    font-size: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: .08em !important;
    color: var(--f-text-muted) !important;
    font-family: var(--f-font) !important;
    font-variant: normal !important;
    font-weight: 700 !important;
    border: 0 !important;
    padding: 0 0 8px 0 !important;
    margin: 0 0 8px 0 !important;
}

#sidebar-left a,
#sidebar-right a {
    color: var(--f-text-soft) !important;
    text-decoration: none !important;
    font-size: 14px !important;
    transition: color var(--f-trans) !important;
}

#sidebar-left a:hover,
#sidebar-right a:hover {
    color: var(--f-cyan-600) !important;
    text-decoration: none !important;
}

#sidebar-left li {
    border-bottom: 1px solid var(--f-border) !important;
    padding: 8px 4px !important;
}

#sidebar-left li.last {
    border-bottom: 0 !important;
}

#sidebar-left li.active a {
    color: var(--f-cyan-600) !important;
    font-weight: 600 !important;
}

#sidebar-right .view {
    border: 0 !important;
    padding: 0 !important;
}

#sidebar-right .field-content div {
    border-bottom: 1px solid var(--f-border) !important;
    padding: 8px 0 !important;
}

/* Reset legacy nodereference borders — the old theme draws thick black
   ::before/::after lines around every reference field. Use a subtle
   redesign-friendly separator instead. */
.field-type-nodereference {
    margin-top: 28px !important;
    padding-top: 20px !important;
    border-top: 1px solid var(--f-border) !important;
    clear: both !important;
}

.field-type-nodereference::before,
.field-type-nodereference::after {
    display: none !important;
    content: none !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.field-type-nodereference .field-label {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: var(--f-text) !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
}

.field-type-nodereference .field-items {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)) !important;
    gap: 16px 14px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Document/file tiles in MAIN content (legacy float+fixed-height removed).
   These are .field-field-refsoubor and .field-field-refsoubor-doc — both
   inside the product node body. */
.field-field-refsoubor .field-item,
.field-field-refsoubor-doc .field-item,
.field-field-refsoubor .field-items>div,
.field-field-refsoubor-doc .field-items>div {
    float: none !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 12px 10px !important;
    background: var(--f-bg-alt) !important;
    border: 1px solid var(--f-border-soft) !important;
    border-radius: var(--f-radius-sm) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    transition: box-shadow var(--f-trans), border-color var(--f-trans), transform var(--f-trans), background var(--f-trans) !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.field-field-refsoubor .field-item:hover,
.field-field-refsoubor-doc .field-item:hover {
    background: #ffffff !important;
}

.field-field-refsoubor .field-item:hover,
.field-field-refsoubor-doc .field-item:hover {
    border-color: var(--f-cyan) !important;
    box-shadow: var(--f-shadow-sm) !important;
    transform: translateY(-1px) !important;
}

/* Inside-tile: thumbnail + filetype label + title */
.field-field-refsoubor .field-field-fileicon,
.field-field-refsoubor-doc .field-field-fileicon {
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
    border: 0 !important;
    text-align: center !important;
    width: 100% !important;
}

.field-field-refsoubor .field-field-fileicon img,
.field-field-refsoubor-doc .field-field-fileicon img {
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
    border: 0 !important;
}

.field-field-refsoubor .field-field-filetype,
.field-field-refsoubor-doc .field-field-filetype {
    font-size: 10px !important;
    text-transform: uppercase !important;
    letter-spacing: .08em !important;
    color: var(--f-text-muted) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    margin: 0 0 4px 0 !important;
    padding: 0 !important;
    border: 0 !important;
    text-align: center !important;
}

.field-field-refsoubor .field-doc-short-title,
.field-field-refsoubor-doc .field-doc-short-title {
    font-size: 12px !important;
    line-height: 1.3 !important;
    color: var(--f-text-soft) !important;
    text-align: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    word-break: break-word !important;
}

.field-field-refsoubor .field-doc-short-title a,
.field-field-refsoubor-doc .field-doc-short-title a {
    color: var(--f-text-soft) !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
}

.field-field-refsoubor .field-doc-short-title a:hover,
.field-field-refsoubor-doc .field-doc-short-title a:hover {
    color: var(--f-cyan-600) !important;
}

/* Související produkty / řešení — text list, not tiles. Style as
   plain links with the redesign palette. */
.field-field-souvisejici-produkty .field-items,
.field-field-souvisejici-reseni .field-items {
    display: block !important;
    grid-template-columns: none !important;
}

.field-field-souvisejici-produkty .field-item,
.field-field-souvisejici-reseni .field-item {
    display: block !important;
    width: auto !important;
    height: auto !important;
    float: none !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 6px 0 !important;
    margin: 0 !important;
    text-align: left !important;
    transition: none !important;
    transform: none !important;
}

.field-field-souvisejici-produkty .field-item:hover,
.field-field-souvisejici-reseni .field-item:hover {
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}

.field-field-souvisejici-produkty a,
.field-field-souvisejici-reseni a {
    color: var(--f-cyan-600) !important;
    font-weight: 500 !important;
}

/* Document tile grid in right sidebar — same approach as main content
   (legacy float+fixed-height removed). */
#sidebar-right .view-soubory-ke-stazeni .view-content,
#sidebar-right .view-dokumentace-ke-stazeni .view-content,
#sidebar-right .view-soubory-ke-stazeni .item-list,
#sidebar-right .view-dokumentace-ke-stazeni .item-list,
#sidebar-right .view-soubory-ke-stazeni .item-list ul,
#sidebar-right .view-dokumentace-ke-stazeni .item-list ul {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

#sidebar-right .view-soubory-ke-stazeni .item-list ul li,
#sidebar-right .view-dokumentace-ke-stazeni .item-list ul li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

#sidebar-right .view-soubory-ke-stazeni .field-item,
#sidebar-right .view-dokumentace-ke-stazeni .field-item,
#sidebar-right .view-soubory-ke-stazeni .field-content>.node-type-soubor,
#sidebar-right .view-dokumentace-ke-stazeni .field-content>.node-type-soubor {
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 8px 6px !important;
    float: none !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    background: var(--f-bg-alt) !important;
    border: 1px solid var(--f-border-soft) !important;
    border-radius: var(--f-radius-sm) !important;
    transition: box-shadow var(--f-trans), border-color var(--f-trans), transform var(--f-trans), background var(--f-trans) !important;
    text-align: center !important;
}

#sidebar-right .view-soubory-ke-stazeni .field-item:hover,
#sidebar-right .view-dokumentace-ke-stazeni .field-item:hover,
#sidebar-right .view-soubory-ke-stazeni .field-content>.node-type-soubor:hover,
#sidebar-right .view-dokumentace-ke-stazeni .field-content>.node-type-soubor:hover {
    background: #ffffff !important;
}

#sidebar-right .view-soubory-ke-stazeni .field-item:hover,
#sidebar-right .view-dokumentace-ke-stazeni .field-item:hover,
#sidebar-right .view-soubory-ke-stazeni .field-content>.node-type-soubor:hover,
#sidebar-right .view-dokumentace-ke-stazeni .field-content>.node-type-soubor:hover {
    border-color: var(--f-cyan) !important;
    box-shadow: var(--f-shadow-sm) !important;
    transform: translateY(-1px) !important;
}

#sidebar-right .view-soubory-ke-stazeni .field-content,
#sidebar-right .view-dokumentace-ke-stazeni .field-content {
    display: block !important;
    width: 100% !important;
}

#sidebar-right .view-soubory-ke-stazeni .field-field-fileicon,
#sidebar-right .view-dokumentace-ke-stazeni .field-field-fileicon {
    text-align: center !important;
    margin: 0 0 6px 0 !important;
    border: 0 !important;
    padding: 0 !important;
}

#sidebar-right .view-soubory-ke-stazeni .field-field-fileicon img,
#sidebar-right .view-dokumentace-ke-stazeni .field-field-fileicon img {
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
    border: 0 !important;
}

#sidebar-right .view-soubory-ke-stazeni .field-field-filetype,
#sidebar-right .view-dokumentace-ke-stazeni .field-field-filetype {
    text-align: center !important;
    color: var(--f-text-muted) !important;
    font-size: 10px !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    margin: 0 0 2px 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

#sidebar-right .view-soubory-ke-stazeni .field-doc-short-title,
#sidebar-right .view-dokumentace-ke-stazeni .field-doc-short-title {
    text-align: center !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    word-break: break-word !important;
}

#sidebar-right .view-soubory-ke-stazeni .field-doc-short-title a,
#sidebar-right .view-dokumentace-ke-stazeni .field-doc-short-title a {
    line-height: 1.25 !important;
    color: var(--f-text-soft) !important;
    font-weight: 500 !important;
}

/* Suppress the .field-content div bottom border for these tiles */
#sidebar-right .view-soubory-ke-stazeni .field-content div,
#sidebar-right .view-dokumentace-ke-stazeni .field-content div {
    border-bottom: 0 !important;
    padding: 0 !important;
}

/* ---------- Headings & body type ---------- */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--f-font) !important;
    color: var(--f-text) !important;
    font-variant: normal !important;
    letter-spacing: -.01em !important;
}

h1 {
    font-size: 32px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
}

h2 {
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}

h3 {
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
}

h1.title {
    font-family: var(--f-font) !important;
    font-weight: 700 !important;
    font-variant: normal !important;
    border: 0 !important;
    padding: 0 0 14px 0 !important;
    margin: 32px 0 24px 0 !important;
    position: relative !important;
}

h1.title::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 56px !important;
    height: 3px !important;
    background: var(--f-cyan) !important;
    border-radius: 2px !important;
}

.no-sidebars h1.title,
.one-sidebar h1.title {
    margin-left: 28px !important;
}

p {
    color: var(--f-text-soft) !important;
}

/* ---------- Links default ---------- */
a {
    color: var(--f-cyan-600) !important;
    text-decoration: none !important;
    transition: color var(--f-trans) !important;
}

a:hover {
    color: var(--f-cyan) !important;
    text-decoration: underline !important;
    text-decoration-thickness: 1.5px !important;
    text-underline-offset: 2px !important;
}

/* ---------- Breadcrumb ---------- */
.breadcrumb {
    margin: 18px 28px 4px 28px !important;
    font-size: 12px !important;
    color: var(--f-text-muted) !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    padding: 0 !important;
}

.breadcrumb a {
    font-size: 12px !important;
    text-decoration: none !important;
    color: var(--f-text-muted) !important;
}

.breadcrumb a:hover {
    color: var(--f-cyan-600) !important;
    text-decoration: none !important;
}

/* ---------- Generic content area ---------- */
.no-sidebars #content-area,
.one-sidebar #content-area {
    margin: 16px 28px 32px 28px !important;
}

/* ---------- Buttons / forms ---------- */
.button-download,
input.form-submit,
button.form-submit {
    background: var(--f-navy) !important;
    border: 0 !important;
    color: #fff !important;
    font-family: var(--f-font) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 10px 20px !important;
    border-radius: 999px !important;
    cursor: pointer !important;
    transition: background var(--f-trans), transform var(--f-trans), box-shadow var(--f-trans) !important;
    box-shadow: 0 4px 14px -6px rgba(10, 37, 64, .35) !important;
    letter-spacing: .005em !important;
}

.button-download:hover,
input.form-submit:hover,
button.form-submit:hover {
    background: var(--f-cyan-600) !important;
    color: #fff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 8px 20px -6px rgba(8, 145, 178, .45) !important;
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
textarea,
select {
    font-family: var(--f-font) !important;
    font-size: 14px !important;
    padding: 9px 12px !important;
    border: 1px solid var(--f-border) !important;
    border-radius: var(--f-radius-sm) !important;
    background: var(--f-bg-alt) !important;
    color: var(--f-text) !important;
    transition: border-color var(--f-trans), box-shadow var(--f-trans), background var(--f-trans) !important;
}

input[type="text"]:hover,
input[type="email"]:hover,
input[type="password"]:hover,
input[type="search"]:hover,
textarea:hover,
select:hover {
    border-color: var(--f-border-strong) !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus,
select:focus {
    outline: 0 !important;
    border-color: var(--f-cyan) !important;
    box-shadow: 0 0 0 3px rgba(8, 145, 178, .15) !important;
    background: #ffffff !important;
}

/* User login micro-form in header */
#block-user-0 {
    color: rgba(255, 255, 255, .7) !important;
}

#block-user-0 input {
    background: rgba(255, 255, 255, .08) !important;
    border: 1px solid rgba(255, 255, 255, .15) !important;
    color: #fff !important;
}

#block-user-0 input::placeholder {
    color: rgba(255, 255, 255, .5) !important;
}

#block-user-0 a {
    color: rgba(255, 255, 255, .75) !important;
}

/* ---------- Tables ---------- */
.views-table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    margin-bottom: 24px !important;
    border-radius: var(--f-radius) !important;
    overflow: hidden !important;
    box-shadow: var(--f-shadow-sm) !important;
    border: 1px solid var(--f-border) !important;
}

.views-table caption {
    background: var(--f-navy) !important;
    color: #fff !important;
    border: 0 !important;
    padding: 12px 16px !important;
    text-align: left !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: .01em !important;
}

.view-display-id-block_2 .view-table caption {
    background: var(--f-cyan-600) !important;
}

.views-table th {
    background: var(--f-bg-soft) !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    color: var(--f-text-muted) !important;
    border-bottom: 1px solid var(--f-border) !important;
    padding: 11px 14px !important;
    font-weight: 700 !important;
    text-align: left !important;
}

.views-table td {
    padding: 12px 14px !important;
    border-bottom: 1px solid var(--f-border-soft) !important;
    font-size: 14px !important;
    color: var(--f-text-soft) !important;
}

.views-table tr:last-child td {
    border-bottom: 0 !important;
}

.views-table tr {
    border-bottom: 0 !important;
}

.views-table .odd {
    background: #fff !important;
}

.views-table .even {
    background: var(--f-bg-alt) !important;
}

.views-table tbody tr:hover td {
    background: var(--f-cyan-50) !important;
}

.views-table tbody a {
    color: var(--f-cyan-600) !important;
    font-weight: 500 !important;
}

.views-table tbody a:hover {
    color: var(--f-cyan) !important;
}

td.active {
    background: rgba(8, 145, 178, .08) !important;
}

/* Param tables */
.field-field-param table caption {
    font-variant: normal !important;
    font-family: var(--f-font) !important;
    font-size: 18px !important;
    color: var(--f-navy) !important;
    font-weight: 700 !important;
    letter-spacing: -.005em !important;
}

.field-field-param tbody .odd {
    background: #f8fafc !important;
}

.field-field-param tbody .even {
    background: #ffffff !important;
}

.field-field-param tbody td {
    padding: 8px 12px !important;
    border-bottom: 1px solid var(--f-border) !important;
    font-size: 13px !important;
}

/* ---------- Product listing ---------- */
.view-vypis-produktu .views-row-even,
.view-vypis-produktu .views-row-odd {
    background: var(--f-card) !important;
    border: 1px solid var(--f-border) !important;
    border-bottom: 1px solid var(--f-border) !important;
    border-radius: var(--f-radius) !important;
    margin: 14px 0 !important;
    padding: 16px !important;
    box-shadow: var(--f-shadow-xs) !important;
    height: auto !important;
    min-height: 120px !important;
    transition: box-shadow var(--f-trans), transform var(--f-trans), border-color var(--f-trans) !important;
}

.view-vypis-produktu .views-row-even:hover,
.view-vypis-produktu .views-row-odd:hover {
    box-shadow: var(--f-shadow) !important;
    border-color: var(--f-cyan) !important;
    transform: translateY(-1px) !important;
}

.view-vypis-produktu .views-field-field-teaser-img-fid {
    padding: 0 16px 0 0 !important;
}

.view-vypis-produktu .views-field-title {
    margin-left: 130px !important;
}

.view-vypis-produktu .views-field-title a {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--f-navy) !important;
}

.view-vypis-produktu .views-field-title a:hover {
    color: var(--f-cyan-600) !important;
}

.view-vypis-produktu .views-field-field-teaser-value {
    margin-left: 130px !important;
    color: var(--f-text-soft) !important;
    font-size: 13.5px !important;
}

/* ---------- Footer ---------- */
#footer {
    background: var(--f-navy) !important;
    color: rgba(255, 255, 255, .65) !important;
    margin: 40px 0 0 0 !important;
    padding: 36px 0 !important;
    border-top: 0 !important;
    border-radius: 0 !important;
}

#footer-inner {
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 0 28px !important;
}

#footer-message {
    padding: 0 !important;
    font-size: 13px !important;
    color: rgba(255, 255, 255, .55) !important;
    text-align: center !important;
}

#footer-message a {
    color: rgba(255, 255, 255, .85) !important;
    text-decoration: none !important;
}

#footer-message a:hover {
    color: #fff !important;
    text-decoration: underline !important;
}

/* ---------- Misc / Drupal niceties ---------- */
.front h1 {
    display: none !important;
}

.front #content-area {
    margin: 0 !important;
}

/* Hide stale "Languages" ul "active" duplicate per existing CSS */
#block-locale-0 .active {
    display: inline-flex !important;
}

/* Marker badge (new/updated) */
.marker {
    color: var(--f-amber) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    background: rgba(245, 158, 11, .12) !important;
    padding: 2px 6px !important;
    border-radius: 999px !important;
    margin-left: 4px !important;
}

/* Pager (page numbers) */
.pager {
    margin: 24px 0 !important;
}

.pager a,
.pager strong.pager-current {
    padding: 8px 12px !important;
    border-radius: var(--f-radius-sm) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
}

.pager a {
    background: var(--f-card) !important;
    border: 1px solid var(--f-border) !important;
    color: var(--f-text-soft) !important;
    margin: 0 2px !important;
    display: inline-block !important;
}

.pager a:hover {
    background: var(--f-cyan-50) !important;
    border-color: var(--f-cyan) !important;
    color: var(--f-cyan-600) !important;
    text-decoration: none !important;
}

.pager strong.pager-current {
    background: var(--f-navy) !important;
    color: #fff !important;
    border: 1px solid var(--f-navy) !important;
    margin: 0 2px !important;
}

/* Page-shadow / footer-shadow images — flatten */
body {
    background-image: none !important;
    background-color: #ffffff !important;
}

#footer {
    background-image: none !important;
}

/* Subtle section divider for content under hero */
.front #content-area,
.node-type-news-item #content-area {
    position: relative !important;
}

/* Content prose accent — links inside body, but NOT hero / buttons / chrome */
.no-sidebars #content-inner p>a,
.one-sidebar #content-inner p>a,
.two-sidebars #content-inner p>a {
    text-decoration: underline !important;
    text-decoration-color: rgba(8, 145, 178, .35) !important;
    text-decoration-thickness: 1.5px !important;
    text-underline-offset: 2px !important;
}

.no-sidebars #content-inner p>a:hover,
.one-sidebar #content-inner p>a:hover,
.two-sidebars #content-inner p>a:hover {
    text-decoration-color: var(--f-cyan) !important;
}

/* Hard guards — anything inside the hero block must never inherit prose link styling */
.block-ddblock a,
.block-ddblock a:link,
.block-ddblock a:visited,
.block-ddblock a:hover,
.block-ddblock a:focus,
.block-ddblock a:active,
div.ddblock-cycle-upright10 a,
div.ddblock-cycle-upright10 a:hover {
    text-decoration: none !important;
}

div.ddblock-cycle-upright10 div.slide-text a {
    text-decoration: none !important;
}

/* HR rules — convert to soft hairlines */
hr {
    border: 0 !important;
    border-top: 1px solid var(--f-border) !important;
    margin: 28px 0 !important;
    height: 0 !important;
    background: transparent !important;
}

/* Blockquotes */
blockquote {
    margin: 20px 0 !important;
    padding: 14px 18px !important;
    background: var(--f-bg-alt) !important;
    border-left: 3px solid var(--f-cyan) !important;
    border-radius: var(--f-radius-sm) !important;
    color: var(--f-text-soft) !important;
    font-style: normal !important;
}

blockquote p {
    margin: 0 !important;
}

/* Code / preformatted */
code,
pre,
tt,
kbd,
samp {
    font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace !important;
    font-size: 13px !important;
    background: var(--f-bg-soft) !important;
    border-radius: 4px !important;
    padding: 1px 6px !important;
    color: var(--f-navy) !important;
}

pre {
    padding: 14px 16px !important;
    border: 1px solid var(--f-border) !important;
    background: var(--f-bg-alt) !important;
    overflow-x: auto !important;
}

pre code {
    background: transparent !important;
    padding: 0 !important;
}

/* Lists in content prose */
.node-inner ul,
.node-inner ol {
    padding-left: 22px !important;
}

.node-inner li {
    margin-bottom: 4px !important;
}

/* Generic tables that aren't .views-table */
.node-inner table:not(.views-table):not([class*="field-"]) {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: 1px solid var(--f-border) !important;
    border-radius: var(--f-radius-sm) !important;
    overflow: hidden !important;
    margin: 18px 0 !important;
}

.node-inner table:not(.views-table):not([class*="field-"]) th {
    background: var(--f-bg-soft) !important;
    text-align: left !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    padding: 10px 12px !important;
    border-bottom: 1px solid var(--f-border) !important;
}

.node-inner table:not(.views-table):not([class*="field-"]) td {
    padding: 10px 12px !important;
    border-bottom: 1px solid var(--f-border-soft) !important;
    font-size: 14px !important;
}

.node-inner table:not(.views-table):not([class*="field-"]) tr:last-child td {
    border-bottom: 0 !important;
}

/* Selection */
::selection {
    background: var(--f-cyan-100) !important;
    color: var(--f-navy) !important;
}

/* ---------- Responsive breakpoints ---------- */
@media (max-width: 1100px) {
    #header {
        padding: 0 20px !important;
    }

    #content-top {
        margin: 20px 20px 24px 20px !important;
    }

    .node-type-news-item #content-area {
        margin: 0 20px !important;
    }

    .no-sidebars h1.title,
    .one-sidebar h1.title {
        margin-left: 20px !important;
    }

    .no-sidebars #content-area,
    .one-sidebar #content-area {
        margin: 16px 20px 32px 20px !important;
    }

    #block-nice_menus-1 .block-inner .content {
        padding: 0 20px !important;
    }
}

@media (max-width: 900px) {
    #header-inner {
        min-height: 64px !important;
        flex-wrap: wrap !important;
    }

    #header-blocks a {
        padding: 6px 10px !important;
        font-size: 12px !important;
    }

    #logo-image {
        height: 32px !important;
    }

    div.ddblock-cycle-upright10 div.container-inner,
    div.ddblock-cycle-upright10 div.slider-inner,
    div.ddblock-cycle-upright10 div.slide-inner img {
        height: 320px !important;
    }

    div.ddblock-cycle-upright10 div.slide-text {
        padding: 36px 20px 18px 20px !important;
    }

    div.ddblock-cycle-upright10 div.slide-text-inner {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    div.ddblock-cycle-upright10 div.slide-title h2 {
        font-size: 24px !important;
    }

    .node-type-news-item #content-area {
        flex-direction: column !important;
    }

    .node-type-news-item #content-area .front-vypis-reseni,
    .node-type-news-item #content-area .front-vypis-aktualit,
    .node-type-news-item #content-area .front-vypis-hladin {
        flex: 1 1 auto !important;
        width: 100% !important;
    }

    ul.nice-menu,
    #nice-menu-1 {
        overflow-x: auto !important;
        flex-wrap: nowrap !important;
        -webkit-overflow-scrolling: touch !important;
    }

    ul.nice-menu a,
    #nice-menu-1 a {
        padding: 14px 12px !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 640px) {
    #header {
        padding: 0 14px !important;
    }

    #header-inner {
        gap: 8px !important;
    }

    #content-top {
        margin: 14px 14px 20px 14px !important;
    }

    .node-type-news-item #content-area {
        margin: 0 14px !important;
        gap: 16px !important;
    }

    div.ddblock-cycle-upright10 div.container-inner,
    div.ddblock-cycle-upright10 div.slider-inner,
    div.ddblock-cycle-upright10 div.slide-inner img {
        height: 260px !important;
    }

    div.ddblock-cycle-upright10 div.slide-title h2 {
        font-size: 20px !important;
    }

    div.ddblock-cycle-upright10 div.slide-body-inner p {
        font-size: 13px !important;
    }

    h1 {
        font-size: 24px !important;
    }

    h2 {
        font-size: 18px !important;
    }
}

/* ---------- Mobile column collapse + fluid layout (phones / tablets) ---------- */
@media (max-width: 800px) {
    #main-inner {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: auto auto auto auto !important;
        grid-template-areas:
            "navbar"
            "content"
            "sidebar-left"
            "sidebar-right" !important;
    }

    #sidebar-left,
    #sidebar-right,
    .sidebar-left #content,
    .sidebar-right #content,
    .two-sidebars #content {
        width: auto !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        float: none !important;
    }

    #sidebar-left {
        padding: 0 14px !important;
    }

    #sidebar-right {
        padding: 0 14px !important;
    }

    #sidebar-left-inner,
    #sidebar-right-inner {
        margin: 0 !important;
        padding: 0 !important;
    }

    #header {
        padding: 8px 14px !important;
    }

    #header-inner {
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        gap: 6px !important;
        min-height: 0 !important;
        padding: 6px 0 !important;
    }

    #header-blocks {
        width: 100% !important;
        max-width: 100% !important;
        clear: both !important;
        float: none !important;
        display: block !important;
    }

    #header-blocks .block,
    #header-blocks .block-inner,
    #header-blocks .content {
        display: block !important;
        float: none !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
    }

    /* Show the active language link on phones (desktop hides it). */
    #header-blocks #block-locale-0 .active {
        display: inline-flex !important;
    }

    #header-blocks ul {
        display: flex !important;
        flex-wrap: wrap !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    #header-blocks li {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #header-blocks a {
        padding: 6px 8px !important;
        font-size: 12px !important;
        margin: 0 !important;
        white-space: nowrap !important;
    }

    .no-sidebars #content-area,
    .one-sidebar #content-area,
    .two-sidebars #content-area,
    .front #content-area,
    .node-type-news-item #content-area {
        margin: 12px 14px 24px 14px !important;
    }

    .no-sidebars h1.title,
    .one-sidebar h1.title,
    .two-sidebars h1.title {
        margin-left: 14px !important;
        margin-right: 14px !important;
    }

    div.ddblock-cycle-upright10 div.slide-text {
        padding: 24px 16px 16px 16px !important;
    }

    div.ddblock-cycle-upright10 div.slide-text-inner {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "title"
            "body"
            "cta" !important;
        column-gap: 0 !important;
        row-gap: 10px !important;
    }

    div.ddblock-cycle-upright10 div.slide-read-more,
    div.ddblock-cycle-upright10 div.slide-read-more-horizontal,
    div.ddblock-cycle-upright10 div.slide-read-more-vertical {
        justify-self: start !important;
    }

    div.ddblock-cycle-upright10 div.container-inner,
    div.ddblock-cycle-upright10 div.slider-inner,
    div.ddblock-cycle-upright10 div.slide-inner img {
        height: 240px !important;
    }

    #content-top {
        margin: 14px 14px 16px 14px !important;
    }

    #block-nice_menus-1 .block-inner .content {
        padding: 0 8px !important;
    }

    /* Main nav: stacked rows on phones, with inline-disclosed submenus. */
    ul.nice-menu,
    #nice-menu-1 {
        overflow-x: visible !important;
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        gap: 0 !important;
        align-items: stretch !important;
    }

    ul.nice-menu > li,
    #nice-menu-1 > li {
        display: block !important;
        width: 100% !important;
        flex: 0 0 auto !important;
        border-bottom: 1px solid var(--f-border-soft) !important;
    }

    ul.nice-menu > li:last-child,
    #nice-menu-1 > li:last-child {
        border-bottom: 0 !important;
    }

    ul.nice-menu > li > a,
    #nice-menu-1 > li > a {
        padding: 14px 14px !important;
        font-size: 15px !important;
        white-space: normal !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    ul.nice-menu > li > a::after,
    #nice-menu-1 > li > a::after {
        display: none !important;
    }

    /* Disclosure caret rotates when the row is tap-opened. */
    ul.nice-menu > li.menuparent > a::before,
    #nice-menu-1 > li.menuparent > a::before {
        content: "" !important;
        order: 2 !important;
        margin-left: auto !important;
        width: 8px !important;
        height: 8px !important;
        border-right: 2px solid var(--f-text-muted) !important;
        border-bottom: 2px solid var(--f-text-muted) !important;
        transform: rotate(45deg) !important;
        transition: transform var(--f-trans) !important;
        flex-shrink: 0 !important;
    }

    ul.nice-menu > li.nice-menu-tapped > a::before,
    #nice-menu-1 > li.nice-menu-tapped > a::before {
        transform: rotate(-135deg) !important;
    }

    ul.nice-menu > li.menuparent > ul,
    #nice-menu-1 > li.menuparent > ul {
        display: none !important;
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 4px 0 8px 0 !important;
        background: var(--f-cyan-50) !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        visibility: visible !important;
    }

    ul.nice-menu > li.nice-menu-tapped > ul,
    #nice-menu-1 > li.nice-menu-tapped > ul {
        display: block !important;
    }

    ul.nice-menu > li > ul > li,
    #nice-menu-1 > li > ul > li {
        display: block !important;
        width: 100% !important;
        float: none !important;
    }

    ul.nice-menu > li > ul > li > a,
    #nice-menu-1 > li > ul > li > a {
        padding: 10px 14px 10px 28px !important;
        font-size: 14px !important;
        white-space: normal !important;
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    ul.nice-menu li ul li.menuparent > ul,
    #nice-menu-1 li ul li.menuparent > ul {
        display: none !important;
        position: static !important;
        width: 100% !important;
        padding: 0 !important;
        background: rgba(0, 0, 0, .03) !important;
    }

    ul.nice-menu li.nice-menu-tapped ul li.nice-menu-tapped > ul,
    #nice-menu-1 li.nice-menu-tapped ul li.nice-menu-tapped > ul {
        display: block !important;
    }

    ul.nice-menu li ul li ul li a,
    #nice-menu-1 li ul li ul li a {
        padding-left: 42px !important;
    }


    #content img,
    #content iframe,
    #content video,
    #sidebar-left img,
    #sidebar-right img,
    .node img,
    .node iframe,
    .node video {
        max-width: 100% !important;
        height: auto !important;
    }

    #content table {
        display: block !important;
        max-width: 100% !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    html,
    body {
        overflow-x: hidden !important;
    }
}

/* ---------- Accessibility focus rings ---------- */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 2px solid var(--f-cyan) !important;
    outline-offset: 2px !important;
    border-radius: 4px !important;
}
