*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#111827;background:#f9fafb;font-size:16px}body{overflow-x:hidden}button,input,select,textarea{font:inherit}a{color:inherit}.app-shell{min-height:100vh;display:flex;background:#f9fafb}.sidebar{width:256px;background:#111827;color:#fff;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:40;transition:width .3s ease,transform .3s ease;overflow:hidden}.brand{height:89px;padding:24px 16px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #1f2937}.brand-mark{width:40px;height:40px;min-width:40px;border-radius:8px;background:#2563eb;display:grid;place-items:center;color:#fff;font-weight:700;font-size:16px}.brand strong{font-size:20px;font-weight:600;line-height:1.25;display:block}.brand small{font-size:12px;color:#9ca3af;display:block;margin-top:1px;white-space:nowrap}.sidebar nav{padding:16px;display:flex;flex-direction:column;gap:4px;flex:1;align-items:stretch}.nav-item{height:48px;border-radius:8px;padding:0 16px;display:flex;align-items:center;gap:12px;color:#d1d5db;text-decoration:none;font-size:16px;font-weight:500;white-space:nowrap;flex:0 0 auto}.nav-item:hover{background:#1f2937;color:#fff}.nav-item.active{background:#2563eb;color:#fff}.nav-icon{width:20px;height:20px;display:grid;place-items:center;min-width:20px}.nav-icon svg,.stat-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.admin-card{height:96px;border-top:1px solid #1f2937;padding:16px 24px;display:flex;align-items:center;gap:12px}.admin-card .avatar{width:32px;height:32px;min-width:32px;background:#2563eb}.admin-card strong{font-size:14px;font-weight:500;display:block}.admin-card small{font-size:12px;color:#9ca3af;display:block;margin-top:1px;white-space:nowrap}.avatar{width:40px;height:40px;min-width:40px;border-radius:50%;display:grid;place-items:center;background:#2563eb;color:#fff;font-weight:500;font-size:14px}.avatar.gradient{background:linear-gradient(135deg,#3b82f6,#8b5cf6)}.main{margin-left:256px;width:calc(100% - 256px);min-width:0;transition:margin-left .3s ease,width .3s ease}.topbar{height:65px;background:#fff;border-bottom:1px solid #e5e7eb;padding:0 24px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:30}.topbar-left{display:flex;align-items:center;gap:16px}.topbar h1{margin:0;font-size:20px;line-height:1.5;font-weight:600;color:#111827}.sidebar-toggle{width:40px;height:40px;border:0;background:transparent;border-radius:8px;display:grid;place-items:center;font-size:28px;line-height:1;color:#111827;cursor:pointer}.sidebar-toggle:hover{background:#f3f4f6}.toggle-menu{display:none;font-size:20px}.today{text-align:right}.today small{display:block;font-size:14px;color:#6b7280;line-height:1.35}.today strong{display:block;font-size:14px;font-weight:500;color:#111827;line-height:1.35}.content{padding:24px;min-height:calc(100vh - 65px)}.space-y-6>*+*{margin-top:24px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.stat-card,.fig-card,.card,.plan-card,.table-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 2px rgba(0,0,0,.05)}.stat-card{padding:24px;min-height:134px}.stat-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.stat-icon{width:48px;height:48px;border-radius:8px;display:grid;place-items:center;color:#fff}.stat-icon svg{width:24px;height:24px}.blue{background:#3b82f6}.green{background:#10b981}.purple{background:#a855f7}.orange{background:#f97316}.stat-change{font-size:14px;font-weight:500;color:#16a34a}.stat-label{font-size:14px;color:#6b7280;margin-bottom:4px}.stat-value{font-size:24px;line-height:1.2;font-weight:700;color:#111827;letter-spacing:-.01em}.charts-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.bottom-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:24px}.fig-card{padding:24px}.fig-card h3{font-size:18px;line-height:1.5;font-weight:600;color:#111827;margin:0 0 16px}.chart-card{min-height:320px}.svg-chart{width:100%;height:250px}.svg-chart svg{width:100%;height:100%;display:block;overflow:visible}.gridline{stroke:#f0f0f0;stroke-width:1;stroke-dasharray:3 3}.axis-line{stroke:#9ca3af;stroke-width:1}.axis-text{fill:#6b7280;font-size:12px;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.chart-empty{height:250px;display:grid;place-items:center;color:#9ca3af;font-size:14px}.distribution-card{min-height:350px}.donut-chart{height:190px;display:grid;place-items:center}.donut-chart svg{width:100%;height:100%;display:block}.legend-list{display:grid;gap:8px;margin-top:4px}.legend-row{display:flex;align-items:center;justify-content:space-between;font-size:14px}.legend-row>span{display:flex;align-items:center;gap:8px;color:#6b7280}.legend-row i{width:12px;height:12px;border-radius:50%;display:inline-block}.legend-row strong{font-size:14px;font-weight:500;color:#111827}.activity-card{min-height:350px}.activity-list{display:grid}.activity{min-height:58px;display:flex;align-items:center;gap:16px;padding:8px 0;border-bottom:1px solid #f3f4f6}.activity:last-child{border-bottom:0}.activity-copy{min-width:0;flex:1}.activity-copy strong{display:block;font-size:14px;font-weight:500;color:#111827}.activity-copy small{display:block;font-size:14px;color:#6b7280;margin-top:1px}.activity time{font-size:12px;color:#9ca3af;white-space:nowrap}.toolbar,.section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.section-head h2{font-size:24px;margin:0;color:#111827;font-weight:600}.section-head p{font-size:16px;color:#6b7280;margin:4px 0 0}.search-form,.inline-form{display:flex;gap:8px;flex-wrap:wrap}.search-form input{min-width:384px}.search-form input,.inline-form input,.inline-form select,input,select,textarea{border:1px solid #d1d5db;border-radius:8px;padding:8px 12px;background:#fff;color:#111827;outline:none;font-size:14px;line-height:1.5}input:focus,select:focus,textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 2px rgba(59,130,246,.18)}.btn{border:0;border-radius:8px;padding:8px 16px;font-weight:500;font-size:14px;cursor:pointer;min-height:40px}.btn.primary{background:#2563eb;color:#fff}.btn.primary:hover{background:#1d4ed8}.btn.ghost{background:#fff;border:1px solid #d1d5db;color:#374151}.btn.danger-outline{background:#fff;border:1px solid #fca5a5;color:#dc2626}.table-card{padding:0;overflow:hidden}.table-card>div{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:900px}thead{background:#f9fafb;border-bottom:1px solid #e5e7eb}th{padding:12px 24px;text-align:left;color:#6b7280;font-size:12px;text-transform:uppercase;letter-spacing:.05em;font-weight:500}td{padding:16px 24px;border-top:1px solid #e5e7eb;font-size:14px;vertical-align:middle}tbody tr:hover{background:#f9fafb}.member-cell{display:flex;align-items:center;gap:12px}.member-cell strong{font-size:14px;font-weight:500;color:#111827;display:block}.member-cell small{font-size:14px;color:#6b7280;display:block;margin-top:1px}.badge{display:inline-flex;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:500}.badge.active{background:#dcfce7;color:#15803d}.badge.inactive{background:#f3f4f6;color:#374151}.badge.expired{background:#fee2e2;color:#b91c1c}.actions{display:flex;gap:8px}.actions form{display:inline}.icon-btn{width:36px;height:36px;border:0;border-radius:8px;background:transparent;color:#2563eb;cursor:pointer}.icon-btn:hover{background:#eff6ff}.icon-btn.danger{color:#dc2626}.icon-btn.danger:hover{background:#fef2f2}.plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.plan-card{position:relative;overflow:hidden;border-width:2px;padding:24px}.plan-card.popular-card{border-color:#ddd6fe}.plan-top{display:flex;justify-content:space-between;align-items:center}.plan-icon{width:48px;height:48px;border-radius:8px;display:grid;place-items:center;background:var(--accent);color:#fff;font-size:22px}.popular{font-size:12px;background:#8b5cf6;color:#fff;border-radius:999px;padding:4px 12px;font-weight:500}.plan-card h3{font-size:24px;font-weight:700;color:#111827;margin:16px 0 8px}.price{font-size:36px;font-weight:700;color:#111827}.price small{font-size:16px;font-weight:400;color:#6b7280;margin-left:8px}.subscriber-count{background:var(--light,#eff6ff);color:var(--accent,#2563eb);border-radius:8px;padding:8px 12px;margin:24px 0;font-size:14px;font-weight:500}.plan-card ul{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:12px;min-height:168px}.plan-card li{font-size:14px;color:#4b5563;display:flex;gap:12px;align-items:flex-start}.plan-card li:before{content:'✓';color:var(--accent);font-weight:700;font-size:18px;line-height:1}.plan-actions{display:flex;gap:8px;padding-top:16px;border-top:1px solid #e5e7eb}.plan-actions form{flex:1}.plan-actions .btn{width:100%}.checkin-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.card{padding:24px}.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.card-head h2,.checkin-panel h2{font-size:18px;margin:0;font-weight:600;color:#111827}.card-head span,.card-head a,.checkin-panel p{font-size:14px;color:#6b7280}.card-head a{color:#2563eb;text-decoration:none}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:24px}.grid-3{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:24px}.stats-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-plans{display:grid;gap:0}.analytics-plan{display:flex;align-items:center;border-bottom:1px solid #f3f4f6;padding:12px 0}.analytics-plan>div{flex:1}.analytics-plan strong{font-size:14px;font-weight:500;display:block}.analytics-plan small{color:#6b7280;font-size:12px;display:block;margin-top:2px}.plan-dot{width:12px;height:12px;border-radius:50%;display:inline-block;background:var(--accent);margin-right:8px}.bar-chart{height:250px}.modal{position:fixed;inset:0;background:rgba(0,0,0,.5);display:none;align-items:center;justify-content:center;padding:16px;z-index:100}.modal.show{display:flex}.modal-box{width:min(620px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:12px;padding:24px;position:relative}.modal-box h2{font-size:20px;font-weight:600;margin:0 0 16px}.modal-close{position:absolute;right:14px;top:12px;border:0;background:#f3f4f6;border-radius:50%;width:32px;height:32px;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{font-size:14px;font-weight:500;color:#374151}.form-grid label input,.form-grid label select,.form-grid label textarea{width:100%;display:block;margin-top:6px}.form-grid .wide{grid-column:1/-1}.form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}.alert{padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.alert.success{background:#dcfce7;color:#166534}.alert.danger{background:#fee2e2;color:#991b1b}.empty{padding:24px;text-align:center;color:#6b7280}.login-body{min-height:100vh;display:grid;place-items:center;background:#111827;padding:20px}.login-card{width:min(400px,100%);background:#fff;border-radius:16px;padding:30px}.muted{color:#6b7280}.stack{display:grid;gap:14px;margin-top:24px}.stack input{display:block;width:100%;margin-top:6px}
/* Figma analytics */.analytics-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.metric-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px;box-shadow:0 1px 2px rgba(0,0,0,.05)}.metric-foot{font-size:12px;color:#6b7280;margin-top:8px}.metric-trend{display:flex;align-items:center;gap:4px;font-size:14px;font-weight:500}.metric-trend.green-t{color:#16a34a}.metric-trend.blue-t{color:#2563eb}.metric-trend.purple-t{color:#9333ea}.analytics-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.analytics-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.mini-kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.mini-kpi{padding:12px;border-radius:8px}.mini-kpi.green-bg{background:#f0fdf4}.mini-kpi.red-bg{background:#fef2f2}.insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.insight{padding:24px;border-radius:12px;border:1px solid}.insight.green-i{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#bbf7d0}.insight.blue-i{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#bfdbfe}.insight.orange-i{background:linear-gradient(135deg,#fff7ed,#ffedd5);border-color:#fed7aa}.insight h4{font-size:16px;margin:0 0 8px}.insight p{font-size:14px;line-height:1.55;margin:0}.facility-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.facility-head h3{margin:0}.facility-head p{font-size:14px;color:#6b7280;margin:4px 0 0}.peak-box{background:#fff7ed;padding:8px 16px;border-radius:8px}.peak-box small{font-size:12px;color:#ea580c}.peak-box strong{display:block;color:#c2410c;font-size:18px;margin-top:2px}
@media(max-width:1200px){.stats-grid,.analytics-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.plans-grid,.analytics-three,.insight-grid{grid-template-columns:1fr 1fr}.bottom-row{grid-template-columns:1fr}.distribution-card{min-height:auto}}
@media(max-width:900px){.sidebar{transform:translateX(-100%)}.sidebar.open{transform:translateX(0)}.main{margin-left:0;width:100%}.toggle-x{display:none}.toggle-menu{display:block}.charts-row,.analytics-two,.grid-2,.grid-3{grid-template-columns:1fr}.plans-grid,.analytics-three,.insight-grid{grid-template-columns:1fr}.content{padding:18px}.search-form input{min-width:0;width:100%}.toolbar,.section-head,.checkin-panel{align-items:stretch;flex-direction:column}.toolbar>*,.section-head>*{width:100%}.stats-grid.compact{grid-template-columns:1fr}}
@media(max-width:560px){.topbar{height:64px;padding:0 12px}.content{padding:12px}.stats-grid,.analytics-metrics{grid-template-columns:1fr;gap:12px}.charts-row,.bottom-row{gap:12px}.fig-card,.card,.stat-card{padding:16px}.topbar h1{font-size:18px}.today small,.today strong{font-size:12px}.form-grid{grid-template-columns:1fr}.form-grid .wide,.form-actions{grid-column:1}.activity{gap:10px}.activity-copy small{font-size:12px}.svg-chart{height:220px}.fig-card h3{font-size:16px}}
/* exact page patterns from the Figma source */
.page-actions{display:flex;flex-direction:column;gap:16px;align-items:flex-start;justify-content:space-between}.search-wrap{position:relative;flex:1;max-width:448px}.search-wrap input{width:100%;padding-left:40px}.search-glyph{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#9ca3af;font-size:18px}.action-cluster{display:flex;gap:8px}.member-contact{display:grid;gap:4px;color:#4b5563;font-size:14px}.member-contact span{display:flex;align-items:center;gap:8px}.plan-cell{display:flex;align-items:center;gap:8px;font-weight:500}.plan-cell.blue-t{color:#2563eb}.plan-cell.purple-t{color:#9333ea}.plan-cell.orange-t{color:#ea580c}.join-cell{display:flex;align-items:center;gap:8px;color:#4b5563}.comparison-card{margin-top:24px}.comparison-card .comparison-title{padding:24px;border-bottom:1px solid #e5e7eb}.comparison-card .comparison-title h3{margin:0;font-size:18px;font-weight:600}.check-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.check-stat{background:#fff;padding:24px;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 2px rgba(0,0,0,.05)}.check-stat-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.check-stat-icon{font-size:30px;line-height:1}.check-stat-label{font-size:14px;color:#6b7280}.check-stat-value{font-size:30px;font-weight:700;color:#111827;margin-top:4px}.blue-text{color:#2563eb}.green-text{color:#16a34a}.purple-text{color:#9333ea}.orange-text{color:#ea580c}.checkin-interface{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:24px}.quick-card{background:#fff;padding:24px;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 2px rgba(0,0,0,.05)}.quick-card h3,.today-card h3{font-size:18px;font-weight:600;margin:0 0 16px}.quick-card label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.quick-card .member-id-input{width:100%;padding:12px 16px;font-size:18px}.quick-card .btn{width:100%;margin-top:16px;padding:12px 16px}.quick-actions{padding-top:16px;border-top:1px solid #e5e7eb;margin-top:16px}.quick-actions>p{font-size:12px;color:#6b7280;margin:0 0 8px}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.keypad button{border:0;background:#f3f4f6;border-radius:8px;padding:8px 12px;font-size:14px;cursor:pointer}.keypad button:hover{background:#e5e7eb}.keypad .zero{grid-column:span 2}.keypad .back{background:#fee2e2;color:#dc2626}.today-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 2px rgba(0,0,0,.05);overflow:hidden}.today-card-head{padding:24px;border-bottom:1px solid #e5e7eb}.today-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.today-title-row h3{margin:0}.total-pill{padding:4px 12px;background:#dbeafe;color:#1d4ed8;border-radius:999px;font-size:14px;font-weight:500}.checkin-list{max-height:384px;overflow:auto}.checkin-row{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid #f3f4f6}.checkin-row:hover{background:#f9fafb}.checkin-row:last-child{border-bottom:0}.checkin-person{display:flex;align-items:center;gap:12px}.checkin-person strong{font-size:14px;font-weight:500;display:block}.checkin-person small{font-size:14px;color:#6b7280;display:block}.checkin-meta{display:flex;align-items:center;gap:16px}.plan-pill{padding:4px 12px;border-radius:999px;font-size:12px;font-weight:500}.plan-pill.basic{color:#2563eb;background:#eff6ff}.plan-pill.standard{color:#9333ea;background:#faf5ff}.plan-pill.premium{color:#ea580c;background:#fff7ed}.check-time{font-size:14px;font-weight:500;color:#6b7280;white-space:nowrap}.small-chart .svg-chart{height:200px}.modal-box.small{max-width:448px}.form-stack{display:grid;gap:16px}.form-stack label{display:block;font-size:14px;font-weight:500;color:#374151}.form-stack input,.form-stack select,.form-stack textarea{width:100%;margin-top:4px}.modal-action-row{display:flex;gap:12px;padding-top:8px}.modal-action-row .btn{flex:1}.feature-count{font-size:14px;color:#4b5563}.plan-revenue{font-weight:500;color:#16a34a}
@media(min-width:640px){.page-actions{flex-direction:row;align-items:center}}
@media(max-width:1200px){.check-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.checkin-interface{grid-template-columns:1fr}}
@media(max-width:560px){.check-stats{grid-template-columns:1fr}.action-cluster{width:100%;flex-wrap:wrap}.action-cluster>*{flex:1}.checkin-meta{gap:8px;align-items:flex-end;flex-direction:column}.checkin-row{align-items:flex-start}}
@media(min-width:901px){.sidebar.closed{width:0}.sidebar.closed~.main{margin-left:0;width:100%}}
/* Popravka modalnih prozora: bez horizontalnog skrola i sa jasnim X dugmetom */
.modal{overflow-y:auto;overflow-x:hidden}
.modal-box{overflow-y:auto;overflow-x:hidden;padding:28px 30px 26px;width:min(760px,calc(100vw - 32px));}
.modal-box.small{width:min(560px,calc(100vw - 32px));max-width:560px}
.modal-close{display:flex;align-items:center;justify-content:center;right:18px;top:16px;width:38px;height:38px;border:1px solid #d1d5db;background:#fff;color:#374151;font-size:25px;font-weight:400;line-height:1;border-radius:999px;z-index:3;padding:0;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.modal-close:hover{background:#f3f4f6;color:#111827}
.modal-box h2{padding-right:56px}
.form-grid,.form-stack{min-width:0}
.form-grid>* ,.form-stack>*{min-width:0}
.form-grid input,.form-grid select,.form-grid textarea,.form-stack input,.form-stack select,.form-stack textarea{max-width:100%;min-width:0}
.form-grid label input[type="checkbox"]{width:auto;display:inline-block;margin:0 8px 0 0;vertical-align:middle}
.checkbox-label{display:flex!important;align-items:center;gap:10px;min-height:40px}.checkbox-label input{width:18px!important;height:18px;margin:0!important;accent-color:#2563eb}
@media(max-width:640px){.modal{align-items:flex-start;padding:12px}.modal-box,.modal-box.small{width:100%;max-height:calc(100vh - 24px);padding:24px 18px 20px}.modal-close{right:12px;top:12px}.form-grid{grid-template-columns:1fr}.form-grid .wide,.form-actions{grid-column:1/-1}}
/* X je samo direktno dugme u vrhu modala; dugmad Otkaži ostaju u toku forme */
.modal-box > .modal-close{position:absolute;right:18px;top:16px;width:38px;height:38px;padding:0;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:25px;line-height:1;z-index:4}
.modal-action-row .modal-close,.form-actions .modal-close{position:static;width:auto;height:auto;border-radius:8px;font-size:14px;line-height:1.5;display:inline-flex;right:auto;top:auto;z-index:auto;padding:8px 16px}

/* Interaktivni tooltip za grafikone — Figma ponašanje */
.chart-interactive{position:relative;overflow:visible}
.chart-interactive svg{overflow:visible}
.chart-hit{fill:transparent;pointer-events:all;cursor:crosshair}
.donut-hit{stroke-width:24px;pointer-events:stroke;cursor:pointer}
.chart-point{pointer-events:none;transition:r .12s ease,filter .12s ease}
.chart-tooltip{position:fixed;z-index:9999;min-width:145px;max-width:250px;padding:12px 14px;background:#fff;border:1px solid #d1d5db;box-shadow:0 2px 6px rgba(0,0,0,.12);color:#111827;font-size:14px;line-height:1.45;pointer-events:none;opacity:0;transform:translate(10px,-50%);transition:opacity .08s ease;border-radius:0}
.chart-tooltip.show{opacity:1}
.chart-tooltip strong{display:block;font-weight:500;margin-bottom:7px;color:#111827}
.chart-tooltip span{display:block;white-space:nowrap}
.chart-tooltip span+span{margin-top:5px}
.chart-tooltip .tooltip-line-0{color:#3b82f6}
.chart-tooltip .tooltip-line-1{color:#10b981}
.chart-tooltip .tooltip-line-2{color:#ef4444}
/* Operativne funkcije za članove, uplate i evidenciju dolazaka */
.status-tabs{display:flex;gap:8px;flex-wrap:wrap}.status-tab{display:inline-flex;align-items:center;padding:9px 14px;border:1px solid #e5e7eb;border-radius:999px;background:#fff;color:#4b5563;font-size:14px;font-weight:600;text-decoration:none}.status-tab:hover{background:#f9fafb}.status-tab.active{background:#eef2ff;border-color:#c7d2fe;color:#3155d9}.badge.expiring{background:#fff7ed;color:#c2410c}.clickable-row{cursor:pointer}.clickable-row:hover{background:#fafbff}.member-link{color:inherit;text-decoration:none;display:block}.member-link:hover strong{color:#3155d9}.stop-row{position:relative;z-index:2}.stat-card-link{text-decoration:none;color:inherit;transition:transform .15s ease,box-shadow .15s ease}.stat-card-link:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,23,42,.08)}
.expiry-strip{display:grid;grid-template-columns:repeat(3,1fr);padding:0!important;overflow:hidden}.expiry-strip a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;text-decoration:none;color:#374151;border-right:1px solid #e5e7eb}.expiry-strip a:last-child{border-right:0}.expiry-strip a:hover{background:#fafafa}.expiry-strip span{font-size:14px}.expiry-strip strong{font-size:22px;color:#111827}
.member-profile{display:grid;gap:24px}.profile-head{display:flex;align-items:center;justify-content:space-between;gap:24px}.profile-person{display:flex;align-items:center;gap:16px}.avatar.large{width:64px;height:64px;font-size:20px}.profile-person h2{font-size:26px;margin:3px 0 10px}.eyebrow{font-size:12px;letter-spacing:.08em;color:#6b7280;font-weight:700}.profile-actions,.profile-secondary-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.profile-secondary-actions form{margin:0}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.profile-grid>.fig-card{min-height:260px}.profile-grid h3,.profile-summary h3{margin:0 0 18px}.profile-summary dl{margin:0;display:grid;gap:0}.profile-summary dl>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #f0f1f4}.profile-summary dt{color:#6b7280}.profile-summary dd{margin:0;font-weight:600;text-align:right}.profile-secondary-actions{margin-top:20px}.danger-soft{background:#fff;border:1px solid #fecaca;color:#dc2626}.danger-soft:hover{background:#fef2f2}.section-mini-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.section-mini-head h3{margin:0}.section-mini-head a{font-size:13px;color:#3155d9;text-decoration:none}.history-list{display:grid}.history-list>div{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid #f0f1f4}.history-list>div:last-child{border-bottom:0}.history-list small{color:#6b7280;text-align:right}.empty-inline{color:#9ca3af;font-size:14px}.renew-preview{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-radius:10px;background:#f5f7ff;border:1px solid #dbe3ff}.renew-preview span{color:#6b7280}.renew-preview strong{color:#3155d9}
.filters-card{padding:18px 20px!important}.filter-grid{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(130px,1fr)) auto;gap:12px;align-items:end}.filter-grid label{font-size:12px;color:#6b7280}.filter-grid input,.filter-grid select{width:100%;margin-top:5px}.filter-grid .btn{height:42px}
.checkin-terminal{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:22px 26px;border-radius:14px;border:1px solid}.checkin-terminal.allowed{background:#f0fdf4;border-color:#86efac;color:#166534}.checkin-terminal.denied{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.terminal-icon{width:58px;height:58px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:800;background:#fff}.terminal-title{font-size:13px;font-weight:800;letter-spacing:.09em}.checkin-terminal h2{font-size:24px;margin:3px 0}.checkin-terminal p{margin:2px 0;color:inherit}.checkin-mode-row{display:flex;align-items:center;gap:10px;margin-bottom:18px}.checkin-mode-row span{font-size:13px;color:#9ca3af}.qr-panel{display:grid;gap:10px;margin-bottom:18px;padding:12px;background:#111827;border-radius:12px;color:#fff}.qr-panel video{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;background:#000}.qr-panel p{font-size:13px;margin:0;color:#e5e7eb}.manual-search{display:flex;gap:8px}.manual-search input{min-width:0;flex:1}.manual-results{display:grid;gap:8px;margin-top:12px}.manual-member{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #f0f1f4}.manual-member strong,.manual-member small{display:block}.manual-member small{font-size:12px;color:#6b7280}.small-btn{padding:7px 10px!important;margin:0!important;width:auto!important;font-size:12px}.checkin-filter-grid{display:grid;grid-template-columns:minmax(180px,1fr) 130px 140px 140px auto;gap:8px}.checkin-filter-grid>*{min-width:0}
@media(max-width:1100px){.filter-grid{grid-template-columns:repeat(3,1fr)}.profile-grid{grid-template-columns:1fr}.checkin-filter-grid{grid-template-columns:1fr 1fr 1fr}.expiry-strip{grid-template-columns:1fr}}
@media(max-width:700px){.profile-head{align-items:flex-start;flex-direction:column}.profile-actions{width:100%}.profile-actions .btn{flex:1}.filter-grid{grid-template-columns:1fr}.checkin-terminal{grid-template-columns:auto 1fr}.checkin-terminal .btn{grid-column:1/-1}.checkin-filter-grid{grid-template-columns:1fr}.manual-member{grid-template-columns:1fr auto}.manual-member .btn{grid-column:1/-1}.expiry-strip a{border-right:0;border-bottom:1px solid #e5e7eb}}

/* UX dorada 12.08.2026 — operativni rad sa članovima */
.status-tabs{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin:2px 0 18px!important}.status-tab{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;padding:8px 15px!important;border:1px solid #dbe1ea!important;border-radius:9px!important;background:#fff!important;color:#4b5563!important;font-size:13px!important;font-weight:600!important;text-decoration:none!important;box-shadow:0 1px 2px rgba(15,23,42,.03)!important}.status-tab:hover{border-color:#b9c5da!important;background:#f8fafc!important}.status-tab.active{background:#3155d9!important;border-color:#3155d9!important;color:#fff!important;box-shadow:0 5px 14px rgba(49,85,217,.18)!important}
.badge{align-items:center;gap:6px;border:1px solid transparent;font-weight:700}.badge:before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor}.badge.active{background:#ecfdf3!important;color:#15803d!important;border-color:#bbf7d0!important}.badge.expiring{background:#fff7ed!important;color:#c2410c!important;border-color:#fed7aa!important}.badge.expired{background:#fef2f2!important;color:#b91c1c!important;border-color:#fecaca!important}.badge.inactive{background:#f3f4f6!important;color:#6b7280!important;border-color:#e5e7eb!important}
.expiry-actions{display:flex;gap:10px;flex-wrap:wrap}.expiry-btn{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;text-decoration:none;font-size:13px;font-weight:600;border:1px solid #e5e7eb;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.04);transition:.15s ease}.expiry-btn strong{font-size:18px}.expiry-btn:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(15,23,42,.07)}.today-expiry{color:#7c3aed;border-color:#ddd6fe;background:#faf5ff}.soon-expiry{color:#c2410c;border-color:#fed7aa;background:#fff7ed}.expired-expiry{color:#b91c1c;border-color:#fecaca;background:#fef2f2}
.member-profile-v2{gap:18px!important;max-width:1440px}.profile-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px!important}.profile-identity{display:flex;align-items:center;gap:16px}.profile-avatar{width:58px!important;height:58px!important;font-size:18px!important}.profile-title-block h2{font-size:24px;line-height:1.2;margin:4px 0 9px}.profile-badges{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.plan-chip{display:inline-flex;padding:5px 10px;border-radius:999px;background:#eef2ff;color:#3155d9;font-size:12px;font-weight:700}.membership-overview{padding:22px 24px!important}.overview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.overview-head h3{font-size:18px;margin:3px 0 0}.overview-kicker{display:block;font-size:11px;letter-spacing:.09em;color:#9ca3af;font-weight:800}.membership-end-box{padding:10px 14px;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb;text-align:right}.membership-end-box span{display:block;font-size:11px;color:#6b7280}.membership-end-box strong{display:block;margin-top:2px;font-size:16px}.overview-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.info-tile{padding:14px 16px;border-radius:10px;background:#fbfcfe;border:1px solid #edf0f4;min-width:0}.info-tile span{display:block;font-size:12px;color:#6b7280;margin-bottom:5px}.info-tile strong{display:block;font-size:14px;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-secondary-actions{border-top:1px solid #eef0f3;padding-top:16px;margin-top:18px!important}.profile-history-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.history-card{min-height:330px;padding:20px 22px!important}.freeze-history-card{padding:20px 22px!important}.mini-link{display:inline-flex!important;align-items:center;padding:7px 10px;border-radius:8px;background:#f5f7ff;color:#3155d9!important;font-weight:700!important}.history-list.refined>div{padding:12px 0}.history-main{display:flex;align-items:center;gap:9px;min-width:0}.history-main strong{font-size:13px}.history-main span:not(.history-dot){font-size:13px;color:#6b7280}.history-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.blue-dot{background:#3b82f6}.green-dot{background:#10b981}.orange-dot{background:#f59e0b}.compact-history{max-width:720px}.renew-two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}#extendDays{background:#fff!important;color:#111827!important;cursor:text}.renew-preview{margin-top:2px}.modal-box.small{max-width:600px!important;width:min(600px,calc(100vw - 32px))!important}
.payments-filters{display:grid;grid-template-columns:minmax(250px,1.3fr) minmax(360px,1.5fr) minmax(170px,.8fr) auto auto;gap:14px;align-items:end}.payments-filters label{font-size:12px;color:#6b7280;font-weight:600}.payments-filters input[type="search"],.payments-filters select,.payments-filters input[type="date"]{width:100%;margin-top:5px}.filter-label{display:block;font-size:12px;color:#6b7280;font-weight:600;margin-bottom:5px}.filter-pills{display:flex;gap:6px;flex-wrap:wrap}.filter-pills label{margin:0}.filter-pills input{position:absolute;opacity:0;pointer-events:none}.filter-pills span{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 11px;border-radius:8px;border:1px solid #dbe1ea;background:#fff;color:#4b5563;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.filter-pills input:checked+span{background:#3155d9;border-color:#3155d9;color:#fff;box-shadow:0 4px 12px rgba(49,85,217,.16)}.date-filter{display:flex;gap:8px}.date-filter label{min-width:126px}.filter-submit{height:40px;white-space:nowrap}
@media(max-width:1250px){.overview-grid{grid-template-columns:repeat(2,1fr)}.payments-filters{grid-template-columns:1fr 1fr}.date-filter{grid-column:1/-1}.filter-submit{width:max-content}}
@media(max-width:800px){.profile-hero{align-items:flex-start;flex-direction:column}.profile-actions{width:100%}.profile-history-grid{grid-template-columns:1fr}.overview-grid{grid-template-columns:1fr}.overview-head{align-items:stretch;flex-direction:column}.membership-end-box{text-align:left}.payments-filters{grid-template-columns:1fr}.date-filter{grid-column:auto;flex-direction:column}.filter-submit{width:100%}.renew-two-col{grid-template-columns:1fr}.expiry-actions{display:grid;grid-template-columns:1fr}.expiry-btn{justify-content:space-between}}

/* Završno UX sređivanje: članovi, profil, uplate i evidencija dolazaka */
.member-link{display:inline-flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;text-decoration:none!important;line-height:1.25!important}
.member-link strong{display:block!important}
.member-code{display:block!important;margin-top:3px!important;color:#7b8494!important;font-size:12px!important;font-weight:500!important;letter-spacing:.01em!important}
.member-cell>div:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.actions.stop-row{display:flex;align-items:center;justify-content:flex-start;min-height:100%}
.profile-pencil{font-size:18px!important;color:#3155d9!important;background:#f5f7ff!important;border:1px solid #dfe5ff!important;border-radius:9px!important;width:38px!important;height:38px!important;text-decoration:none!important;display:grid!important;place-items:center!important}
.profile-pencil:hover{background:#eaf0ff!important;border-color:#bdc9ff!important}
.freeze-btn{background:#f0f7ff!important;border:1px solid #bfd7ff!important;color:#1d4ed8!important;font-weight:700!important}
.freeze-btn:hover{background:#e4efff!important}
.checkin-mode-row{margin-bottom:18px!important}.checkin-mode-row .btn{width:100%!important}.checkin-mode-row span{display:none!important}
.quick-card form{display:grid;gap:10px}.quick-card form label{margin:0!important}.quick-card form .member-id-input{margin:0!important}
.payments-filters{row-gap:16px!important}.payment-method-filter select{min-width:160px}.filters-card{overflow:visible!important}
.table-card th:last-child,.table-card td:last-child{white-space:nowrap}
.profile-secondary-actions{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important}.profile-secondary-actions form{margin:0!important}
@media(max-width:700px){.member-cell{align-items:flex-start!important}.profile-pencil{width:36px!important;height:36px!important}.profile-secondary-actions{align-items:stretch!important}.profile-secondary-actions .btn{width:100%!important}}


/* Raspored recepcije i srpski format datuma */
.profile-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:wrap!important}.profile-actions form{margin:0!important}.profile-actions .btn{white-space:nowrap!important}.membership-overview .profile-secondary-actions{display:none!important}
.date-sr-input{font-variant-numeric:tabular-nums!important;letter-spacing:.01em!important}.checkin-filter-grid .date-sr-input{width:100%!important;min-width:0!important}.payments-filters .date-sr-input{width:100%!important;margin-top:5px!important}
.checkin-interface{margin-top:0!important;margin-bottom:24px!important}.check-stats{margin-top:0!important}.charts-row{margin-top:0!important}
@media(max-width:1050px){.profile-actions{justify-content:flex-start!important;width:100%!important}.profile-hero{align-items:flex-start!important}.checkin-interface{grid-template-columns:1fr!important}}
@media(max-width:700px){.profile-actions{display:grid!important;grid-template-columns:1fr!important}.profile-actions .btn,.profile-actions form,.profile-actions form .btn{width:100%!important}}

/* Kontrolna tabla — status članarina unutar kartice */
.membership-alert-card{display:flex;flex-direction:column;gap:8px}.membership-alert-title{font-size:15px;font-weight:600;color:#111827;margin-top:-4px}.membership-alert-links{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:auto}.membership-alert-links a{display:flex;flex-direction:column;gap:2px;padding:8px 9px;border:1px solid #e5e7eb;border-radius:8px;text-decoration:none;background:#fafafa;min-width:0}.membership-alert-links a:hover{border-color:#f59e0b;background:#fff7ed}.membership-alert-links span{font-size:11px;color:#6b7280;white-space:nowrap}.membership-alert-links strong{font-size:17px;color:#c2410c}.membership-alert-links a.danger strong{color:#b91c1c}.membership-alert-links a.danger:hover{border-color:#fecaca;background:#fef2f2}

/* Analitika i finansijski izveštaji */
.report-toolbar-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:22px 24px;box-shadow:0 1px 2px rgba(0,0,0,.05);display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.report-toolbar-card h2{margin:3px 0 4px;font-size:24px}.report-toolbar-card p{margin:0;color:#6b7280;font-size:14px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;color:#6b7280}.report-period-form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.report-period-form label{font-size:12px;color:#6b7280;font-weight:600}.report-period-form select{display:block;min-width:165px;margin-top:5px}.compare-word{font-size:12px;color:#9ca3af;padding-bottom:11px}.report-delta{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700;background:#f3f4f6;color:#6b7280}.report-delta.positive{background:#ecfdf5;color:#15803d}.report-delta.negative{background:#fef2f2;color:#b91c1c}.report-delta.neutral{background:#f3f4f6;color:#6b7280}.comparison-strip{display:grid;grid-template-columns:1.2fr repeat(4,1fr) 1.2fr;background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.04)}.comparison-strip>div{padding:16px 18px;border-right:1px solid #e5e7eb}.comparison-strip>div:last-child{border-right:0}.comparison-period{background:#eff6ff}.comparison-period.muted-period{background:#f9fafb}.comparison-period small,.comparison-cell span{display:block;font-size:11px;color:#6b7280;margin-bottom:4px}.comparison-period strong{font-size:15px}.comparison-cell strong{display:block;font-size:17px;margin-bottom:5px}.comparison-cell em{font-style:normal;font-size:11px;font-weight:700}.comparison-cell em.positive{color:#15803d}.comparison-cell em.negative{color:#b91c1c}.comparison-cell em.neutral{color:#6b7280}.report-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,.8fr);gap:24px}.financial-report-card{overflow:hidden}.financial-table-wrap{overflow-x:auto}.financial-table{min-width:760px}.financial-table th,.financial-table td{padding:12px 14px}.plan-report-name{display:inline-flex;align-items:center;gap:8px;font-weight:600}.plan-report-name i{width:9px;height:9px;border-radius:50%}.report-total{font-size:20px}.payment-method-report{display:flex;flex-direction:column}.payment-method-row{display:grid;grid-template-columns:1fr auto;gap:3px 12px;align-items:center;padding-top:12px}.payment-method-row span{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600}.payment-method-row small{grid-column:1/-1;color:#6b7280;font-size:12px}.cash-dot,.card-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:#10b981}.card-dot{background:#3b82f6}.payment-method-bar{height:8px;background:#f3f4f6;border-radius:999px;overflow:hidden;margin:8px 0 14px}.payment-method-bar i{display:block;height:100%;background:#10b981;border-radius:inherit}.payment-method-bar.card-bar i{background:#3b82f6}.report-mini-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto;padding-top:18px;border-top:1px solid #e5e7eb}.report-mini-summary span{background:#f9fafb;border-radius:8px;padding:12px;font-size:11px;color:#6b7280}.report-mini-summary strong{display:block;color:#111827;font-size:18px;margin-top:3px}
@media(max-width:1200px){.comparison-strip{grid-template-columns:repeat(3,1fr)}.comparison-strip>div{border-bottom:1px solid #e5e7eb}.report-grid{grid-template-columns:1fr}.report-toolbar-card{align-items:flex-start;flex-direction:column}.report-period-form{width:100%}}
@media(max-width:700px){.membership-alert-links{grid-template-columns:1fr 1fr 1fr}.comparison-strip{grid-template-columns:1fr 1fr}.report-period-form{display:grid;grid-template-columns:1fr}.report-period-form label,.report-period-form select,.report-period-form .btn{width:100%}.compare-word{padding:0}.report-metrics{grid-template-columns:1fr}.report-toolbar-card{padding:18px}.financial-table th,.financial-table td{padding:10px 12px}}


/* Završno vizuelno usklađivanje — kontrolna tabla i finansijski izveštaj */
.dashboard-stats-grid{margin-bottom:36px!important}
.dashboard-charts-row{margin-top:0!important}
.plan-revenue-donut-card{min-height:430px;display:flex;flex-direction:column}
.plan-revenue-donut-card .donut-chart{height:178px!important;max-width:300px!important;width:100%!important;margin:14px auto 28px!important}
.plan-revenue-donut-card .donut-chart svg{width:100%!important;height:100%!important;display:block!important}
.plan-revenue-donut-card .legend-list{margin-top:auto!important;gap:12px!important}
.plan-revenue-donut-card .legend-row{font-size:14px!important}
.plan-revenue-donut-card .legend-row strong{font-weight:700!important}
.report-period-form select[name="compare"]{min-width:190px}
.report-toolbar-card{margin-bottom:28px}
@media(max-width:900px){.dashboard-stats-grid{margin-bottom:28px!important}.plan-revenue-donut-card{min-height:auto}}

/* UX dorade: jasna kontrola bočnog menija, paketi i evidencija dolazaka */
.sidebar-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.toggle-sidebar-open,.toggle-sidebar-closed{display:grid;place-items:center}.toggle-sidebar-closed{display:none}@media(min-width:901px){.sidebar.closed~.main .toggle-sidebar-open{display:none}.sidebar.closed~.main .toggle-sidebar-closed{display:grid}}@media(max-width:900px){.toggle-sidebar-open{display:none}.toggle-sidebar-closed{display:grid}}

.dashboard-donut-card{min-height:430px;display:flex;flex-direction:column}.dashboard-donut-card .donut-chart{height:178px!important;max-width:300px!important;width:100%!important;margin:14px auto 28px!important}.dashboard-donut-card .donut-chart svg{width:100%!important;height:100%!important;display:block!important}.dashboard-donut-card .legend-list{margin-top:auto!important;gap:12px!important}.dashboard-donut-card .legend-row{font-size:14px!important}.dashboard-donut-card .legend-row strong{font-weight:700!important}

.checkin-interface{margin-bottom:34px!important}.check-stats{margin:0 0 28px!important}.check-stats+.charts-row{margin-top:0!important}.avg-period-form{margin:0}.avg-period-form select{min-width:92px;height:34px;padding:5px 28px 5px 9px;border-radius:8px;border:1px solid #fed7aa;background:#fff7ed;color:#c2410c;font-size:12px;font-weight:700;box-shadow:none}.avg-period-form select:focus{border-color:#fb923c;box-shadow:0 0 0 2px rgba(251,146,60,.15)}

.color-picker-control{display:grid;grid-template-columns:54px 34px 1fr;align-items:center;gap:10px;margin-top:6px;border:1px solid #d1d5db;border-radius:9px;padding:7px 10px;background:#fff;min-height:48px}.color-picker-control:focus-within{border-color:#3b82f6;box-shadow:0 0 0 2px rgba(59,130,246,.18)}.color-picker-control input[type=color]{width:54px!important;height:32px!important;padding:0!important;margin:0!important;border:0!important;border-radius:7px!important;background:transparent!important;cursor:pointer;overflow:hidden}.color-picker-control input[type=color]::-webkit-color-swatch-wrapper{padding:0}.color-picker-control input[type=color]::-webkit-color-swatch{border:0;border-radius:7px}.color-picker-control input[type=color]::-moz-color-swatch{border:0;border-radius:7px}.color-preview{width:28px;height:28px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px #d1d5db;background:#3b82f6}.color-picker-control code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#4b5563;font-size:13px;background:#f9fafb;border-radius:6px;padding:6px 8px;justify-self:start}

.icon-picker{grid-column:1/-1;border:0;padding:0;margin:0}.icon-picker legend{font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.icon-picker-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.icon-choice{margin:0!important;cursor:pointer}.icon-choice input{position:absolute;opacity:0;pointer-events:none}.icon-choice span{min-height:64px;border:1px solid #dbe1ea;border-radius:9px;background:#fff;display:flex;align-items:center;justify-content:center;gap:7px;flex-direction:column;color:#4b5563;transition:.16s ease;padding:7px}.icon-choice svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-choice small{font-size:10px;color:#6b7280;font-weight:600}.icon-choice:hover span{border-color:#93c5fd;background:#f8fbff}.icon-choice input:checked+span{border-color:#3155d9;background:#eef2ff;color:#3155d9;box-shadow:0 0 0 2px rgba(49,85,217,.08)}.icon-choice input:checked+span small{color:#3155d9}.plan-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.member-cell .plan-icon svg{width:17px;height:17px}

@media(max-width:700px){.icon-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.color-picker-control{grid-template-columns:48px 30px 1fr}.dashboard-donut-card{min-height:auto}}

/* Podešavanja administratora i reset lozinke */
.admin-card-link{text-decoration:none;position:relative;transition:background .18s ease}.admin-card-link:hover{background:rgba(255,255,255,.08)}.admin-avatar-img{object-fit:cover;display:block}.admin-settings-icon{margin-left:auto;width:20px;height:20px;opacity:.65}.admin-settings-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.settings-wrap{display:grid;gap:20px;max-width:1180px;margin:0 auto}.settings-hero{padding:24px;display:flex;align-items:center;gap:18px}.settings-hero h2{margin:3px 0 5px;font-size:25px}.settings-hero p{margin:0}.settings-avatar{width:76px;height:76px;border-radius:20px;object-fit:cover;display:block}.settings-avatar-fallback{display:grid;place-items:center;background:linear-gradient(135deg,#4f7df3,#8655f7);color:#fff;font-size:26px;font-weight:700}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-card{padding:24px}.settings-title{padding-bottom:18px;border-bottom:1px solid #eef0f3;margin-bottom:20px}.settings-title h3{margin:0 0 5px;font-size:18px}.settings-title p{margin:0;color:#6b7280;font-size:14px}.settings-form{display:grid;gap:16px}.settings-form label{display:block;font-size:14px;font-weight:600;color:#374151}.settings-form input[type=text],.settings-form input[type=email],.settings-form input[type=password],.settings-form input[type=file]{display:block;width:100%;margin-top:7px}.settings-form input[type=file]{padding:10px 12px;border:1px solid #d1d5db;border-radius:9px;background:#fff}.field-note{display:block;margin-top:6px;color:#6b7280;font-size:12px;font-weight:400}.inline-check{display:flex!important;align-items:center;gap:9px;font-weight:500!important}.inline-check input{width:16px;height:16px}.settings-form>.btn{justify-self:start;padding-left:22px;padding-right:22px}.forgot-link{display:block;text-align:center;color:#3155d9;font-weight:650;text-decoration:none;font-size:14px;margin-top:2px}.forgot-link:hover{text-decoration:underline}.login-back{display:block;margin-top:20px;text-align:center;color:#3155d9;text-decoration:none;font-weight:600}.reset-login-btn{display:flex;margin-top:18px;width:100%;justify-content:center;text-decoration:none}.login-card .alert{margin-top:18px}.login-card h1{margin-bottom:6px}
@media(max-width:860px){.settings-grid{grid-template-columns:1fr}.settings-hero{align-items:flex-start}.settings-avatar{width:64px;height:64px;border-radius:16px}}


/* Kompaktan izbor boje: samo kružni birač. */
.color-picker-control.color-picker-circle-only{display:flex!important;align-items:center!important;justify-content:flex-start!important;border:0!important;background:transparent!important;box-shadow:none!important;padding:4px 0!important;min-height:44px!important;margin-top:6px!important}
.color-picker-control.color-picker-circle-only input[type=color]{appearance:none;-webkit-appearance:none;width:42px!important;height:42px!important;border-radius:50%!important;border:2px solid #d1d5db!important;padding:3px!important;background:#fff!important;cursor:pointer!important;overflow:hidden!important}
.color-picker-control.color-picker-circle-only input[type=color]::-webkit-color-swatch-wrapper{padding:0!important;border-radius:50%!important}
.color-picker-control.color-picker-circle-only input[type=color]::-webkit-color-swatch{border:0!important;border-radius:50%!important}
.color-picker-control.color-picker-circle-only input[type=color]::-moz-color-swatch{border:0!important;border-radius:50%!important}
.color-picker-control.color-picker-circle-only input[type=color]:focus{outline:0!important;box-shadow:0 0 0 3px rgba(59,130,246,.16)!important;border-color:#3b82f6!important}

/* Izbor ikonice: bez tekstualnih naziva, samo čiste ikonice. */
.icon-picker-grid{grid-template-columns:repeat(5,minmax(56px,1fr))!important}
.icon-choice span{min-height:54px!important;flex-direction:row!important;padding:8px!important}
.icon-choice svg{width:24px!important;height:24px!important}
.icon-choice small{display:none!important}
@media(max-width:700px){.icon-picker-grid{grid-template-columns:repeat(5,minmax(48px,1fr))!important}.icon-choice span{min-height:48px!important}.icon-choice svg{width:22px!important;height:22px!important}}

/* Member package icons */
.plan-cell{display:inline-flex;align-items:center;gap:9px}.member-plan-icon{width:20px;height:20px;display:inline-grid;place-items:center;color:var(--plan-color,currentColor);flex:0 0 20px}.member-plan-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}


.member-autocomplete{position:relative}.member-autocomplete-results{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:50;background:#fff;border:1px solid #dbe1ea;border-radius:12px;box-shadow:0 12px 30px rgba(15,23,42,.14);overflow:hidden}.member-autocomplete-results button{width:100%;border:0;border-bottom:1px solid #eef1f5;background:#fff;padding:11px 13px;text-align:left;display:flex;flex-direction:column;gap:3px;cursor:pointer}.member-autocomplete-results button:last-child{border-bottom:0}.member-autocomplete-results button:hover{background:#f5f7ff}.member-autocomplete-results button strong{font-size:14px}.member-autocomplete-results button span,.member-autocomplete-empty{font-size:12px;color:#7b8494}.member-autocomplete-empty{padding:13px}.manual-checkin-form{position:relative}

/* Members toolbar: Figma-style search + status dropdown + add button */
.members-page-actions{width:100%;align-items:center!important;gap:20px!important;margin-bottom:24px!important}
.members-page-actions .search-wrap{margin:0;flex:1;max-width:520px}
.members-actions{margin-left:auto;align-items:center;flex-wrap:nowrap}
.member-status-filter{margin:0}
.member-filter-select{height:42px;min-width:150px;padding:0 38px 0 14px;border:1.5px solid #3b82f6;border-radius:9px;background:#fff;color:#111827;font-size:14px;font-weight:500;cursor:pointer;box-shadow:0 0 0 1px rgba(59,130,246,.06)}
.member-filter-select:hover{border-color:#2563eb}
.member-filter-select:focus{border-color:#2563eb;box-shadow:0 0 0 2px rgba(59,130,246,.14)}
.add-member-btn{height:42px;white-space:nowrap;padding-left:18px;padding-right:18px}
@media(max-width:700px){.members-page-actions{align-items:stretch!important;flex-direction:column!important}.members-page-actions .search-wrap{max-width:none;width:100%}.members-actions{width:100%;margin-left:0}.member-status-filter{flex:1}.member-filter-select{width:100%;min-width:0}.add-member-btn{flex:0 0 auto}}

/* Dashboard member count clarity */
.stat-value-note{font-size:14px;font-weight:600;color:#6b7280;margin-left:5px}.stat-subvalue{margin-top:5px;font-size:13px;color:#9ca3af;font-weight:500}

/* === Figma refinement batch: members / plans / check-in / analytics === */
/* Members: compact enough to keep 8 rows visible on a standard desktop viewport */
.members-page-actions{margin-bottom:16px!important}
.members-page-actions + .table-card th{padding-top:10px!important;padding-bottom:10px!important}
.members-page-actions + .table-card td{padding-top:10px!important;padding-bottom:10px!important}
.members-page-actions + .table-card tbody tr{height:68px}
.members-page-actions + .table-card .avatar{width:38px;height:38px;min-width:38px}
.members-page-actions + .table-card .member-cell{gap:10px}
.members-page-actions + .table-card .member-contact{gap:2px;line-height:1.25}
.members-page-actions + .table-card .member-cell small{margin-top:0;font-size:12px}
.members-page-actions + .table-card .icon-btn{width:34px;height:34px}

/* Plans: equal Figma-like cards, consistent rhythm and bottom-aligned actions */
.plans-grid{align-items:stretch;grid-auto-rows:1fr}
.plan-card{display:flex;flex-direction:column;min-height:515px;padding:24px!important}
.plan-card .plan-top{min-height:48px}
.plan-card h3{margin:16px 0 6px!important;font-size:23px!important}
.plan-card .price{font-size:34px!important;line-height:1.1}
.plan-card .subscriber-count{margin:22px 0!important;padding:9px 12px!important}
.plan-card ul{min-height:0!important;flex:1;margin-bottom:22px!important;gap:11px!important}
.plan-card .plan-actions{margin-top:auto}
.plan-card .plan-icon{width:46px;height:46px}
.comparison-card{margin-top:24px!important}

/* Check-in: Figma order, generous separation, cards equal height */
.check-stats{margin:0 0 24px!important}
.check-stats .check-stat{min-height:158px;padding:24px 28px}
.check-stats + .charts-row{margin-bottom:24px!important}
.check-stats + .charts-row .fig-card{min-height:310px}
.check-stats + .charts-row .small-chart .svg-chart{height:220px}
.checkin-interface{margin:0!important;gap:24px!important;align-items:stretch}
.checkin-interface .quick-card,.checkin-interface .today-card{min-height:480px}
.checkin-interface .today-card{display:flex;flex-direction:column}
.checkin-interface .checkin-list{max-height:390px;flex:1}
.checkin-interface .today-card-head{padding:22px 24px}
.checkin-interface .quick-card{padding:24px}
.checkin-interface .qr-panel video{min-height:230px}

/* Dashboard: recent activity gets more useful room and more visible members */
.bottom-row{grid-template-columns:minmax(360px,.9fr) minmax(0,2.1fr)!important}
.dashboard-donut-card,.activity-card{min-height:485px!important}
.activity-card{padding:24px 28px!important}
.activity-card .activity{min-height:51px;padding:8px 0}
.activity-card .activity-list{margin-top:4px}
.activity-card .avatar{width:38px;height:38px;min-width:38px}

/* Analytics: make average monthly visits a strong KPI like the Figma reference */
.avg-visits-highlight{min-height:430px;display:flex;flex-direction:column}
.avg-visits-highlight h3{margin-bottom:10px!important}
.avg-visits-highlight .avg-visits-chart{height:220px!important}
.avg-visits-summary{margin-top:auto;padding-top:16px;display:grid;gap:12px}
.avg-visits-summary>div{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px}
.avg-visits-summary span{color:#4b5563}
.avg-visits-summary strong{font-size:15px;color:#111827;white-space:nowrap}
.analytics-insights{margin-top:24px}
.analytics-insights .insight{min-height:150px;display:flex;flex-direction:column;justify-content:center}
.insight-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.insight-head h4{margin:0!important;font-size:17px}
.insight-symbol{font-size:28px;line-height:1;font-weight:600}
.green-i .insight-symbol,.green-i h4,.green-i p{color:#15803d}
.blue-i .insight-symbol,.blue-i h4,.blue-i p{color:#1d4ed8}
.orange-i .insight-symbol,.orange-i h4,.orange-i p{color:#c2410c}

@media(max-width:1200px){
  .bottom-row{grid-template-columns:1fr!important}
  .dashboard-donut-card,.activity-card{min-height:auto!important}
  .plan-card{min-height:auto}
}
@media(max-width:900px){
  .members-page-actions + .table-card tbody tr{height:auto}
  .checkin-interface .quick-card,.checkin-interface .today-card{min-height:auto}
}
