- Create migration for global settings table and add google_ads_customer_id and google_ads_start_date columns to clients table. - Add migration to include product_url column in products_data table. - Insert demo data for campaigns, products, and their history for client 'pomysloweprezenty.pl'. - Implement client management interface with modals for adding and editing clients, including Google Ads Customer ID and data retrieval start date.
1 line
42 KiB
Plaintext
1 line
42 KiB
Plaintext
{"version":3,"sources":["style.scss"],"names":[],"mappings":"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","file":"style.css","sourcesContent":["// === adsPRO - Nowe style ===\r\n\r\n// --- Zmienne ---\r\n$cPrimary: #6690F4;\r\n$cPrimaryDark: #3164db;\r\n$cSidebarBg: #1E2A3A;\r\n$cSidebarText: #A8B7C7;\r\n$cSidebarHover: #263548;\r\n$cSidebarActive: $cPrimary;\r\n$cContentBg: #F4F6F9;\r\n$cWhite: #FFFFFF;\r\n$cText: #4E5E6A;\r\n$cTextDark: #2D3748;\r\n$cBorder: #E2E8F0;\r\n$cSuccess: #57B951;\r\n$cSuccessDark: #4a9c3b;\r\n$cDanger: #CC0000;\r\n$cDangerDark: #b30000;\r\n$cWarning: #FF8C00;\r\n$cGreenLight: #57b951;\r\n\r\n$sidebarWidth: 260px;\r\n$sidebarCollapsed: 70px;\r\n$topbarHeight: 56px;\r\n$transitionSpeed: 0.3s;\r\n\r\n// --- Reset i baza ---\r\n* {\r\n box-sizing: border-box;\r\n}\r\n\r\nbody {\r\n font-family: \"Open Sans\", sans-serif;\r\n margin: 0;\r\n padding: 0;\r\n font-size: 14px;\r\n color: $cText;\r\n background: $cContentBg;\r\n}\r\n\r\n.hide {\r\n display: none;\r\n}\r\n\r\n// --- Typografia ---\r\nsmall {\r\n font-size: .75em;\r\n}\r\n\r\n.text-right {\r\n text-align: right;\r\n}\r\n\r\n.text-bold {\r\n font-weight: 700 !important;\r\n}\r\n\r\n.nowrap {\r\n white-space: nowrap;\r\n}\r\n\r\n// ===========================\r\n// LOGIN PAGE (unlogged)\r\n// ===========================\r\nbody.unlogged {\r\n background: $cContentBg;\r\n margin: 0;\r\n padding: 0;\r\n}\r\n\r\n.login-container {\r\n display: flex;\r\n min-height: 100vh;\r\n}\r\n\r\n.login-brand {\r\n flex: 0 0 45%;\r\n background: linear-gradient(135deg, $cSidebarBg 0%, #2C3E57 50%, $cPrimary 100%);\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n padding: 60px;\r\n position: relative;\r\n overflow: hidden;\r\n\r\n &::before {\r\n content: '';\r\n position: absolute;\r\n top: -50%;\r\n right: -50%;\r\n width: 100%;\r\n height: 100%;\r\n background: radial-gradient(circle, rgba($cPrimary, 0.15) 0%, transparent 70%);\r\n border-radius: 50%;\r\n }\r\n\r\n .brand-content {\r\n position: relative;\r\n z-index: 1;\r\n color: $cWhite;\r\n max-width: 400px;\r\n }\r\n\r\n .brand-logo {\r\n font-size: 48px;\r\n font-weight: 300;\r\n margin-bottom: 20px;\r\n letter-spacing: -1px;\r\n\r\n strong {\r\n font-weight: 700;\r\n }\r\n }\r\n\r\n .brand-tagline {\r\n font-size: 18px;\r\n opacity: 0.85;\r\n line-height: 1.6;\r\n margin-bottom: 50px;\r\n }\r\n\r\n .brand-features {\r\n .feature {\r\n display: flex;\r\n align-items: center;\r\n gap: 15px;\r\n margin-bottom: 20px;\r\n opacity: 0.8;\r\n\r\n i {\r\n font-size: 20px;\r\n width: 40px;\r\n height: 40px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n background: rgba($cWhite, 0.1);\r\n border-radius: 10px;\r\n }\r\n\r\n span {\r\n font-size: 15px;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.login-form-wrapper {\r\n flex: 1;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n padding: 60px;\r\n background: $cWhite;\r\n}\r\n\r\n.login-box {\r\n width: 100%;\r\n max-width: 420px;\r\n\r\n .login-header {\r\n margin-bottom: 35px;\r\n\r\n h1 {\r\n font-size: 28px;\r\n font-weight: 700;\r\n color: $cTextDark;\r\n margin: 0 0 8px;\r\n }\r\n\r\n p {\r\n color: #718096;\r\n font-size: 15px;\r\n margin: 0;\r\n }\r\n }\r\n\r\n .form-group {\r\n margin-bottom: 20px;\r\n\r\n label {\r\n display: block;\r\n font-size: 13px;\r\n font-weight: 600;\r\n color: $cTextDark;\r\n margin-bottom: 6px;\r\n }\r\n }\r\n\r\n .input-with-icon {\r\n position: relative;\r\n\r\n i {\r\n position: absolute;\r\n left: 14px;\r\n top: 50%;\r\n transform: translateY(-50%);\r\n color: #A0AEC0;\r\n font-size: 14px;\r\n }\r\n\r\n .form-control {\r\n padding-left: 42px;\r\n }\r\n }\r\n\r\n .form-control {\r\n width: 100%;\r\n height: 46px;\r\n border: 2px solid $cBorder;\r\n border-radius: 8px;\r\n padding: 0 14px;\r\n font-size: 14px;\r\n font-family: \"Open Sans\", sans-serif;\r\n color: $cTextDark;\r\n transition: border-color $transitionSpeed, box-shadow $transitionSpeed;\r\n\r\n &::placeholder {\r\n color: #CBD5E0;\r\n }\r\n\r\n &:focus {\r\n border-color: $cPrimary;\r\n box-shadow: 0 0 0 3px rgba($cPrimary, 0.15);\r\n outline: none;\r\n }\r\n }\r\n\r\n .form-error {\r\n color: $cDanger;\r\n font-size: 12px;\r\n margin-top: 4px;\r\n }\r\n\r\n .checkbox-group {\r\n .checkbox-label {\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n cursor: pointer;\r\n font-size: 13px;\r\n color: #718096;\r\n font-weight: 400;\r\n\r\n input[type=\"checkbox\"] {\r\n width: 16px;\r\n height: 16px;\r\n accent-color: $cPrimary;\r\n }\r\n }\r\n }\r\n\r\n .btn-login {\r\n width: 100%;\r\n height: 48px;\r\n font-size: 15px;\r\n font-weight: 600;\r\n border-radius: 8px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n gap: 8px;\r\n\r\n &.disabled {\r\n opacity: 0.7;\r\n pointer-events: none;\r\n }\r\n }\r\n\r\n .alert {\r\n display: none;\r\n padding: 12px 16px;\r\n border-radius: 8px;\r\n font-size: 13px;\r\n margin-bottom: 20px;\r\n\r\n &.alert-danger {\r\n background: #FFF5F5;\r\n color: $cDanger;\r\n border: 1px solid #FED7D7;\r\n }\r\n\r\n &.alert-success {\r\n background: #F0FFF4;\r\n color: #276749;\r\n border: 1px solid #C6F6D5;\r\n }\r\n }\r\n}\r\n\r\n// Responsywność logowania\r\n@media (max-width: 768px) {\r\n .login-brand {\r\n display: none;\r\n }\r\n\r\n .login-form-wrapper {\r\n padding: 30px 20px;\r\n }\r\n}\r\n\r\n// ===========================\r\n// LAYOUT (logged) - SIDEBAR\r\n// ===========================\r\nbody.logged {\r\n display: flex;\r\n min-height: 100vh;\r\n background: $cContentBg;\r\n}\r\n\r\n// --- Sidebar ---\r\n.sidebar {\r\n width: $sidebarWidth;\r\n min-height: 100vh;\r\n background: $cSidebarBg;\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n z-index: 1000;\r\n display: flex;\r\n flex-direction: column;\r\n transition: width $transitionSpeed ease;\r\n overflow: hidden;\r\n\r\n &.collapsed {\r\n width: $sidebarCollapsed;\r\n\r\n .sidebar-header {\r\n padding: 16px 0;\r\n justify-content: center;\r\n\r\n .sidebar-logo {\r\n display: none;\r\n }\r\n\r\n .sidebar-toggle i {\r\n transform: rotate(180deg);\r\n }\r\n }\r\n\r\n .sidebar-nav ul li a {\r\n padding: 12px 0;\r\n justify-content: center;\r\n\r\n span {\r\n display: none;\r\n }\r\n\r\n i {\r\n margin-right: 0;\r\n font-size: 18px;\r\n }\r\n }\r\n\r\n .sidebar-footer {\r\n .sidebar-user {\r\n justify-content: center;\r\n\r\n .user-info {\r\n display: none;\r\n }\r\n }\r\n\r\n .sidebar-logout {\r\n justify-content: center;\r\n\r\n span {\r\n display: none;\r\n }\r\n }\r\n }\r\n\r\n .nav-divider {\r\n margin: 8px 15px;\r\n }\r\n }\r\n}\r\n\r\n.sidebar-header {\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n padding: 20px 20px 16px;\r\n border-bottom: 1px solid rgba($cWhite, 0.08);\r\n\r\n .sidebar-logo a {\r\n color: $cWhite;\r\n text-decoration: none;\r\n font-size: 24px;\r\n font-weight: 300;\r\n letter-spacing: -0.5px;\r\n\r\n strong {\r\n font-weight: 700;\r\n }\r\n }\r\n\r\n .sidebar-toggle {\r\n background: none;\r\n border: none;\r\n color: $cSidebarText;\r\n cursor: pointer;\r\n padding: 6px;\r\n border-radius: 6px;\r\n transition: all $transitionSpeed;\r\n\r\n &:hover {\r\n background: rgba($cWhite, 0.08);\r\n color: $cWhite;\r\n }\r\n\r\n i {\r\n transition: transform $transitionSpeed;\r\n }\r\n }\r\n}\r\n\r\n.sidebar-nav {\r\n flex: 1;\r\n padding: 12px 0;\r\n overflow-y: auto;\r\n\r\n ul {\r\n list-style: none;\r\n margin: 0;\r\n padding: 0;\r\n\r\n li {\r\n &.nav-divider {\r\n height: 1px;\r\n background: rgba($cWhite, 0.08);\r\n margin: 8px 20px;\r\n }\r\n\r\n a {\r\n display: flex;\r\n align-items: center;\r\n padding: 11px 20px;\r\n color: $cSidebarText;\r\n text-decoration: none;\r\n font-size: 14px;\r\n transition: all 0.2s;\r\n border-left: 3px solid transparent;\r\n\r\n i {\r\n width: 20px;\r\n text-align: center;\r\n margin-right: 12px;\r\n font-size: 15px;\r\n }\r\n\r\n &:hover {\r\n background: $cSidebarHover;\r\n color: $cWhite;\r\n }\r\n }\r\n\r\n &.active>a {\r\n background: rgba($cPrimary, 0.15);\r\n color: $cWhite;\r\n border-left-color: $cPrimary;\r\n\r\n i {\r\n color: $cPrimary;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\n.sidebar-footer {\r\n padding: 16px 20px;\r\n border-top: 1px solid rgba($cWhite, 0.08);\r\n\r\n .sidebar-user {\r\n display: flex;\r\n align-items: center;\r\n gap: 10px;\r\n margin-bottom: 12px;\r\n\r\n .user-avatar {\r\n width: 34px;\r\n height: 34px;\r\n border-radius: 50%;\r\n background: rgba($cPrimary, 0.2);\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n color: $cPrimary;\r\n font-size: 14px;\r\n flex-shrink: 0;\r\n }\r\n\r\n .user-info {\r\n overflow: hidden;\r\n\r\n .user-email {\r\n color: $cSidebarText;\r\n font-size: 12px;\r\n display: block;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n }\r\n }\r\n }\r\n\r\n .sidebar-logout {\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n color: #E53E3E;\r\n text-decoration: none;\r\n font-size: 13px;\r\n padding: 8px 10px;\r\n border-radius: 6px;\r\n transition: all 0.2s;\r\n\r\n i {\r\n font-size: 14px;\r\n }\r\n\r\n &:hover {\r\n background: rgba(#E53E3E, 0.1);\r\n }\r\n }\r\n}\r\n\r\n// --- Main wrapper ---\r\n.main-wrapper {\r\n margin-left: $sidebarWidth;\r\n flex: 1;\r\n min-height: 100vh;\r\n transition: margin-left $transitionSpeed ease;\r\n display: flex;\r\n flex-direction: column;\r\n\r\n &.expanded {\r\n margin-left: $sidebarCollapsed;\r\n }\r\n}\r\n\r\n// --- Topbar ---\r\n.topbar {\r\n height: $topbarHeight;\r\n background: $cWhite;\r\n border-bottom: 1px solid $cBorder;\r\n display: flex;\r\n align-items: center;\r\n padding: 0 25px;\r\n position: sticky;\r\n top: 0;\r\n z-index: 500;\r\n\r\n .topbar-toggle {\r\n background: none;\r\n border: none;\r\n color: $cText;\r\n cursor: pointer;\r\n padding: 8px 10px;\r\n border-radius: 6px;\r\n font-size: 16px;\r\n margin-right: 15px;\r\n transition: all 0.2s;\r\n\r\n &:hover {\r\n background: $cContentBg;\r\n }\r\n }\r\n\r\n .topbar-breadcrumb {\r\n font-size: 16px;\r\n font-weight: 600;\r\n color: $cTextDark;\r\n }\r\n}\r\n\r\n// --- Content area ---\r\n.content {\r\n flex: 1;\r\n padding: 25px;\r\n}\r\n\r\n.app-alert {\r\n background: #EBF8FF;\r\n border: 1px solid #BEE3F8;\r\n color: #2B6CB0;\r\n padding: 12px 16px;\r\n border-radius: 8px;\r\n margin-bottom: 20px;\r\n font-size: 14px;\r\n}\r\n\r\n// ===========================\r\n// KOMPONENTY WSPÓLNE\r\n// ===========================\r\n\r\n// --- Buttons ---\r\n.btn {\r\n padding: 10px 20px;\r\n transition: all 0.2s ease;\r\n color: $cWhite;\r\n border: 0;\r\n border-radius: 6px;\r\n cursor: pointer;\r\n display: inline-flex;\r\n text-decoration: none;\r\n gap: 6px;\r\n justify-content: center;\r\n align-items: center;\r\n font-size: 14px;\r\n font-family: \"Open Sans\", sans-serif;\r\n font-weight: 500;\r\n\r\n &.btn_small,\r\n &.btn-xs,\r\n &.btn-sm {\r\n padding: 5px 10px;\r\n font-size: 12px;\r\n\r\n i {\r\n font-size: 11px;\r\n }\r\n }\r\n\r\n &.btn-success {\r\n background: $cSuccess;\r\n\r\n &:hover {\r\n background: $cSuccessDark;\r\n }\r\n }\r\n\r\n &.btn-primary {\r\n background: $cPrimary;\r\n\r\n &:hover {\r\n background: $cPrimaryDark;\r\n }\r\n }\r\n\r\n &.btn-danger {\r\n background: $cDanger;\r\n\r\n &:hover {\r\n background: $cDangerDark;\r\n }\r\n }\r\n\r\n &.disabled {\r\n opacity: 0.6;\r\n pointer-events: none;\r\n }\r\n}\r\n\r\n// --- Form controls ---\r\n.form-control {\r\n border: 1px solid $cBorder;\r\n border-radius: 6px;\r\n height: 38px;\r\n width: 100%;\r\n padding: 6px 12px;\r\n font-family: \"Open Sans\", sans-serif;\r\n font-size: 14px;\r\n color: $cTextDark;\r\n transition: border-color 0.2s, box-shadow 0.2s;\r\n\r\n option {\r\n padding: 5px;\r\n }\r\n\r\n &:focus {\r\n border-color: $cPrimary;\r\n box-shadow: 0 0 0 3px rgba($cPrimary, 0.1);\r\n outline: none;\r\n }\r\n}\r\n\r\ninput[type=\"checkbox\"] {\r\n border: 1px solid $cBorder;\r\n}\r\n\r\n// --- Tables ---\r\ntable {\r\n border-collapse: collapse;\r\n font-size: 13px;\r\n}\r\n\r\n.table {\r\n width: 100%;\r\n\r\n th,\r\n td {\r\n border: 1px solid $cBorder;\r\n padding: 8px 10px;\r\n }\r\n\r\n th {\r\n background: #F7FAFC;\r\n font-weight: 600;\r\n font-size: 12px;\r\n text-transform: uppercase;\r\n letter-spacing: 0.03em;\r\n color: #718096;\r\n }\r\n\r\n td.center {\r\n text-align: center;\r\n }\r\n\r\n td.left {\r\n text-align: left;\r\n }\r\n\r\n &.table-sm td {\r\n padding: 5px !important;\r\n }\r\n\r\n input.form-control {\r\n font-size: 13px;\r\n height: 32px;\r\n }\r\n}\r\n\r\n// --- Cards ---\r\n.card {\r\n background: $cWhite;\r\n padding: 20px;\r\n border-radius: 8px;\r\n color: $cTextDark;\r\n font-size: 14px;\r\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);\r\n\r\n &.mb25 {\r\n margin-bottom: 20px;\r\n }\r\n\r\n .card-header {\r\n font-weight: 600;\r\n font-size: 15px;\r\n }\r\n\r\n .card-body {\r\n padding-top: 12px;\r\n\r\n table {\r\n\r\n th,\r\n td {\r\n font-size: 13px;\r\n\r\n &.bold {\r\n font-weight: 600;\r\n }\r\n\r\n &.text-right {\r\n text-align: right;\r\n }\r\n\r\n &.text-center {\r\n text-align: center;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\n// --- Action menu ---\r\n.action_menu {\r\n display: flex;\r\n margin-bottom: 20px;\r\n gap: 12px;\r\n\r\n .btn {\r\n padding: 8px 16px;\r\n\r\n &.btn_add {\r\n background: $cSuccess;\r\n\r\n &:hover {\r\n background: $cSuccessDark;\r\n }\r\n }\r\n\r\n &.btn_cancel {\r\n background: $cDanger;\r\n\r\n &:hover {\r\n background: $cDangerDark;\r\n }\r\n }\r\n }\r\n}\r\n\r\n// --- Settings page ---\r\n.settings-card {\r\n background: $cWhite;\r\n border-radius: 10px;\r\n padding: 28px;\r\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);\r\n\r\n .settings-card-header {\r\n display: flex;\r\n align-items: center;\r\n gap: 14px;\r\n margin-bottom: 24px;\r\n padding-bottom: 16px;\r\n border-bottom: 1px solid $cBorder;\r\n\r\n .settings-card-icon {\r\n width: 44px;\r\n height: 44px;\r\n border-radius: 10px;\r\n background: lighten($cPrimary, 26%);\r\n color: $cPrimary;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n font-size: 18px;\r\n flex-shrink: 0;\r\n }\r\n\r\n h3 {\r\n margin: 0;\r\n font-size: 17px;\r\n font-weight: 600;\r\n color: $cTextDark;\r\n }\r\n\r\n small {\r\n color: #8899A6;\r\n font-size: 13px;\r\n }\r\n }\r\n\r\n .settings-field {\r\n margin-bottom: 18px;\r\n\r\n label {\r\n display: block;\r\n font-size: 13px;\r\n font-weight: 600;\r\n color: $cTextDark;\r\n margin-bottom: 6px;\r\n }\r\n }\r\n\r\n .settings-input-wrap {\r\n position: relative;\r\n\r\n .settings-input-icon {\r\n position: absolute;\r\n left: 12px;\r\n top: 50%;\r\n transform: translateY(-50%);\r\n color: #A0AEC0;\r\n font-size: 14px;\r\n pointer-events: none;\r\n }\r\n\r\n .form-control {\r\n padding-left: 38px;\r\n }\r\n\r\n .settings-toggle-pw {\r\n position: absolute;\r\n right: 4px;\r\n top: 50%;\r\n transform: translateY(-50%);\r\n background: none;\r\n border: none;\r\n color: #A0AEC0;\r\n cursor: pointer;\r\n padding: 6px 10px;\r\n font-size: 14px;\r\n transition: color 0.2s;\r\n\r\n &:hover {\r\n color: $cPrimary;\r\n }\r\n }\r\n }\r\n\r\n .settings-fields-grid {\r\n display: grid;\r\n grid-template-columns: 1fr 1fr;\r\n gap: 0 24px;\r\n\r\n @media (max-width: 768px) {\r\n grid-template-columns: 1fr;\r\n }\r\n }\r\n\r\n .settings-alert-error {\r\n display: flex;\r\n align-items: center;\r\n gap: 10px;\r\n background: #FFF5F5;\r\n color: $cDanger;\r\n border: 1px solid #FED7D7;\r\n border-radius: 8px;\r\n padding: 12px 16px;\r\n margin-bottom: 20px;\r\n font-size: 13px;\r\n\r\n i {\r\n font-size: 16px;\r\n flex-shrink: 0;\r\n }\r\n }\r\n}\r\n\r\n// --- Clients page ---\r\n.clients-page {\r\n .clients-header {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n margin-bottom: 20px;\r\n\r\n h2 {\r\n margin: 0;\r\n font-size: 20px;\r\n font-weight: 600;\r\n color: $cTextDark;\r\n\r\n i {\r\n color: $cPrimary;\r\n margin-right: 8px;\r\n }\r\n }\r\n }\r\n\r\n .clients-table-wrap {\r\n background: $cWhite;\r\n border-radius: 10px;\r\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);\r\n overflow: hidden;\r\n\r\n .table {\r\n margin: 0;\r\n\r\n thead th {\r\n background: #F8FAFC;\r\n border-bottom: 2px solid $cBorder;\r\n font-size: 12px;\r\n font-weight: 700;\r\n text-transform: uppercase;\r\n letter-spacing: 0.5px;\r\n color: #8899A6;\r\n padding: 14px 20px;\r\n }\r\n\r\n tbody td {\r\n padding: 14px 20px;\r\n vertical-align: middle;\r\n border-bottom: 1px solid #F1F5F9;\r\n }\r\n\r\n tbody tr:hover {\r\n background: #F8FAFC;\r\n }\r\n\r\n .client-id {\r\n color: #8899A6;\r\n font-size: 13px;\r\n font-weight: 600;\r\n }\r\n\r\n .client-name {\r\n font-weight: 600;\r\n color: $cTextDark;\r\n }\r\n }\r\n }\r\n\r\n .badge-id {\r\n display: inline-block;\r\n background: #EEF2FF;\r\n color: $cPrimary;\r\n font-size: 13px;\r\n font-weight: 600;\r\n padding: 4px 10px;\r\n border-radius: 6px;\r\n font-family: monospace;\r\n }\r\n\r\n .actions-cell {\r\n text-align: center;\r\n white-space: nowrap;\r\n }\r\n\r\n .btn-icon {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 34px;\r\n height: 34px;\r\n border-radius: 8px;\r\n border: none;\r\n cursor: pointer;\r\n font-size: 14px;\r\n transition: all 0.2s;\r\n margin: 0 2px;\r\n\r\n &.btn-icon-edit {\r\n background: #EEF2FF;\r\n color: $cPrimary;\r\n\r\n &:hover {\r\n background: $cPrimary;\r\n color: $cWhite;\r\n }\r\n }\r\n\r\n &.btn-icon-delete {\r\n background: #FFF5F5;\r\n color: $cDanger;\r\n\r\n &:hover {\r\n background: $cDanger;\r\n color: $cWhite;\r\n }\r\n }\r\n }\r\n\r\n .empty-state {\r\n text-align: center;\r\n padding: 50px 20px !important;\r\n color: #A0AEC0;\r\n\r\n i {\r\n font-size: 40px;\r\n margin-bottom: 12px;\r\n display: block;\r\n }\r\n\r\n p {\r\n margin: 0;\r\n font-size: 15px;\r\n }\r\n }\r\n}\r\n\r\n.btn-secondary {\r\n background: #E2E8F0;\r\n color: $cTextDark;\r\n border: none;\r\n padding: 8px 18px;\r\n border-radius: 6px;\r\n font-size: 14px;\r\n cursor: pointer;\r\n transition: background 0.2s;\r\n\r\n &:hover {\r\n background: #CBD5E0;\r\n }\r\n}\r\n\r\n// ===========================\r\n// CAMPAIGNS PAGE\r\n// ===========================\r\n.campaigns-page {\r\n .campaigns-header {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n margin-bottom: 20px;\r\n\r\n h2 {\r\n margin: 0;\r\n font-size: 20px;\r\n font-weight: 600;\r\n color: $cTextDark;\r\n\r\n i {\r\n color: $cPrimary;\r\n margin-right: 8px;\r\n }\r\n }\r\n }\r\n\r\n .campaigns-filters {\r\n display: flex;\r\n gap: 20px;\r\n margin-bottom: 20px;\r\n\r\n .filter-group {\r\n flex: 1;\r\n\r\n label {\r\n display: block;\r\n font-size: 12px;\r\n font-weight: 700;\r\n text-transform: uppercase;\r\n letter-spacing: 0.5px;\r\n color: #8899A6;\r\n margin-bottom: 6px;\r\n\r\n i {\r\n margin-right: 4px;\r\n }\r\n }\r\n\r\n .form-control {\r\n width: 100%;\r\n padding: 10px 14px;\r\n border: 1px solid $cBorder;\r\n border-radius: 8px;\r\n font-size: 14px;\r\n color: $cTextDark;\r\n background: $cWhite;\r\n transition: border-color 0.2s;\r\n appearance: none;\r\n -webkit-appearance: none;\r\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238899A6' d='M6 8L1 3h10z'/%3E%3C/svg%3E\");\r\n background-repeat: no-repeat;\r\n background-position: right 12px center;\r\n padding-right: 32px;\r\n\r\n &:focus {\r\n outline: none;\r\n border-color: $cPrimary;\r\n box-shadow: 0 0 0 3px rgba($cPrimary, 0.1);\r\n }\r\n }\r\n\r\n .filter-with-action {\r\n display: flex;\r\n gap: 8px;\r\n\r\n .form-control {\r\n flex: 1;\r\n }\r\n\r\n .btn-icon {\r\n flex-shrink: 0;\r\n width: 42px;\r\n height: 42px;\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 8px;\r\n border: none;\r\n cursor: pointer;\r\n font-size: 14px;\r\n transition: all 0.2s;\r\n\r\n &.btn-icon-delete {\r\n background: #FFF5F5;\r\n color: $cDanger;\r\n\r\n &:hover {\r\n background: $cDanger;\r\n color: $cWhite;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n .campaigns-chart-wrap {\r\n background: $cWhite;\r\n border-radius: 10px;\r\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);\r\n padding: 20px;\r\n margin-bottom: 20px;\r\n min-height: 350px;\r\n }\r\n\r\n .campaigns-table-wrap {\r\n background: $cWhite;\r\n border-radius: 10px;\r\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);\r\n overflow: hidden;\r\n\r\n .table {\r\n margin: 0;\r\n width: 100% !important;\r\n\r\n thead th {\r\n background: #F8FAFC;\r\n border-bottom: 2px solid $cBorder;\r\n font-size: 12px;\r\n font-weight: 700;\r\n text-transform: uppercase;\r\n letter-spacing: 0.5px;\r\n color: #8899A6;\r\n padding: 12px 16px;\r\n white-space: nowrap;\r\n }\r\n\r\n tbody td {\r\n padding: 10px 16px;\r\n vertical-align: middle;\r\n border-bottom: 1px solid #F1F5F9;\r\n font-size: 13px;\r\n }\r\n\r\n tbody tr:hover {\r\n background: #F8FAFC;\r\n }\r\n }\r\n\r\n // DataTables 2.x overrides\r\n .dt-layout-row {\r\n padding: 14px 20px;\r\n margin: 0 !important;\r\n border-top: 1px solid #F1F5F9;\r\n\r\n // Ukryj wiersz z search/length jeśli pusty\r\n &:first-child {\r\n display: none;\r\n }\r\n }\r\n\r\n .dt-info {\r\n font-size: 13px;\r\n color: #8899A6;\r\n }\r\n\r\n .dt-paging {\r\n .pagination {\r\n margin: 0;\r\n padding: 0;\r\n list-style: none;\r\n display: flex;\r\n align-items: center;\r\n gap: 6px;\r\n\r\n .page-item {\r\n .page-link {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n min-width: 36px;\r\n width: fit-content;\r\n height: 36px;\r\n padding: 0 14px;\r\n border-radius: 8px;\r\n font-size: 13px;\r\n font-weight: 500;\r\n border: 1px solid $cBorder;\r\n background: $cWhite;\r\n color: $cText;\r\n cursor: pointer;\r\n transition: all 0.2s;\r\n text-decoration: none;\r\n line-height: 1;\r\n white-space: nowrap;\r\n\r\n &:hover {\r\n background: #EEF2FF;\r\n color: $cPrimary;\r\n border-color: $cPrimary;\r\n }\r\n }\r\n\r\n &.active .page-link {\r\n background: $cPrimary;\r\n color: $cWhite;\r\n border-color: $cPrimary;\r\n font-weight: 600;\r\n }\r\n\r\n &.disabled .page-link {\r\n opacity: 0.35;\r\n cursor: default;\r\n pointer-events: none;\r\n }\r\n }\r\n }\r\n }\r\n\r\n .dt-processing {\r\n background: rgba($cWhite, 0.9);\r\n color: $cText;\r\n font-size: 14px;\r\n }\r\n }\r\n\r\n .delete-history-entry {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 30px;\r\n height: 30px;\r\n border-radius: 6px;\r\n border: none;\r\n cursor: pointer;\r\n font-size: 12px;\r\n background: #FFF5F5;\r\n color: $cDanger;\r\n transition: all 0.2s;\r\n\r\n &:hover {\r\n background: $cDanger;\r\n color: $cWhite;\r\n }\r\n }\r\n}\r\n\r\n// --- Form container ---\r\n.form_container {\r\n background: $cWhite;\r\n padding: 25px;\r\n max-width: 1300px;\r\n border-radius: 8px;\r\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);\r\n\r\n &.full {\r\n max-width: 100%;\r\n }\r\n\r\n .form_group {\r\n margin-bottom: 12px;\r\n display: flex;\r\n\r\n >.label {\r\n width: 300px;\r\n display: inline-flex;\r\n align-items: flex-start;\r\n justify-content: right;\r\n padding-right: 12px;\r\n }\r\n\r\n .input {\r\n width: calc(100% - 300px);\r\n }\r\n }\r\n}\r\n\r\n// --- Default popup ---\r\n.default_popup {\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 100%;\r\n background: rgba(0, 0, 0, 0.45);\r\n display: none;\r\n z-index: 2000;\r\n\r\n .popup_content {\r\n position: absolute;\r\n top: 50%;\r\n left: 50%;\r\n transform: translate(-50%, -50%);\r\n background: $cWhite;\r\n padding: 25px;\r\n border-radius: 10px;\r\n max-width: 1140px;\r\n width: 95%;\r\n box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);\r\n\r\n .popup_header {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n margin-bottom: 15px;\r\n\r\n .title {\r\n font-size: 18px;\r\n font-weight: 600;\r\n }\r\n }\r\n\r\n .close {\r\n cursor: pointer;\r\n color: #A0AEC0;\r\n font-size: 18px;\r\n padding: 4px;\r\n\r\n &:hover {\r\n color: $cDanger;\r\n }\r\n }\r\n }\r\n}\r\n\r\n// --- DataTables override ---\r\n.dt-layout-table {\r\n margin-bottom: 20px;\r\n}\r\n\r\n.pagination {\r\n button {\r\n border: 1px solid $cBorder;\r\n background: $cWhite;\r\n display: inline-flex;\r\n height: 32px;\r\n width: 32px;\r\n align-items: center;\r\n justify-content: center;\r\n margin: 0 2px;\r\n border-radius: 4px;\r\n transition: all 0.2s;\r\n cursor: pointer;\r\n\r\n &:hover {\r\n background: $cContentBg;\r\n border-color: $cPrimary;\r\n }\r\n }\r\n}\r\n\r\n// ===========================\r\n// PRODUCTS specific\r\n// ===========================\r\ntable#products {\r\n .table-product-title {\r\n display: flex;\r\n justify-content: space-between;\r\n }\r\n\r\n .edit-product-title {\r\n display: flex;\r\n height: 25px;\r\n align-items: center;\r\n justify-content: center;\r\n width: 25px;\r\n cursor: pointer;\r\n background: $cWhite;\r\n border: 1px solid #CBD5E0;\r\n color: #CBD5E0;\r\n border-radius: 4px;\r\n\r\n &:hover {\r\n background: #CBD5E0;\r\n color: $cWhite;\r\n }\r\n }\r\n\r\n a.custom_name {\r\n color: $cGreenLight !important;\r\n }\r\n}\r\n\r\n// --- Chart with form ---\r\n.chart-with-form {\r\n display: flex;\r\n gap: 20px;\r\n align-items: flex-start;\r\n}\r\n\r\n.chart-area {\r\n flex: 1 1 auto;\r\n min-width: 0;\r\n}\r\n\r\n.comment-form {\r\n width: 360px;\r\n flex: 0 0 360px;\r\n\r\n .form-group {\r\n margin-bottom: 12px;\r\n }\r\n\r\n label {\r\n display: block;\r\n font-weight: 600;\r\n margin-bottom: 6px;\r\n font-size: 13px;\r\n }\r\n\r\n input[type=\"date\"],\r\n textarea {\r\n width: 100%;\r\n border: 1px solid $cBorder;\r\n border-radius: 6px;\r\n padding: 8px 12px;\r\n font-size: 14px;\r\n font-family: \"Open Sans\", sans-serif;\r\n }\r\n\r\n textarea {\r\n min-height: 120px;\r\n resize: vertical;\r\n }\r\n\r\n .btn {\r\n padding: 8px 16px;\r\n }\r\n\r\n .btn[disabled] {\r\n opacity: 0.6;\r\n cursor: not-allowed;\r\n }\r\n\r\n .hint {\r\n font-size: 12px;\r\n color: #718096;\r\n }\r\n}\r\n\r\n// --- Select2 w modalu ---\r\n.jconfirm-box .form-group .select2-container {\r\n width: 100% !important;\r\n margin-top: 8px;\r\n}\r\n\r\n.jconfirm-box .select2-container--default .select2-selection--single {\r\n background-color: $cWhite;\r\n border: 1px solid $cBorder;\r\n border-radius: 6px;\r\n min-height: 42px;\r\n display: flex;\r\n align-items: center;\r\n padding: 4px 12px;\r\n box-shadow: none;\r\n transition: border-color 0.2s, box-shadow 0.2s;\r\n font-size: 14px;\r\n}\r\n\r\n.jconfirm-box .select2-container--default .select2-selection--single .select2-selection__rendered {\r\n padding-left: 0;\r\n line-height: 1.4;\r\n color: #495057;\r\n}\r\n\r\n.jconfirm-box .select2-container--default .select2-selection--single .select2-selection__placeholder {\r\n color: #CBD5E0;\r\n}\r\n\r\n.jconfirm-box .select2-container--default .select2-selection--single .select2-selection__arrow {\r\n height: 100%;\r\n right: 8px;\r\n}\r\n\r\n.jconfirm-box .select2-container--default.select2-container--focus .select2-selection--single,\r\n.jconfirm-box .select2-container--default .select2-selection--single:hover {\r\n border-color: $cPrimary;\r\n box-shadow: 0 0 0 3px rgba($cPrimary, 0.1);\r\n outline: 0;\r\n}\r\n\r\n.jconfirm-box .select2-container .select2-dropdown {\r\n border-color: $cBorder;\r\n border-radius: 0 0 6px 6px;\r\n font-size: 14px;\r\n}\r\n\r\n.jconfirm-box .select2-container .select2-search--dropdown .select2-search__field {\r\n padding: 6px 10px;\r\n border-radius: 4px;\r\n border: 1px solid $cBorder;\r\n font-size: 14px;\r\n}\r\n\r\n.jconfirm-box .select2-container--default .select2-results__option--highlighted[aria-selected] {\r\n background-color: $cPrimary;\r\n color: $cWhite;\r\n}\r\n\r\n// ===========================\r\n// RESPONSYWNOŚĆ\r\n// ===========================\r\n@media (max-width: 992px) {\r\n .sidebar {\r\n transform: translateX(-100%);\r\n\r\n &.mobile-open {\r\n transform: translateX(0);\r\n }\r\n }\r\n\r\n .main-wrapper {\r\n margin-left: 0 !important;\r\n }\r\n}"]} |