/*
 * Лаборатория Кошмарского — karantin.css
 * Страница karantin.html: окно «Карантин» в духе Windows 7 на темном «рабочем столе».
 * Работает в паре с js/karantin.js.
 */

* {
    box-sizing: border-box;
}

body.kq {
    min-height: 100vh;
    margin: 0;
    padding: 48px 16px 24px;
    background: radial-gradient(ellipse at center, #232828 0%, #0E1010 75%);
    color: #000000;
    font-family: 'Segoe UI', Tahoma, Arial, sans-serif;
    font-size: 13px;
}

/* Пока js/karantin.js не пустил внутрь, видно только «Доступ запрещен» */
.kq-window {
    display: none;
}

.kq--open .kq-window {
    display: block;
}

.kq--open .kq-denied {
    display: none;
}

/* ===== ОКНО ===== */
.kq-window,
.kq-dialog {
    max-width: 860px;
    margin: 0 auto;
    padding: 0 6px 6px;
    background: linear-gradient(#C9DAEE, #AFC6E0);
    border: 1px solid #4B6585;
    border-radius: 6px 6px 4px 4px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, .7), inset 0 1px 0 rgba(255, 255, 255, .7);
}

.kq-dialog {
    max-width: 440px;
    margin-top: 10vh;
}

.kq-window__title {
    display: flex;
    align-items: center;
    height: 30px;
    color: #1E1E1E;
    /* «Стеклянная» подпись Windows 7: белое свечение вокруг букв */
    text-shadow: 0 0 8px #ffffff, 0 0 3px #ffffff;
}

.kq-window__title img {
    margin: 0 8px 0 4px;
}

.kq-window__controls {
    display: flex;
    margin-left: auto;
    align-self: flex-start;
}

.kq-window__controls button {
    width: 28px;
    height: 19px;
    padding: 0;
    border: 1px solid #5C7698;
    border-top: 0;
    background: linear-gradient(#DCE7F4, #B3C8E2);
    color: #2B3F5C;
    font-size: 11px;
    line-height: 1;
    cursor: pointer;
}

.kq-window__controls button + button {
    border-left: 0;
}

.kq-window__controls .kq-window__close {
    width: 44px;
    border-radius: 0 0 4px 0;
    background: linear-gradient(#E3A08F, #C7442B 50%, #B32E14);
    border-color: #7A2210;
    color: #ffffff;
}

.kq-window__controls .kq-window__close:hover {
    background: linear-gradient(#F0B4A3, #DA563B 50%, #C73A1E);
}

/* ===== ПАНЕЛЬ КНОПОК ===== */
.kq-toolbar {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    padding: 4px 6px;
    background: linear-gradient(#F6F9FD, #DDE7F3);
    border: 1px solid #8DA2BD;
    border-bottom: 0;
}

.kq-tool {
    margin-right: 2px;
    padding: 4px 10px;
    border: 1px solid transparent;
    border-radius: 3px;
    background: transparent;
    color: #1E395B;
    font: inherit;
    cursor: pointer;
}

.kq-tool:hover {
    border-color: #A6C6E8;
    background: linear-gradient(#F2F8FE, #D6E8FA);
}

.kq-tool i {
    margin-right: 4px;
    color: #4A6C94;
}

.kq-toolbar__module {
    margin-left: auto;
    padding: 4px 6px;
    color: #5A6E86;
    font-size: 12px;
}

/* ===== СПИСОК ОБЪЕКТОВ ===== */
.kq-list {
    overflow-x: auto;
    background: #ffffff;
    border: 1px solid #8DA2BD;
}

.kq-table {
    width: 100%;
    min-width: 600px;
    border-collapse: collapse;
}

.kq-table th {
    padding: 5px 8px;
    border-right: 1px solid #E2E5EA;
    border-bottom: 1px solid #D5D5D5;
    background: linear-gradient(#FFFFFF, #F1F2F4);
    color: #4C607A;
    font-weight: normal;
    text-align: left;
    white-space: nowrap;
}

.kq-table td {
    padding: 4px 8px;
    border: 1px solid transparent;
    white-space: nowrap;
    cursor: default;
}

.kq-table__file {
    font-family: Consolas, 'Courier New', monospace;
}

.kq-table__size {
    text-align: right;
}

.kq-table tr:hover td {
    background: #E5F3FB;
}

/* Выделение строки как в проводнике Windows 7 */
.kq-table tr.is-selected td {
    background: linear-gradient(#DCEBFC, #C1DBFC);
    border-top-color: #7DA2CE;
    border-bottom-color: #7DA2CE;
}

.kq-table tr:focus {
    outline: 1px dotted #000000;
}

.kq-row--prisoner .kq-table__file {
    color: #6B1A1E;
}

/* ===== СВЕДЕНИЯ ОБ ОБЪЕКТЕ ===== */
.kq-details {
    min-height: 150px;
    margin-top: 6px;
    padding: 12px 14px;
    background: #F7F8FA;
    border: 1px solid #8DA2BD;
}

.kq-details__empty {
    margin: 0;
    color: #7A8696;
}

.kq-prop {
    display: flex;
    padding: 2px 0;
}

.kq-prop__name {
    flex: 0 0 170px;
    color: #5A6E86;
}

.kq-prop__value {
    flex: 1;
}

.kq-log__title {
    margin: 14px 0 6px;
    padding-top: 10px;
    border-top: 1px solid #DDE2E8;
    color: #1E395B;
    font-size: 14px;
}

.kq-log {
    max-height: 220px;
    overflow-y: auto;
    padding: 8px 10px;
    background: #ffffff;
    border: 1px solid #D5DBE3;
    font-family: Consolas, 'Courier New', monospace;
    font-size: 12px;
}

.kq-log__line {
    display: flex;
    padding: 3px 0;
    animation: kq-appear .6s ease-out both;
}

.kq-log__date {
    flex: 0 0 96px;
    color: #8A94A0;
}

.kq-log__text {
    flex: 1;
}

.kq-log__line--you .kq-log__text {
    color: #6B1A1E;
}

@keyframes kq-appear {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* ===== СТРОКА СОСТОЯНИЯ ===== */
.kq-status {
    margin-top: 6px;
    padding: 4px 8px;
    background: #F0F0F0;
    border: 1px solid #8DA2BD;
    color: #333333;
    font-size: 12px;
}

.kq-status--error {
    color: #A3262C;
}

/* ===== «ДОСТУП ЗАПРЕЩЕН» ===== */
.kq-dialog__body {
    display: flex;
    padding: 18px 18px 8px;
    background: #ffffff;
    border: 1px solid #8DA2BD;
    border-bottom: 0;
}

.kq-dialog__icon {
    margin-right: 16px;
    color: #C7442B;
    font-size: 32px;
}

.kq-dialog__head {
    margin-bottom: 6px;
    color: #1E395B;
    font-size: 16px;
}

.kq-dialog__body p {
    margin: 0;
    line-height: 1.45;
}

.kq-dialog__foot {
    padding: 10px 12px;
    background: #F0F0F0;
    border: 1px solid #8DA2BD;
    border-top: 1px solid #DFDFDF;
    text-align: right;
}

.kq-btn {
    display: inline-block;
    min-width: 86px;
    padding: 4px 14px;
    border: 1px solid #707070;
    border-radius: 3px;
    background: linear-gradient(#F2F2F2, #EBEBEB 50%, #DDDDDD 51%, #CFCFCF);
    color: #000000;
    text-align: center;
    text-decoration: none;
}

.kq-btn:hover {
    border-color: #3C7FB1;
    background: linear-gradient(#EAF6FD, #D9F0FC 50%, #BEE6FD 51%, #A7D9F5);
}

/* ===== ССЫЛКА НАЗАД ===== */
.kq-back {
    display: block;
    width: max-content;
    margin: 22px auto 0;
    color: #6F7877;
    font-size: 12px;
    text-decoration: none;
}

.kq-back:hover {
    color: #B5B5B5;
}

@media (max-width: 600px) {
    body.kq {
        padding-top: 16px;
    }

    .kq-toolbar__module {
        display: none;
    }

    .kq-prop {
        display: block;
    }

    .kq-prop__name {
        display: block;
        font-size: 11px;
    }

    .kq-log__line {
        display: block;
    }

    .kq-log__date {
        display: block;
    }
}

/* ===== НОМЕР ПАРТИИ (вход в «кроличью нору») =====
   Обычный текст, пока дневник не дописан; класс is-live ставит js/karantin.js */
.kq-prop__value--batch {
    font-family: Consolas, 'Courier New', monospace;
}

.kq-prop__value--batch.is-live {
    flex: 0 1 auto;                 /* подчеркивание только под текстом, а не на всю строку */
    border-bottom: 1px dashed #5A6E86;
    cursor: pointer;
}

.kq-prop__value--batch.is-live:hover,
.kq-prop__value--batch.is-live:focus {
    border-bottom-style: solid;
    outline: none;
}
