*{margin:0;padding:0;box-sizing:border-box}:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color:#333;background-color:#f5f5f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{min-height:100vh}button,input,textarea,select{font-family:inherit}a{text-decoration:none;color:inherit}.loading-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999}.loading-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #31708f;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-layout{display:flex;min-height:100vh;background:linear-gradient(180deg,#f4f7fb,#eef3fb);position:relative}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0f172a52;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.sidebar{width:280px;background:linear-gradient(180deg,#102347,#17335f);color:#fff;transition:width .3s,transform .3s;display:flex;flex-direction:column;position:fixed;height:100vh;overflow-y:auto;z-index:1000;box-shadow:16px 0 40px #10234729}.sidebar.closed{width:82px}.sidebar-header{padding:22px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-header h2{margin:0;font-size:22px;white-space:nowrap;overflow:hidden;font-weight:800}.sidebar.closed .sidebar-header h2{display:none}.sidebar-toggle{background:#ffffff14;border:none;color:#fff;cursor:pointer;font-size:18px;width:38px;height:38px;border-radius:12px;transition:background-color .2s}.sidebar-toggle:hover{background-color:#ffffff24}.sidebar-nav{flex:1;padding:18px 12px 24px;display:flex;flex-direction:column;gap:6px}.nav-item{display:flex;align-items:center;padding:14px;min-height:50px;color:#ffffffd1;text-decoration:none;transition:all .2s ease;border-radius:16px;-webkit-tap-highlight-color:transparent}.nav-item:hover{background:#ffffff14;color:#fff;transform:translate(2px)}.nav-item.active{background:linear-gradient(135deg,#5b95ff38,#ffffff24);color:#fff;box-shadow:inset 0 0 0 1px #ffffff0f}.nav-icon{font-size:19px;margin-right:14px;min-width:24px;text-align:center}.sidebar.closed .nav-icon{margin-right:0}.nav-label{white-space:nowrap;overflow:hidden;font-size:14px;font-weight:600}.sidebar.closed .nav-label{display:none}.admin-main{flex:1;margin-left:280px;transition:margin-left .3s;display:flex;flex-direction:column}.sidebar.closed~.admin-main{margin-left:82px}.menu-toggle-mobile{display:none;background:#fff;border:1px solid rgba(16,35,71,.08);box-shadow:0 8px 20px #10234714;font-size:22px;width:46px;height:46px;cursor:pointer;color:#17335f;border-radius:14px;align-items:center;justify-content:center}.admin-header{position:sticky;top:0;z-index:20;background:#ffffffe0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:18px 24px;border-bottom:1px solid rgba(16,35,71,.08);display:flex;justify-content:space-between;align-items:center;gap:16px}.header-left{flex:1;min-width:0}.header-left h1{margin:0;font-size:26px;color:#102347;font-weight:800}.header-right{display:flex;align-items:center;gap:16px}.user-info{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#f4f7fb;border-radius:999px}.user-name{color:#17335f;font-weight:700}.admin-badge{background:#264f9e;color:#fff;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700}.logout-button{padding:10px 18px;background:#fff1f2;color:#be123c;border:1px solid #fecdd3;border-radius:14px;cursor:pointer;font-weight:700}.logout-button:hover{background:#ffe4e6}.admin-content{flex:1;padding:24px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}@media(max-width:768px){.sidebar-overlay{display:block}.admin-layout:not(.sidebar-open) .sidebar-overlay{display:none}.sidebar{width:290px;max-width:86vw;transform:translate(-100%);box-shadow:none}.sidebar.open{transform:translate(0);box-shadow:8px 0 32px #0f172a3d}.sidebar.closed{width:290px;max-width:86vw}.admin-main,.sidebar.closed~.admin-main{margin-left:0!important;width:100%}.menu-toggle-mobile{display:inline-flex;flex-shrink:0}.admin-header{padding:14px 16px}.header-left h1{font-size:19px}.user-name{display:none}.admin-content{padding:16px}}@media(max-width:480px){.header-right{gap:10px}.header-left h1{font-size:17px}.user-info{padding:6px 10px}.sidebar,.sidebar.open,.sidebar.closed{width:100%;max-width:100%}}@supports (padding: env(safe-area-inset-top)){.admin-header{padding-top:max(14px,env(safe-area-inset-top))}.admin-content{padding-bottom:max(16px,env(safe-area-inset-bottom))}}.login-container{min-height:100vh;background-color:#f5f5f5;display:flex;align-items:center;justify-content:center;padding:20px}.login-content{width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center}.login-logo{margin-bottom:30px}.login-logo img{width:100%;max-width:250px;height:auto}.login-header-text{text-align:center;margin-bottom:30px}.login-header-text h1{color:#464d70;margin:0 0 10px;font-size:28px;font-weight:700}.login-header-text p{color:#666;margin:0;font-size:16px}.login-form{width:100%;display:flex;flex-direction:column;gap:15px}.login-input{width:100%;padding:15px;border-radius:10px;border:none;background-color:#e6e6e6;color:#464d70;font-size:16px;box-sizing:border-box}.login-input::placeholder{color:#777}.password-container{position:relative;display:flex;align-items:center;background-color:#e6e6e6;border-radius:10px}.password-input{flex:1;padding-right:50px}.password-toggle{position:absolute;right:10px;background:none;border:none;cursor:pointer;padding:10px;font-size:20px}.save-credentials{display:flex;align-items:center;gap:10px;align-self:flex-end;margin-top:-10px}.save-credentials input[type=checkbox]{width:20px;height:20px;cursor:pointer}.save-credentials label{font-size:16px;color:#464d70;cursor:pointer}.btn{width:100%;padding:15px;border-radius:10px;border:none;font-size:16px;cursor:pointer;text-decoration:none;text-align:center;box-sizing:border-box;transition:opacity .3s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:#31708f;color:#fff;font-weight:700}.btn-primary:hover:not(:disabled){opacity:.9}@media(min-width:768px){.login-content{max-width:450px}}.dashboard{width:100%;padding:0}.dashboard-section{margin-bottom:24px}.dashboard-section-sg{margin-top:28px;padding:26px 22px 22px;border-top:1px solid rgba(5,150,105,.14);background:linear-gradient(180deg,rgba(16,185,129,.06) 0%,transparent 100%);border-radius:24px}.dashboard-section-title{margin:0 0 24px;font-size:22px;font-weight:800;color:#059669;letter-spacing:-.03em}.stats-grid-sg{margin-bottom:30px}.charts-grid-sg{margin-top:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-bottom:30px}.stat-card{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(16,35,71,.08);border-radius:22px;padding:22px;box-shadow:0 18px 36px #1023470f;display:flex;align-items:center;gap:18px;transition:transform .2s,box-shadow .2s;cursor:pointer;-webkit-user-select:none;user-select:none}.stat-card:hover{transform:translateY(-3px);box-shadow:0 22px 42px #1023471f}.stat-card:active{transform:translateY(-1px)}.stat-icon{font-size:40px;width:74px;height:74px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#264f9e,#4f7cd6);border-radius:18px;box-shadow:inset 0 1px #ffffff2e}.stat-icon-sg{background:linear-gradient(135deg,#10b981,#059669);font-size:32px}.stat-content h3{margin:0 0 8px;color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.stat-content{min-width:0}.stat-number{margin:0;color:#102347;font-size:30px;font-weight:800}.charts-grid{display:flex;flex-direction:column;gap:20px;margin-top:26px}.charts-grid-three{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media(max-width:1200px){.charts-grid-three{grid-template-columns:1fr}}.chart-card{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(16,35,71,.08);border-radius:22px;padding:20px;box-shadow:0 18px 36px #1023470f;min-height:300px;display:flex;flex-direction:column}.chart-card-wide{grid-column:1 / -1}.chart-card>div{flex:1;min-height:250px}.card-title{margin:0 0 16px;color:#102347;font-size:16px;font-weight:800;text-align:center}.users-list{display:flex;flex-direction:column;gap:10px;flex:1}.user-item,.log-item,.sg-pending-item{display:flex;align-items:center;gap:12px;padding:12px;background-color:#f8fafc;border:1px solid rgba(16,35,71,.06);border-radius:16px;transition:background-color .2s}.user-item:hover,.log-item:hover,.sg-pending-item:hover{background-color:#eef4ff}.user-avatar,.logs-list .log-item .log-avatar{width:42px;height:42px;border-radius:14px;color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0;background:linear-gradient(135deg,#264f9e,#4f7cd6)}.logs-list .log-item .log-avatar{font-size:18px;background:linear-gradient(135deg,#10b981,#059669)}.user-info{flex:1;min-width:0}.user-name{margin:0 0 4px;color:#102347;font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email{margin:0 0 4px;color:#475569;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-date,.log-meta{margin:0;color:#94a3b8;font-size:11px}.ranking-period-selector{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.ranking-period-btn{border:1px solid rgba(16,35,71,.08);background:#fff;color:#475569;border-radius:999px;padding:10px 14px;font-weight:700;cursor:pointer;min-height:40px}.ranking-period-btn.active{background:#264f9e;border-color:#264f9e;color:#fff}.ranking-list{display:grid;gap:14px}.ranking-item{display:grid;grid-template-columns:84px minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px;border-radius:20px;border:1px solid rgba(16,35,71,.08);background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 14px 28px #1023470d}.ranking-item.rank-1{border-color:#f59e0b47;background:linear-gradient(180deg,#fffaf0,#fff)}.ranking-item.rank-2{border-color:#94a3b847}.ranking-item.rank-3{border-color:#b453092e}.ranking-position{font-size:26px;font-weight:800;color:#102347;text-align:center}.ranking-user-info{display:flex;align-items:center;gap:12px;min-width:0}.ranking-avatar{width:52px!important;height:52px!important;min-width:52px;min-height:52px;border-radius:16px;overflow:hidden;flex-shrink:0;background:linear-gradient(135deg,#264f9e,#4f7cd6)}.ranking-avatar img,.avatar-placeholder{width:100%!important;height:100%!important}.ranking-avatar img{object-fit:cover;display:block}.avatar-placeholder{display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:18px}.ranking-name{font-weight:700;color:#102347;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ranking-stats{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end}.ranking-stat{min-width:88px;padding:10px 12px;background:#f8fafc;border-radius:14px;text-align:center}.ranking-stat .stat-value{display:block;color:#102347;font-weight:800}.ranking-stat .stat-label{display:block;margin-top:4px;color:#64748b;font-size:12px}@media(max-width:768px){.dashboard{padding:0}.dashboard-section{margin-bottom:18px}.dashboard-section-sg{margin-top:24px;padding:18px 14px}.dashboard-section-title{font-size:18px;margin-bottom:14px}.charts-grid-three{grid-template-columns:1fr;gap:14px;margin-top:16px}.chart-card-wide{grid-column:1}.chart-card{padding:14px;min-height:240px;border-radius:18px}.chart-card>div{min-height:200px}.stats-grid{grid-template-columns:1fr;gap:12px;margin-bottom:18px}.stats-grid-sg{margin-bottom:18px}.stat-card{padding:14px;gap:12px;min-height:0;border-radius:18px;-webkit-tap-highlight-color:transparent}.stat-card:hover{transform:none}.stat-card:active{transform:scale(.98);opacity:.95}.stat-icon{width:52px;height:52px;min-width:52px;min-height:52px;font-size:24px;border-radius:14px}.stat-icon-sg{font-size:22px}.stat-content h3{font-size:10px;line-height:1.3;margin-bottom:4px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.stat-number{font-size:20px}.card-title{font-size:14px}.user-item,.log-item,.sg-pending-item{padding:10px;border-radius:14px}.ranking-period-selector{width:100%;justify-content:flex-start;gap:8px}.ranking-period-btn{flex:1 1 calc(50% - 8px);text-align:center;padding:9px 12px;font-size:13px}.ranking-item{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:8px 10px;padding:10px 12px;border-radius:16px}.ranking-position{grid-column:1;grid-row:1;font-size:16px;text-align:center;width:44px}.ranking-user-info{width:100%;min-width:0;grid-column:2;grid-row:1}.ranking-avatar{width:38px!important;height:38px!important;min-width:38px;min-height:38px;border-radius:12px}.ranking-name{font-size:13px;line-height:1.3;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ranking-stats{grid-column:1 / -1;width:100%;justify-content:flex-start;gap:6px}.ranking-stat{flex:1 1 0;min-width:0;padding:6px 4px;border-radius:10px}.ranking-stat .stat-value{font-size:16px}.ranking-stat .stat-label{font-size:9px}}.users-screen{width:100%}.screen-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;gap:16px;flex-wrap:wrap}.search-box{flex:1;min-width:260px;max-width:420px}.search-box input{width:100%;padding:14px 16px;border:1px solid rgba(16,35,71,.12);border-radius:16px;font-size:15px;background:#fff;color:#102347;box-shadow:0 10px 24px #1023470a}.pagination-header,.table-container,.pagination,.modal-content{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(16,35,71,.08);box-shadow:0 18px 36px #1023470f}.table-container{border-radius:20px;overflow:hidden}.data-table thead{background:#f3f7ff}.data-table th{padding:16px 18px;text-align:left;font-weight:700;color:#17335f;border-bottom:1px solid rgba(16,35,71,.08)}.data-table td{padding:16px 18px;border-bottom:1px solid rgba(16,35,71,.06);color:#475569;vertical-align:middle}.data-table tbody tr:hover{background-color:#f8fbff}.user-photo,.user-photo-placeholder{width:44px;height:44px;border-radius:14px}.user-photo{object-fit:cover;border:1px solid rgba(16,35,71,.08)}.user-photo-placeholder{background:linear-gradient(135deg,#264f9e,#4f7cd6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px}.action-button{padding:8px 12px;margin-right:8px;border:none;border-radius:12px;cursor:pointer;font-size:13px;font-weight:700;transition:opacity .2s,transform .2s}.action-button.delete:disabled{background-color:#e2e8f0;cursor:not-allowed;opacity:.7}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password],.form-group input[type=date],.form-group input[type=file]{width:100%;padding:13px 14px;border:1px solid rgba(16,35,71,.12);border-radius:14px;font-size:15px;box-sizing:border-box;background:#fff}.pagination-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;padding:14px 16px;border-radius:18px}.pagination-info,.items-per-page label{color:#64748b;font-size:14px}.items-per-page select{padding:8px 12px;border:1px solid rgba(16,35,71,.12);border-radius:12px;font-size:14px;background:#fff}.pagination{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:24px;padding:16px;border-radius:18px}.pagination-button,.pagination-number{padding:10px 16px;border:1px solid rgba(16,35,71,.12);border-radius:12px;background:#fff;color:#17335f;font-size:14px;font-weight:600;cursor:pointer}.pagination-number.active{background:#264f9e;color:#fff;border-color:#264f9e}.pagination-numbers{display:flex;gap:8px}.pagination-ellipsis{display:flex;align-items:center;color:#94a3b8}@media(max-width:768px){.screen-header{align-items:stretch}.search-box{min-width:100%;max-width:none}.add-button{width:100%}.pagination-header{flex-direction:column;align-items:stretch;gap:12px}.items-per-page{justify-content:space-between}.table-container{border-radius:18px;overflow-x:auto}.data-table th,.data-table td{padding:12px 14px;font-size:13px}.modal-overlay{padding:0;align-items:flex-end}.modal-content{width:100%;max-height:94vh;border-bottom-left-radius:0;border-bottom-right-radius:0}.modal-header,.modal-form{padding-left:16px;padding-right:16px}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.pagination{flex-wrap:wrap}}.walls-screen{width:100%}.screen-header{display:flex;justify-content:flex-end;margin-bottom:20px}.walls-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.wall-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.wall-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026}.wall-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.wall-header h3{margin:0;color:#333;font-size:20px;flex:1}.wall-actions{display:flex;gap:8px}.action-button{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.wall-body{color:#666;line-height:1.6;margin-bottom:15px;flex:1}.wall-footer{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid #eee;font-size:14px;color:#999}.wall-likes{display:flex;align-items:center;gap:5px}.wall-date{color:#999}.form-group input[type=text],.form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:16px;box-sizing:border-box;font-family:inherit}.form-group textarea{resize:vertical;min-height:120px}.wall-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:15px;margin-bottom:15px}.wall-photo{width:100%;height:150px;object-fit:cover;border-radius:8px;border:1px solid #ddd}.photo-upload-area{margin-top:10px}.photo-add-button{display:inline-block;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s;margin-bottom:15px}.photo-add-button:hover{opacity:.9}.photo-add-button:disabled{opacity:.6;cursor:not-allowed}.photo-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-top:15px}.photo-item{position:relative;width:100%;padding-bottom:100%;border-radius:8px;overflow:hidden;border:1px solid #ddd}.photo-item img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.photo-remove-button{position:absolute;top:5px;right:5px;width:24px;height:24px;background:#e74c3ce6;color:#fff;border:none;border-radius:50%;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:background .2s}.photo-remove-button:hover{background:#c0392b}.members-screen{width:100%}.screen-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px;flex-wrap:wrap}.search-box{flex:1;max-width:400px;min-width:200px}.search-box input{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:16px}.filters-box{display:flex;align-items:center;gap:10px}.status-filter{padding:12px 16px;border:1px solid #ddd;border-radius:6px;font-size:16px;background:#fff;cursor:pointer;transition:border-color .2s,box-shadow .2s;min-width:180px}.status-filter:hover{border-color:#667eea}.status-filter:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.add-button{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.add-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.data-table thead{background-color:#f8f9fa}.data-table tbody tr:hover{background-color:#f8f9fa}.user-photo{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid #dee2e6}.user-photo-placeholder{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;border:2px solid #dee2e6}.action-button{padding:6px 12px;margin-right:8px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.form-group input[type=text],.form-group input[type=date],.form-group select{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:16px;box-sizing:border-box}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-group input[type=checkbox]{width:auto;cursor:pointer}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.status-approved{background-color:#d4edda;color:#155724}.status-pending{background-color:#fff3cd;color:#856404}.status-rejected{background-color:#f8d7da;color:#721c24}.pagination-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d}.pagination-info{color:#666;font-size:14px}.items-per-page{display:flex;align-items:center;gap:10px}.items-per-page label{color:#666;font-size:14px;font-weight:500}.items-per-page select{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;cursor:pointer;transition:border-color .2s}.items-per-page select:hover{border-color:#667eea}.items-per-page select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.pagination{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:30px;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d}.pagination-button{padding:10px 20px;border:1px solid #ddd;border-radius:6px;background:#fff;color:#333;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.pagination-button:hover:not(:disabled){background:#f8f9fa;border-color:#667eea;color:#667eea}.pagination-button:disabled{opacity:.5;cursor:not-allowed;background:#f8f9fa}.pagination-numbers{display:flex;align-items:center;gap:5px}.pagination-number{min-width:40px;height:40px;padding:0 12px;border:1px solid #ddd;border-radius:6px;background:#fff;color:#333;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.pagination-number:hover:not(.active){background:#f8f9fa;border-color:#667eea;color:#667eea}.pagination-number.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff;font-weight:600}.pagination-ellipsis{padding:0 8px;color:#999;font-size:14px}@media(max-width:768px){.pagination-header{flex-direction:column;gap:15px;align-items:flex-start}.pagination{flex-wrap:wrap;gap:5px}.pagination-numbers{flex-wrap:wrap}.pagination-number{min-width:35px;height:35px;padding:0 8px;font-size:13px}.pagination-button{padding:8px 16px;font-size:13px}}.warnings-screen{width:100%}.warnings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.warning-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.warning-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026}.warning-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;gap:15px}.warning-header-info{flex:1}.warning-header h3{margin:0 0 8px;color:#333;font-size:20px}.warning-meta{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#666}.warning-user{font-weight:500}.warning-date{color:#999}.warning-actions{display:flex;gap:8px}.warning-body{color:#666;line-height:1.6;margin-bottom:15px;flex:1}.warning-body p{margin:0}.warning-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin-bottom:15px}.warning-photo{width:100%;height:100px;object-fit:cover;border-radius:6px;cursor:pointer;transition:transform .2s}.warning-photo:hover{transform:scale(1.05)}.warning-footer{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid #eee}.warning-status{font-size:14px;font-weight:500;padding:6px 12px;border-radius:20px;display:inline-block}.warning-status.in-review{background-color:#fff3cd;color:#856404}.warning-status.resolved{background-color:#d4edda;color:#155724}.form-group select{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:16px;box-sizing:border-box;font-family:inherit;background-color:#fff;cursor:pointer}.form-group select:focus{outline:none;border-color:#667eea}@media(max-width:768px){.warnings-grid{grid-template-columns:1fr}.warning-header{flex-direction:column}.warning-actions{width:100%;justify-content:flex-end}.screen-header{flex-direction:column;align-items:flex-start}.filter-container{width:100%;flex-wrap:wrap}.filter-button{flex:1;min-width:100px}}.found-lost-screen{width:100%}.screen-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.filter-container{display:flex;gap:10px}.filter-button{padding:10px 20px;border:2px solid #ddd;border-radius:6px;background-color:#fff;color:#666;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.filter-button:hover{border-color:#667eea;color:#667eea}.filter-button.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent}.items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.item-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.item-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026}.item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;gap:15px}.item-header-info{flex:1}.item-header h3{margin:0 0 8px;color:#333;font-size:20px}.item-meta{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#666}.item-info-text{font-weight:500}.item-date{color:#999}.item-actions{display:flex;gap:8px}.action-button{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s;white-space:nowrap}.action-button.edit{background-color:#3498db;color:#fff}.action-button.edit:hover{background-color:#2980b9}.action-button.delete{background-color:#e74c3c;color:#fff}.action-button.delete:hover{background-color:#c0392b}.item-photo-container{margin-bottom:15px;border-radius:8px;overflow:hidden;max-height:300px;display:flex;justify-content:center;align-items:center;background-color:#f8f9fa}.item-photo{width:100%;max-height:300px;object-fit:contain;border-radius:8px}.item-body{color:#666;line-height:1.6;margin-bottom:15px;flex:1}.item-details p{margin:8px 0;font-size:14px}.item-footer{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid #eee}.item-status{font-size:14px;font-weight:500;padding:6px 12px;border-radius:20px;display:inline-block}.item-status.lost{background-color:#fff3cd;color:#856404}.item-status.recovered{background-color:#d4edda;color:#155724}.no-list-area{text-align:center;padding:60px 20px;color:#999;font-size:16px}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-header h2{margin:0;color:#333}.close-button{background:none;border:none;font-size:32px;color:#999;cursor:pointer;line-height:1;padding:0;width:32px;height:32px}.close-button:hover{color:#333}.form-group{margin-bottom:20px}.form-group input[type=text],.form-group select{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:16px;box-sizing:border-box;font-family:inherit;background-color:#fff;cursor:pointer}.form-group select:focus,.form-group input:focus{outline:none;border-color:#667eea}.error-message{background-color:#fee;color:#c33;padding:12px;border-radius:6px;border:1px solid #fcc;margin-bottom:20px;font-size:14px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:30px;padding-top:20px;border-top:1px solid #dee2e6}.modal-actions button{padding:10px 24px;border:none;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s}.modal-actions button[type=button]{background-color:#95a5a6;color:#fff}.modal-actions button[type=button]:hover{background-color:#7f8c8d}.modal-actions button[type=submit]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-actions button[type=submit]:hover{opacity:.9}@media(max-width:768px){.items-grid{grid-template-columns:1fr}.item-header{flex-direction:column}.item-actions{width:100%;justify-content:flex-end}.screen-header{flex-direction:column;align-items:flex-start}.filter-container{width:100%;flex-wrap:wrap}.filter-button{flex:1;min-width:100px}}.birthdays-screen{width:100%}.screen-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:20px}.screen-header h1{margin:0;color:#333;font-size:28px;font-weight:700}.filters-container{display:flex;gap:15px;align-items:center}.filter-group{display:flex;align-items:center;gap:8px}.filter-group label{font-size:14px;font-weight:500;color:#666}.filter-select{padding:10px 15px;border:1px solid #ddd;border-radius:6px;font-size:14px;background-color:#fff;cursor:pointer;transition:border-color .2s;min-width:140px}.filter-select:hover{border-color:#667eea}.filter-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.birthdays-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.birthday-card{background:#fff;border-radius:12px;padding:25px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .2s,box-shadow .2s}.birthday-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026}.birthday-photo-section{margin-bottom:20px;position:relative}.birthday-photo{width:100px;height:100px;border-radius:50%;object-fit:cover;border:4px solid #f0f0f0;box-shadow:0 2px 8px #0000001a}.birthday-photo-placeholder{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:700;border:4px solid #f0f0f0;box-shadow:0 2px 8px #0000001a}.birthday-info{width:100%}.birthday-name{font-size:20px;font-weight:700;color:#333;margin:0 0 8px}.birthday-email{font-size:14px;color:#667eea;margin:0 0 8px;text-decoration:none;display:block;transition:color .2s}.birthday-email:hover{color:#5568d3;text-decoration:underline}.birthday-phone{font-size:14px;color:#25d366;margin:0 0 12px;text-decoration:none;display:block;transition:color .2s}.birthday-phone:hover{color:#20ba5a;text-decoration:underline}.birthday-details{display:flex;flex-direction:column;gap:6px;margin:0}.birthday-age{font-size:16px;font-weight:600;color:#667eea;display:block}.birthday-date{font-size:14px;color:#999;display:block}.no-list-area{text-align:center;padding:60px 20px;color:#999;font-size:16px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}@media(max-width:768px){.screen-header{flex-direction:column;align-items:flex-start}.filters-container{width:100%;justify-content:space-between}.filter-group{flex:1}.filter-select{width:100%;min-width:auto}.birthdays-grid{grid-template-columns:1fr}}.songs-screen{width:100%}.songs-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;flex-wrap:wrap}.songs-toolbar{display:flex;flex:1;gap:12px;flex-wrap:wrap;align-items:center}.songs-search-box{flex:1;min-width:260px;display:flex;align-items:center;gap:8px;padding:0 14px;border-radius:16px;background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(16,35,71,.1);box-shadow:0 14px 30px #1023470d}.songs-search-icon{font-size:15px}.songs-search-box input{width:100%;padding:14px 0;border:none;background:transparent;color:#102347;font-size:15px;outline:none}.songs-filter-group{display:flex;gap:10px;flex-wrap:wrap}.songs-filter-group select{min-width:180px;padding:13px 14px;border-radius:14px;border:1px solid rgba(16,35,71,.1);background:linear-gradient(180deg,#fff,#f8fbff);color:#17335f;font-size:14px;font-weight:600;box-shadow:0 14px 30px #1023470d}.add-button{padding:12px 22px;background:linear-gradient(135deg,#264f9e,#4f7cd6);color:#fff;border:none;border-radius:14px;font-size:15px;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 14px 30px #264f9e2e}.add-button:hover{transform:translateY(-2px);box-shadow:0 18px 34px #264f9e3d}.songs-header-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.youtube-button{padding:12px 22px;background:linear-gradient(135deg,#c4302b,#ef5350);color:#fff;border:none;border-radius:14px;font-size:15px;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 14px 30px #c4302b2e}.youtube-button:hover{transform:translateY(-2px);box-shadow:0 18px 34px #c4302b42}.youtube-status{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;font-size:14px;font-weight:600}.youtube-status--loading{background:#264f9e14;color:#264f9e}.youtube-status--ok{background:#2ea0431f;color:#1f7a33}.youtube-spinner{width:18px;height:18px;border:3px solid rgba(38,79,158,.25);border-top-color:#264f9e;border-radius:50%;animation:youtube-spin .8s linear infinite;flex-shrink:0}@keyframes youtube-spin{to{transform:rotate(360deg)}}.songs-summary,.songs-list,.modal-content{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(16,35,71,.08);box-shadow:0 18px 36px #1023470f}.songs-summary{margin-bottom:16px;padding:12px 16px;border-radius:16px;display:flex;justify-content:space-between;align-items:center;gap:12px;color:#64748b;font-size:14px}.songs-clear-filters{border:none;background:#eaf2ff;color:#264f9e;padding:8px 12px;border-radius:12px;font-weight:700;cursor:pointer}.songs-list{border-radius:20px;overflow-x:auto}.no-songs{padding:40px;text-align:center;color:#64748b}.songs-table{width:100%;border-collapse:collapse}.songs-table thead{background:#f3f7ff}.songs-table th{padding:16px 18px;text-align:left;font-weight:700;color:#17335f;border-bottom:1px solid rgba(16,35,71,.08)}.column-sort-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;border:none;background:transparent;padding:0;color:inherit;font:inherit;font-weight:700;cursor:pointer}.songs-table td{padding:16px 18px;border-bottom:1px solid rgba(16,35,71,.06);color:#475569;vertical-align:middle}.songs-table tbody tr:hover{background:#f8fbff}.song-type-badge{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}.song-type-badge.local{background:#eefbf3;color:#15803d}.song-type-badge.url{background:#eef4ff;color:#1d4ed8}.song-actions{display:flex;gap:8px}.action-button{padding:8px 12px;border:none;border-radius:12px;cursor:pointer;font-size:13px;font-weight:700;transition:opacity .2s,transform .2s}.action-button:hover{transform:translateY(-1px)}.action-button.edit{background-color:#eaf2ff;color:#264f9e}.action-button.delete{background-color:#fff1f2;color:#be123c}.modal-content{border-radius:24px;width:min(640px,100%);max-height:92vh;overflow-y:auto}.form-group input[type=text],.form-group input[type=url],.form-group input[type=number],.form-group textarea{width:100%;padding:13px 14px;border:1px solid rgba(16,35,71,.12);border-radius:14px;font-size:15px;box-sizing:border-box;background:#fff}.form-group small{display:block;margin-top:6px;color:#64748b;font-size:13px}.file-upload-area{display:flex;flex-direction:column;gap:10px}.file-add-button{display:inline-block;padding:12px 18px;background:#f8fbff;border:2px dashed rgba(16,35,71,.16);border-radius:14px;text-align:center;cursor:pointer;transition:all .2s;font-weight:600;color:#264f9e}.file-info{padding:10px 12px;background:#eef4ff;border-radius:12px;font-size:14px;color:#33538b}@media(max-width:768px){.songs-header{align-items:stretch}.songs-toolbar{flex-direction:column;align-items:stretch}.songs-search-box{min-width:100%}.songs-filter-group{flex-direction:column}.songs-filter-group select,.add-button{width:100%}.songs-summary{flex-direction:column;align-items:stretch}.songs-table{font-size:14px}.songs-table th,.songs-table td{padding:10px}.song-actions{flex-direction:column}.modal-overlay{padding:0;align-items:flex-end}.modal-content{width:100%;max-height:94vh;border-bottom-left-radius:0;border-bottom-right-radius:0}.modal-header,.modal-form{padding-left:16px;padding-right:16px}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}.events-screen{width:100%}.events-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;flex-wrap:wrap}.events-header-main{display:flex;flex-direction:column;gap:12px}.events-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.view-switcher{display:inline-flex;padding:4px;border-radius:14px;background:#eef4ff}.view-switch-button,.event-type-filter{border:1px solid rgba(16,35,71,.08);background:#fff;color:#17335f;font-weight:700}.view-switch-button{border:none;background:transparent;padding:10px 14px;border-radius:10px;cursor:pointer}.view-switch-button.active{background:#264f9e;color:#fff}.event-type-filter{min-width:190px;padding:11px 14px;border-radius:14px}.calendar-nav{display:flex;align-items:center;gap:14px}.calendar-nav-label{display:block;margin-bottom:4px;color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.calendar-nav h2{margin:0;color:#102347}.calendar-nav-button,.add-button{border:none;cursor:pointer}.calendar-nav-button{width:42px;height:42px;border-radius:14px;background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(16,35,71,.08);box-shadow:0 14px 30px #1023470d;color:#17335f;font-size:18px}.add-button{padding:12px 22px;background:linear-gradient(135deg,#264f9e,#4f7cd6);color:#fff;border-radius:14px;font-size:15px;font-weight:700;box-shadow:0 14px 30px #264f9e2e}.events-calendar-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.9fr);gap:18px}.calendar-card,.selected-day-panel,.modal-content{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(16,35,71,.08);box-shadow:0 18px 36px #1023470f}.calendar-card,.selected-day-panel{border-radius:24px;padding:18px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.calendar-weekday{text-align:center;font-size:12px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.06em}.days{margin-top:12px}.calendar-day{min-height:98px;border-radius:18px;border:1px solid rgba(16,35,71,.08);background:#fff;padding:10px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;cursor:pointer;text-align:left}.calendar-day.muted{opacity:.45}.calendar-day.selected{border-color:#264f9e6b;box-shadow:0 14px 28px #264f9e24;background:#f3f7ff}.calendar-day.today .calendar-day-number{background:#264f9e;color:#fff}.calendar-day-number{width:32px;height:32px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:#17335f}.calendar-day-events{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.calendar-event-dot{width:10px;height:10px;border-radius:999px}.calendar-event-dot.recurring{box-shadow:0 0 0 2px #0f172a1f;border:2px solid #fff}.calendar-event-more{font-size:11px;color:#64748b;font-weight:700}.selected-day-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.selected-day-eyebrow{display:block;margin-bottom:4px;color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.selected-day-header h3{margin:0;color:#102347;text-transform:capitalize}.selected-day-count{padding:7px 12px;border-radius:999px;background:#eaf2ff;color:#264f9e;font-weight:700;font-size:13px}.selected-day-list{display:flex;flex-direction:column;gap:14px}.empty-state{text-align:center;padding:48px 20px;color:#64748b}.event-card{border:1px solid rgba(16,35,71,.08);border-radius:18px;padding:16px;background:#fff}.event-card-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.event-card-title-row{display:flex;gap:10px;align-items:center}.event-card-title-row h4{margin:0;color:#102347}.event-color-dot{width:12px;height:12px;border-radius:999px}.event-card-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px;color:#64748b;font-size:14px}.event-type-badge{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;color:#fff;font-size:12px;font-weight:700}.event-description,.event-recurring{margin:0 0 10px;color:#475569;line-height:1.5}.recurring-highlight{display:inline-flex;align-items:center;gap:6px;width:fit-content;padding:6px 10px;border-radius:999px;background:#f5f3ff;color:#7c3aed;font-weight:700}.week-view-card{min-height:100%}.week-view-list{display:flex;flex-direction:column;gap:10px}.week-event-row{width:100%;display:grid;grid-template-columns:72px 1fr auto auto;gap:12px;align-items:center;padding:14px;border-radius:16px;border:1px solid rgba(16,35,71,.08);background:#fff;cursor:pointer;text-align:left}.week-event-date{color:#264f9e;font-weight:700}.week-event-title{color:#102347;font-weight:700}.week-event-meta,.week-event-recurring{color:#64748b;font-size:13px}.event-actions{display:flex;gap:8px}.action-button{padding:8px 12px;border:none;border-radius:12px;cursor:pointer;font-size:13px;font-weight:700}.action-button.edit{background:#eaf2ff;color:#264f9e}.action-button.delete{background:#fff1f2;color:#be123c}.modal-overlay{position:fixed;inset:0;background-color:#0f172a6b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000;padding:16px}.modal-content{border-radius:24px;max-width:640px;width:100%;max-height:92vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid rgba(16,35,71,.08)}.modal-header h2{margin:0;color:#102347}.close-button{background:#f4f7fb;border:none;font-size:26px;color:#64748b;cursor:pointer;line-height:1;width:38px;height:38px;border-radius:12px}.modal-form{padding:20px 22px 24px}.error-message{background-color:#fff1f2;color:#be123c;padding:12px 14px;border-radius:12px;border:1px solid #fecdd3;margin-bottom:18px;font-size:14px}.form-group{margin-bottom:18px}.form-group label{display:block;margin-bottom:8px;color:#17335f;font-weight:700}.form-group input[type=text],.form-group input[type=date],.form-group input[type=time],.form-group input[type=number],.form-group textarea,.form-group select{width:100%;padding:13px 14px;border:1px solid rgba(16,35,71,.12);border-radius:14px;font-size:15px;box-sizing:border-box;background:#fff;font-family:inherit}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.color-input-group{display:flex;gap:10px;align-items:center}.color-input-group input[type=color]{width:60px;height:40px;border:1px solid #ddd;border-radius:6px;cursor:pointer}.color-text-input{flex:1}.checkbox-label{display:flex!important;align-items:center;gap:8px;cursor:pointer;font-weight:400!important}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.recurrence-section{margin-top:20px;padding:20px;background-color:#f9f9f9;border-radius:16px;border:1px solid #e0e0e0}.section-title{margin:0 0 15px;font-size:16px;color:#333;font-weight:600}.form-hint,.form-error{display:block;margin-top:5px;font-size:12px}.form-hint{color:#666;font-style:italic}.form-error{color:#e74c3c}.days-of-week-selector{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.day-checkbox-label{display:flex;align-items:center;gap:6px;padding:8px 12px;background-color:#fff;border:1px solid #ddd;border-radius:10px;cursor:pointer}.day-checkbox-label input{margin:0}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:18px;border-top:1px solid rgba(16,35,71,.08)}.modal-actions button{padding:10px 20px;border:none;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer}.modal-actions button[type=button]{background-color:#e2e8f0;color:#334155}.modal-actions button[type=submit]{background:linear-gradient(135deg,#264f9e,#4f7cd6);color:#fff}@media(max-width:1024px){.events-calendar-layout{grid-template-columns:1fr}}@media(max-width:768px){.events-header{align-items:stretch}.events-toolbar{flex-direction:column;align-items:stretch}.view-switcher,.event-type-filter{width:100%}.calendar-nav{justify-content:space-between;width:100%}.add-button{width:100%}.calendar-card,.selected-day-panel{padding:14px;border-radius:20px}.calendar-grid{gap:6px}.calendar-day{min-height:78px;padding:8px;border-radius:14px}.calendar-day-number{width:28px;height:28px;font-size:13px}.event-card-top,.selected-day-header,.event-actions{flex-direction:column}.week-event-row,.form-row{grid-template-columns:1fr}.modal-overlay{padding:0;align-items:flex-end}.modal-content{width:100%;max-height:94vh;border-bottom-left-radius:0;border-bottom-right-radius:0}.modal-header,.modal-form{padding-left:16px;padding-right:16px}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}.contacts-screen{padding:30px;background:#f5f7fa;min-height:100vh}.contacts-header{margin-bottom:30px}.contacts-header h2{margin:0 0 20px;color:#2c3e50;font-size:32px;font-weight:700}.contacts-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-top:20px}.stat-item{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 8px #00000014;text-align:center;transition:transform .2s,box-shadow .2s}.stat-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.stat-item.stat-unread{border-top:3px solid #3498db}.stat-item.stat-read{border-top:3px solid #95a5a6}.stat-item.stat-replied{border-top:3px solid #27ae60}.stat-value{display:block;font-size:32px;font-weight:700;color:#2c3e50;margin-bottom:5px}.stat-label{display:block;font-size:14px;color:#7f8c8d;text-transform:uppercase;letter-spacing:.5px}.contacts-filters{display:flex;gap:10px;margin-bottom:25px;flex-wrap:wrap}.filter-btn{background:#fff;border:2px solid #e0e0e0;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;color:#666;transition:all .2s}.filter-btn:hover{border-color:#3498db;color:#3498db}.filter-btn.active{background:#3498db;border-color:#3498db;color:#fff}.empty-state{text-align:center;padding:80px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.empty-state p{color:#95a5a6;font-size:16px;margin:0}.contacts-list{display:grid;gap:20px;margin-bottom:30px}.contact-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000014;transition:all .3s;border-left:4px solid transparent;position:relative;overflow:hidden}.contact-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:transparent;transition:background .3s}.contact-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.contact-card.unread{border-left-color:#3498db;background:linear-gradient(to right,#f8f9ff,#fff 4%)}.contact-card.unread:before{background:#3498db}.contact-card-header{margin-bottom:20px;padding-bottom:20px;border-bottom:2px solid #f0f0f0}.contact-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:12px}.contact-name-section{flex:1;min-width:0}.contact-info h3{margin:0 0 8px;color:#2c3e50;font-size:20px;font-weight:600;line-height:1.3}.contact-status-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.status-badge{padding:5px 12px;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;gap:5px;text-transform:uppercase;letter-spacing:.5px}.badge-icon{font-size:12px}.status-unread{background:#e3f2fd;color:#1976d2}.status-read{background:#eceff1;color:#546e7a}.status-replied{background:#e8f5e9;color:#2e7d32}.contact-details{display:flex;flex-direction:column;gap:8px;margin-top:12px}.contact-detail-item{display:flex;align-items:center;gap:8px;color:#666;font-size:14px}.detail-icon{font-size:16px;opacity:.7}.contact-email,.contact-phone,.contact-date{color:#555;font-size:14px}.contact-card-body{margin-bottom:20px}.contact-subject{display:flex;align-items:baseline;gap:8px;margin-bottom:12px;padding:12px;background:#f8f9fa;border-radius:8px;border-left:3px solid #3498db}.subject-label{font-weight:600;color:#555;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.subject-text{color:#2c3e50;font-size:15px;font-weight:500;flex:1}.contact-message-preview{color:#666;font-size:14px;line-height:1.6;padding:12px;background:#fafafa;border-radius:6px;min-height:40px}.contact-card-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-top:16px;border-top:1px solid #f0f0f0}.contact-right-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.contact-right-actions .btn-delete{min-width:120px;padding:10px 18px}.contact-actions{display:flex;gap:8px;flex-wrap:wrap}.btn-view,.btn-action{display:inline-flex;align-items:center;gap:6px;border:none;padding:10px 16px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s;white-space:nowrap}.btn-icon{font-size:16px}.btn-text{font-size:13px}.btn-view{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;box-shadow:0 2px 8px #3498db4d}.btn-view:hover{background:linear-gradient(135deg,#2980b9,#21618c);box-shadow:0 4px 12px #3498db66;transform:translateY(-1px)}.btn-mark-read{background:#95a5a6;color:#fff}.btn-mark-read:hover{background:#7f8c8d;transform:translateY(-1px)}.btn-mark-replied{background:#27ae60;color:#fff}.btn-mark-replied:hover{background:#229954;transform:translateY(-1px)}.btn-unmark{background:#e74c3c;color:#fff}.btn-unmark:hover{background:#c0392b;transform:translateY(-1px)}.btn-delete{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;box-shadow:0 3px 10px #e74c3c59;border:1px solid rgba(255,255,255,.25);position:relative;overflow:hidden;font-weight:600;letter-spacing:.3px}.btn-delete:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);transition:left .6s ease}.btn-delete:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .4s ease,height .4s ease}.btn-delete:hover{background:linear-gradient(135deg,#c0392b,#a93226);box-shadow:0 5px 20px #e74c3c99;transform:translateY(-2px) scale(1.02);border-color:#fff6}.btn-delete:hover:before{left:100%}.btn-delete:hover:after{width:300px;height:300px}.btn-delete:active{transform:translateY(0) scale(.98);box-shadow:0 2px 8px #e74c3c66}.btn-delete .btn-icon{position:relative;z-index:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.btn-delete .btn-text{position:relative;z-index:1}.pagination{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:40px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.pagination-btn{background:#3498db;color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#2980b9;transform:translateY(-1px)}.pagination-btn:disabled{background:#bdc3c7;cursor:not-allowed;transform:none}.pagination-info{color:#555;font-size:14px;font-weight:500}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:16px;width:90%;max-width:700px;max-height:90vh;overflow:hidden;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:2px solid #f0f0f0;background:linear-gradient(135deg,#f8f9fa,#fff)}.modal-header h2{margin:0;color:#2c3e50;font-size:24px;font-weight:600}.modal-close{background:#f0f0f0;border:none;font-size:24px;color:#666;cursor:pointer;line-height:1;padding:8px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.modal-close:hover{background:#e0e0e0;color:#333;transform:rotate(90deg)}.modal-body{padding:24px;overflow-y:auto;flex:1}.contact-detail-item,.contact-detail-item.full-width{margin-bottom:20px}.contact-detail-item strong{display:block;color:#555;font-size:13px;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.contact-detail-item span{color:#2c3e50;font-size:15px;display:block}.contact-message-full{color:#2c3e50;font-size:15px;line-height:1.7;white-space:pre-wrap;background:#f8f9fa;padding:20px;border-radius:8px;margin-top:8px;border-left:3px solid #3498db}.contact-user-agent{color:#666;font-size:13px;font-family:Courier New,monospace;word-break:break-all;background:#f8f9fa;padding:12px;border-radius:6px;display:block;margin-top:8px}.modal-footer{padding:20px 24px;border-top:2px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center;background:#fafafa;gap:15px}.modal-actions-left,.modal-actions-right,.modal-actions{display:flex;gap:10px;flex-wrap:wrap}.modal-actions .btn-action{padding:12px 20px;font-size:14px}.btn-delete-modal{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;box-shadow:0 3px 10px #e74c3c59;border:1px solid rgba(255,255,255,.25);position:relative;overflow:hidden;font-weight:600;letter-spacing:.3px}.btn-delete-modal:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);transition:left .6s ease}.btn-delete-modal:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .4s ease,height .4s ease}.btn-delete-modal:hover{background:linear-gradient(135deg,#c0392b,#a93226);box-shadow:0 5px 20px #e74c3c99;transform:translateY(-2px) scale(1.02);border-color:#fff6}.btn-delete-modal:hover:before{left:100%}.btn-delete-modal:hover:after{width:300px;height:300px}.btn-delete-modal:active{transform:translateY(0) scale(.98);box-shadow:0 2px 8px #e74c3c66}.btn-delete-modal .btn-icon{position:relative;z-index:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.btn-delete-modal .btn-text{position:relative;z-index:1}@media(max-width:768px){.contacts-screen{padding:15px}.contacts-header h2{font-size:24px}.contacts-stats-grid{grid-template-columns:repeat(2,1fr);gap:10px}.stat-value{font-size:24px}.contacts-filters{gap:8px}.filter-btn{padding:8px 14px;font-size:12px}.contact-card{padding:16px}.contact-info h3{font-size:18px}.contact-title-row{flex-direction:column;gap:10px}.contact-card-footer{flex-direction:column;align-items:stretch}.contact-actions{width:100%}.btn-view,.btn-action{width:100%;justify-content:center}.modal-content{width:95%;margin:10px;max-height:95vh}.modal-header,.modal-body{padding:16px}.modal-footer{padding:16px;flex-direction:column;align-items:stretch}.modal-actions-left,.modal-actions-right{width:100%;justify-content:center}.contact-right-actions{flex-direction:column;width:100%}.contact-right-actions .btn-view,.contact-right-actions .btn-delete{width:100%}}.logs-screen{padding:30px;background:#f5f7fa;min-height:100vh}.logs-header{margin-bottom:30px}.logs-header-top{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.logs-header h2{margin:0;color:#2c3e50;font-size:32px;font-weight:700}.logs-subtitle{margin:10px 0 0;color:#7f8c8d;font-size:15px}.btn-refresh{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-refresh:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-refresh:active{transform:translateY(0)}.logs-empty{text-align:center;padding:80px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.logs-empty-icon{font-size:48px;display:block;margin-bottom:16px;opacity:.6}.logs-empty p{margin:0;color:#7f8c8d;font-size:16px}.logs-table-wrapper{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.logs-table{width:100%;border-collapse:collapse}.logs-table th,.logs-table td{padding:14px 18px;text-align:left;border-bottom:1px solid #eee}.logs-table th{background:#f8f9fa;color:#5a6c7d;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.logs-table tbody tr:hover{background:#f8f9ff}.logs-table tbody tr:last-child td{border-bottom:none}.log-type-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600}.log-type-login{background:#10b98126;color:#059669}.log-type-login_app{background:#3b82f626;color:#2563eb}.log-type-login_google{background:#ea580c26;color:#c2410c}.log-ip{font-family:monospace;font-size:13px;color:#64748b}.log-date{color:#64748b;font-size:13px;white-space:nowrap}@media(max-width:768px){.logs-screen{padding:20px}.logs-table-wrapper{overflow-x:auto}.logs-table{min-width:600px}.logs-table th,.logs-table td{padding:12px 14px;font-size:13px}}.small-groups-screen{padding:30px;background:#f5f7fa;min-height:100vh}.sg-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:24px}.sg-header h2{margin:0;color:#2c3e50;font-size:28px;font-weight:700}.sg-reports{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin-bottom:24px}.sg-report-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;text-align:center}.sg-report-value{display:block;font-size:28px;font-weight:700;color:#667eea;margin-bottom:4px}.sg-report-label{font-size:13px;color:#64748b}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{background:#e2e8f0;color:#475569;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}.btn-secondary:hover{background:#cbd5e1}.sg-empty{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.sg-empty p{margin:0 0 16px;color:#64748b;font-size:16px}.sg-table-wrapper{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow-x:auto}.sg-table{width:100%;border-collapse:collapse}.sg-table th,.sg-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #eee}.sg-table th{background:#f8fafc;color:#5a6c7d;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.sg-table tbody tr:hover{background:#f8f9ff}.sg-table tbody tr:last-child td{border-bottom:none}.sg-table-logo-col{width:56px;text-align:center}.sg-table-logo-cell{vertical-align:middle;text-align:center}.sg-table-logo{width:40px;height:40px;object-fit:cover;border-radius:8px;border:1px solid #e2e8f0;display:inline-block}.sg-table-logo-empty{color:#94a3b8;font-size:14px}.btn-sm{padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;border:none;margin-right:6px}.btn-view{background:#dbeafe;color:#1d4ed8}.btn-view:hover{background:#bfdbfe}.btn-edit{background:#fef3c7;color:#b45309}.btn-edit:hover{background:#fde68a}.btn-delete{background:#fee2e2;color:#b91c1c}.btn-approve{background:#d1fae5;color:#047857}.btn-approve:hover{background:#a7f3d0}.btn-reject{background:#fee2e2;color:#b91c1c}.btn-reject:hover{background:#fecaca}.sg-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;overflow-y:auto}.sg-modal{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;max-width:560px;width:100%;max-height:90vh;overflow-y:auto}.sg-modal h3{margin:0 0 20px;padding:20px 20px 0;font-size:20px;color:#1e293b}.sg-modal form{padding:0 20px 20px}.sg-form-error{background:#fee2e2;color:#b91c1c;padding:10px 12px;border-radius:8px;margin-bottom:16px;font-size:14px}.sg-form-row{margin-bottom:16px}.sg-form-row label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#374151}.sg-form-row input,.sg-form-row select,.sg-form-row textarea{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px}.sg-form-row input:focus,.sg-form-row select:focus,.sg-form-row textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.sg-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px}.sg-form-check{display:flex;align-items:center;gap:8px}.sg-form-check input[type=checkbox]{width:auto}.sg-form-check label{margin-bottom:0}.sg-form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:16px;border-top:1px solid #eee}.sg-modal-detail{max-width:640px}.sg-detail-header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 0;margin-bottom:16px}.sg-detail-header h3{margin:0;padding:0}.btn-close{background:none;border:none;font-size:20px;color:#64748b;cursor:pointer;padding:4px;line-height:1}.btn-close:hover{color:#1e293b}.sg-admin-detail-banner-wrap{padding:0 20px 16px;border-bottom:1px solid #eee;text-align:center}.sg-admin-detail-banner{width:100%;max-width:400px;height:120px;object-fit:cover;border-radius:12px;border:1px solid #e2e8f0}.sg-admin-detail-logo-wrap{padding:16px 20px;border-bottom:1px solid #eee;text-align:center}.sg-admin-detail-logo{width:80px;height:80px;object-fit:cover;border-radius:12px;border:1px solid #e2e8f0}.sg-detail-info{padding:0 20px 20px;border-bottom:1px solid #eee}.sg-detail-info p{margin:0 0 8px;font-size:14px;color:#475569}.sg-detail-section{padding:20px;border-bottom:1px solid #eee}.sg-detail-section:last-of-type{border-bottom:none}.sg-detail-section h4{margin:0 0 12px;font-size:16px;color:#1e293b}.sg-add-member{display:flex;gap:10px;margin-bottom:12px}.sg-add-member select{flex:1;padding:8px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px}.sg-members-list,.sg-requests-list{list-style:none;margin:0;padding:0}.sg-members-list li,.sg-requests-list li{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#f8fafc;border-radius:8px;margin-bottom:8px;font-size:14px}.sg-empty-list{color:#94a3b8!important;justify-content:center}.sg-request-msg{margin:4px 0 0!important;font-size:13px;color:#64748b}.sg-request-actions{display:flex;gap:8px}.sg-feed-loading,.sg-feed-empty{margin:0;font-size:14px;color:#64748b}.sg-feed-list{list-style:none;margin:0;padding:0}.sg-feed-item{padding:12px 14px;background:#f8fafc;border-radius:8px;margin-bottom:10px;border:1px solid #e2e8f0}.sg-feed-item-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;font-size:14px}.sg-feed-item-header strong{color:#1e293b}.sg-feed-date{font-size:12px;color:#64748b}.sg-feed-content{margin:0 0 10px;font-size:14px;line-height:1.45;color:#475569;white-space:pre-wrap;word-break:break-word}.sg-feed-item .btn-sm{margin-top:4px}.sg-detail-actions{display:flex;gap:12px;justify-content:flex-end;padding:20px;border-top:1px solid #eee}@media(max-width:768px){.small-groups-screen{padding:16px}.sg-table{min-width:800px}.sg-form-grid{grid-template-columns:1fr}}.escalas-admin{width:100%}.escalas-tabs{display:flex;gap:8px;margin-bottom:24px}.escalas-tabs button{padding:10px 20px;border:1px solid #ddd;background:#fff;border-radius:8px;cursor:pointer;font-size:15px}.escalas-tabs button.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent}.escalas-section-header,.escalas-month-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.escalas-section-header h2,.escalas-month-section h2{margin:0;font-size:18px}.btn-primary{padding:10px 18px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-bulk{padding:10px 18px;background:#fff;color:#667eea;border:1px solid #667eea;border-radius:8px;font-weight:600;cursor:pointer}.btn-bulk:hover:not(:disabled){background:#f0f0ff}.btn-bulk:disabled{opacity:.6;cursor:not-allowed}.btn-whatsapp{padding:10px 18px;background:#25d366;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer}.btn-whatsapp:disabled{opacity:.6;cursor:not-allowed}.escalas-types-list,.escalas-slots-list{display:flex;flex-direction:column;gap:12px}.escalas-type-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#fff;border-radius:10px;box-shadow:0 2px 6px #00000014;flex-wrap:wrap}.escalas-type-badge,.escalas-slot-type{padding:6px 12px;border-radius:6px;color:#fff;font-weight:600;font-size:14px}.escalas-type-active{font-size:13px;color:#666}.escalas-type-actions{margin-left:auto;display:flex;gap:8px}.escalas-type-actions button,.escalas-slot-buttons button{padding:6px 12px;border-radius:6px;border:1px solid #ddd;background:#fff;cursor:pointer;font-size:13px}.escalas-type-actions button.danger,.escalas-slot-buttons button.danger{border-color:#e74c3c;color:#e74c3c}.escalas-month-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding:10px 0}.escalas-month-nav button{padding:8px 16px;border:1px solid #ddd;background:#fff;border-radius:8px;font-size:18px;cursor:pointer}.escalas-month-nav span{font-weight:600;font-size:16px}.escalas-month-filter{display:flex;align-items:center;gap:10px;margin-bottom:16px}.escalas-month-filter label{font-size:14px;font-weight:500;color:#333}.escalas-month-filter select{padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;min-width:180px}.escalas-slot-card{background:#fff;border-radius:10px;box-shadow:0 2px 6px #00000014;padding:16px}.escalas-slot-header{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}.escalas-slot-date{font-weight:700;font-size:15px}.escalas-slot-time{font-size:14px;color:#666}.escalas-slot-buttons{margin-left:auto;display:flex;gap:8px}.escalas-slot-desc{margin:8px 0 0;font-size:14px;color:#666}.escalas-slot-assignments{margin-top:12px;padding-top:12px;border-top:1px solid #eee;font-size:14px}.escalas-slot-assignments strong{display:block;margin-bottom:8px}.escalas-assignment-tag{display:inline-flex;align-items:center;gap:4px;background:#f0f0f0;padding:4px 8px;border-radius:6px;margin-right:8px;margin-bottom:6px}.unassign-btn{background:none;border:none;color:#c0392b;cursor:pointer;padding:0 2px;font-size:16px;line-height:1}.add-assign-btn{padding:6px 12px;border:1px dashed #667eea;color:#667eea;background:#fff;border-radius:6px;cursor:pointer;font-size:13px;margin-left:8px}.escalas-assign-form{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.escalas-assign-form input{padding:8px 12px;border:1px solid #ddd;border-radius:6px;min-width:200px}.escalas-assign-form button{padding:8px 14px;border-radius:6px;border:1px solid #ddd;background:#fff;cursor:pointer;font-size:13px}.escalas-user-results{list-style:none;padding:0;margin:10px 0 0;width:100%;max-height:200px;overflow-y:auto;border:1px solid #eee;border-radius:8px}.escalas-user-results li{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid #f0f0f0;font-size:14px}.escalas-user-results li:last-child{border-bottom:none}.escalas-user-results li button{padding:4px 10px;background:#667eea;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px}.escalas-empty{color:#666;padding:24px;text-align:center}.modal-content{background:#fff;border-radius:12px;padding:24px;max-width:440px;width:90%;max-height:90vh;overflow-y:auto}.modal-content h3{margin:0 0 20px;font-size:18px}.modal-hint{font-size:13px;color:#666;margin:-8px 0 16px;line-height:1.4}.modal-content label{display:block;margin:12px 0 4px;font-size:14px;font-weight:500}.modal-content input[type=text],.modal-content input[type=date],.modal-content input[type=time],.modal-content select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px}.modal-content input[type=color]{width:60px;height:36px;padding:2px;border:1px solid #ddd;border-radius:6px;cursor:pointer}.modal-content .form-error{color:#c0392b;font-size:13px;margin-top:8px}.modal-actions{display:flex;gap:12px;margin-top:24px;justify-content:flex-end}.modal-actions button{padding:10px 20px;border-radius:8px;border:1px solid #ddd;background:#fff;cursor:pointer;font-size:14px}.modal-actions button[type=submit]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none}.finance-screen{padding:30px;background:#f5f7fa;min-height:100%}.screen-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:flex-end;margin-bottom:20px}.header-left h1{margin:0}.finance-summary{display:flex;gap:20px;margin-bottom:24px;flex-wrap:wrap}.summary-card{flex:1;min-width:160px;padding:20px;border-radius:12px;box-shadow:0 2px 8px #00000014;background:#fff}.summary-card .summary-label{display:block;font-size:14px;color:#666;margin-bottom:8px}.summary-card .summary-value{font-size:22px;font-weight:700}.summary-card.income .summary-value{color:#16a34a}.summary-card.expense .summary-value{color:#dc2626}.summary-card.balance .summary-value.positive{color:#0d9488}.summary-card.balance .summary-value.negative{color:#dc2626}.finance-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:20px}.finance-filters .form-label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#555}.filter-input,.filter-select{box-sizing:border-box;height:40px;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;min-width:140px}.entries-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-left:auto}.finance-screen .add-button{height:40px;padding:0 20px;display:inline-flex;align-items:center}.btn-secondary{height:40px;padding:0 16px;border:1px solid #667eea;color:#667eea;background:#fff;border-radius:6px;font-size:14px;cursor:pointer}.btn-secondary:hover{background:#f5f3ff}.export-dropdown{position:relative}.export-backdrop{position:fixed;inset:0;z-index:10}.export-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:11;min-width:160px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 8px 24px #0000001f;padding:4px;display:flex;flex-direction:column}.export-menu button{text-align:left;padding:10px 12px;background:none;border:none;border-radius:6px;font-size:14px;color:#374151;cursor:pointer}.export-menu button:hover{background:#f5f3ff;color:#667eea}.th-amount,.amount-cell{text-align:right;white-space:nowrap}.amount-cell.positive{color:#16a34a;font-weight:600}.amount-cell.negative{color:#dc2626;font-weight:600}.badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600}.badge.income{background:#dcfce7;color:#16a34a}.badge.expense{background:#fee2e2;color:#dc2626}.empty-cell{text-align:center;padding:40px;color:#888}.btn-edit{padding:6px 12px;margin-right:8px;background:#e0e7ff;color:#4338ca;border:none;border-radius:6px;font-size:13px;cursor:pointer}.btn-edit:hover{background:#c7d2fe}.btn-delete{padding:6px 12px;background:#fee2e2;color:#dc2626;border:none;border-radius:6px;font-size:13px;cursor:pointer}.btn-delete:hover{background:#fecaca}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003;padding:24px}.finance-modal{max-width:480px}.finance-modal h2{margin:0 0 20px;font-size:20px;color:#2c3e50}.finance-modal .form-row{display:flex;gap:16px;margin-bottom:16px}.finance-modal .form-label{flex:1;display:flex;flex-direction:column;gap:6px;font-size:14px;color:#444}.finance-modal input,.finance-modal select{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:15px}.finance-modal .form-error{color:#dc2626;font-size:14px;margin-bottom:12px}.finance-modal .modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.finance-modal .btn-cancel{padding:10px 20px;background:#f1f5f9;color:#475569;border:none;border-radius:6px;font-size:15px;cursor:pointer}.finance-modal .btn-submit{padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer}.finance-modal .btn-submit:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.finance-screen{padding:0}.finance-summary{gap:12px;margin-bottom:16px}.summary-card{min-width:100%}.summary-card .summary-value{font-size:18px}.finance-filters{gap:10px}.finance-filters .form-label,.filter-input,.filter-select{min-width:0;width:100%}.entries-actions{flex-direction:column;align-items:stretch;margin-left:0;width:100%}.entries-actions .add-button,.entries-actions .btn-secondary{width:100%;justify-content:center}.finance-screen .table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -16px 16px;padding:0 16px}.finance-screen .data-table{font-size:13px;min-width:600px}.finance-screen .data-table th,.finance-screen .data-table td{padding:10px 8px}.finance-screen .data-table td:last-child{white-space:normal}.finance-screen .data-table .btn-edit,.finance-screen .data-table .btn-delete{padding:6px 8px;font-size:12px;margin:2px}.modal-content{width:95%;max-height:85vh;padding:20px;margin:16px}.finance-modal .form-row{flex-direction:column;gap:0}.finance-modal .modal-actions{flex-wrap:wrap}.finance-modal .modal-actions .btn-cancel,.finance-modal .modal-actions .btn-submit{flex:1;min-width:120px}}@media(max-width:480px){.header-left h1{font-size:15px}}.whatsapp-test-screen{padding:30px;background:#f5f7fa;min-height:100%}.whatsapp-test-header{margin-bottom:30px}.whatsapp-test-header h2{margin:0;color:#2c3e50;font-size:32px;font-weight:700}.whatsapp-test-subtitle{margin:10px 0 0;color:#7f8c8d;font-size:15px}.whatsapp-test-hint{margin:12px 0 0;padding:12px 14px;background:#e8f4fd;border-left:4px solid #128c7e;border-radius:6px;color:#2c3e50;font-size:14px;line-height:1.5}.whatsapp-test-form{max-width:480px;background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000000f}.whatsapp-test-form .form-group{margin-bottom:20px}.whatsapp-test-form label{display:block;margin-bottom:6px;color:#2c3e50;font-weight:600;font-size:14px}.whatsapp-test-form input,.whatsapp-test-form textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:8px;font-size:15px;box-sizing:border-box}.whatsapp-test-form input:focus,.whatsapp-test-form textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.whatsapp-test-form input:disabled,.whatsapp-test-form textarea:disabled{background:#f0f0f0;cursor:not-allowed}.whatsapp-test-form .btn-send{background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.whatsapp-test-form .btn-send:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #25d36666}.whatsapp-test-form .btn-send:disabled{opacity:.7;cursor:not-allowed}.ministries-screen{width:100%}.ministries-screen .screen-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px}.ministries-screen .add-button{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.ministries-screen .add-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.ministries-screen .table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.ministries-screen .data-table{width:100%;border-collapse:collapse}.ministries-screen .data-table thead{background-color:#f8f9fa}.ministries-screen .data-table th{padding:15px;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #dee2e6}.ministries-screen .data-table td{padding:15px;border-bottom:1px solid #dee2e6;color:#666;vertical-align:middle}.ministries-screen .data-table tbody tr:hover{background-color:#f8f9fa}.ministry-logo-thumb{width:52px;height:52px;border-radius:8px;object-fit:cover;border:1px solid #dee2e6}.ministry-logo-placeholder{width:52px;height:52px;border-radius:8px;background:#f0f2f5;display:flex;align-items:center;justify-content:center;border:1px solid #dee2e6}.ministry-desc{margin-top:4px;color:#8a8a8a;font-size:13px}.status-badge{padding:4px 8px;border-radius:999px;font-size:12px;font-weight:600}.status-badge.active{background:#e8f7ee;color:#1d7a43}.status-badge.inactive{background:#fdecec;color:#b42318}.ministries-screen .action-button{padding:6px 12px;margin-right:8px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.ministries-screen .action-button.edit{background-color:#3498db;color:#fff}.ministries-screen .action-button.delete{background-color:#e74c3c;color:#fff}.empty-row{text-align:center;color:#888!important;padding:30px!important}.ministries-screen .modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.ministries-screen .modal-content{background:#fff;border-radius:12px;width:90%;max-width:760px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.ministries-screen .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #dee2e6}.ministries-screen .close-button{background:none;border:none;font-size:32px;color:#999;cursor:pointer}.ministries-screen .modal-form{padding:20px}.ministries-screen .form-group{margin-bottom:18px}.ministries-screen .form-group label{display:block;margin-bottom:8px;color:#333;font-weight:500}.ministries-screen .form-group input[type=text],.ministries-screen .form-group input[type=file],.ministries-screen .form-group textarea,.ministries-screen .form-group select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;box-sizing:border-box}.ministries-screen .checkbox-group label,.inline-check{display:flex!important;align-items:center;gap:8px}.members-options{max-height:280px;overflow:auto;border:1px solid #e1e4e8;border-radius:8px;padding:8px;background:#fafbfc}.member-option{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #eceff3}.member-option:last-child{border-bottom:none}.logo-row{display:flex;align-items:center;gap:10px;margin-top:8px}.logo-preview{width:48px;height:48px;border-radius:6px;object-fit:cover;border:1px solid #ddd}.ministries-screen .modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid #dee2e6}.ministries-screen .modal-actions button{padding:10px 24px;border:none;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer}.ministries-screen .modal-actions button[type=button]{background-color:#95a5a6;color:#fff}.ministries-screen .modal-actions button[type=submit]{background-color:#27ae60;color:#fff}.board-screen{width:100%}.screen-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px}.add-button{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer}.table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table thead{background:#f8f9fa}.data-table th{padding:15px;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #dee2e6}.data-table td{padding:15px;border-bottom:1px solid #dee2e6;color:#666}.action-button{padding:6px 12px;margin-right:8px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.action-button.edit{background:#3498db;color:#fff}.action-button.delete{background:#e74c3c;color:#fff}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:760px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #dee2e6}.close-button{background:none;border:none;font-size:32px;color:#999;cursor:pointer}.modal-form{padding:20px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;color:#333;font-weight:500}.form-group input,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;box-sizing:border-box}.checkbox-group label{display:flex;align-items:center;gap:8px}.members-box{border:1px solid #ddd;border-radius:8px;max-height:300px;overflow:auto;padding:8px;background:#fafafa}.member-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #eee}.member-row:last-child{border-bottom:none}.terms{display:flex;gap:8px}.terms input{width:150px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid #dee2e6}.modal-actions button{padding:10px 24px;border:none;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer}.modal-actions button[type=button]{background:#95a5a6;color:#fff}.modal-actions button[type=submit]{background:#27ae60;color:#fff}.muted{color:#888;margin-top:4px;font-size:13px}.visitors-screen{padding:30px;background:#f5f7fa;min-height:100vh}.visitors-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px;flex-wrap:wrap}.export-button{align-self:flex-start;padding:10px 18px;border-radius:12px;border:1px solid #2563eb;background:#fff;color:#2563eb;font-size:14px;font-weight:700;cursor:pointer;white-space:nowrap}.export-button:hover{background:#eff6ff}.visitors-header h2{margin:0 0 8px;font-size:32px;color:#1f2937}.visitors-header p{margin:0;color:#6b7280}.visitors-stats{display:flex;gap:12px;flex-wrap:wrap}.visitors-stats--dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));width:min(760px,100%)}.visitors-stat-card{background:#fff;border-radius:16px;padding:16px 18px;min-width:130px;box-shadow:0 8px 20px #0f172a0f;display:flex;flex-direction:column}.visitors-stat-card strong{font-size:26px;color:#111827}.visitors-stat-card span{font-size:13px;color:#6b7280}.visitors-filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;margin-bottom:22px}.visitors-filters-advanced{grid-template-columns:repeat(6,minmax(0,1fr)) auto}.visitors-filters input,.visitors-filters select,.visitors-filters button{border-radius:14px;border:1px solid #dbe4f0;padding:12px 14px;font-size:14px}.visitors-filters button{background:#2563eb;color:#fff;border:none;font-weight:700;cursor:pointer}.visitors-layout{display:grid;grid-template-columns:1fr;gap:20px;align-items:start}.visitors-list{background:#fff;border-radius:20px;padding:18px;box-shadow:0 10px 24px #0f172a0f}.visitors-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}.visitor-card{width:100%;border:1px solid #e5e7eb;background:#fff;border-radius:16px;padding:16px;text-align:left;box-shadow:0 6px 16px #0f172a0a}.visitor-card.priority{border-color:#f59e0b;box-shadow:0 10px 20px #f59e0b24;background:linear-gradient(180deg,#fff,#fffaf0)}.visitor-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}.visitor-card strong{color:#111827;font-size:16px}.visitor-meta{display:grid;gap:4px;margin-top:10px;color:#6b7280;font-size:13px}.visitor-card-actions{display:flex;justify-content:flex-end;margin-top:12px}.visitor-open-button{border:none;border-radius:12px;padding:10px 14px;background:#2563eb;color:#fff;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:8px;box-shadow:0 8px 18px #2563eb33}.visitor-open-button:hover{background:#1d4ed8}.visitor-status{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;background:#e5e7eb;color:#374151}.visitor-status--novo_visitante{background:#dbeafe;color:#1d4ed8}.visitor-status--contato_iniciado,.visitor-status--em_acompanhamento{background:#dcfce7;color:#15803d}.visitor-status--aguardando_resposta{background:#fef3c7;color:#b45309}.visitor-status--nao_deseja_contato{background:#fee2e2;color:#b91c1c}.visitor-detail-header{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}.visitor-detail-header h3{margin:0;font-size:26px;color:#111827}.visitor-actions-bar{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.visitor-actions-bar select,.visitor-actions-bar button,.visitor-form-inline button{border-radius:12px;border:1px solid #dbe4f0;padding:11px 14px;font-size:14px}.visitor-actions-bar button,.visitor-form-inline button{background:#2563eb;color:#fff;border:none;font-weight:700;cursor:pointer}.visitor-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:20px}.visitor-detail-grid div{background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;padding:12px 14px;display:grid;gap:4px}.visitor-detail-grid.editable input{width:100%;border-radius:10px;border:1px solid #dbe4f0;padding:10px 12px;font-size:14px}.checkbox-field label{display:flex;align-items:center;gap:10px;color:#111827;font-weight:600}.visitor-detail-grid strong{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}.visitor-detail-grid span{color:#111827;font-weight:600}.visitor-section{margin-top:18px}.visitor-section h4{margin:0 0 12px;color:#1f2937}.visitor-form-inline{display:grid;gap:10px}.visitor-form-inline.compact{grid-template-columns:1fr}.visitor-form-inline textarea,.visitor-form-inline select{width:100%;min-height:48px;border-radius:14px;border:1px solid #dbe4f0;padding:12px 14px;font-size:14px;resize:vertical}.timeline-list,.messages-list{display:grid;gap:10px}.timeline-item,.message-bubble{background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;padding:12px 14px}.timeline-item strong,.message-bubble strong{display:block;margin-bottom:6px;color:#111827}.timeline-item span,.message-bubble p{margin:0;color:#4b5563;line-height:1.55}.timeline-item small,.message-bubble small{display:block;margin-top:8px;color:#9ca3af}.message-bubble.out{background:#eff6ff;border-color:#bfdbfe}.message-bubble.in{background:#f9fafb}.visitor-flag{display:inline-flex;width:fit-content;padding:4px 8px;border-radius:999px;background:#dcfce7;color:#166534;font-size:12px;font-weight:700}.visitor-flag.warning{background:#fef3c7;color:#92400e}.visitor-flag.danger{background:#fee2e2;color:#b91c1c}.section-action-button{margin-top:10px;border:none;border-radius:12px;padding:12px 14px;background:#0f766e;color:#fff;font-weight:700;cursor:pointer}.danger-button{background:#b91c1c!important}.visitors-empty{padding:30px 16px;color:#6b7280;text-align:center}.visitors-empty.small{padding:16px}.visitor-modal-overlay{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:20px;z-index:9999}.visitor-modal{width:min(1100px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 30px 80px #0f172a40;animation:visitorModalIn .18s ease-out}.visitor-modal-topbar{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:20px 22px;border-bottom:1px solid #eef2f7;position:sticky;top:0;background:#fff;z-index:2}.visitor-modal-topbar h3{margin:0 0 6px;font-size:26px;color:#111827}.visitor-modal-topbar p{margin:0;color:#6b7280}.visitor-modal-close{border:none;background:#f3f4f6;color:#374151;width:40px;height:40px;border-radius:999px;font-size:20px;cursor:pointer}@keyframes visitorModalIn{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.visitor-modal-body{padding:20px 22px 26px}.visitor-tags-row{display:flex;flex-wrap:wrap;gap:8px}.visitor-tag-chip{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:12px;font-weight:700}@media(max-width:960px){.visitors-layout,.visitors-filters,.visitors-filters-advanced,.visitor-detail-grid{grid-template-columns:1fr}.visitor-modal{width:100%;max-height:100vh;border-radius:18px}.visitor-modal-overlay{padding:10px}}.classifieds-admin-screen{width:100%}.classifieds-admin-hero{background:linear-gradient(135deg,#f8fafc,#eef2ff);border:1px solid #e5e7eb;border-radius:18px;padding:22px 24px;margin-bottom:24px}.classifieds-admin-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.classifieds-admin-header h2{margin:0;font-size:30px;color:#1f2937}.classifieds-admin-header p{margin:8px 0 0;color:#6b7280;line-height:1.5}.classifieds-admin-summary{min-width:140px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid #dbeafe;box-shadow:0 8px 20px #3b82f614;display:flex;flex-direction:column;align-items:flex-start}.classifieds-admin-summary-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin-bottom:6px}.classifieds-admin-summary strong{font-size:28px;color:#1d4ed8}.classifieds-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px}.classifieds-admin-card{background:#fff;border-radius:16px;border:1px solid #e5e7eb;overflow:hidden;box-shadow:0 8px 24px #0f172a14;transition:transform .2s ease,box-shadow .2s ease}.classifieds-admin-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px #0f172a24}.classifieds-admin-image{width:100%;height:220px;object-fit:cover;display:block;background:#f3f4f6}.classifieds-admin-body{padding:18px}.classifieds-admin-badge-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.classifieds-admin-badge,.classifieds-admin-status{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}.classifieds-admin-badge{background:#eef2ff;color:#4338ca}.classifieds-admin-status{background:#fff7ed;color:#b45309}.classifieds-admin-card h3{margin:0 0 10px;color:#111827;font-size:20px}.classifieds-admin-description{color:#4b5563;line-height:1.6;margin-bottom:14px}.classifieds-admin-meta{display:grid;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid #f3f4f6}.classifieds-admin-meta div{color:#374151;font-size:14px}.classifieds-admin-meta strong{color:#111827}.classifieds-admin-quick-actions,.classifieds-admin-actions{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}.classifieds-admin-quick-actions button,.classifieds-admin-actions button{flex:1;min-height:44px}.classifieds-admin-empty{padding:48px 28px;border-radius:18px;border:1px dashed #cbd5e1;background:linear-gradient(180deg,#fff,#f8fafc);color:#6b7280;text-align:center}.classifieds-admin-empty-icon{width:72px;height:72px;margin:0 auto 16px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:32px;background:#eff6ff}.classifieds-admin-empty h3{margin:0 0 10px;font-size:24px;color:#111827}.classifieds-admin-empty p{margin:0 auto;max-width:520px;line-height:1.6}.classifieds-admin-tabs{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.classifieds-admin-tabs button{border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:999px;padding:10px 16px;font-weight:700;cursor:pointer}.classifieds-admin-tabs button.active{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.classifieds-admin-toolbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}.classifieds-admin-toolbar input,.classifieds-admin-toolbar select,.classifieds-admin-form-grid input,.classifieds-admin-form-grid select,.classifieds-admin-form-grid textarea{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:12px;font-size:14px;box-sizing:border-box}.classifieds-admin-form-card{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:20px;margin-bottom:24px;box-shadow:0 8px 24px #0f172a0f}.classifieds-admin-form-card h3{margin:0 0 16px;color:#111827}.classifieds-admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.classifieds-admin-form-grid label{display:grid;gap:8px;color:#111827;font-weight:600}.classifieds-admin-form-grid textarea{min-height:120px;resize:vertical}.classifieds-admin-form-grid .full-width{grid-column:1 / -1}.classifieds-admin-actions-row{display:flex;gap:10px;margin-top:18px}@media(max-width:768px){.classifieds-admin-grid{grid-template-columns:1fr}.classifieds-admin-hero{padding:18px}.classifieds-admin-header h2{font-size:26px}.classifieds-admin-summary{width:100%}.classifieds-admin-toolbar,.classifieds-admin-form-grid{grid-template-columns:1fr}.classifieds-admin-quick-actions,.classifieds-admin-actions,.classifieds-admin-actions-row{flex-direction:column}}.prayer-admin-screen{width:100%}.prayer-admin-hero{background:linear-gradient(135deg,#f8fafc,#eef2ff);border:1px solid #e5e7eb;border-radius:18px;padding:22px 24px;margin-bottom:24px}.prayer-admin-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.prayer-admin-header h2{margin:0;font-size:30px;color:#1f2937}.prayer-admin-header p{margin:8px 0 0;color:#6b7280;line-height:1.5}.prayer-admin-stats{display:flex;gap:12px;flex-wrap:wrap}.prayer-admin-stat{min-width:96px;padding:12px 16px;border-radius:16px;background:#fff;border:1px solid #dbeafe;box-shadow:0 8px 20px #3b82f614;display:flex;flex-direction:column;align-items:flex-start}.prayer-admin-stat-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin-bottom:6px}.prayer-admin-stat strong{font-size:26px;color:#1d4ed8}.prayer-admin-stat.open strong{color:#b45309}.prayer-admin-stat.answered strong{color:#15803d}.prayer-admin-toolbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;margin-bottom:20px}.prayer-admin-toolbar input,.prayer-admin-toolbar select{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:12px;font-size:14px;box-sizing:border-box}.prayer-admin-toolbar .btn-secondary{white-space:nowrap}.prayer-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px}.prayer-admin-card{background:#fff;border-radius:16px;border:1px solid #e5e7eb;padding:18px;box-shadow:0 8px 24px #0f172a14;transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column}.prayer-admin-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px #0f172a24}.prayer-admin-card.is-answered{border-color:#bbf7d0;background:linear-gradient(180deg,#fff,#f0fdf4)}.prayer-admin-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.prayer-admin-badges{display:flex;gap:8px;flex-wrap:wrap}.prayer-admin-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;background:#eef2ff;color:#4338ca}.prayer-admin-badge.vis-public{background:#eff6ff;color:#1d4ed8}.prayer-admin-badge.vis-members{background:#f5f3ff;color:#6d28d9}.prayer-admin-badge.vis-admin{background:#fef2f2;color:#b91c1c}.prayer-admin-badge.answered{background:#dcfce7;color:#15803d}.prayer-admin-badge.open{background:#fff7ed;color:#b45309}.prayer-admin-likes{font-size:14px;font-weight:700;color:#4b5563;white-space:nowrap}.prayer-admin-description{color:#374151;line-height:1.6;margin:0 0 14px;white-space:pre-wrap;word-break:break-word}.prayer-admin-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:#6b7280;font-size:13px;padding-top:12px;border-top:1px solid #f3f4f6}.prayer-admin-meta strong{color:#111827}.prayer-admin-prayed{margin-top:10px;font-size:13px;color:#4b5563}.prayer-admin-answered-at{margin-top:8px;font-size:13px;font-weight:600;color:#15803d}.prayer-admin-actions{display:flex;gap:10px;margin-top:18px}.prayer-admin-actions button{flex:1;min-height:44px;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s ease,opacity .2s ease}.prayer-admin-actions .btn-primary{background:#16a34a;color:#fff}.prayer-admin-actions .btn-primary:hover{background:#15803d}.prayer-admin-actions .btn-secondary{background:#eef2f7;color:#334155}.prayer-admin-actions .btn-secondary:hover{background:#e2e8f0}.prayer-admin-actions .btn-danger{background:#fee2e2;color:#b91c1c}.prayer-admin-actions .btn-danger:hover{background:#fecaca}.prayer-admin-empty{padding:48px 28px;border-radius:18px;border:1px dashed #cbd5e1;background:linear-gradient(180deg,#fff,#f8fafc);color:#6b7280;text-align:center}.prayer-admin-empty-icon{width:72px;height:72px;margin:0 auto 16px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:32px;background:#eff6ff}.prayer-admin-empty h3{margin:0 0 10px;font-size:24px;color:#111827}.prayer-admin-empty p{margin:0 auto;max-width:520px;line-height:1.6}@media(max-width:768px){.prayer-admin-grid{grid-template-columns:1fr}.prayer-admin-hero{padding:18px}.prayer-admin-header h2{font-size:26px}.prayer-admin-stats{width:100%}.prayer-admin-stat{flex:1}.prayer-admin-toolbar{grid-template-columns:1fr}.prayer-admin-actions{flex-direction:column}}
