*{box-sizing:border-box}
body{margin:0;background:#aab99f;color:#182015;font-family:Arial,Helvetica,sans-serif}
body.night{background:#20261f;color:#dfe7d8}
button,select,textarea,input{font:inherit}button{cursor:pointer}
.site{max-width:1240px;margin:auto;background:#dce6d4;min-height:100vh;border-left:4px solid #52634a;border-right:4px solid #52634a}
header{min-height:155px;background:#a9c89b;border-bottom:6px double #44543d;display:grid;grid-template-columns:100px 1fr 250px;align-items:center;padding:14px 18px;gap:15px}
.logo-mark{width:78px;height:78px;border:4px solid #71846a;background:#dfe9da;display:grid;place-items:center;font:bold 30px Georgia;color:#4e6948;line-height:25px}
.header-title h1{font:italic bold 34px Georgia,serif;color:#2e5c2c;margin:0;text-decoration:underline}
.ruler{letter-spacing:8px;text-transform:lowercase;font:12px "Courier New";color:#476141;border-top:2px solid #53684b;margin-top:7px;padding-top:4px}
.header-links{display:flex;justify-content:flex-end;gap:6px}.header-links button{background:#c4d6bb;border:3px outset #eef4e9;padding:9px;font-weight:bold}
.ticker{height:32px;overflow:hidden;white-space:nowrap;background:#d1dfc9;border-bottom:3px double #61745a;padding:8px;font:bold 11px "Courier New"}
.layout{display:grid;grid-template-columns:235px 1fr;min-height:680px}
aside{background:#9aac8f;border-right:4px double #53634d;padding:10px}.aside-brand{font:italic bold 20px Georgia;text-align:center;color:#31542f;padding:8px;border-bottom:2px solid #53644d}.aside-brand small{font:11px Arial}
aside button,.mobile-menu button{display:block;width:100%;margin:5px 0;padding:10px;text-align:left;background:#c7d4bf;border:3px outset #e7eee2;font-weight:bold}
aside button:hover,.mobile-menu button:hover{background:#e5eddf}
.counter{margin-top:22px;padding:9px;background:#d8e1d1;border:2px inset #71816a;font:10px "Courier New"}
main{padding:20px}.page.hidden{display:none}
h2{font:italic bold 27px Georgia,serif;border-bottom:4px double #65765c;padding-bottom:8px;color:#335631}
.news-strip,.old-web{border:2px solid #64765d;background:#d0dfc9;padding:9px;font:11px "Courier New";margin-bottom:15px}
.director{display:grid;grid-template-columns:370px 1fr;gap:22px;background:#c7d5bf;border:4px double #53654b;padding:15px}
.director-photo{display:block;width:100%;height:360px;object-fit:cover;border:5px ridge #e6ece1}.photo-caption{text-align:center;font:10px "Courier New";padding:4px}
.director-copy h3{font:italic bold 26px Georgia;text-decoration:underline}.director-copy a{font:bold 22px Georgia;color:#204d99;text-decoration:underline}.director-copy button{padding:10px;background:#c6d5bd;border:3px outset #eee;font-weight:bold}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}article,.paper,.museum,.vote-paper{background:#edf2e9;border:3px double #65755c;padding:15px;margin:10px 0}article button,.paper button,#dispose,#randomButton,#guestAdd,#resetVotes{padding:11px;background:#c5d4bc;border:3px outset #eef4e9;font-weight:bold}
textarea{width:100%;height:120px;background:#f1f4ee;border:3px inset #72806d;padding:10px}#guestList .paper{font:13px "Courier New"}
.vote-options{display:grid;gap:10px}.vote-options button{padding:13px;text-align:left;background:#c5d4bc;border:3px outset #eef4e9;font-weight:bold}
#voteResult{background:#172016;color:#cfe2c3;padding:14px;min-height:100px;white-space:pre-wrap}
.museum{min-height:100px}.museum div{font-size:40px;float:left;margin-right:15px}
footer{text-align:center;padding:18px;background:#596b52;color:#e8eee4;font:11px "Courier New"}
.mobile-bar,.mobile-menu{display:none}


/* ACCOUNTS */
.modal{position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:10000;display:grid;place-items:center;padding:15px}.modal.hidden{display:none}
.account-window{position:relative;width:min(480px,100%);background:#dce6d4;border:6px double #40523b;padding:22px;box-shadow:12px 12px #111}.account-window h2{margin-top:0}.account-close{position:absolute;right:8px;top:7px;width:44px;height:44px;font-size:32px;background:#bbb;border:4px outset #eee}
.tabs{display:flex;gap:7px;margin-bottom:15px}.tabs button{flex:1;padding:10px;background:#c5d4bc;border:3px outset #eee;font-weight:bold}.account-form label{display:block;font-weight:bold;margin:10px 0}.account-form input{width:100%;padding:11px;background:#f4f6f1;border:3px inset #71806b}.account-form>button{width:100%;padding:12px;background:#b9cdb0;border:4px outset #eee;font-weight:bold}.account-form.hidden{display:none}.form-error{color:#8b1e1e;font:bold 12px "Courier New";min-height:18px}.tiny{font:10px "Courier New"}
.account-card{background:#edf2e9;border:3px double #65755c;padding:16px}.owner-badge{display:inline-block;background:#7b1717;color:#fff;padding:5px 8px;font:bold 11px "Courier New"}
.logout{padding:10px;background:#c4d1bd;border:3px outset #eee;font-weight:bold}.admin-box{margin-top:15px;padding:12px;border:3px dashed #7b1717;background:#eadbd4}

@media(max-width:700px){
 .site{border:0}.mobile-bar{display:flex;position:sticky;top:0;z-index:1000;justify-content:space-between;gap:5px;padding:6px;background:#4e5e48;color:white}.mobile-bar button{background:#c6d2bf;border:3px outset #eee;padding:9px;font-weight:bold}.mobile-bar b{font:9px "Courier New";align-self:center}
 .mobile-menu{display:none;position:sticky;top:48px;z-index:999;background:#879a7e;padding:8px;border-bottom:4px solid #3f4d3a}.mobile-menu.open{display:block}
 .layout{display:block}.layout aside{display:none}main{padding:12px}
 header{min-height:120px;grid-template-columns:55px 1fr;padding:10px}.logo-mark{width:55px;height:55px;font-size:23px}.header-title h1{font-size:19px}.ruler{letter-spacing:2px;font-size:8px}.header-links{display:none}
 .director{grid-template-columns:1fr}.director-photo{height:330px}.grid{grid-template-columns:1fr}
}

.forum-layout{display:grid;grid-template-columns:320px 1fr;gap:16px}
.forum-new{background:#c8d6c0;border:4px double #53654b;padding:14px;height:max-content}
.forum-new input,.forum-new textarea{width:100%;margin:6px 0;padding:10px;border:3px inset #71806b;background:#f3f5f0}
.forum-new textarea{height:150px}
.forum-new button,.reply-button,.secondary-button{padding:10px;background:#c4d3bc;border:3px outset #eef4e9;font-weight:bold}
.forum-topic{background:#edf2e9;border:3px double #65755c;padding:12px;margin:10px 0}
.forum-topic-head{display:flex;justify-content:space-between;gap:10px;border-bottom:2px dotted #6a7963;padding-bottom:6px}
.forum-topic-head span,.forum-reply small{font:10px "Courier New";opacity:.8}
.forum-replies{margin-top:10px}
.forum-reply{border-left:5px solid #879a7e;background:#dbe5d6;padding:8px;margin:6px 0}
.reply-row{display:flex;gap:6px;margin-top:8px}.reply-input{flex:1;padding:9px;border:3px inset #71806b;background:#f5f6f2}
.secondary-button{margin-top:7px;width:100%}
@media(max-width:700px){
 .forum-layout{grid-template-columns:1fr}
 .forum-topic-head{display:block}.reply-row{display:block}.reply-input,.reply-button{width:100%;margin:3px 0}
}

.postal-card{max-width:900px;margin:20px auto;padding:20px;background:#ddd7c8;border:6px double #3f3a31;box-shadow:8px 8px 0 #777}
.postal-warning{font-weight:900;border:3px dashed #8a2929;padding:10px;background:#eee0d0}
.postal-quote{font-family:Georgia,serif;font-size:22px}
.postal-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.postal-actions button{padding:12px;background:#c9c0a8;border:4px outset #eee;font-weight:900;cursor:pointer}
.postal-result{min-height:60px;padding:14px;background:#171717;color:#ddd;font-family:"Courier New",monospace;border:4px inset #777}
.postal-note{margin-top:15px;font-size:12px;opacity:.7}
@media(max-width:700px){.postal-card{margin:10px;padding:12px}.postal-actions{display:grid}.postal-actions button{width:100%}}

/* OWNER ADMIN */
.owner-admin{margin-top:18px;background:#c7d5bf;border:6px double #53654b;padding:14px}.owner-admin.hidden{display:none}.admin-header{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:3px double #65755c;padding-bottom:10px;margin-bottom:12px}.admin-header b{display:block;font:italic bold 20px Georgia}.admin-header span{display:block;font:10px "Courier New";opacity:.75;margin-top:4px}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.admin-stat{background:#edf2e9;border:3px double #65755c;padding:10px;text-align:center;min-height:85px}.admin-stat span{display:block;font-size:22px}.admin-stat b{display:block;font:bold 24px "Courier New"}.admin-stat small{font:10px "Courier New"}.admin-users-wrap{margin-top:18px}.admin-users{display:grid;gap:8px}.admin-user-row{background:#edf2e9;border:3px double #65755c;padding:11px;display:grid;grid-template-columns:1fr auto;gap:12px}.admin-user-main b{font-size:16px}.admin-user-main small{display:block;font:10px "Courier New";margin-top:5px;word-break:break-all}.admin-role{display:inline-block;margin-left:8px;padding:3px 6px;border:1px solid #52634a;font:bold 9px "Courier New"}.admin-role.owner{background:#7b1717;color:#fff}.admin-role.moderator{background:#d7c38b}.admin-user-metrics{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px;font:10px "Courier New"}.admin-user-metrics span{background:#d6e0d0;padding:5px;border:1px solid #8b9985}
@media(max-width:700px){.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-header{align-items:flex-start}.admin-user-row{grid-template-columns:1fr}.admin-user-metrics{justify-content:flex-start}}


/* Owner controls */
.admin-user-row.is-blocked{opacity:.78}
.admin-user-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.admin-user-actions .secondary-button{font-size:.72rem}

/* AVATARS */
.profile-avatar-wrap{display:flex;align-items:center;gap:10px;margin-bottom:10px}.profile-avatar,.avatar-placeholder{width:84px;height:84px;border:3px double #53654b;object-fit:cover;background:#d6e0d0}.avatar-placeholder{display:flex;align-items:center;justify-content:center;font:bold 32px Georgia;color:#53654b}.avatar-controls{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:10px 0}.avatar-controls small{display:block;width:100%;font:10px "Courier New";opacity:.75}.avatar-upload-label{display:inline-block;cursor:pointer;width:auto!important;margin-top:0}.forum-author-line{display:flex;align-items:center;gap:7px;margin:6px 0}.forum-avatar{width:38px;height:38px;border:2px solid #53654b;object-fit:cover;background:#d6e0d0}.forum-avatar-small{width:30px;height:30px}.forum-avatar-placeholder{display:flex;align-items:center;justify-content:center;font:bold 15px "Courier New";color:#53654b}.forum-reply .secondary-button{margin-top:5px}
@media(max-width:700px){.avatar-controls{display:grid}.avatar-controls .secondary-button{width:100%!important}.forum-avatar{width:34px;height:34px}}


/* V4 forum tools */
.forum-votes{display:flex;gap:6px;margin:8px 0;flex-wrap:wrap}
.vote-button{padding:5px 9px;border:1px solid #999;background:#eee;cursor:pointer}
.vote-button:hover{filter:brightness(.96)}
#forumSearch{width:100%;box-sizing:border-box;margin:0 0 12px;padding:10px;border:1px solid #888;background:#fff}
.forum-topic-pinned{border-left:5px solid #111}
.notifications-card{margin-top:14px;border:1px solid #999;padding:12px;background:#f5f5f5}
.notifications-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.notifications-head h3{margin:0}
.notification-count{display:inline-block;min-width:20px;padding:2px 6px;border-radius:10px;background:#111;color:#fff;text-align:center;font-size:12px}
.notification-item{display:flex;flex-direction:column;gap:3px;padding:9px 4px;border-top:1px solid #ccc}
.notification-item.unread{font-weight:600;background:#e9e9e9}
.notification-item small{font-weight:400;color:#666}

/* V5 news */
.news-item{margin-bottom:14px}
.news-head{display:flex;justify-content:space-between;gap:16px;align-items:baseline;flex-wrap:wrap}
.news-head h3{margin:0}
.news-body{margin-top:10px;white-space:pre-wrap;line-height:1.55}
.news-category{display:inline-block;margin-top:12px;padding:3px 8px;border:1px solid currentColor;font-size:.8rem}
.news-pinned{border-width:2px}
.admin-news-form{display:grid;gap:10px;margin:12px 0 18px}
.admin-news-form textarea{resize:vertical}
.admin-news-list{display:grid;gap:8px}
.admin-news-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px;border:1px solid currentColor;flex-wrap:wrap}
.admin-news-row small{display:block;margin-top:4px}
.admin-news-actions{display:flex;gap:6px;flex-wrap:wrap}


/* V6 owner recovery */
.recovery-owner-box{margin-top:16px}
.owner-recovery-form{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.owner-recovery-form input{flex:1;min-width:220px}

/* --- Стили для строгого окна отказа от ответственности --- */
.modal-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.95); /* Почти черный, полностью перекрывает сайт */
    z-index: 999999; /* Поверх абсолютно всего */
    justify-content: center;
    align-items: center;
    backdrop-filter: blur(5px); /* Размытие фона для эффекта блокировки */
}
.modal-overlay.show { display: flex; }
.modal-content {
    background-color: #222;
    color: #eee;
    padding: 30px;
    border-radius: 12px;
    max-width: 500px;
    width: 90%;
    text-align: center;
    box-shadow: 0 5px 30px rgba(0,0,0,0.8);
    border: 2px solid #555;
}
.modal-content h2 { margin-top: 0; color: #e74c3c; font-family: Georgia, serif; }
.disclaimer-buttons {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-top: 25px;
}
.disclaimer-btn {
    padding: 12px 24px;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 16px;
    font-weight: bold;
    transition: background-color 0.3s, transform 0.1s;
}
.disclaimer-btn:active { transform: scale(0.98); }
.disclaimer-btn.accept { background-color: #27ae60; }
.disclaimer-btn.accept:hover { background-color: #2ecc71; }
.disclaimer-btn.decline { background-color: #c0392b; }
.disclaimer-btn.decline:hover { background-color: #e74c3c; }

/* Блокировка прокрутки, когда открыто окно */
body.modal-open {
    overflow: hidden !important;
}

/* --- Гарантированные стили модального окна отказа --- */
#disclaimerModal.modal-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background-color: rgba(0, 0, 0, 0.96) !important;
    z-index: 2147483647 !important;
    justify-content: center !important;
    align-items: center !important;
    backdrop-filter: blur(8px) !important;
}
#disclaimerModal .modal-content {
    background-color: #222 !important;
    color: #eee !important;
    padding: 35px !important;
    border-radius: 12px !important;
    max-width: 520px !important;
    width: 90% !important;
    text-align: center !important;
    box-shadow: 0 10px 40px rgba(0,0,0,0.9) !important;
    border: 3px solid #e74c3c !important;
    pointer-events: auto !important;
}
