/*
Theme Name: nodravel migration
Description: Minimal migration theme preserving the source site's content and navigation.
Version: 1.0.0
Text Domain: nodravel
*/

* { box-sizing: border-box; }
html { background: #fff; }
body {
    margin: 0;
    color: #333;
    background: #fff;
    font: 14px/1.45 "Open Sans", Arial, sans-serif;
}
a { color: #476b80; text-decoration: none; }
a:hover, a:focus { text-decoration: underline; }
.navbar {
    position: fixed;
    z-index: 20;
    top: 0;
    right: 0;
    left: 0;
    min-height: 48px;
    border-bottom: 1px solid #d2d2d2;
    background: #f7f7f7;
}
.container { width: min(1170px, calc(100% - 40px)); margin: 0 auto; }
.navbar .container { display: flex; min-height: 48px; align-items: center; gap: 28px; }
.brand { margin: 0; font-size: 20px; white-space: nowrap; }
.top-menu, .sidebar-menu { margin: 0; padding: 0; list-style: none; }
.top-menu { display: flex; gap: 5px; }
.top-menu a { display: block; padding: 14px 12px; color: #333; }
.main { padding: 76px 0 35px; }
.site-layout { display: grid; grid-template-columns: 270px minmax(0, 1fr); gap: 30px; }
.sidebar { min-width: 0; }
.widget-title { margin: 0 0 8px; padding: 8px 12px; color: #fff; background: #6e8792; font-size: 16px; }
.sidebar-menu { border: 1px solid #ddd; }
.sidebar-menu li + li { border-top: 1px solid #eee; }
.sidebar-menu a { display: block; padding: 7px 12px; color: #555; }
.content { min-width: 0; }
.breadcrumb { margin: 0 0 20px; padding: 8px 12px; color: #777; background: #f5f5f5; }
.view-title { margin: 0 0 24px; font-size: 30px; font-weight: 400; line-height: 1.2; }
.column-content { min-width: 0; overflow-x: auto; }
.column-content img { max-width: 100%; height: auto; }
.comments-area { margin-top: 35px; }
.comments-title { padding-bottom: 8px; border-bottom: 1px solid #ddd; font-size: 20px; }
.comment-list { margin: 0; padding: 0; list-style: none; }
.item-comment { display: flex; gap: 15px; padding: 16px 0; border-bottom: 1px solid #e5e5e5; }
.comment-avatar { width: 50px; height: 50px; flex: 0 0 50px; object-fit: cover; }
.comment-body { min-width: 0; flex: 1; }
.comment-infos { margin: 0 0 8px; color: #777; }
.comment-content { overflow-wrap: anywhere; }
.comment-content p:first-child { margin-top: 0; }
.comment-content p:last-child { margin-bottom: 0; }
.comment-form label { display: block; margin-top: 12px; }
.comment-form input[type="text"], .comment-form input[type="url"], .comment-form textarea {
    width: 100%;
    padding: 8px;
    border: 1px solid #bbb;
    border-radius: 2px;
    font: inherit;
}
.comment-form textarea { min-height: 150px; }
.form-submit input { padding: 8px 14px; border: 1px solid #999; background: #eee; cursor: pointer; }
.site-footer { padding: 24px 0; border-top: 1px solid #ddd; color: #777; }
@media (max-width: 767px) {
    .container { width: min(100% - 24px, 720px); }
    .navbar { position: static; }
    .navbar .container { align-items: flex-start; flex-direction: column; gap: 0; padding: 10px 0; }
    .top-menu a { padding: 8px 10px 8px 0; }
    .main { padding-top: 24px; }
    .site-layout { display: block; }
    .sidebar { display: none; }
    .view-title { font-size: 25px; }
}
