:root{font-family:IBM Plex Sans,Segoe UI,sans-serif;color:#16263d;background:radial-gradient(circle at top left,#b5d7ffc7,#b5d7ff00 34%),radial-gradient(circle at bottom right,#ffcda657,#ffcda600 30%),linear-gradient(180deg,#f4f7fb,#eaf0f7)}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}.app-shell{min-height:100vh;padding:1.25rem}.app-shell.pos-mode{height:100dvh;min-height:100dvh;display:flex;flex-direction:column;overflow:hidden}.topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:1rem 1.1rem;border:1px solid rgba(191,207,226,.85);border-radius:22px;background:#ffffffc7;box-shadow:0 16px 38px #1b304a14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}h1,h2,h3{margin:0}.tabs{display:flex;gap:.5rem;flex-wrap:wrap}.tabs button,button{border:0;border-radius:14px;padding:.7rem 1rem;cursor:pointer;background:linear-gradient(180deg,#edf4fb,#dde9f7);color:#183454;box-shadow:0 6px 18px #14375814;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}button:hover{transform:translateY(-1px);box-shadow:0 10px 24px #1437581f}button.active,button.primary{background:linear-gradient(135deg,#12385f,#0d5e92);color:#fff}button.danger{background:linear-gradient(135deg,#9d3434,#c74d4d);color:#fff}.grid-admin,.grid-pos{display:grid;grid-template-columns:1fr;gap:1rem}.app-shell.pos-mode .grid-pos{flex:1;min-height:0;overflow:hidden}.grid-login{max-width:920px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:1rem}.panel{background:linear-gradient(180deg,#fffffff5,#f8fbfff5);border-radius:22px;padding:1.1rem;border:1px solid rgba(211,225,239,.92);box-shadow:0 18px 36px #143a5c1a}.pos-scan-panel{display:flex;flex-direction:column;min-height:0}.pos-scan-panel>.table-wrap:last-child{flex:1;min-height:0;overflow:auto}.pos-checkout-panel{overflow:auto}.form-grid{margin-top:1rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.7rem}.login-form{margin-top:1rem;display:grid;gap:.7rem}label{display:flex;flex-direction:column;gap:.3rem}input,select{border:1px solid #c6d6e8;border-radius:14px;padding:.7rem .8rem;background:#fbfdff;box-shadow:inset 0 1px 2px #11253e0a}input:focus,select:focus{outline:none;border-color:#1f6ea7;box-shadow:0 0 0 4px #1f6ea724}.admin-shell{display:grid;gap:1rem;grid-template-columns:1fr}.admin-sidebar{background:linear-gradient(180deg,#102941,#173757);color:#f4f8fc;border-radius:24px;padding:1.1rem;box-shadow:0 24px 42px #1029413d}.admin-sidebar-brand{padding:.25rem 0 1rem;border-bottom:1px solid rgba(255,255,255,.12)}.admin-sidebar-brand p{margin:.45rem 0 0;color:#ebf2f9c7}.admin-sidebar-eyebrow,.admin-hero-kicker,.admin-panel-kicker,.admin-nav-title{display:inline-block;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:700}.admin-sidebar-eyebrow{color:#8fc8ff}.admin-nav{display:grid;gap:1rem;margin-top:1rem}.admin-nav-group{display:grid;gap:.55rem}.admin-nav-title{color:#e0ebf59e}.admin-nav-item{width:100%;text-align:left;display:grid;gap:.1rem;padding:.85rem .95rem;border-radius:16px;background:#ffffff0f;color:#f4f8fc;box-shadow:none}.admin-nav-item small{color:#e0ebf594;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.admin-nav-item.active{background:linear-gradient(135deg,#f0f6ff,#d8e9ff);color:#133657}.admin-nav-item.active small{color:#1336579e}.admin-main,.admin-hero-panel{display:grid;gap:1rem}.admin-hero-kicker,.admin-panel-kicker{color:#1f6ea7}.admin-hero-panel p{margin:.45rem 0 0;max-width:720px;color:#50657d}.admin-hero-stats{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.admin-stat-card{display:grid;gap:.2rem;padding:.95rem 1rem;border-radius:18px;background:linear-gradient(180deg,#f8fbff,#edf4fb);border:1px solid #d8e5f2}.admin-stat-card strong{font-size:1.4rem}.admin-stat-card span,.admin-panel-meta{color:#56708b}.admin-hero-actions{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center}.admin-workspace{display:grid;gap:1rem;grid-template-columns:1fr}.admin-form-panel,.admin-table-panel{min-width:0}.admin-panel-header{display:flex;gap:1rem;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.admin-panel-meta{margin:0;font-weight:600}.admin-form-actions{display:flex;gap:.7rem;flex-wrap:wrap;grid-column:1 / -1}.picker-control{display:grid;grid-template-columns:1fr auto;gap:.4rem}.picker-control input{cursor:pointer;background:#f8fcff}.reward-image-field{display:grid;gap:.55rem}.reward-image-field small{color:#52708f}.multi-checkbox-group{display:grid;gap:.4rem;padding:.65rem;border:1px solid #bfd3e8;border-radius:10px;background:#fbfdff}.multi-checkbox-option{display:flex;flex-direction:row;align-items:center;gap:.45rem}.reward-image-preview,.reward-image-thumb{width:96px;height:96px;border-radius:12px;object-fit:cover;background:#eef5fc;border:1px solid #d6e3f2}.table-wrap{overflow:auto;margin-top:.8rem}table{width:100%;border-collapse:collapse}th,td{border-bottom:1px solid #e5eef8;text-align:left;padding:.6rem;white-space:nowrap;vertical-align:top}.scan-row{display:flex;gap:.5rem;flex-wrap:wrap}.scan-row input{flex:1}.scan-row .scan-input{flex:0 1 340px;min-width:180px;border-width:2px;border-color:#0f4c81;background:#f7fbff}.scan-multiplier-button{min-width:52px;padding-inline:.7rem}.search-panel{margin-top:.8rem;border:1px solid #d9e6f3;border-radius:18px;padding:.85rem;background:linear-gradient(180deg,#f8fbff,#f2f7fc)}.search-panel input{width:100%}.admin-article-filters{display:grid;gap:.6rem;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));align-items:end}.admin-article-filters .status{margin:0}.admin-pagination{display:flex;gap:.5rem}.admin-pagination button[disabled]{opacity:.55;cursor:default}.settings-button-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem}.settings-button-card{border:1px solid #d9e6f3;border-radius:12px;padding:.8rem;background:#f7fbff;display:grid;gap:.7rem;align-content:start}.settings-button-card h3{margin:0;font-size:1rem}.settings-button-card input{width:100%}.settings-inline-check{flex-direction:row;align-items:center;gap:.5rem}.settings-article-field{width:100%}.settings-article-input{width:100%;cursor:pointer;background:#f8fcff}.settings-remove-article{width:100%}.picker-modal-backdrop{position:fixed;inset:0;background:#0a162673;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:1000}.picker-modal{width:min(700px,100%);max-height:85vh;overflow:auto;background:#fff;border-radius:14px;padding:1rem;box-shadow:0 10px 30px #0814244d}.picker-modal-header{display:flex;justify-content:space-between;align-items:center;gap:.6rem}.picker-search{width:100%;margin-top:.8rem}.picker-list{display:grid;gap:.4rem;margin-top:.8rem}.picker-item{text-align:left;background:#f3f8ff}.chart-list{display:grid;gap:.6rem;margin-top:.8rem}.chart-row{display:grid;grid-template-columns:180px 1fr 120px;gap:.6rem;align-items:center}.chart-bar-wrap{height:14px;border-radius:999px;background:#e6eef8;overflow:hidden}.chart-bar{height:100%;background:#0f4c81}.checkout{display:grid;gap:.7rem;align-content:start}.total{font-size:1.4rem;font-weight:700;margin:.2rem 0}.change{font-weight:700;margin:0;color:#0f4c81}.change-negative{color:#bb3f3f}.row-highlight{background:#fff3e2}.badge-offer,.badge-promo{display:block;width:fit-content;font-size:.8rem;font-weight:700;border-radius:8px;padding:.2rem .45rem;margin-bottom:.25rem}.badge-offer{color:#0f4c81;background:#d9ebff}.badge-promo{color:#6c3a00;background:#ffe8c9}.status{margin:.6rem 0 0;color:#1c5b89;font-weight:600}.num-keypad{margin-top:.8rem;display:grid;grid-template-columns:repeat(3,minmax(70px,1fr));gap:.45rem}.num-keypad-enter{grid-column:span 3}@media(min-width:1000px){.grid-admin{grid-template-columns:1.1fr 1fr}.admin-shell{grid-template-columns:280px minmax(0,1fr);align-items:start}.admin-sidebar{position:sticky;top:1.25rem}.admin-workspace{grid-template-columns:minmax(320px,.9fr) minmax(0,1.4fr);align-items:start}.grid-pos{grid-template-columns:2fr 1fr}.app-shell.pos-mode .grid-pos{align-items:stretch}.grid-login{grid-template-columns:1fr;max-width:640px}}@media(max-width:999px){.admin-nav-item{padding:.8rem .9rem}.admin-panel-header{flex-direction:column}}
