:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;--bg-color: #F5F5F7;--panel-bg: rgba(255, 255, 255, .75);--panel-bg-solid: #ffffff;--border-color: rgba(0, 0, 0, .08);--border-hover: rgba(0, 0, 0, .15);--text-primary: #1D1D1F;--text-secondary: #86868B;--accent-blue: #0071E3;--accent-blue-hover: #0077ED;--accent-green: #34C759;--accent-red: #FF3B30;--card-shadow: 0 8px 32px 0 rgba(0, 0, 0, .04);--inset-shadow: inset 0 2px 4px 0 rgba(0, 0, 0, .02);--focus-ring: 0 0 0 4px rgba(0, 113, 227, .15)}@media (prefers-color-scheme: dark){:root{--bg-color: #000000;--panel-bg: rgba(28, 28, 30, .75);--panel-bg-solid: #1C1C1E;--border-color: rgba(255, 255, 255, .08);--border-hover: rgba(255, 255, 255, .15);--text-primary: #F5F5F7;--text-secondary: #86868B;--accent-blue: #2997FF;--accent-blue-hover: #47A4FF;--accent-green: #30D158;--accent-red: #FF453A;--card-shadow: 0 8px 32px 0 rgba(0, 0, 0, .4);--inset-shadow: inset 0 2px 4px 0 rgba(255, 255, 255, .02);--focus-ring: 0 0 0 4px rgba(41, 151, 255, .25)}}body.light-theme{--bg-color: #F5F5F7;--panel-bg: rgba(255, 255, 255, .75);--panel-bg-solid: #ffffff;--border-color: rgba(0, 0, 0, .08);--border-hover: rgba(0, 0, 0, .15);--text-primary: #1D1D1F;--text-secondary: #86868B;--accent-blue: #0071E3;--accent-blue-hover: #0077ED;--accent-green: #34C759;--accent-red: #FF3B30;--card-shadow: 0 8px 32px 0 rgba(0, 0, 0, .04)}body.dark-theme{--bg-color: #000000;--panel-bg: rgba(28, 28, 30, .75);--panel-bg-solid: #1C1C1E;--border-color: rgba(255, 255, 255, .08);--border-hover: rgba(255, 255, 255, .15);--text-primary: #F5F5F7;--text-secondary: #86868B;--accent-blue: #2997FF;--accent-blue-hover: #47A4FF;--accent-green: #30D158;--accent-red: #FF453A;--card-shadow: 0 8px 32px 0 rgba(0, 0, 0, .4)}*{box-sizing:border-box;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{height:100%;margin:0;padding:0;overflow:hidden}body{background-color:var(--bg-color);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}.glass-panel{background:var(--panel-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:20px;box-shadow:var(--card-shadow);transition:border-color .3s ease,background .3s ease}button,.tile-btn{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .2s cubic-bezier(.4,0,.2,1)}button:focus-visible{box-shadow:var(--focus-ring)}.container{max-width:1400px;margin:0 auto;padding:24px;height:100vh;display:flex;flex-direction:column;min-height:0;box-sizing:border-box}.app-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:16px 24px;flex-shrink:0}.logo-section h1{font-size:22px;font-weight:700;letter-spacing:-.5px}.logo-section span{color:var(--text-secondary);font-size:13px}.split-layout{display:grid;grid-template-columns:1fr 400px;gap:24px;flex:1;min-height:0}@media (max-width: 900px){.split-layout{grid-template-columns:1fr;flex:1;min-height:0}}.register-section{display:flex;flex-direction:column;gap:20px;height:100%;min-height:0;overflow-y:auto}.employee-bar{display:flex;gap:10px;overflow-x:auto;padding:4px;scrollbar-width:none}.employee-bar::-webkit-scrollbar{display:none}.employee-chip{padding:10px 18px;border-radius:12px;background:var(--panel-bg-solid);border:1px solid var(--border-color);color:var(--text-primary);font-weight:500;font-size:14px;white-space:nowrap}.employee-chip.active{background:var(--accent-blue);color:#fff;border-color:transparent;box-shadow:0 4px 12px #0071e333}.employee-chip:active{transform:scale(.96)}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.service-tile{padding:24px 16px;border-radius:18px;background:var(--panel-bg-solid);border:1px solid var(--border-color);display:flex;flex-direction:column;align-items:center;justify-content:space-between;min-height:150px;text-align:center;box-shadow:var(--card-shadow)}.service-tile:hover{transform:translateY(-2px);border-color:var(--border-hover)}.service-tile:active{transform:translateY(1px) scale(.96)}.service-tile .tile-icon{width:44px;height:44px;border-radius:50%;background:#0071e314;display:flex;align-items:center;justify-content:center;color:var(--accent-blue);margin-bottom:12px}.service-tile[data-category=copying] .tile-icon{background:#af52de14;color:#af52de}.service-tile[data-category=printing] .tile-icon{background:#0071e314;color:var(--accent-blue)}.service-tile[data-category=photo] .tile-icon{background:#ff950014;color:#ff9500}.service-tile[data-category=other] .tile-icon{background:#34c75914;color:var(--accent-green)}.service-tile .tile-name{font-size:14px;font-weight:600;margin-bottom:8px;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.service-tile .tile-price{font-size:16px;font-weight:700;color:var(--accent-blue)}.custom-service-btn{background:linear-gradient(135deg,#0071e305,#34c75905);border:1px dashed var(--accent-blue)}.custom-service-btn .tile-icon{background:#0071e31a;color:var(--accent-blue)}.checkout-panel{display:flex;flex-direction:column;height:100%;min-height:0;position:relative;top:0}@media (max-width: 900px){.checkout-panel{height:100%;min-height:0;position:relative}}.checkout-header{padding:20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.checkout-header h2{font-size:18px;font-weight:700}.checkout-items{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px;min-height:200px}.cart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:14px;gap:8px}.cart-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background:var(--panel-bg-solid);border:1px solid var(--border-color);border-radius:12px}.item-info{display:flex;flex-direction:column;gap:2px}.item-name{font-size:13px;font-weight:600}.item-price{font-size:12px;color:var(--text-secondary)}.item-qty-control{display:flex;align-items:center;gap:10px}.qty-btn{width:28px;height:28px;border-radius:8px;background:var(--bg-color);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;border:1px solid var(--border-color)}.qty-btn:active{transform:scale(.9)}.qty-edit-btn{padding:6px 12px;border-radius:10px;background:var(--bg-color);color:var(--text-primary);font-size:14px;font-weight:700;border:1px solid var(--border-color);display:flex;align-items:center;gap:4px}.qty-edit-btn:hover{background:var(--panel-bg-solid);border-color:var(--accent-blue);color:var(--accent-blue)}.qty-edit-btn:active{transform:scale(.95)}.item-qty{font-size:14px;font-weight:700;min-width:16px;text-align:center}.item-total{font-size:14px;font-weight:700;margin-left:8px}.checkout-footer{padding:20px;border-top:1px solid var(--border-color);background:var(--panel-bg-solid);border-radius:0 0 20px 20px}.totals-row{display:flex;justify-content:space-between;margin-bottom:16px;font-size:15px}.totals-row.grand-total{font-size:20px;font-weight:800;color:var(--text-primary);border-top:1px dashed var(--border-color);padding-top:12px}.payment-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pay-btn{padding:16px;border-radius:12px;font-weight:700;font-size:14px;display:flex;flex-direction:column;align-items:center;gap:6px;color:#fff;box-shadow:0 4px 12px #0000000d}.pay-btn.cash{background:var(--accent-green)}.pay-btn.cash:hover{background:#2cb34e}.pay-btn.card{background:var(--accent-blue)}.pay-btn.card:hover{background:var(--accent-blue-hover)}.pay-btn:active{transform:scale(.96)}.pay-btn:disabled,.qty-btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.success-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0003;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.success-badge{background:var(--panel-bg-solid);padding:30px 40px;border-radius:24px;box-shadow:0 20px 50px #00000026;display:flex;flex-direction:column;align-items:center;gap:12px;border:1px solid var(--border-color);animation:badgeIn .3s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes badgeIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.success-icon{width:56px;height:56px;border-radius:50%;background:#34c7591a;display:flex;align-items:center;justify-content:center;color:var(--accent-green);font-size:28px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:90;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-content{background:var(--panel-bg-solid);width:95%;max-width:640px;max-height:96vh;border-radius:24px;box-shadow:var(--card-shadow);border:1px solid var(--border-color);overflow:hidden;display:flex;flex-direction:column;animation:modalIn .25s cubic-bezier(.16,1,.3,1) forwards}@keyframes modalIn{0%{transform:scale(.95) translateY(10px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.modal-header{padding:20px 24px;border-bottom:1px solid var(--border-color);font-weight:700;font-size:20px;display:flex;justify-content:space-between;align-items:center}.modal-body{padding:24px;overflow-y:auto;flex:1}.numpad-container{display:grid;grid-template-columns:1.1fr 1fr;gap:24px}@media (max-width: 580px){.numpad-container{grid-template-columns:1fr}}.numpad-left{display:flex;flex-direction:column;justify-content:space-between;gap:18px}.numpad-right{display:flex;flex-direction:column}.segmented-control{display:flex;background:var(--bg-color);padding:4px;border-radius:12px;border:1px solid var(--border-color);margin-top:6px}.segmented-btn{flex:1;padding:12px 8px;border-radius:9px;font-size:13px;font-weight:600;color:var(--text-secondary);background:transparent;text-align:center}.segmented-btn.active{background:var(--panel-bg-solid);color:var(--text-primary);box-shadow:0 2px 8px #0000000f}.numpad-display-box{background:var(--bg-color);border:1px solid var(--border-color);border-radius:14px;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;cursor:pointer;transition:all .2s ease}.numpad-display-box.active{border-color:var(--accent-blue);background:var(--panel-bg-solid);box-shadow:var(--focus-ring)}.numpad-display-label{font-size:11px;font-weight:700;color:var(--text-secondary);text-transform:uppercase}.numpad-display-value{font-size:24px;font-weight:800;color:var(--text-primary)}.numpad-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.numpad-btn{height:52px;border-radius:12px;background:var(--panel-bg-solid);border:1px solid var(--border-color);color:var(--text-primary);font-size:20px;font-weight:600;display:flex;align-items:center;justify-content:center}.numpad-btn:active{transform:scale(.94);background:var(--bg-color)}.numpad-btn.clear{color:var(--accent-red)}.numpad-btn.backspace{font-size:16px;color:var(--text-secondary)}.numpad-submit-btn{padding:16px;border-radius:14px;background:var(--accent-green);color:#fff;font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center;gap:8px}.numpad-submit-btn:active{transform:scale(.96)}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:12px;font-weight:600;color:var(--text-secondary)}.form-control{padding:12px 16px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-primary);font-size:15px;outline:none;font-family:inherit}.form-control:focus{border-color:var(--accent-blue);box-shadow:var(--focus-ring)}.btn{padding:10px 18px;border-radius:8px;font-size:14px;font-weight:600}.btn.btn-secondary{background:transparent;color:var(--text-secondary)}.btn.btn-secondary:hover{color:var(--text-primary)}.btn.btn-primary{background:var(--accent-blue);color:#fff}.btn.btn-primary:hover{background:var(--accent-blue-hover)}.tab-navigation{display:flex;gap:8px}.tab-btn{padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;color:var(--text-secondary);background:transparent}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{background:var(--panel-bg-solid);border:1px solid var(--border-color);color:var(--text-primary);box-shadow:0 2px 4px #00000005}.history-list{display:flex;flex-direction:column;gap:12px;max-width:800px;margin:0 auto}.history-card{padding:16px 20px;display:flex;justify-content:space-between;align-items:center;background:var(--panel-bg-solid);border:1px solid var(--border-color);border-radius:14px}.history-left{display:flex;flex-direction:column;gap:4px}.history-meta{display:flex;gap:12px;font-size:12px;color:var(--text-secondary)}.history-items-summary{font-size:14px;font-weight:600}.history-right{display:flex;align-items:center;gap:16px}.history-amount{font-size:16px;font-weight:700}.badge-method{padding:3px 8px;border-radius:6px;font-size:10px;font-weight:700}.badge-method.CASH{background:#34c7591a;color:var(--accent-green)}.badge-method.CARD{background:#0071e31a;color:var(--accent-blue)}.delete-btn{width:32px;height:32px;border-radius:8px;background:#ff3b3014;color:var(--accent-red);display:flex;align-items:center;justify-content:center;font-size:16px}.delete-btn:hover{background:#ff3b3026}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;flex:1;min-height:0;overflow-y:auto;padding:4px}.settings-card{padding:24px;background:var(--panel-bg-solid);border:1px solid var(--border-color);border-radius:18px;display:flex;flex-direction:column;gap:16px}.settings-card h3{font-size:16px;font-weight:700;border-bottom:1px solid var(--border-color);padding-bottom:10px}.stats-header-bar{display:flex;gap:16px;margin-bottom:24px;overflow-x:auto;padding-bottom:4px;flex-shrink:0}.stat-item-card{flex:1;min-width:150px;padding:16px 20px;background:var(--panel-bg-solid);border:1px solid var(--border-color);border-radius:14px;display:flex;flex-direction:column;gap:4px;box-shadow:var(--card-shadow)}.stat-label{font-size:12px;color:var(--text-secondary);font-weight:600}.stat-val{font-size:20px;font-weight:700;color:var(--text-primary)}.admin-item-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border-color)}.admin-item-row:last-child{border-bottom:none}.admin-item-info{display:flex;flex-direction:column}.admin-item-title{font-size:14px;font-weight:600}.admin-item-subtitle{font-size:12px;color:var(--text-secondary)}.lockscreen-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 80px);max-width:440px;margin:0 auto;padding:20px;animation:modalIn .3s cubic-bezier(.16,1,.3,1)}.lockscreen-title{font-size:24px;font-weight:800;text-align:center;margin-bottom:24px;letter-spacing:-.5px}.lockscreen-employee-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;width:100%;margin-bottom:24px}.lockscreen-employee-card{padding:20px 12px;border-radius:16px;background:var(--panel-bg-solid);border:1px solid var(--border-color);text-align:center;font-weight:600;font-size:14px;cursor:pointer;box-shadow:var(--card-shadow);display:flex;flex-direction:column;align-items:center;gap:10px;transition:all .2s ease}.lockscreen-employee-card:active{transform:scale(.96)}.lockscreen-employee-card.active{border-color:var(--accent-blue);background:#0071e30a;box-shadow:var(--focus-ring)}.pin-dots-container{display:flex;gap:16px;justify-content:center;margin:20px 0 30px}.pin-dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--text-secondary);background:transparent;transition:all .15s ease}.pin-dot.active{background:var(--text-primary);border-color:var(--text-primary);transform:scale(1.15)}.lockscreen-numpad{width:100%;max-width:280px}.history-tab-container{flex:1;min-height:0;overflow-y:auto;width:100%;padding:4px}.mobile-view-tabs{display:none}@media (max-width: 900px){.mobile-view-tabs{display:flex;background:var(--panel-bg-solid);border:1px solid var(--border-color);padding:4px;border-radius:14px;margin-bottom:12px;flex-shrink:0}.mobile-tab-btn{flex:1;padding:10px;border-radius:10px;font-size:13px;font-weight:700;color:var(--text-secondary);background:transparent;display:flex;align-items:center;justify-content:center;gap:8px}.mobile-tab-btn.active{background:var(--accent-blue);color:#fff}.mobile-cart-badge{background:var(--accent-red);color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:8px;min-width:16px;text-align:center}.mobile-tab-btn.active .mobile-cart-badge{background:#fff;color:var(--accent-red)}.split-layout.show-grid .checkout-panel{display:none}.split-layout.show-grid .register-section{display:flex}.split-layout.show-cart .register-section{display:none}.split-layout.show-cart .checkout-panel{display:flex}}@media (max-width: 768px){.container{padding:12px}.app-header{margin-bottom:12px;padding:12px 16px}.stats-header-bar{margin-bottom:12px;gap:8px}.services-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.service-tile{padding:14px 10px;min-height:110px;border-radius:12px}.service-tile .tile-icon{width:32px;height:32px;margin-bottom:6px}.service-tile .tile-icon svg{width:16px;height:16px}.service-tile .tile-name{font-size:12px;margin-bottom:4px}.service-tile .tile-price{font-size:14px}.checkout-items{padding:12px;gap:8px}.checkout-footer{padding:12px}}@media (max-width: 480px){.container{padding:8px}.app-header{padding:10px 12px}.logo-section h1{font-size:18px}.stat-item-card{padding:10px 12px;min-width:120px}.stat-val{font-size:16px}}@media (max-height: 700px){.lockscreen-container{padding:10px;gap:8px}.lockscreen-title{margin-bottom:12px;font-size:20px}.pin-dots-container{margin:10px 0 15px}.numpad-btn{height:42px;font-size:18px}.modal-content{border-radius:16px}.modal-header{padding:12px 16px;font-size:16px}.modal-body{padding:12px}.numpad-container{gap:12px}.numpad-display-box{padding:8px 12px;margin-bottom:8px}.numpad-display-value{font-size:20px}.numpad-grid{gap:6px;margin-bottom:8px}}.filter-panel{padding:16px 20px;display:flex;flex-direction:column;gap:12px}.filter-presets{display:flex;gap:8px;flex-wrap:wrap}.filter-preset-btn{padding:6px 16px;border-radius:20px;border:1.5px solid var(--border-color);background:var(--panel-bg-solid);color:var(--text-primary);font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease}.filter-preset-btn:hover,.filter-preset-btn.active{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.filter-row label{font-size:13px;font-weight:600;color:var(--text-secondary);white-space:nowrap}.filter-date-input{padding:6px 10px;border-radius:10px;border:1.5px solid var(--border-color);background:var(--bg-color);color:var(--text-primary);font-size:13px;font-family:inherit;outline:none;transition:border-color .15s}.filter-date-input:focus{border-color:var(--accent-blue)}.filter-select{padding:6px 10px;border-radius:10px;border:1.5px solid var(--border-color);background:var(--bg-color);color:var(--text-primary);font-size:13px;font-family:inherit;outline:none;cursor:pointer;transition:border-color .15s}.filter-select:focus{border-color:var(--accent-blue)}.btn-shift-close{padding:0 14px;height:36px;border-radius:10px;border:none;background:linear-gradient(135deg,#ff6b35,#ff9500);color:#fff;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .18s ease;box-shadow:0 2px 8px #ff6b3559}.btn-shift-close:hover{transform:translateY(-1px);box-shadow:0 4px 14px #ff6b3580}.shift-tips-block{background:linear-gradient(135deg,#ff6b35,#ff9500);color:#fff;border-radius:16px;padding:20px 24px;text-align:center;animation:pulse-orange 1.5s ease-in-out infinite}@keyframes pulse-orange{0%,to{box-shadow:0 0 #ff950066}50%{box-shadow:0 0 0 10px #ff950000}}.shift-summary-grid{display:flex;flex-direction:column;gap:2px;border:1px solid var(--border-color);border-radius:14px;overflow:hidden}.shift-stat-row{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:var(--panel-bg-solid);font-size:15px;border-bottom:1px solid var(--border-color)}.shift-stat-row:last-child{border-bottom:none}.shift-stat-row strong{font-size:17px;font-weight:800}.shift-stat-row.accent-blue strong{color:var(--accent-blue);font-size:20px}
