:root{--text: #2d2018;--text-h: #1a1008;--bg: #fdf7ef;--border: #e5d9cc;--card-bg: #28231b47;--sidebar-bg: rgba(255, 252, 247, .88);--sub-menu-bg: rgba(246, 237, 227, .88);--code-bg: rgba(246, 237, 227, .88);--accent: #5e7c38;--accent-bg: rgba(94, 124, 56, .1);--accent-border: rgba(94, 124, 56, .4);font:15px/1.6 system-ui,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}html.dark{--text: #a89070;--text-h: #f0e4d3;--bg: #1e1a14;--border: #3d3628;--card-bg: #28231bb0;--sidebar-bg: #241f18e6;--sub-menu-bg: #1a1711e6;--code-bg: #241f18e6;--accent: #82a854;--accent-bg: rgba(130, 168, 84, .12);--accent-border: rgba(130, 168, 84, .4)}html.dark .btn-danger{background:#b91c1c33;color:#fca5a5}html.dark .login-error{background:#b91c1c1f;border-color:#b91c1c59;color:#fca5a5}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:url(/assets/background-BBqfCvJo.jpg) center / cover no-repeat fixed}#root{min-height:100dvh;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fdf7efb8}html.dark #root{background:#1e1a14d1}.app{min-height:100dvh;display:flex;flex-direction:column;background:transparent}.site-header{position:relative;z-index:50;min-height:100px;display:flex;align-items:flex-end;padding:0;background:linear-gradient(to bottom,#0a112873,#0a1128bf)}.site-header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 60% at 20% 50%,rgba(79,110,247,.18) 0%,transparent 70%);pointer-events:none}.header-content{position:relative;z-index:1;padding:16px 20px;display:flex;align-items:flex-end;gap:20px;width:100%}.header-text h1{font-size:1.5rem;font-weight:800;color:#fff;margin:0 0 4px;letter-spacing:-.5px;text-shadow:0 2px 12px rgba(0,0,0,.4)}.header-text p{font-size:.85rem;color:#ffffffb8;margin:0}.header-controls{position:absolute;top:10px;right:16px;display:flex;align-items:center;gap:8px;z-index:200}.ctrl-btn{padding:8px 18px;border:1px solid rgba(255,255,255,.32);border-radius:8px;background:#ffffff24;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ctrl-btn:hover{background:#ffffff42}.settings-btn{font-size:1.2rem;padding:7px 12px}.settings-wrap{position:relative}.user-info{display:flex;align-items:center;gap:8px}.user-label{font-size:.8rem;color:#fffc;white-space:nowrap}.user-label strong{color:#fff}.top-menu{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:2px;padding:6px 20px;background:#0a1128bf;border-bottom:1px solid rgba(255,255,255,.1);position:relative;z-index:5}.top-menu-item{position:relative}.top-menu-btn{display:flex;align-items:center;gap:5px;padding:8px 14px;border:none;background:transparent;color:#fff;font-size:1.25rem;font-weight:600;cursor:pointer;border-radius:6px;white-space:nowrap;transition:background .12s,color .12s}.top-menu-btn:hover,.top-menu-btn.open{background:var(--accent-bg);color:var(--accent)}.top-arrow{font-size:.72rem;opacity:.6}.top-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:220px;max-width:min(300px,calc(100vw - 32px));background:var(--card-bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #00000024;list-style:none;padding:4px 0;margin:0;z-index:200}.top-dropdown-item{display:block;width:100%;padding:9px 16px;border:none;background:transparent;color:var(--text);font-size:.95rem;line-height:1.35;cursor:pointer;text-align:left;text-decoration:none;white-space:normal;overflow-wrap:anywhere;transition:background .12s,color .12s}.top-dropdown-item:hover{background:var(--accent-bg);color:var(--accent)}.layout{flex:1;display:grid;grid-template-columns:1fr 460px;grid-template-areas:"center right";align-items:start;gap:0}.center-col{grid-area:center;padding:24px 20px;min-width:0}.article-feed{display:flex;flex-direction:column;gap:0}.article-grid{display:flex;flex-direction:column;gap:16px}.article-card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:10px;transition:box-shadow .2s,transform .2s,opacity .15s}.article-card:hover{box-shadow:0 4px 20px #00000014;transform:translateY(-2px)}.article-card.draggable{cursor:grab}.article-card.dragging{opacity:.4;cursor:grabbing}.article-card.drag-over{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-border);transform:translateY(-3px)}.article-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.article-cat{display:inline-block;padding:2px 10px;border-radius:20px;font-size:.73rem;font-weight:700;letter-spacing:.4px;text-transform:uppercase;background:color-mix(in srgb,var(--cat-color) 14%,transparent);color:var(--cat-color)}.article-date{font-size:.78rem;color:var(--text);white-space:nowrap}.article-card h3{font-size:1rem;font-weight:700;color:var(--text-h);line-height:1.4;margin:0}.article-card p{font-size:.87rem;color:var(--text);line-height:1.55;flex:1}.read-more-btn{align-self:flex-start;background:none;border:none;color:var(--accent);font-size:1rem;font-weight:600;cursor:pointer;padding:5px 2px;transition:opacity .15s}.read-more-btn:hover{opacity:.7}.article-back-btn{display:inline-flex;align-items:center;gap:6px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:700;padding:8px 16px;cursor:pointer;margin-bottom:4px;transition:opacity .15s}.article-back-btn:hover{opacity:.85}.article-expanded{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:28px 32px;display:flex;flex-direction:column;gap:14px}.article-expanded h2{font-size:1.4rem;font-weight:800;color:var(--text-h);line-height:1.35;margin:0}.article-expanded p{font-size:.95rem;color:var(--text);line-height:1.7}.article-feed-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.article-delete-btn{background:#b030301f;border:1px solid rgba(176,48,48,.34);border-radius:8px;color:#982727;font-size:.82rem;font-weight:600;cursor:pointer;padding:5px 12px;transition:background .15s,color .15s}.article-delete-btn:hover{background:#b03030;color:#fff;border-color:#b03030}html.dark .article-delete-btn{background:#fca5a524;border-color:#fca5a55c;color:#fca5a5}.article-edit-btn{background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:8px;padding:7px 12px;font-size:.82rem;font-weight:700;cursor:pointer}.article-edit-btn:hover{opacity:.85}.article-admin-bar{margin-bottom:16px}.article-add-btn{background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:700;padding:8px 16px;cursor:pointer;transition:opacity .15s}.article-add-btn:hover{opacity:.85}.article-form{margin-top:14px;background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:14px}.article-form h4{margin:0;font-size:1rem;font-weight:700;color:var(--text-h)}.article-form-row{display:flex;flex-direction:column;gap:6px}.article-form-row.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.article-form-row label,.article-form-row.two-col label{display:flex;flex-direction:column;gap:5px;font-size:.82rem;font-weight:600;color:var(--text)}.article-date-label{display:flex;align-items:center;gap:8px}.article-date-label small{color:var(--text);font-size:.72rem;font-weight:500;opacity:.7}.article-form-row input,.article-form-row textarea{padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text-h);font-size:.9rem;font-family:inherit;resize:vertical;transition:border-color .15s}.article-form-row input:focus,.article-form-row textarea:focus{outline:none;border-color:var(--accent)}.article-form-row .article-date-input{min-height:40px;color-scheme:light;cursor:pointer}html.dark .article-form-row .article-date-input{color-scheme:dark}.article-date-input::-webkit-calendar-picker-indicator{width:20px;height:20px;cursor:pointer;opacity:.8}.article-form-actions{display:flex;gap:10px}.article-card{position:relative}.article-card-delete{position:absolute;top:10px;right:10px;width:30px;height:30px;background:none;border:none;color:var(--text);opacity:.35;font-size:1.3rem;cursor:pointer;padding:0;border-radius:4px;line-height:1;transition:opacity .15s,color .15s}.article-card-edit{position:absolute;top:10px;right:44px;width:30px;height:30px;background:none;border:none;color:var(--text);opacity:.35;font-size:1.35rem;cursor:pointer;padding:0;border-radius:4px;line-height:1;transition:opacity .15s,color .15s}.article-card-edit:hover{opacity:1;color:var(--accent)}.article-card-delete:hover{opacity:1;color:#b03030}.feed-sentinel{padding:32px 0;display:flex;justify-content:center}.feed-loader{display:flex;align-items:center;gap:10px;color:var(--text);font-size:.9rem}.spinner{display:inline-block;width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.feed-end{color:var(--text);font-size:.85rem;opacity:.6;margin:0}.right-col{grid-area:right;position:sticky;top:0;padding:24px 16px;border-left:1px solid var(--border);max-height:100dvh;overflow-y:auto}.calendar{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;overflow:hidden}.cal-nav{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);background:var(--accent);color:#fff}.cal-nav strong{font-size:.95rem;font-weight:700;color:#fff}.cal-nav button{background:#fff3;border:none;color:#fff;width:28px;height:28px;border-radius:6px;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.cal-nav button:hover{background:#ffffff59}.cal-dow-row{display:grid;grid-template-columns:repeat(7,1fr);padding:8px 8px 4px;gap:2px}.cal-dow-row span{text-align:center;font-size:.72rem;font-weight:700;color:var(--text);text-transform:uppercase;letter-spacing:.3px;padding:2px 0}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:4px 8px 10px}.cal-empty{display:block}.cal-day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;border:none;border-radius:6px;background:transparent;font-size:.82rem;color:var(--text-h);cursor:default;gap:2px}.cal-day.today{background:var(--accent);color:#fff;font-weight:700}.cal-day.today:hover{background:var(--accent);opacity:.85}.event-dot{display:block;width:5px;height:5px;border-radius:50%;background:#e07b30;opacity:.9;margin-top:1px;pointer-events:none}.cal-day.today .event-dot{background:#ffffffe6}.cal-day[data-tooltip]{overflow:visible}.cal-day[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#140f0af0;color:#fff;font-size:.8rem;font-weight:500;line-height:1.5;padding:8px 14px;border-radius:8px;pointer-events:none;opacity:0;transition:opacity .15s;z-index:500;white-space:nowrap;text-align:center;box-shadow:0 6px 18px #00000059}.cal-day[data-tooltip]:hover:after{opacity:1}.cal-grid>:nth-child(7n+1)[data-tooltip]:after{left:0;transform:none}.cal-grid>:nth-child(7n+2)[data-tooltip]:after{left:-10px;transform:none}.cal-grid>:nth-child(7n)[data-tooltip]:after{left:auto;right:0;transform:none}.cal-grid>:nth-child(7n-1)[data-tooltip]:after{left:auto;right:-10px;transform:none}.cal-editor{border-top:1px solid var(--border);padding:14px 14px 16px;display:flex;flex-direction:column;gap:10px;background:var(--code-bg)}.cal-editor-date{font-size:.8rem;font-weight:700;color:var(--accent);letter-spacing:.3px}.cal-editor textarea{width:100%;resize:none;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:.85rem;font-family:inherit;color:var(--text-h);background:var(--bg);outline:none;box-sizing:border-box;transition:border-color .15s}.cal-editor textarea:focus{border-color:var(--accent)}.cal-editor-actions{display:flex;gap:6px;flex-wrap:wrap}.btn-primary{padding:6px 14px;border:none;border-radius:7px;background:var(--accent);color:#fff;font-size:.83rem;font-weight:600;cursor:pointer;transition:opacity .15s}.btn-primary:hover{opacity:.85}.btn-ghost{padding:6px 14px;border:1px solid var(--border);border-radius:7px;background:transparent;color:var(--text);font-size:.83rem;cursor:pointer;transition:border-color .15s,color .15s}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.btn-danger{padding:6px 14px;border:none;border-radius:7px;background:#fee2e2;color:#b91c1c;font-size:.83rem;font-weight:600;cursor:pointer;margin-left:auto;transition:opacity .15s}.btn-danger:hover{opacity:.8}.events-panel{margin-top:0;background:var(--card-bg);border:1px solid var(--border);border-radius:12px;overflow:hidden}.events-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--code-bg)}.events-header h3{font-size:.88rem;font-weight:700;color:var(--text-h);text-transform:uppercase;letter-spacing:.5px}.events-add-btn{background:var(--accent);border:none;color:#fff;width:24px;height:24px;border-radius:6px;font-size:1.1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .15s}.events-add-btn:hover{opacity:.8}.events-list{list-style:none;padding:0;margin:0}.events-list li{display:flex;gap:12px;align-items:flex-start;padding:11px 16px;border-bottom:1px solid var(--border);transition:background .12s}.events-list li:last-child{border-bottom:none}.events-list li:hover{background:var(--accent-bg)}.event-date-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:38px;background:var(--accent-bg);border-radius:8px;padding:4px 0;flex-shrink:0}.event-day{font-size:1rem;font-weight:800;color:var(--accent);line-height:1.1}.event-month{font-size:.65rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.3px}.event-body{flex:1;min-width:0}.event-title{font-size:.85rem;font-weight:700;color:var(--text-h);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-desc{font-size:.78rem;color:var(--text);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-remove-btn{background:none;border:none;color:var(--text);font-size:.8rem;cursor:pointer;opacity:.4;padding:2px 4px;border-radius:4px;transition:opacity .15s,color .15s;flex-shrink:0}.event-remove-btn:hover{opacity:1;color:#b91c1c}.events-empty{padding:18px 16px;font-size:.83rem;color:var(--text);opacity:.6;text-align:center}.event-form{border-top:1px solid var(--border);padding:14px 16px;display:flex;flex-direction:column;gap:8px;background:var(--code-bg)}.event-form input{width:100%;padding:7px 10px;border:1px solid var(--border);border-radius:7px;background:var(--bg);color:var(--text-h);font-size:.85rem;font-family:inherit;outline:none;box-sizing:border-box;transition:border-color .15s}.event-form input:focus{border-color:var(--accent)}.event-form-actions{display:flex;gap:6px}@media (max-width: 900px){.layout{grid-template-columns:1fr;grid-template-areas:"center" "right"}.right-col{position:static;border-left:none;border-top:1px solid var(--border);max-height:none}}@media (max-width: 700px){.top-menu{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:4px 12px}.top-menu::-webkit-scrollbar{display:none}.top-menu-btn{font-size:1rem;padding:7px 11px;white-space:nowrap}.site-header{min-height:auto}.header-content{padding:12px 14px 44px}.header-controls{top:auto;bottom:8px;right:10px;gap:6px}.ctrl-btn{padding:5px 10px;font-size:.85rem}.settings-btn{font-size:1rem;padding:5px 8px}.header-text h1{font-size:1.15rem}.header-text p{font-size:.78rem}.center-col{padding:16px 12px}.right-col{padding:14px 12px}.members-grid,.article-form-row.two-col{grid-template-columns:1fr}}.settings-popover{position:absolute;top:calc(100% + 8px);right:0;background:var(--card-bg);border:1px solid var(--border);border-radius:10px;min-width:210px;box-shadow:0 8px 28px #00000024;z-index:300;overflow:hidden}.settings-title{padding:10px 14px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text);border-bottom:1px solid var(--border)}.settings-row{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;font-size:.88rem;color:var(--text-h);cursor:default}.settings-row:hover{background:var(--accent-bg)}.toggle-btn{position:relative;width:40px;height:22px;border-radius:11px;border:none;background:var(--border);cursor:pointer;padding:0;flex-shrink:0;transition:background .22s}.toggle-btn.on{background:var(--accent)}.toggle-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0003;transition:left .22s}.toggle-btn.on .toggle-thumb{left:21px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:var(--card-bg);border:1px solid var(--border);border-radius:14px;padding:28px 32px;width:100%;max-width:380px;box-shadow:0 20px 60px #00000038}.modal h2{font-size:1.2rem;margin:0 0 22px;color:var(--text-h)}.login-form{display:flex;flex-direction:column;gap:14px}.login-form label{display:flex;flex-direction:column;gap:5px}.login-form label span{font-size:.82rem;font-weight:600;color:var(--text)}.login-form input{padding:9px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text-h);font-size:.95rem;font-family:inherit;outline:none;transition:border-color .15s}.login-form input:focus{border-color:var(--accent)}.login-error{font-size:.83rem;margin:0;padding:8px 12px;background:#fef2f2;border-radius:6px;border:1px solid #fca5a5;color:#b91c1c}.login-actions{display:flex;gap:8px;margin-top:4px}.cal-readonly{padding:4px 0}.cal-readonly p{font-size:.88rem;color:var(--text-h);line-height:1.55;margin-bottom:10px}.cal-login-hint{font-size:.82rem!important;color:var(--text)!important;opacity:.7;font-style:italic}.events-login-hint{margin:0;padding:8px 16px 10px;font-size:.78rem;color:var(--text);opacity:.65;font-style:italic;border-bottom:1px solid var(--border)}.members-page{padding:24px}.back-btn{background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:700;padding:8px 16px;cursor:pointer;margin-bottom:20px;display:inline-flex;align-items:center;gap:6px;transition:opacity .15s}.back-btn:hover{opacity:.85}.members-title{font-size:1.4rem;font-weight:800;color:var(--text-h);margin:0 0 24px}.members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.member-card{display:flex;gap:16px;align-items:flex-start;background:var(--card-bg);border:1px solid var(--border);border-radius:14px;padding:20px;transition:box-shadow .2s,transform .2s}.member-card:hover{box-shadow:0 4px 20px #00000014;transform:translateY(-2px)}.member-avatar{width:50px;height:50px;border-radius:50%;background:var(--accent);color:#fff;font-size:1.1rem;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:-.5px}.member-info{display:flex;flex-direction:column;gap:3px;min-width:0}.member-name{font-size:1rem;font-weight:700;color:var(--text-h)}.member-role{font-size:.82rem;color:var(--accent);font-weight:600;margin-bottom:6px}.member-contact{font-size:.8rem;color:var(--text);text-decoration:none;transition:color .15s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-contact:hover{color:var(--accent)}.feedback-page{padding:24px;max-width:640px}.feedback-title{font-size:1.4rem;font-weight:800;color:var(--text-h);margin:0 0 24px}.feedback-form{display:flex;flex-direction:column;gap:18px}.feedback-label{display:flex;flex-direction:column;gap:6px;font-size:.88rem;font-weight:600;color:var(--text)}.feedback-label input,.feedback-label textarea{padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--card-bg);color:var(--text-h);font-size:.95rem;font-family:inherit;resize:vertical;transition:border-color .15s}.feedback-label input:focus,.feedback-label textarea:focus{outline:none;border-color:var(--accent)}.feedback-hint{font-size:.8rem;color:var(--text);opacity:.7;margin:-8px 0 0}.meetings-page{padding:24px}.meetings-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.meetings-title{font-size:1.4rem;font-weight:800;color:var(--text-h);margin:0}.meetings-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.meetings-empty{color:var(--text);font-size:.9rem;opacity:.7;margin-top:8px}.meetings-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px}.meeting-card{position:relative;background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:10px;transition:box-shadow .2s,transform .2s}.meeting-card:hover{box-shadow:0 4px 20px #00000014;transform:translateY(-2px)}.meeting-meta{display:flex;align-items:center;gap:8px}.meeting-date{font-size:.78rem;color:var(--text);white-space:nowrap}.meeting-card-title{font-size:1rem;font-weight:700;color:var(--text-h);line-height:1.4;margin:0}.meeting-preview{font-size:.87rem;color:var(--text);line-height:1.55;margin:0}.meeting-expanded{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:28px 32px;display:flex;flex-direction:column;gap:14px}.meeting-expanded h2{font-size:1.4rem;font-weight:800;color:var(--text-h);line-height:1.35;margin:0}.meeting-body p{font-size:.95rem;color:var(--text);line-height:1.7;margin:0 0 6px}
